Matthias
070a1990e8
Improve handling of None values from custom_stoploss
2023-08-14 16:46:33 +02:00
Matthias
fc60c0df19
Add call to stoploss-adjust for backtesting
2023-08-14 16:00:33 +02:00
Matthias
d53b6871ea
Bump pre-commit mypy
2023-08-14 13:22:55 +02:00
Matthias
08bc615826
Further simplify backtest order handling
2023-08-14 13:22:55 +02:00
Matthias
bcc2dd9803
Simplify backtest order closing
2023-08-14 13:22:55 +02:00
Matthias
d7e9f87b33
Improve comment indent
2023-08-14 13:22:55 +02:00
Matthias
d7556cd66a
Remove duplicate call in backtesting
2023-08-14 13:22:55 +02:00
Matthias
1a1103c239
Add backtest-result typing
2023-07-30 10:54:03 +02:00
Matthias
6659d26131
Merge branch 'develop' into dataformat/feather
2023-07-29 20:04:12 +02:00
Matthias
9bfe96d4d6
Simplify advise calls by extracting that part into a method.
2023-07-21 20:27:52 +02:00
Matthias
91bf8abf38
Add comment to clarify usage of trim_dataframes
2023-07-21 20:22:44 +02:00
Matthias
626ea6b119
Add backtesting support for order.stake_amount
2023-07-15 14:55:22 +02:00
Matthias
17296fdf9c
Use proper cost for order
...
closes #8906
2023-07-15 09:02:17 +02:00
Matthias
b593205ad9
No need to use .get() for properties with default values
2023-07-12 18:29:12 +02:00
Matthias
cca8c4e5b8
Update default dataformat to feather
2023-07-12 18:23:30 +02:00
Matthias
05ea36f03b
Fix performance when running tons of backtests
2023-06-09 06:45:34 +02:00
Matthias
1552d81f45
Simplify load_exchange interface
2023-05-13 11:03:26 +02:00
Matthias
023c155a25
Extract signals generation from backtesting class
2023-04-28 16:14:16 +02:00
Matthias
6e395ad7c9
Refactor methods in backtesting
2023-04-28 16:09:09 +02:00
Matthias
8dd8c24595
Merge branch 'develop' into pr/froggleston/7861
2023-04-28 14:59:03 +02:00
Matthias
80a27bc0db
Fix random uvicorn error
2023-03-26 18:18:52 +02:00
Matthias
1c9abd9e35
Properly respect can_short flag in backtesting
...
closes #8387
2023-03-26 17:27:52 +02:00
Matthias
c14ac8a205
Properly handle non-replaced first entry orders
2023-03-26 16:46:41 +02:00
Matthias
b09fb5826f
don't use "can_short" in backtesting to determine application of leverage
2023-03-26 16:21:51 +02:00
Matthias
73b59df77b
Merge branch 'develop' into pr/paranoidandy/8272
2023-03-26 11:22:24 +02:00
Matthias
86aef7cf9d
Add current_time to bot_loop_start callbak
2023-03-26 11:22:19 +02:00
Matthias
b317524ed7
protect adjust_trade_position from crashing in case of unsafe code
2023-03-24 20:27:45 +01:00
Matthias
ce3efa8f00
Remove pointless asserts
2023-03-19 18:05:08 +01:00
Matthias
cd9c2c4c23
Merge branch 'develop' into pr/froggleston/7861
2023-03-19 15:00:20 +01:00
Matthias
af6fc886f6
Small refactor for new methods
2023-03-19 14:56:41 +01:00
Matthias
8f29312c9e
Minimum re-entry stake should not include stoploss
2023-03-14 08:14:01 +01:00
Andy Lawless
a3dee9350f
Move bot_loop_start call to run on every candle
2023-03-03 20:37:05 +00:00
Matthias
6e9ff5fdd8
Merge pull request #8202 from freqtrade/remove-populate-any-indicators
...
remove populate_any_indicators
2023-03-03 06:33:25 +01:00
Matthias
b5f55c9b14
Improve type safety in backtesting
2023-03-01 20:32:32 +01:00
Matthias
f6b3998bbd
Fix backtesting type incompatibilities
2023-03-01 20:32:32 +01:00
robcaulk
fd4e27d889
remove populate_any_indicators
2023-02-21 14:22:40 +01:00
Matthias
f57394c1ce
Merge branch 'develop' into bybit
2023-01-30 07:23:41 +01:00
Matthias
25dfbb5a08
Compare stake amout >= in backtesting
...
closes #8067
2023-01-29 12:47:16 +01:00
Matthias
9286cbed86
add partial Docstring to backtesting enter_trade
2023-01-29 11:02:31 +01:00
Matthias
34e7433844
Add leverage to dry-run liquidation price calculation
2023-01-24 07:21:56 +01:00
Matthias
8108a48f39
Follow PEP 484 - no implicit optionals
2023-01-21 20:01:56 +01:00
Matthias
bb355cfac5
improve naming of backtest function
2023-01-21 19:46:27 +01:00
Matthias
80bb120026
Simplify backtesting by removing now unnecessary private function
2023-01-21 18:01:01 +01:00
Matthias
89eb1b0084
funding-fees need to be recalculated for detailed timeframes, too.
...
closes #7978
2023-01-21 17:47:37 +01:00
Matthias
c8ecedf6d5
Clarify a variable via typehint
2023-01-17 20:05:18 +01:00
Antonio Della Fortuna
5e10bb2cca
Merge branch 'develop' of https://github.com/freqtrade/freqtrade into max-open-trades
2023-01-16 20:19:46 +01:00
Antonio Della Fortuna
b0f1d914c8
Changed max_open_trades type to int or inf
2023-01-15 11:44:10 +01:00
Matthias
cbcee02ded
call data migration from backtesting
2023-01-14 20:07:33 +01:00
Antonio Della Fortuna
534aa8f7ff
Merge branch 'develop' of https://github.com/freqtrade/freqtrade into max-open-trades
...
# Conflicts:
# freqtrade/optimize/backtesting.py
2023-01-11 18:55:57 +01:00
Antonio Della Fortuna
464cb4761c
Fixed max_open_trades update from hyperopt
...
Fixed max_open_trades update from hyperopt + removed max_open_trades as a param to backtesting + refactoring
2023-01-08 12:39:39 +01:00
Antonio Della Fortuna
8c3ac56bc5
Merge branch 'develop' of https://github.com/freqtrade/freqtrade into max-open-trades
2023-01-07 11:11:59 +01:00
Matthias
92800930e9
Improve backtest detail speed
2023-01-05 10:14:58 +01:00
Matthias
8e5b4750d6
Continue in "regular backtest" case (no detail-data available).
...
link to #7967
2023-01-04 18:08:45 +01:00
Antonio Della Fortuna
f2fa476dc6
max_open_trades should be an integer
...
Max open trades will be always an integer in the strategy (-1 for infinity), but in the config -1 will be parsed as infinity
2023-01-04 16:09:27 +01:00
Antonio Della Fortuna
5fd85368a9
Added support for max_open_trades hyperopting
2023-01-04 10:34:44 +01:00
Matthias
ad0d7c9a9e
Don't allow DCA trades to go beyond max order size
...
closes #7924
2022-12-23 16:09:35 +01:00
froggleston
f5359985e8
Make CLI option and docs clearer that we're handling signals not trades
2022-12-08 18:47:09 +00:00
froggleston
5a4e99b413
Add support for collating and analysing rejected trades in backtest
2022-12-05 15:34:31 +00:00
Matthias
2219d2f491
Merge pull request #7707 from freqtrade/bt/full_detail
...
backtesting - use full detail timeframe
2022-11-27 16:09:23 +01:00
Robert Caulk
cd6f87be17
Merge pull request #7728 from freqtrade/improve_timerange
...
Simplify timerange handling
2022-11-17 19:57:48 +01:00
Matthias
0a702cdd26
Ensure more methods are typechecked
2022-11-14 20:56:35 +01:00
Matthias
0f9c5f8d41
Simplify timerange handling
2022-11-10 18:28:18 +01:00
Matthias
884014a4b9
Fix some minor typos
2022-11-07 18:35:28 +00:00
Matthias
ded57fb301
Remove no longer valid test part
2022-11-05 20:32:31 +01:00
Matthias
d089fdae34
Fix current-time_det calculation
2022-11-05 20:02:36 +01:00
Matthias
0888b53b5a
Udpate current_time handling for detail loop
2022-11-05 17:02:27 +01:00
Matthias
a11d579bc2
Verify order fills on "detail" timeframe
2022-11-05 17:02:27 +01:00
Wagner Costa Santos
6606a0113f
refactoring - remove unnecessary config file
2022-10-20 14:53:25 -03:00
Wagner Costa Santos
52b60c5cbb
Merge branch 'develop' into backtest_live_models
2022-10-20 11:59:37 -03:00
Matthias
c3d4fb9f1b
Simplify backtest calling interface
2022-10-18 06:39:55 +02:00
Matthias
6252ae466e
Convert position_stacking to attribute of backtest
2022-10-17 06:57:26 +02:00
Matthias
8534dfb0d4
Extract backtest 1 candle from main function
2022-10-17 06:57:26 +02:00
Matthias
0e8cf366f5
Keep trade state in LocalTrade
2022-10-17 06:57:26 +02:00
Matthias
e82baf5f60
Use helper-method to modify trades_open
2022-10-16 16:45:16 +02:00
Evgeniy Vladimirov
de9f5660f3
Fix counting available trade slots in backtesting.
2022-10-16 12:56:59 +03:00
Matthias
b6c096d3bc
Simplify backtest condition
2022-10-16 09:22:56 +02:00
Matthias
05ca725e4d
Remove no longer needed local state
2022-10-15 12:07:22 +02:00
Wagner Costa Santos
02fc59d473
Merge branch 'develop' into backtest_live_models
2022-10-13 15:52:19 -03:00
Matthias
f019471051
Don't round prices if no custom prices have been used
...
closes #7573
2022-10-13 19:51:42 +02:00
Wagner Costa Santos
3081e73f8a
Merge branch 'develop' into backtest_live_models
2022-10-10 14:53:45 -03:00
Marek Cieplucha
3264d7b890
Fix for #7534 in backtesting
2022-10-04 20:27:13 +02:00
Matthias
2ce265bed3
Merge pull request #7473 from freqtrade/feat/producerpairlist
...
Producerpairlist
2022-09-30 06:54:15 +02:00
Wagner Costa Santos
6845a5c6ea
backtest_live_models - refactoring after PR review
2022-09-29 01:48:38 -03:00
Matthias
30a5bb08dd
partial exits should account for leverage
2022-09-27 19:53:55 +02:00
Wagner Costa Santos
3c002ff752
Merge branch 'develop' into backtest_live_models
2022-09-27 10:27:47 -03:00
Matthias
8c2e473ee5
Fix test warning
2022-09-27 08:53:29 +00:00
Wagner Costa Santos
182d9e5426
Merge branch 'develop' into backtest_live_models
2022-09-26 17:23:44 -03:00
Matthias
cf5267a4d3
Merge pull request #7481 from chusri/develop
...
✏️ fixed typo from StaticPairlist to StaticPairList
2022-09-26 18:11:56 +02:00
Matthias
8e0811d9de
Call cleanup explicitly
2022-09-26 09:35:21 +00:00
Thaweesak Chusri
c4784c6695
✏️ fixed typo from StaticPairlist to StaticPairList
2022-09-26 11:05:27 +08:00
Wagner Costa Santos
5880f7a638
backtest_live_models - params validation and get timerange from live models in BT
2022-09-25 23:14:00 -03:00
Matthias
0c810868de
Add Dataprovider to pairlist
2022-09-25 09:22:21 +02:00
Matthias
585342f193
Merge pull request #7454 from freqtrade/fix_backtesting_dfsize_freqai
...
Ensure the DF has the same size in backtesting FreqAI
2022-09-24 16:17:39 +02:00
paranoidandy
2cc00a1a2c
Allow use of --strategy-list with freqai, with warning ( #7455 )
...
* Allow use of --strategy-list with freqai, with warning
* ensure populate_any_indicators is identical for resused identifiers
* use pair instead of metadata["pair"]
Co-authored-by: robcaulk <rob.caulk@gmail.com>
2022-09-24 13:21:01 +02:00
Wagner Costa Santos
b1dbc3a65f
remove function remove_training_from_backtesting and ensure BT period is correct with startup_candle_count
2022-09-22 12:13:51 -03:00
Matthias
667853c504
Use Alias to type config objects
2022-09-18 13:20:55 +02:00
Matthias
e5368f5a14
backtesting confirm_trade_entry should pass correct amount, not stake-amount
...
closes #7423
2022-09-16 13:24:20 +00:00
Matthias
4d69df08dd
trunc to amount precision before checking valid partial exits
...
closes #7368
2022-09-07 06:43:08 +02:00
Matthias
df50b1928d
Fix funding fee calculation for backtesting
2022-09-03 15:01:42 +02:00
Matthias
a88ffd2c9d
Merge branch 'develop' into move_datadownload
2022-08-31 10:23:45 +00:00
Matthias
226fa5d93c
Simplify liquidation price calling structure
2022-08-29 07:04:48 +02:00
Matthias
2b70c3d0c0
support price callback for partial exits in bt
...
This will align results to how live works.
closes #7292
2022-08-27 08:50:09 +02:00
Matthias
01126c43f7
Fix liquidation price tier calculation
...
closes #7294
2022-08-26 20:14:24 +02:00
robcaulk
4b7e640f31
reduce code duplication, optimize auto data download per tf
2022-08-26 13:56:44 +02:00
Matthias
53d46a0385
align max_entry_position_adjustment
behavior of backtesting to live
...
closes #7293
2022-08-25 20:36:17 +02:00
Matthias
6636f17e0f
Simplify usage of amount_to_contract precision
2022-08-25 07:08:22 +02:00
Matthias
32faad9333
Fix backtest calculation problem with DCA
...
closes #7287
2022-08-24 20:36:08 +02:00
Matthias
fe7108ae75
Convert amount to contracts before comparing for close
...
closes #7279
2022-08-23 06:37:38 +02:00
robcaulk
ac42c0153d
deprecate indicator_max_period_candles, automatically compute startup candles for FreqAI backtesting.
2022-08-22 18:19:07 +02:00
Matthias
f6d832c6d9
Add get_option to expose ft_has via method
2022-08-21 17:51:46 +02:00
Matthias
5b3f031590
Use hyperopt safe amount precision method
2022-08-20 14:13:15 +02:00
Matthias
0da0600836
Have backtesting respect tradable size
...
closes #7161
2022-08-20 11:41:11 +02:00
Matthias
fa89368c02
Add test for precision backpopulation
2022-08-16 11:11:52 +02:00
Matthias
15a1c59a91
Backtesting should cache precisionMode
2022-08-16 10:15:19 +02:00
Matthias
711b6b1a1a
Merge branch 'develop' into precise_calcs
2022-08-16 09:29:39 +02:00
Matthias
c3f159bd57
Add precision fields to database
2022-08-15 19:58:40 +02:00
Matthias
3b827ee60a
Add "freqai.enabled" flag to disable freqAI via config flag
...
aligns with how other optional modules work in freqtrade.
2022-08-13 09:24:04 +02:00
Matthias
f6545ebdb8
Disallow backtesting with --strategy-list for now.
2022-08-13 09:10:03 +02:00
eSeR1805
f755df2568
Merge branch 'develop' into feature_keyval_storage
...
Update rpc/telegram to use MAX_MESSAGE_LENGTH.
2022-08-11 11:26:45 +03:00
Matthias
9a82898d6b
Merge branch 'develop' into feat/freqai
2022-08-09 06:22:57 +02:00
robcaulk
26de992d20
ensure user sets startup candles in backtesting mode
2022-08-05 12:23:14 +02:00
Matthias
d75e0a9820
Fix Flake8 errors after flake update
2022-08-01 06:43:59 +02:00
Kavinkumar
a4bada3ebe
Partial exit using average price ( #6545 )
...
Introduce Partial exits
2022-07-31 14:19:04 +02:00
Matthias
d046f0cc5e
Improve method wording for liquidation price setter
2022-07-30 16:11:31 +02:00
Matthias
8711b7d99f
Liquidations cannot be rejected.
2022-07-30 16:10:16 +02:00
Matthias
995be90f91
Liquidation should be a separate exit type
2022-07-30 16:10:16 +02:00
Matthias
61c41fd919
Merge branch 'develop' into feat/freqai
2022-07-24 16:18:58 +02:00
Matthias
2eb1d18c2a
Don't load leverage tiers when not necessary
2022-07-23 19:56:38 +02:00
Matthias
f6bfd89cef
Merge branch 'develop' into feat/freqai
2022-07-16 18:14:34 +02:00
Matthias
e52f82b565
Add leverage to custom_stake_amount callback
...
closes #7047
2022-07-08 19:44:20 +02:00
robcaulk
a6077ac7f4
Merge feat/freqai into develop to get new features
2022-07-03 16:17:13 +02:00
Matthias
07aa372e2a
Ensure bot_loop_start is called in hyperopt, too
...
closes #7001
2022-07-03 14:10:59 +02:00
Matthias
2b07d34611
Revert several undesired changes
2022-06-23 20:47:51 +02:00
Matthias
8bf0bf10c5
Merge branch 'develop' into pr/SmartManoj/6859
2022-06-23 20:43:35 +02:00
eSeR1805
9fdb8b07ac
Rename persistant storage infrastructure.
2022-06-19 15:56:50 +03:00
eSeR1805
0009b987e4
Merge branch 'develop' into feature_keyval_storage
2022-06-19 13:32:25 +03:00
Matthias
8c46d19071
Fix backtesting bug
...
balance was never released on cancelled trades
2022-06-18 16:27:54 +02:00
Matthias
017fd03180
Fix but with late entries in backtesting
2022-06-18 09:05:22 +02:00
Matthias
3c62df6b86
Ensure the same timestamp is used for backtest and signal export
2022-06-15 06:53:52 +02:00
eSeR1805
1551510c6f
Merge branch 'develop' into feature_keyval_storage
2022-06-09 11:35:35 +03:00
Matthias
7eacb847b0
Fix backtesting bug when order is not replaced
2022-06-08 20:21:45 +02:00
Matthias
f709222943
Properly close out orders in backtesting
2022-06-05 22:12:27 +02:00
eSeR1805
9f1a7209d6
Merge branch 'develop' into feature_keyval_storage
2022-06-05 12:18:30 +03:00
Matthias
a790bad1e4
Add entry_tag to leverage callback
...
closes #6929
2022-06-05 10:24:54 +02:00
Matthias
34a44b9dd2
Fix backtesting bug when canceling orders
...
closes #6911
2022-05-31 20:32:41 +02:00
Matthias
66edbcd3d5
Fix slight backtesting bug in edge-case scenarios
2022-05-31 20:08:34 +02:00
robcaulk
7523ed825e
automatically detect maximum required data based on user fed indicators (to avoid NaNs in dataset for rolling indicators), add new config parameter for backtesting to let users increase their startup_candles to accommodate high timeframe indicators, add docs to explain all. Add new feature for automatic indicator duplication according to user defined intervals (exhibited in example strat and configs now).
2022-05-31 18:42:27 +02:00
eSeR1805
854bd9af2b
Merge branch 'develop' into feature_keyval_storage
2022-05-31 12:28:58 +03:00
eSeR1805
10917a280a
Add initial structure and wrapping.
2022-05-31 12:26:07 +03:00
Matthias
eaa656f859
Hyperoptable parameters can be instance attributes
2022-05-30 07:07:47 +02:00