Commit Graph

1513 Commits

Author SHA1 Message Date
Matthias 79538368db Simplify liquidation price calculation 2022-02-28 19:47:21 +01:00
Matthias 1d27cbd01f Simplify leverage_prep interface 2022-02-28 19:34:10 +01:00
Matthias 8e2d3445a7 Move leverage_prep calculations to exchange class 2022-02-28 19:29:42 +01:00
Sam Germain b103045a05 backtesting._enter_trade update liquidation price on increased position 2022-02-27 12:09:45 -06:00
Sam Germain 6fdcc714bf backtesting margin_mode key fix 2022-02-27 11:59:27 -06:00
Matthias 1b6548c8d8 Don't modify leverage through DCA 2022-02-27 15:44:23 +01:00
Matthias bcfa73d492 Add "nr_of_successfull_entries" 2022-02-27 15:44:23 +01:00
Sam Germain 8af2ea754f add margin mode to backtesting 2022-02-26 14:11:21 -06:00
Sam Germain 6dbd249570 backtesting._enter_trade get liquidation_price and backtesting._leverage_prep 2022-02-26 13:55:01 -06:00
Matthias fd936e26ae Merge branch 'develop' into feat/short 2022-02-24 19:56:42 +01:00
Matthias 42df65d4ec Make sure backtesting is cleaned up in tests 2022-02-24 14:22:49 +00:00
Matthias 8952829adc Merge branch 'develop' into feat/short 2022-02-23 06:28:15 +01:00
Matthias 70f4305dfa don't allow short trades in spot mode 2022-02-21 19:19:12 +01:00
Matthias d610b6305d Improve /balance output by removing trailing zeros 2022-02-19 16:40:30 +01:00
Sam Germain a9eb8ce1bf added todos back in 2022-02-16 05:47:41 -06:00
Matthias 64b98989d2 Update open candle ROI condition 2022-02-15 19:25:32 +01:00
Matthias 30f6dbfc40 Attempt fix for #6261 2022-02-14 20:02:38 +01:00
Sam Germain 19783e0d39 edited todos 2022-02-14 09:02:55 -06:00
Sam Germain fc2d3649a1 edited todos 2022-02-12 16:23:14 -06:00
Matthias 0c6d92a7a6 Merge branch 'develop' into feat/short 2022-02-11 17:02:04 +01:00
Matthias 6a59103869 update wallets in backtesting to ensure a fresh wallet is used
closes #6388
2022-02-10 19:40:36 +01:00
Matthias 9f47853661
Merge pull request #6235 from freqtrade/backtest_order_timeout
Backtest order timeout
2022-02-09 07:12:35 +01:00
Matthias dcf8ad36f9 Backtesting should not allow unrealistic (automatic-filling) orders. 2022-02-08 19:12:01 +01:00
Matthias b192c82731 Only call "custom_exit_price" for limit orders 2022-02-08 07:10:54 +01:00
Matthias 036c2888b4 Track timedout entry/exit orders 2022-02-07 18:49:30 +01:00
zx 4bce64b427 commented method deletition 2022-02-07 14:12:07 +01:00
zx 7811a36ae9 max_drawdown_abs calc fix & .DS_Store deletition 2022-02-07 07:44:13 +01:00
zx 8cdb6e0774 DRAWDOWN_MULT back to a higher value as built-in for safer HOs first 2022-02-07 06:31:16 +01:00
zx 2893d0b50d proper var name 2022-02-07 06:22:27 +01:00
zx 7d3b80fbde isort fix and leftover cleaning 2022-02-06 21:09:40 +01:00
zx 6b5f63d4d6 change profit_ratio by profit_abs 2022-02-06 16:28:01 +01:00
zx 0b01fcf047 Add ProfitDrawdownHyperoptLoss method 2022-02-06 15:40:54 +01:00
Matthias 644442e2f9 Track timedout orders 2022-02-06 13:37:31 +01:00
Matthias 17d748dd4c Improve handling of left_open_trades 2022-02-06 13:19:00 +01:00
Sam Germain e0d42ad9a7
Update backtesting.py 2022-02-05 18:29:48 -06:00
Matthias 9bf86bbe27 Extract backtesting row validation to separate function 2022-02-05 16:28:47 +01:00
Matthias 58fad72778 Update wallets when necessary
closes #6321
2022-02-05 16:28:47 +01:00
Matthias 4ea79a32e4 Use Order object for ft_timeout check 2022-02-05 16:28:47 +01:00
Matthias 1e603985c5 Extract backtesting order cancelling 2022-02-05 16:28:47 +01:00
Matthias 6637dacd7f Extract protections in backtesting 2022-02-05 16:28:47 +01:00
Matthias 7ac44380f7 Extract backtest order closing to models class 2022-02-05 16:28:46 +01:00
Matthias 090554f197 Try fill backtest order imediately for adjusted order 2022-02-05 16:28:21 +01:00
Matthias f4149ee462 Force ROI to be within candle 2022-02-05 16:28:21 +01:00
Matthias 44e616c264 Add unfilledtimeout to required props for backtesting 2022-02-05 16:28:21 +01:00
Matthias 49cecf1cb2 Small cosmetic fix 2022-02-05 16:28:21 +01:00
Rokas Kupstys 9140679bf4 Backtest order timeout continued. 2022-02-05 16:28:21 +01:00
Rokas Kupstys 15698dd1ca Fix errors so it runs, implement timeout handling. 2022-02-05 16:28:21 +01:00
Matthias f7a1cabe23 Add first version to fill orders "later" in backtesting 2022-02-05 16:28:21 +01:00
Matthias c12e5a3b6c Initial idea backtesting order timeout 2022-02-05 16:28:21 +01:00
Sam Germain 8b57827676 exchange.get_max_pair_stake_amount hard set leverage to 0 2022-02-04 14:26:15 -06:00
Sam Germain dc6cb445fd Merge branch 'feat/short' into max-amount 2022-02-04 04:42:38 -06:00
Sam Germain 3ee2b7978c wallets.validate_stake_amount added param max_stake_available 2022-02-03 20:33:16 -06:00
Sam Germain 7465037906 freqtradebot.execute_entry test for too high stake amount 2022-02-03 20:33:16 -06:00
Sam Germain 8c680d75b9 moved max_stake_amount check for None to exchange.get_max_pair_stake_amount 2022-02-03 20:33:16 -06:00
Sam Germain 6b6b35ac1c check for max stake limit in freqtradebot and backtesting 2022-02-03 20:33:04 -06:00
Sam Germain edc0e9c75f backtesting._get_ohlcv_as_lists changed candle_type to candle_type_def 2022-02-03 17:48:34 -06:00
Sam Germain 977f87659c edited backtesting._get_sell_trade_entry TODO: removed "Other fees" 2022-02-03 17:48:33 -06:00
Sam Germain 73d10b5c02 backtesting._get_ohlcv_as_lists removed # TODO-lev: Candle-type should be conditional, either "spot" or futures 2022-02-03 17:48:33 -06:00
Matthias a4e1aaa9bd
Merge pull request #6307 from freqtrade/bt_shift
Remove shift in analyzed dataframe columns
2022-02-02 19:52:10 +01:00
Matthias 463714832d Merge branch 'develop' into feat/short 2022-01-29 14:19:30 +01:00
Matthias 5d0c2bcb44 Shift candles after pushing them to dataprovider
this will ensure that the signals are not shifted in callbacks
closes #6234
2022-01-28 07:25:10 +01:00
Matthias 82e193d9f0
Merge pull request #6260 from stash86/pos_adjust
Add max_buy_position_adjustment as attribute
2022-01-27 20:13:51 +01:00
Matthias 002226f5fd Update setting to max_entry_position_adjustment 2022-01-27 16:57:50 +01:00
Matthias 12c79967f5
Merge pull request #6258 from italodamato/pass_dimensions_to_generate_estimator
Pass dimensions to generate_estimator
2022-01-25 19:37:22 +01:00
Italo 30b27ae736 explicit dtype 2022-01-25 12:29:55 +00:00
Italo f7a5b2cb71 explicit dimensions, added **kwargs, updated docs 2022-01-25 11:43:40 +00:00
Stefano Ariestasia 0fa7986369
Merge branch 'freqtrade:develop' into pos_adjust 2022-01-25 10:30:18 +09:00
Matthias e252830229 Add entry_tag to "entry" callbacks 2022-01-24 07:02:01 +01:00
Reigo Reinmets 451eca51c8 Optimise the multiple usages of the same timestamp. 2022-01-23 20:58:25 +02:00
Reigo Reinmets e67a54f7a9 Fix missing order time info in backtesting. 2022-01-23 20:52:35 +02:00
Matthias 7429f535c1 Imrpove code by reusing available properties 2022-01-23 18:59:09 +01:00
Matthias ad28543d4d Update kraken calculation 2022-01-22 19:46:11 +01:00
Matthias a0c0c4dcbe Update funding_fee formula to correctly calculate fees for long trades 2022-01-22 19:46:10 +01:00
Matthias f26cd19146 Merge index and mark rates as part of dataload 2022-01-22 19:45:46 +01:00
Matthias 84c6d92d4c calculate_funding_fees is actually a public exchange interface (used in backtesting). 2022-01-22 19:45:46 +01:00
Matthias e9e7fd749b Support funding-fees while running backtest 2022-01-22 19:45:43 +01:00
Matthias f090dcc597 Merge branch 'develop' into feat/short 2022-01-22 17:56:01 +01:00
Matthias 01b331ee42
Merge pull request #6274 from italodamato/set-stoploss-at-trade-creation
set stoploss at trade creation
2022-01-22 16:17:47 +01:00
Italo 82f0d4d056 set stoploss at trade creation 2022-01-22 14:03:12 +00:00
Stefano Ariestasia fe5f61694b
Merge branch 'freqtrade:develop' into pos_adjust 2022-01-22 21:25:16 +09:00
Matthias bb1d8fb54f Improve message when no hyperopt fie is found
closes #6266
2022-01-21 15:24:26 +01:00
Stefano Ariestasia f3a152a5a2
Merge branch 'freqtrade:develop' into pos_adjust 2022-01-21 17:11:36 +09:00
Matthias a6c7f45545 Update webserver backtseting to reuse prior results 2022-01-20 06:51:48 +01:00
Stefano Ariestasia 62ea1a445e add lines to show_config message 2022-01-20 10:03:26 +09:00
Rokas Kupstys 5fffc5033a Rework backtesting --no-cahche to --cache=[none, day, week, month].
Fix an issue where config modification during runtime would prevent use of cached results.
2022-01-19 11:44:35 +02:00
Italo a4dbdb549d added type spec 2022-01-19 01:37:47 +00:00
Italo 407c20412d Pass dimensions to generate_estimator
It's needed in order to create isotropic kernels for the GaussianProcessRegressor
2022-01-19 01:07:41 +00:00
Matthias 2bcfc0c90c Add warning about cache problems 2022-01-16 18:01:05 +01:00
Matthias 5bb48eaed0 Replace Nan with 0 or None in backtesting
part of #6224
2022-01-16 14:49:29 +01:00
Rokas Kupstys 062d00e8f2 Fix @informative decorator failing with edge. 2022-01-15 17:31:16 +02:00
Rokas Kupstys 2b7405470a Fix timerange check. 2022-01-15 17:30:40 +02:00
Rokas Kupstys 16861db653 Implement previous backtest result reuse when config and strategy did not change. 2022-01-15 17:30:40 +02:00
Reigo Reinmets 13bc5c5d8f Fine, this does look better. 2022-01-13 20:24:21 +02:00
Reigo Reinmets 678be0b773 Slightly move code. 2022-01-13 20:16:45 +02:00
Reigo Reinmets 3b7167ab07 Fix backtesting missing filled amounts in orders. 2022-01-10 20:30:40 +02:00
Reigo Reinmets 0bca07a32a Added min_stake, max_stake. Removed pair as its included in trade. 2022-01-08 17:20:02 +02:00
Reigo Reinmets 8e424f7c73
Merge branch 'freqtrade:develop' into dca 2022-01-08 14:57:15 +02:00
Matthias dad080f56f Merge branch 'develop' into feat/short 2022-01-08 10:45:15 +01:00
Matthias 04976658da Fix crash when using backtesting-show on a old backtestresult 2022-01-07 17:34:47 +01:00
Rokas Kupstys 11ace0f867 Instead of clearing `processed` dict, store `df_analyzed` (one with buy/sell signals) dataframe in it.
It still saves memory because this dataframe is kept by DataProvider.
Fixes #6179.
Amends #6133 (a715083fc0).
2022-01-07 12:07:49 +02:00