Matthias
431cb5313f
Support informative pairs in edge positioning
2021-05-05 19:58:45 +02:00
Matthias
da47f4e1a4
Fix Kraken balance update error
...
closes #4873
2021-05-05 06:47:26 +02:00
Matthias
da574e4e69
Small style fixes
2021-05-03 06:30:41 +02:00
Matthias
fc110ea418
Support csv export for new and old versions
2021-05-02 20:41:45 +02:00
Matthias
303895b33e
Add support for filters to new hyperopt-results
2021-05-02 20:07:22 +02:00
Matthias
287b43e999
Output strategy results including non-optimized parameters
2021-05-02 11:30:53 +02:00
Matthias
d069ad43d8
Small reformatting in hyperopt
2021-05-02 11:01:26 +02:00
Matthias
8ee0b0d8e8
Store not optimized parameters (if applicable)
2021-05-02 10:46:04 +02:00
Matthias
9049d6b779
Reformat hyper to cache parameters
2021-05-02 10:45:21 +02:00
Matthias
46f0f66039
Keep dimensions stored in hyperopt class
...
There is no point in regenerating them and it will cause some
overhead as all space classes will be recreated for every epoch.
2021-05-02 09:48:37 +02:00
Matthias
ced5cc7ce2
Don't recalculate min/max date - they won't change between epochs
2021-05-02 09:46:27 +02:00
Matthias
ecdfb6e5ed
Fix output of % for new format
2021-05-02 09:46:27 +02:00
Matthias
881cba336a
Show backtesting result in hyperopt-show
2021-05-02 09:46:27 +02:00
Matthias
420e75af65
Extract show_backtest_result for one strategy
2021-05-02 09:46:27 +02:00
Matthias
97478abb9d
Move format explanation string to HyperoptTools
2021-05-02 09:46:27 +02:00
Matthias
f2e182002d
Simplify calling backtesting by returning the proper result
2021-05-02 09:46:27 +02:00
Matthias
e2e1d34828
Extract stake_currency param from hyperopt-explanationstring
2021-05-02 09:46:27 +02:00
Matthias
6aaaad29d7
Use backtesting output for hyperopt results
2021-05-02 09:46:27 +02:00
Matthias
545cba7fd8
Refactor optimize_report
...
we should not calculate non-daily statistics in the daily stats method
2021-05-02 09:46:27 +02:00
Matthias
9994fce577
Extract generation of report for one strategy to it's own method
2021-05-02 09:46:27 +02:00
Matthias
b125c975c7
Rename strategy_comparison method
2021-05-02 09:46:27 +02:00
Matthias
ac2e1eb3d7
Don't import joblib for regular strategies
2021-05-02 08:44:16 +02:00
Matthias
0e359dcb7a
Merge pull request #4788 from saeedrss/develop
...
fetch live data from hitbtc exchange #4778
2021-05-01 19:13:00 +02:00
Matthias
bdd0184f0b
Small stylistic fixes
2021-05-01 17:44:43 +02:00
Matthias
1cb430f59b
Remove encoding specifics, gitattributes to echeckout as utf8
2021-05-01 17:41:40 +02:00
Matthias
0b280a59bc
Support per exchange params for OHLCV endpoint
2021-05-01 17:29:53 +02:00
Matthias
e0ca3c014c
Don't completely remove encode/decode
2021-05-01 17:12:48 +02:00
Matthias
30da307d13
Remove encode/decode for hyperopt
2021-05-01 17:01:52 +02:00
Matthias
555262b6e1
Only calculate additional indicators if the space is selected
2021-05-01 16:40:29 +02:00
Matthias
e381df9098
extract has_space to Hyperopt-Tools
2021-05-01 16:36:35 +02:00
Matthias
e050ea8dfa
Don't load parameters for other space
2021-05-01 16:21:59 +02:00
Matthias
401f31e86b
Merge pull request #4841 from JoeSchr/fix/istrategy-return-value
...
fix IStrategy: abstract methods still need to pass through return value
2021-04-30 20:13:11 +02:00
Matthias
856b65206b
Reduce log-frequency of AgeFilter
...
closes #4840
2021-04-30 19:42:41 +02:00
Joe Schr
f3388ed9aa
fix IStrategy: abstract methods still need to pass through return value
...
otherwise doing something like:
```py
dataframe = super().populate_indicators(dataframe, ...)
```
won't work, because `dataframe` becomes `None`.
This is needed if one of those methods uses dataframe.copy() instead of
just working on reference. e.g. using `merge_informative` in
`populate_indicator` in a nested class hierarchy
2021-04-30 14:39:01 +02:00
Antreas Gribas
cf03daa0fd
Fix bug in running hyperopt in windows 10
...
with preferred encoding in locale differrent from
utf-8
2021-04-30 00:28:42 +03:00
Bernd Zeimetz
3be7bc509c
Telegram: send locks as chunks of 25.
...
Producing easily readable messages, hopefully always below the message lenght limit
2021-04-29 22:21:04 +02:00
Bernd Zeimetz
4d1613a432
Add chunks function.
...
Implementing a generator to split Lists into chunks.
2021-04-29 22:21:04 +02:00
Matthias
a3d2e68312
Merge pull request #4750 from rokups/rk/custom_sell
...
Add IStrategy.custom_sell method which allows per-trade sell signal evaluation
2021-04-29 06:50:56 +02:00
Matthias
aab020c9a2
Merge pull request #4818 from freqtrade/cleanup_models
...
Move static Trade functions to right class
2021-04-28 21:18:55 +02:00
Matthias
7c8a367442
Update docs to not promote stoploss / take-profit
2021-04-28 20:36:06 +02:00
Matthias
63c28b6519
Remove obsolete get_balance method
2021-04-28 16:00:12 +02:00
Matthias
6eb947ae09
Move static Trade functions to right class
2021-04-28 06:37:40 +02:00
Matthias
55faa6a84a
safe_wrapper should use kwargs to call methods
2021-04-26 20:18:03 +02:00
Matthias
2061162d79
Convert trade-opendate to python datetime
2021-04-26 20:01:13 +02:00
Matthias
dbf33271b5
Small doc changes
2021-04-26 19:52:26 +02:00
Matthias
3f84c37a79
Fix wallet calls
...
closes #4810 #4812
2021-04-26 14:12:52 +02:00
Rokas Kupstys
31a2285eac
Fix mypy complaints.
2021-04-26 10:42:24 +03:00
Matthias
bb7ef2f804
Cache pairlist in pairlist, not globally
...
closes #4797 closes #4689
2021-04-25 20:10:47 +02:00
Matthias
7448a05f15
Use correct variable in pairlist_manager
2021-04-25 11:01:04 +02:00
Matthias
fd3afdc230
plot-profit should use absolute values
2021-04-25 10:10:09 +02:00
Rokas Kupstys
98f6fce2ec
Use correct sell reason in case of custom sell reason.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
595b8735f8
Add dataframe parameter to custom_stoploss() and custom_sell() methods.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
961b38636f
Remove explicit sell_flag parameter from SellCheckTuple.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
bfad4e82ad
Make execute_sell() use SellCheckTuple for sell reason.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
a90e795695
Warn and trim custom sell reason if it is too long.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
1aad128d85
Support returning a string from custom_sell() and have it recorded as custom sell reason.
2021-04-25 09:48:40 +03:00
Rokas Kupstys
1292e08fe4
Use strategy_safe_wrapper() when calling custom_sell().
2021-04-25 09:48:40 +03:00
Rokas Kupstys
0fd68aee51
Add IStrategy.custom_sell method which allows per-trade sell signal evaluation.
2021-04-25 09:48:40 +03:00
wr0ngc0degen
869a45a031
Merge pull request #2 from freqtrade/develop
...
update develop from base repo
2021-04-25 05:50:03 +02:00
wr0ngc0degen
2eda25426f
fix typo in sample_strategy.py
...
fix copy-paste issue in populate_sell_trend docstring
2021-04-25 05:47:59 +02:00
Matthias
e855530483
hdf5 handler should include the end-date
2021-04-24 20:26:37 +02:00
Matthias
cb86c90d3e
Remove obsolete TODO's
2021-04-24 19:16:54 +02:00
Matthias
88f26971fa
Use defaultdict for backtesting
2021-04-24 19:15:09 +02:00
Matthias
8e85b63b3d
Merge pull request #4792 from JoeSchr/add-distribution-graph-to-example-notebook
...
add distribution graph to example notebook
2021-04-24 16:14:48 +02:00
Matthias
f12e002686
Merge pull request #4775 from freqtrade/fix_wallet_unlimited
...
Fix wallet unlimited
2021-04-24 15:54:06 +02:00
Joe Schr
31b0e3b5e8
add distribution graph to example notebook
2021-04-24 13:29:59 +02:00
Matthias
90476c4287
Add "range" property to IntParameter
2021-04-24 07:00:33 +02:00
Matthias
9dc7f776d9
Improve log output when loading parameters
2021-04-23 20:35:30 +02:00
saeedrss
37d8e3c758
Merge branch 'develop' of https://github.com/freqtrade/freqtrade into develop
2021-04-23 22:28:33 +04:30
Matthias
191a31db30
NameErrors should not stop loading a different strategy
2021-04-23 19:36:26 +02:00
Matthias
df16fbd742
Add "dataload complete" message to backtest + hyperopt
2021-04-23 19:22:41 +02:00
saeedrss
b69a9134f5
fixing support for HitBTC #4778
...
hitbtc by default send candle from beginning (not most recently)
this change fixed
2021-04-23 21:27:13 +04:30
Matthias
4005708f85
Handle edge with volumepairlist and empty pair_whitelist
...
closes #4779
2021-04-23 06:50:39 +02:00
Matthias
406c1267a2
Remove superfluss space
2021-04-22 20:01:08 +02:00
Matthias
f5f0bf53af
Merge pull request #4780 from rokups/rk/new-pairs-days
...
Add --new-pairs-days parameter for download-data command.
2021-04-22 19:55:25 +02:00
Matthias
ccaf5764da
Small adjustments
2021-04-22 19:41:01 +02:00
Matthias
0d2457cd47
Add lock_reason to per-pair lock
2021-04-22 19:28:50 +02:00
Matthias
f2d5f476d4
Merge pull request #4777 from c0d5x/informative-global-pairlock-msg
...
Add the reason why there is a global pairlock when lock is available
2021-04-22 19:24:13 +02:00
Matthias
4693cba10d
Merge pull request #4769 from freqtrade/trades_pagination
...
Trades pagination
2021-04-22 19:13:19 +02:00
Matthias
7e2e196643
improve sell_message by using sell rate
2021-04-22 17:13:22 +02:00
Rokas Kupstys
3144185409
Allow specifying "new_pairs_days" in config.
2021-04-22 11:18:28 +03:00
Matthias
f744df2374
Fix bad fill message
2021-04-22 10:01:41 +02:00
Rokas Kupstys
09efa7b06b
Add --new-pairs-days parameter for download-data command.
...
This parameter allows us to customize a number of days we would like to download for new pairs only. This allows us to achieve efficient data update, downloading all data for new pairs and only missing data for existing pairs. To do that use `freqtrade download-data --new-pairs-days=3650` (not specifying `--days` or `--timerange` causes freqtrade to download only missing data for existing pairs).
2021-04-22 10:07:13 +03:00
Matthias
515c73f399
Don't hard-limit trades endpoint for now
2021-04-22 06:51:26 +02:00
Jose Hidalgo
896ec58cad
Add the reason why there is a global pairlock when lock is available
2021-04-21 15:02:33 -06:00
Matthias
d8c8a8d8c2
Remvoe pointless arguments from get_trade_stake_amount
2021-04-21 20:01:10 +02:00
Matthias
ba2d4d4656
Reduce number of calls to Trade.total_open_traes_stakes()
2021-04-21 19:27:42 +02:00
Matthias
0233aa248e
Limit stake_amount to max available amount
2021-04-21 17:22:16 +02:00
Matthias
9f6f3e0862
Address ZeroDivisionExceptiond
...
closes #4764 closes #4617
2021-04-20 21:41:49 +02:00
Matthias
bd92ce938c
trade_history should paginate through results
...
this avoids huge results
2021-04-20 21:04:44 +02:00
Matthias
b230558294
Merge pull request #4766 from freqtrade/fill_rpc
...
Add buy/sell fill messages to telegram
2021-04-20 20:39:15 +02:00
Matthias
cfa9315e2a
Prevent out of candle ROI sells
2021-04-20 20:29:53 +02:00
Jose Hidalgo
fd110c7d62
The error that it prints says the contrary to what
...
was evaluated.
ex. Trading stopped due to Max Drawdown 0.79 < 0.2 within 48 candles
2021-04-20 11:50:53 -06:00
Matthias
f821ef5aec
Final finetunings of rpc_fill messages
2021-04-20 19:36:30 +02:00
Matthias
d740aae8ca
Default fill notifications to off
2021-04-20 19:23:29 +02:00
Matthias
0341ac5a55
rename RPC message types
2021-04-20 19:23:28 +02:00
Matthias
8800a09770
Don't send double-notifications for stoploss fills
2021-04-20 19:22:14 +02:00
Matthias
fecd5c582b
Add buy and sell fill notifications
...
closes #3542
2021-04-20 19:22:14 +02:00
Matthias
06d6f9ac41
Fix calculation of unlimited_stake in case of modified wallet
2021-04-20 15:55:48 +02:00
Matthias
a2acb54e7e
Clarify comments in pairlist
2021-04-19 15:15:40 +02:00
Matthias
44bfb53668
Don't use current rate for closed trades
2021-04-17 19:29:34 +02:00
Matthias
1eb9ce4227
Allow specifying pairs for optimize commands via --pairs
2021-04-17 10:47:32 +02:00
Matthias
c52edcff4d
Merge pull request #4677 from mads03dk/get_trade
...
Add API endpoint for getting a specific trade
2021-04-16 19:57:58 +02:00
Matthias
9f2b6ee9a5
Merge pull request #4740 from freqtrade/decimal_stoploss_Hyperopt
...
stoploss and roi skdecimal spaces hyperopt
2021-04-16 19:46:07 +02:00
Matthias
aeb81f90ff
Implement errorhandling for /trade endpoint
2021-04-16 19:35:56 +02:00
Gonzalo Matheu
7a98de10ea
telegram: Formatting typings
2021-04-15 21:51:16 -03:00
Gonzalo Matheu
e3c5a4b3fc
telegram: Formatting imports
2021-04-15 21:51:16 -03:00
Gonzalo Matheu
5fae4ea2fd
telegram: Formatting code
2021-04-15 21:51:16 -03:00
Gonzalo Matheu
50bdae8eb2
telegram: Adding forcebuy inline keyboard
2021-04-15 21:51:16 -03:00
Gonzalo Matheu
e2f28991e6
telegram: Wrapping long line
2021-04-15 21:51:16 -03:00
Gonzalo Matheu
271e4500d9
telegram: Adding dynamic keyboard to /forcebuy response
2021-04-15 21:51:16 -03:00
grillzoo
5e51ba6258
fix flake8
2021-04-15 21:38:00 +01:00
Matthias
ce870bbcf7
Use 3 decimals for ROI space
2021-04-15 21:38:20 +02:00
Théo Martin
fa343b0484
Fix get_min_pair_stake_amount formula
2021-04-15 01:19:30 +01:00
Matthias
52c482cecf
Convert trailing and roi defaults to skdecimal
2021-04-14 20:36:34 +02:00
Matthias
e820814809
Default-stoploss-hyperopt should use decimal space, nto real
2021-04-14 20:32:34 +02:00
Matthias
ba38e398e4
Add type hint
2021-04-13 22:17:42 +02:00
Matthias
c2f35ce416
/balance should use cached tickers when possible
2021-04-13 20:21:03 +02:00
Matthias
82d66410f7
Fix /performance output
...
if multiple messages are necessary
closes #4726
2021-04-13 19:20:57 +02:00
Matthias
e4bb6b1582
Add kucoin exchange subclass
...
Kucoin has some specific orderbook restrictions
closes #4723
2021-04-13 12:28:07 +02:00
Matthias
37c8fd6ad7
Remove arrow from models.py
2021-04-13 11:55:03 +02:00
Matthias
59cfbbee17
Merge pull request #4724 from csteeg/develop
...
Fixes FTX stoploss on echange throwing an error
2021-04-13 08:41:52 +02:00
Matthias
9b23be4021
Return a copy from current_whitelist
...
this avoids manipulating of the pair whitelist from within a strategy
2021-04-13 06:49:53 +02:00
Matthias
4b902d6eb8
Don't use response-model on trades endpoint for now
2021-04-13 06:23:11 +02:00
Matthias
9a58a85347
Don't export "hum" date versions for trade objects.
...
They are not used and have a rather high performance penalty due to
using arrow.get
2021-04-13 06:17:11 +02:00
Matthias
cb60db01b1
Merge pull request #4703 from freqtrade/decimal_space
...
Add SKDecimal Space
2021-04-12 19:18:10 +02:00
Chris van de Steeg
d4dc05980c
Update ftx.py
...
Stoploss price should be set as param instead of passing it as price according to ccxt
2021-04-12 16:01:46 +02:00
Matthias
be0dc737dc
Merge pull request #4706 from freqtrade/simplify_fiat_convert
...
Simplify fiat convert and fix USD coingecko problem
2021-04-10 14:57:34 +02:00
Matthias
579e68f31e
Reduce log verbosity when buying
2021-04-10 14:40:44 +02:00
Matthias
14e8574235
fetch_balance is never called in dry-run
2021-04-10 14:17:43 +02:00
Matthias
37c2e037f1
Rename dry_run_order to create_dry_run_order
2021-04-10 13:50:56 +02:00
Matthias
ebbe47f38d
Simplify fiat convert and fix USD coingecko problem
2021-04-10 13:36:16 +02:00
Matthias
9804e20114
Don't use _set_value for autoOpt-Spaces
2021-04-10 09:53:48 +02:00
Matthias
4996bd443e
Merge pull request #4697 from freqtrade/docker_user
...
Docker as user
2021-04-10 08:19:25 +02:00
Matthias
83fbaf16c8
Extract numeric param validation and explosion
2021-04-10 07:59:59 +02:00
Matthias
ea4b5d675d
Don't explode low/high, but use explicit parameters
2021-04-10 07:12:31 +02:00
Matthias
34e47db18d
Test SKDecimal space
2021-04-09 22:15:24 +02:00
Matthias
5f67400649
Add SKDecimal Space
2021-04-09 21:58:15 +02:00
Matthias
898c24949b
Add chown method to support docker
2021-04-08 20:17:07 +02:00
Matthias
8cd3c05c39
Merge pull request #4686 from gerrito333/develop
...
Add Pairlist Handler for Volatility
2021-04-08 20:00:41 +02:00
gbojen
f8244d9d76
resolves freqtrade/freqtrade#4650
2021-04-07 22:25:54 +02:00
Matthias
c36051be56
Merge pull request #4685 from freqtrade/ft_has
...
Use ccxt's has to check which exchanges can work with freqtrade
2021-04-07 10:47:56 +02:00
gbojen
5ee879a747
isort resolves freqtrade/freqtrade#4650
2021-04-07 10:15:51 +02:00
Matthias
d2680f6cb8
Remove telegram deprecation warning
...
closes #4688
2021-04-07 06:57:05 +02:00
Matthias
ac6bff536f
Fix test failure with UI test if UI is deployed
2021-04-07 06:55:11 +02:00
Matthias
0f0607baec
Fix rangeestability filter caching issue
2021-04-07 06:52:34 +02:00
gbojen
9772a93634
resolves freqtrade/freqtrade#4650
2021-04-06 23:11:40 +02:00
gbojen
9089323d26
resolves freqtrade/freqtrade#4650
2021-04-06 22:46:36 +02:00
gbojen
187cf6dcd5
VolatilityFilter resolves freqtrade/freqtrade#4650
2021-04-06 22:41:15 +02:00
Matthias
a3b4667f7c
Update exchange validation to use "validate_exchange".
2021-04-06 20:16:29 +02:00
Matthias
5ed7828446
Remove hardcoded list of non-working exchanges
2021-04-06 20:03:38 +02:00
klara31
f37fbbf4e1
Update constants.py
2021-04-06 19:47:48 +02:00
klara31
bf0886a839
Update constants.py
2021-04-06 18:35:30 +02:00
Matthias
56ef3af424
Allow comments in pairs files
2021-04-06 13:29:22 +02:00
gbojen
1733e24062
pyLint adjustment resolves freqtrade#4650
2021-04-06 10:44:13 +02:00
gbojen
be770a8941
added VolatilityFilter resolves freqtrade#4650
2021-04-06 10:42:53 +02:00
gbojen
6f02acdbbd
Revert "resolves freqtrade/freqtrade#4650"
...
This reverts commit 142690c930
.
2021-04-06 10:39:27 +02:00
gbojen
142690c930
resolves freqtrade/freqtrade#4650
2021-04-06 10:05:03 +02:00
Matthias
0550f261f1
Add exchange_has validation
2021-04-06 07:47:44 +02:00
Mads Sørensen
c176e277f1
Add a REST endpoint for getting a specific trade
2021-04-05 19:31:34 +02:00
Matthias
78a84f8081
Allow --hyperoptloss in addition to --hyperopt-loss
2021-04-05 15:38:33 +02:00
Matthias
7b2a0d46cb
Fix typo
2021-04-05 15:38:25 +02:00
Matthias
431f0a3db4
Merge pull request #4671 from freqtrade/fix/sqlalchemy
...
sqlalchemy database locked bug
2021-04-05 14:09:35 +02:00
Matthias
b470672dfd
Merge pull request #4596 from rokups/rk/hyper-strategy
...
Support for creating auto-hyperoptable strategies.
2021-04-05 13:55:32 +02:00
Matthias
c51839dc3b
Make the logmessage for loaded parameters clearer
2021-04-05 11:21:20 +02:00
Matthias
dc406fe19f
Fail in case of name and explicit space name collisions
2021-04-05 10:53:00 +02:00
Matthias
7132aefd60
Rename Trade.session to Trade._session
2021-04-05 08:46:12 +02:00
Matthias
0407bf755f
Use .query.session to make sure the scoped session is used properly
2021-04-05 07:28:51 +02:00
Matthias
bd5e1c5096
Merge pull request #4660 from rextea/order_pairlist_results
...
Sort pair lists by total profit
2021-04-04 19:47:33 +02:00
rextea
9e56f6d4eb
Sort pair lists by total profit
2021-04-04 01:19:38 +03:00
Matthias
30e5e92968
Don't allow one parmeter to be in 2 spaces
...
use the explicit user wish (given explicitly with "space")
2021-04-03 20:17:48 +02:00
Matthias
9d4b5cc6bb
Fix typo
2021-04-03 19:56:20 +02:00
Matthias
5f6eae52a2
fix too long performance message
...
closes #4655
2021-04-03 19:12:36 +02:00
Matthias
41cb2a6451
Merge branch 'develop' into pr/rokups/4596
2021-04-03 17:00:37 +02:00
Matthias
6555454bd2
Remove more ticker_interval occurances
2021-04-03 16:54:47 +02:00
Matthias
771fc05749
Update sample strategy with hyperoptable Parameters
2021-04-03 16:32:16 +02:00
Rokas Kupstys
faf40482ef
Fix parameter printing.
2021-04-03 13:49:24 +03:00
Rokas Kupstys
ea43d5ba85
Implement DecimalParameter and rename FloatParameter to RealParameter.
2021-04-02 17:08:16 +03:00
Matthias
c7ee34687b
Merge pull request #4584 from withshubh/develop
...
fix: code quality issues
2021-04-02 15:19:49 +02:00
Mads Sørensen
3691ae8686
Make sure the fiat converter exists before calling it
2021-04-02 14:50:47 +02:00
shubhendra
f47dc31786
Refactor the comparison involving not
...
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-04-02 16:57:44 +05:30
Mads Sørensen
51f0fcb2cb
Add profit_fiat to REST API
2021-04-02 12:20:38 +02:00
Matthias
5acdc9bf42
Fix type errors by converting all hyperopt methods to instance methods
2021-04-01 06:47:23 +02:00
Rokas Kupstys
5e5b11d4d6
Split "enabled" to "load" and "optimize" parameters.
2021-03-31 12:31:28 +03:00
Matthias
2869d5368d
Allow edge to use dynamic pairlists
...
closes #4298
2021-03-30 20:20:24 +02:00
Matthias
50fcb3f330
Reduce verbosity of missing data if less than 1% of data is missing
2021-03-30 07:26:39 +02:00
Matthias
89bbfd2324
Remove candle_count from dataframe before backtesting
...
closes #3754
2021-03-29 20:26:54 +02:00
Matthias
f6211bc00e
new-config should include API config
2021-03-28 20:23:57 +02:00
Matthias
fc8478111e
Improve strategy template
2021-03-28 20:06:30 +02:00
Matthias
929f329607
more tests
2021-03-28 19:49:20 +02:00
Matthias
20f7e9b4b7
Make BaseParameter get_space abstract
2021-03-28 19:31:54 +02:00
Matthias
8022386404
Type custom_hyperopt
2021-03-27 18:00:07 +01:00
Matthias
71e2134694
Add some simple tests for hyperoptParameters
2021-03-27 11:26:26 +01:00
Matthias
786ddc6a91
remove unused imports
2021-03-27 10:47:33 +01:00
Rokas Kupstys
e934d3ddfb
[SQUASH] Oopsie.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
40f5c7853e
[SQUASH] Add a way to temporarily disable a parameter (excludes from parameter loading/hyperopt) and print parameter values when executed.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
bbe6ece38d
[SQUASH] Fix parameter configs not loading.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
424cd2a914
[SQUASH] Use "space" instead of category.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
fd45dfd894
[SQUASH] Make skopt imports optional.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
11689100e7
[SQUASH] Fix exception when HyperOpt nested class is not defined.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
e9f0babe8a
[SQUASH] Use HyperStrategyMixin as part of IStrategy interface.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
2d13e5fd50
[SQUASH] Oopsies.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
bb89e44e19
[SQUASH] Address PR comments.
...
* Split Parameter into IntParameter/FloatParameter/CategoricalParameter.
* Rename IHyperStrategy to HyperStrategyMixin and use it as mixin.
* --hyperopt parameter is now optional if strategy uses HyperStrategyMixin.
* Use OperationalException() instead of asserts.
2021-03-26 16:56:24 +02:00
Rokas Kupstys
0a205f52b0
Optional support for defining hyperopt parameters in a strategy file and reusing common hyperopt/strategy parts.
2021-03-26 16:56:24 +02:00
Matthias
8da7d5c009
Merge pull request #4594 from rextea/add_confirm_exit_enter_tade_to_backtesting
...
Add confirm_trade_exit and confirm_trade_entry to backtesting
2021-03-25 20:26:56 +01:00
Matthias
292ea8c1d0
Update backtesting.py
2021-03-25 09:34:33 +01:00
rextea
0ca95aa0c2
Change rate to acctual close rate
2021-03-25 10:25:25 +02:00
Matthias
ec15610bff
Fix isort issue
2021-03-24 19:21:07 +01:00
Matthias
ee82d36bef
Merge pull request #4593 from hoeckxer/feat/status_table_telegram_length
...
Changed the code for status table a bit so that it splits up the trad…
2021-03-24 06:49:54 +01:00
Erwin Hoeckx
2fd510e6e4
Added comment with an example calculation
...
Signed-off-by: Erwin Hoeckx <hawkeyenl@yahoo.com>
2021-03-23 21:52:46 +01:00
Erwin Hoeckx
65a9763fa5
Fixed an issue when there were exactly 50 trades, it was sending an extra empty table
...
Signed-off-by: Erwin Hoeckx <hawkeyenl@yahoo.com>
2021-03-23 16:54:38 +01:00
Erwin Hoeckx
c928cd38dc
Small bugfix to make sure it shows all the trades
...
Signed-off-by: Erwin Hoeckx <hawkeyenl@yahoo.com>
2021-03-23 16:45:42 +01:00
rextea
f51f4b1817
Add confirm_trade_exit and confirm_trade_entry to backtesting
2021-03-23 10:35:46 +02:00
rextea
dc4ea604dd
Add confirm_trade_exit and confirm_trade_entry to backtesting
2021-03-23 10:19:16 +02:00
rextea
eb5d69dcd4
Add confirm_trade_exit and confirm_trade_entry to backtesting
2021-03-23 10:12:08 +02:00
rextea
6856963aef
Add confirm_trade_exit and confirm_trade_entry to backtesting
2021-03-23 10:09:41 +02:00
Erwin Hoeckx
4e8999ade3
Changed the code for status table a bit so that it splits up the trades per 50 trades, to make sure it can be sent regardless of number of trades
...
Signed-off-by: Erwin Hoeckx <hawkeyenl@yahoo.com>
2021-03-22 20:40:11 +01:00
shubhendra
4d81834912
Merge isinstance
calls
...
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-03-21 17:14:47 +05:30
shubhendra
45da3a7022
Refactor unnecessary else
/ elif
when if
block has a continue
statement
...
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-03-21 17:14:47 +05:30
shubhendra
910e15b174
Remove methods with unnecessary super delegation.
...
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-03-21 17:14:47 +05:30
shubhendra
6d6ad035d6
Remove length check in favour of truthiness of the object
...
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-03-21 17:14:46 +05:30
shubhendra
537ad059bc
Remove unnecessary use of comprehension
...
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-03-21 17:14:46 +05:30
shubhendra
62d99a0b74
Remove unnecessary comprehension
...
Signed-off-by: shubhendra <withshubh@gmail.com>
2021-03-21 17:14:45 +05:30
Matthias
e315a6a0da
assume "last" can miss from a ticker response
...
closes #4573
2021-03-20 14:58:51 +01:00
Matthias
43d7f9ac67
Add bid_last_balance parameter
...
to interpolate sell prices
closes #3270
2021-03-20 14:38:26 +01:00
Matthias
73876b61b4
Show potential errors when loading markets
2021-03-20 13:34:33 +01:00
Matthias
16a54b3616
Don't require non-mandatory arguments
2021-03-20 13:08:02 +01:00
Matthias
fe7f3d9c37
Add price side validation for market orders
2021-03-20 11:48:39 +01:00
Matthias
7ffe1fd36a
Fix calculation error for min-trade-stake
2021-03-20 07:21:22 +01:00
Matthias
0d5833ed91
Use OperationalException for TimeRange errors
2021-03-19 06:40:04 +01:00
Patrick Brunier
4d52732d30
Added a small snippet to give users a descent error message,
...
when their start date is afer the stop date.
Also updated the tests.
2021-03-18 22:38:54 +01:00
Matthias
84ca9bd2c7
Merge pull request #4543 from brookmiles/fix-math-custom-stoploss-docs
...
correct math used in examples and clarify some terminology regarding …
2021-03-18 19:32:30 +01:00
Matthias
76ca3c219f
extract result-printing from hyperopt class
2021-03-17 20:45:15 +01:00
Brook Miles
ce1ed76269
complete stoploss_from_open and associated test
2021-03-17 22:44:10 +09:00
Brook Miles
aee2591490
add stoploss_from_open() as a strategy_helper
2021-03-17 17:58:23 +09:00
Matthias
79d4585dad
Add check to ensure close_profit_abs is filled on closed trades
...
Technically, this should not be possible, but #4554 shows it is.
closes #4554
2021-03-16 19:24:03 +01:00
Matthias
b191663a7e
Adapt hyperopt templates to be better aligned
...
closes #3027
2021-03-14 19:49:46 +01:00
Matthias
0b35c0571f
Allow custom fee to be used during dry-run
...
closes #3696
2021-03-14 19:37:57 +01:00
Matthias
b57c150654
Final balance should include forcesold pairs
2021-03-14 09:48:40 +01:00
Matthias
cd8d9f2930
Merge pull request #4534 from rokups/patch-1
...
Provide access to strategy instance from hyperopt class.
2021-03-13 17:14:47 +01:00
Matthias
3b99f04a78
Merge pull request #4535 from freqtrade/fix/backtestperformance
...
Improve backtest performance after enabling compounding
2021-03-13 16:51:00 +01:00
Matthias
0320c8dc92
Improve tests for trades_proxy
2021-03-13 15:51:27 +01:00
Rokas Kupstys
5e872273d1
Provide access to strategy instance from hyperopt class.
2021-03-13 15:13:42 +02:00
Matthias
d1acc8092c
Improve backtest performance
2021-03-13 10:17:14 +01:00
Jackson Law
425cd7adba
Create event loop manually if uvloop is available
...
asyncio.get_event_loop() does not call new_event_loop()
if current_thread() != main_thread()
2021-03-12 16:16:03 -08:00
Matthias
441d3fad39
Merge pull request #4513 from freqtrade/fix/4511
...
Fix stoploss order problem with FTX
2021-03-11 19:39:44 +01:00
Matthias
ef9977fc1e
Make stake_amount + stake_currency mandatory for backtesting
2021-03-10 10:43:44 +01:00
Matthias
0db5c9746f
Merge pull request #4454 from freqtrade/backtest_compound_speed
...
Backtest compound, wallet, ...
2021-03-10 10:07:40 +01:00
Matthias
99583bbd0c
Fix problem with FTX
...
where cancelled orders are "cancelled", not "canceled"
2021-03-09 20:21:08 +01:00
Th0masL
37e6006169
Fix order_by in trades command
2021-03-08 23:21:56 +02:00
Matthias
4b550dab17
Always reset fake-databases
...
Otherwise results may stick around for the next strategy
2021-03-08 19:40:29 +01:00
Matthias
0b81b58d28
Use pandas.values.tolist instead of itertuples
...
speeds up backtesting
closes #4494
2021-03-07 11:28:54 +01:00
Matthias
02d7dc4780
Increase cache size to be large enough to hold all pairs
...
closes #4483
2021-03-06 19:55:02 +01:00
Matthias
b515609d73
Merge pull request #4490 from Th0masL/add_trade_id
...
Add the trade ID to Telegram Buy/Sell/Cancel messages
2021-03-06 15:40:34 +01:00
Th0masL
ad0e60b5b6
Add trade_id to Cancel messages and reduced lines length
2021-03-06 15:07:47 +02:00
Matthias
eed8c94dd9
Merge pull request #4488 from patrick310/patch-1
...
Add strategy name to HyperOpt results filename
2021-03-06 13:48:12 +01:00
Th0masL
03b89e7f78
Add trade_id in Telegram messages
2021-03-06 00:04:12 +02:00
Matthias
a405d578da
Introduce forcebuy ordertype to allow specifiying a different ordertype for forcebuy / forcesells
2021-03-05 20:22:04 +01:00
Patrick Weber
4532222010
Fixed line length in HyperOpt for new name
...
Fixed line length errors and multiple f strings to facilitate strategy being added in the name
2021-03-05 13:16:49 -06:00
Matthias
5196306407
Remove deprecated profit return value
2021-03-05 20:03:49 +01:00
Patrick Weber
345f7404e9
Add strategy name to HyperOpt results filename
...
This just extends the HyperOpt result filename by adding the strategy name. This allows analysis of HyperOpt results folder with no additional necessary context. An alternative idea would be to expand the result dict, but the additional static copies are non value added.
2021-03-05 12:56:11 -06:00
Matthias
731ab5d2a7
Fix too long line errors
2021-03-05 19:22:57 +01:00
Matthias
bc05d03126
Make best / worst day absolute
2021-03-05 19:21:09 +01:00
raoulus
0968ecc1af
added "Median profit" column to hyperopt -> export-csv
2021-03-04 17:27:04 +01:00
Matthias
078b77d41b
Fix crash when using unlimited stake and no trades are made
2021-03-02 16:12:22 +01:00
Joe Schr
55a315be14
fix: avg_stake_amount should not be NaN
if df is empty
2021-03-02 13:38:55 +01:00
Matthias
6eb253c31e
Merge pull request #4469 from freqtrade/rpc/locks
...
Add RPC methods to remove locks
2021-03-02 10:41:08 +01:00
Matthias
4bb6a27745
Don't catch errors that can't happen
2021-03-02 06:59:58 +01:00
Matthias
007ac7abb5
Add telegram pair unlocking
2021-03-01 20:09:40 +01:00
Matthias
6640156ac7
Support deleting locks via API
2021-03-01 19:50:39 +01:00
Matthias
6eef6d41bc
Merge pull request #4465 from freqtrade/dependabot/pip/develop/arrow-1.0.2
...
Bump arrow from 0.17.0 to 1.0.2
2021-03-01 09:30:11 +01:00
Matthias
2083cf6ddf
Fix mypy errors introduced by Arrow update
2021-03-01 08:57:57 +01:00
Matthias
3d65ba2dcb
Add rpc method to delete locks
2021-03-01 07:51:33 +01:00
Matthias
bba9b9e819
Don't use __root__ directly for api response
2021-03-01 07:08:44 +01:00
Matthias
4b689f5b88
Merge pull request #4420 from freqtrade/dependabot/pip/develop/mypy-0.812
...
Bump mypy from 0.790 to 0.812
2021-02-28 15:30:44 +01:00
Matthias
aba034ff40
Fix mypy problem after mypy 0.800 upgrade
2021-02-28 11:04:30 +01:00
Matthias
54ccbd9370
Merge pull request #4391 from squat0001/develop
...
Add dust level to balance command in telegram
2021-02-28 10:36:44 +01:00
Matthias
a13dc3cdde
Use sensible defaults for balance_dust_level
2021-02-28 09:57:52 +01:00
Matthias
9cb37409fd
Explicitly convert starting-balance to float
2021-02-28 09:56:29 +01:00
Florian Reitmeir
0895407811
add balance_dust_level parameter to make telegram less chatty
2021-02-28 08:51:32 +01:00
Matthias
05f057fe72
Stringify favicon path
...
potentially closes #4459
2021-02-28 08:48:28 +01:00
Matthias
b2e9295d7f
Small stylistic fixes
2021-02-27 19:57:42 +01:00
Matthias
324b9dbdff
Simplify wallet code
2021-02-27 10:33:25 +01:00
Matthias
f5bb5f56f1
Update documentation with backtesting compounding possibilities
2021-02-27 09:33:00 +01:00
Matthias
98f3142b30
Improve handling of backtesting params
2021-02-27 09:33:00 +01:00
Matthias
86f9409fd2
fix --stake-amount parameter
2021-02-27 09:33:00 +01:00
Matthias
fc256749af
Add test for backtesting _enter_trade
2021-02-27 09:33:00 +01:00
Matthias
60db6ccf45
Add test for subclassing
2021-02-27 09:33:00 +01:00
Matthias
53a57f2c81
Change some types
...
Fix types of new model object
2021-02-27 09:33:00 +01:00
Matthias
03eb23a4ce
2 levels of Trade models, one with and one without sqlalchemy
...
Fixes a performance issue when backtesting with sqlalchemy, as that
uses descriptors for all properties.
2021-02-27 09:33:00 +01:00
Matthias
394a6bbf2a
Fix some type errors
2021-02-27 09:33:00 +01:00
Matthias
52acacbed5
Check min-trade-stake in backtesting
2021-02-27 09:33:00 +01:00
Matthias
f04f07299c
Improve backtesting metrics
2021-02-27 09:33:00 +01:00
Matthias
7913166453
Improve performance by updating wallets only when necessary
2021-02-27 09:33:00 +01:00
Matthias
37d7d2afd5
Wallets should not recalculate close_profit for closed trades
2021-02-27 09:33:00 +01:00
Matthias
f367375e5b
ABS drawdown should show wallet high and low values
2021-02-27 09:33:00 +01:00
Matthias
aed23d55c2
Add starting balance to profit cumsum calculation
2021-02-27 09:33:00 +01:00
Matthias
0d2f877e77
Use absolute drawdown calc
2021-02-27 09:32:59 +01:00
Matthias
74fc4bdab5
Shorten debug log
2021-02-27 09:32:59 +01:00
Matthias
72f21fc5ec
Add trade-volume metric
2021-02-27 09:32:59 +01:00
Matthias
35e6a9ab3a
Backtest-reports should calculate total gains based on starting capital
2021-02-27 09:32:59 +01:00
Matthias
8d61a26382
Allow dynamic stake for backtesting and hyperopt
2021-02-27 09:32:59 +01:00
Matthias
e4abe902fc
Enable compounding for backtesting
2021-02-27 09:32:59 +01:00
Matthias
959ff99046
Add Dry-run wallet CLI option
2021-02-27 09:32:59 +01:00
Matthias
0754a7a78f
total_open_trades_stake should support no-db mode
2021-02-27 09:32:59 +01:00
Matthias
0faa6f84dc
Improve Wallet logging disabling for backtesting
2021-02-27 09:32:59 +01:00
Matthias
20455de2a9
Small enhancements to docs
2021-02-27 09:32:59 +01:00
Matthias
081b9be45c
use get_all_locks to get locks for backtest result
2021-02-27 09:32:59 +01:00
Matthias
e32b2097f0
Use timestamp in UTC timezone for ROI comparisons
2021-02-27 09:32:59 +01:00
Matthias
712d503e6c
Use sell-reason value in backtesting, not the enum object
2021-02-27 09:32:59 +01:00
Matthias
b5177eadab
Extract close method for exchange
2021-02-27 09:32:59 +01:00
Matthias
4ce4eadc23
remove only ccxt objects when hyperopting
2021-02-27 09:32:59 +01:00
Matthias
9361aa1c95
Add wallets to backtesting
2021-02-27 09:32:59 +01:00
Matthias
f0a154692d
Wallets should use trade_proxy
2021-02-27 09:32:59 +01:00
JoeSchr
642e3be7c5
Fix(strategy/interface.py): comment typo
...
`advice_buy` -> `advise_buy`
2021-02-26 23:17:59 +01:00
Matthias
0bb80d1442
Merge pull request #4446 from Xanders/patch-1
...
Webhook JSON format
2021-02-26 20:03:07 +01:00
Matthias
7d87c44c35
Merge pull request #4436 from Th0masL/forcesell_type
...
Allow changing the order_type for forcesell
2021-02-26 19:42:00 +01:00
Xanders
7281e794b4
Fix too long line at webhook.py
2021-02-26 21:31:33 +03:00
Xanders
fc69240e6d
Add JSON-encoded webhooks
2021-02-26 17:46:23 +03:00
Matthias
1b3b389109
Remove binanceje, add ftx to config selector
...
closes #4441
2021-02-26 07:58:15 +01:00
Th0masL
006f31129e
Reduced length of the line
2021-02-25 05:23:24 +02:00
Th0masL
117f0064ed
Allow changing the order_type for forcesell
2021-02-25 05:02:08 +02:00
Matthias
c71ecd3680
Fix wrong pair-content in strategy-analysis notebook and documentation
...
closes #4399
2021-02-22 20:04:36 +01:00
Matthias
228e51b60b
Fix #4405
2021-02-22 13:34:52 +01:00
Matthias
3629892fc3
Stoploss-guard should use the trade_limit or more
...
fix #4404
2021-02-20 19:38:44 +01:00
Matthias
245e39e523
dry-run should be a bool, not a string
2021-02-20 19:17:26 +01:00
Matthias
2b0d2070d0
Avoid crash with /delete
...
When a trade is deleted between querying the database and actually
handling the trade.
closes #4326
2021-02-18 12:49:14 +01:00
Matthias
b5a9ce2894
Download data in the right format as well ...
...
closes #4393
2021-02-18 09:26:35 +01:00
Matthias
11b20d6932
Add config to hyperopt_loss_function documentation
2021-02-17 07:04:29 +01:00
Matthias
eff0d46ea1
Merge pull request #4375 from flomerz/pass_processed_data
...
pass data and config to loss function
2021-02-16 20:06:50 +01:00
Matthias
009a447d8a
Adjust documentation for new parameter in loss functions
2021-02-16 19:51:09 +01:00
Florian Merz
3e06cd8b3a
pass data and config to loss function
2021-02-16 10:11:33 +01:00
Matthias
1a3e7191ed
Merge pull request #4116 from squat0001/develop-squat
...
Develop squat
2021-02-15 07:15:11 +01:00
Florian Reitmeir
5c263c7ffd
add backtesting results abs profit min/abs profit max, to get a better view if a strategy has a enough money to succeed
2021-02-14 19:41:12 +01:00
Matthias
ee74bc1f52
timeframe is mandatory, no need to use .get()
2021-02-14 11:01:12 +01:00
Matthias
da89838b5c
Set bittrex limits as returned by the exchange
...
closes #4181
2021-02-14 10:32:55 +01:00
Matthias
5622bb3247
Make candle_limit optionally timeframe dependent
2021-02-14 10:29:45 +01:00
Matthias
7ecf8f8b80
Cleanup candle_limit usage
2021-02-14 10:08:05 +01:00
Matthias
6f77ec063e
Fix cookieError on python<3.8
...
Only occurs in combination with api-server enabled,
due to some hot-fixing starlette does.
Since we load starlette at a later point, we need to replicate
starlette's behaviour for now, so sameSite cookies don't create a
problem.
closes #4356
2021-02-14 07:22:08 +01:00
Matthias
73d91275c4
Reset sell_order_status if a new sell-order is placed
...
closes #4365
2021-02-14 07:11:07 +01:00
Eko Aprili Trisno
af98e025d1
Merge branch 'develop' into patch-1
2021-02-14 02:12:38 +07:00
Eko Aprili Trisno
ba32708ed4
Update telegram.py
2021-02-14 01:40:04 +07:00
Matthias
d4c8be915c
Use fstring where possible
2021-02-13 16:11:49 +01:00
Matthias
e7acee7904
Improve coin value output by rounding coin specific
2021-02-13 16:05:56 +01:00
Matthias
072abde9b7
Introduce round_coin_value to simplify coin rounding
2021-02-13 16:05:35 +01:00
Matthias
dd23f6bcbc
Fix type for getting pairs
2021-02-11 20:29:31 +01:00
Matthias
843fb204e9
Fix problem with inf values returned from dataframe for api methods
2021-02-11 20:21:31 +01:00
Matthias
aa79574c0c
Position-size should NEVER be over available_capital
...
Part of #4353
2021-02-11 17:09:31 +01:00
Matthias
7ee149da5d
Improve plotting errorhandling
...
closes #4327
2021-02-08 20:08:32 +01:00
Matthias
c5ab3a80a5
Check if order is a dict before parsing
...
closes #4331
2021-02-08 19:35:22 +01:00