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
982c0315fa
Rename variable
2022-09-11 19:31:11 +02:00
Matthias
72d197a99d
Run first epoch in non-parallel mode
...
this allows dataprovider to load it's cache.
closes #7384
2022-09-11 17:51:07 +02:00
Matthias
78cd46ecd5
hyperopt Remove unnecessary arguments
2022-09-11 14:59:39 +02:00
Matthias
32e13d65c3
Refactor hyperopt to extract evaluate_result
2022-09-11 14:59:39 +02:00
Matthias
a48923c0e4
Extract widget colorization to separate function
2022-09-11 14:59:39 +02:00
Matthias
37fcbeba58
Update backtesting output wording to Entries
2022-09-09 19:58:55 +02:00
Matthias
4d69df08dd
trunc to amount precision before checking valid partial exits
...
closes #7368
2022-09-07 06:43:08 +02:00
Matthias
98ec84fca6
Merge pull request #7339 from freqtrade/fix/fundingfee_handling
...
Fix/fundingfee handling
2022-09-06 19:21:40 +02:00
Matthias
4dec19de9f
Add comment to explain why we use the non-trimmed DF
2022-09-06 06:52:50 +02:00
Italo
9f5642fd97
fix hyperopt df preprocessing
2022-09-05 18:12:19 +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
6686489c06
Merge pull request #7258 from freqtrade/feat/hyp_optinal_indicator
...
Add flag to move hyperopt populate_indicators to epoch
2022-08-27 09:21:16 +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
aa3da092a0
Dont' use classProperty - that's not supported on 3.8
2022-08-20 10:55:52 +02:00
Matthias
bc359675a2
Add --analyze-per-epoch - moving populate_analysis to the epoch process
2022-08-19 15:19:43 +02:00
Matthias
09f8904545
Extract analysis to separate method
2022-08-19 15:12:55 +02:00
Matthias
08ef5ad2d8
Add HyperoptState enum and container class
2022-08-19 15:11:43 +02:00
Matthias
83ca168bb8
Merge pull request #7216 from freqtrade/precise_calcs
...
Precise calcs
2022-08-17 14:32:02 +02:00
Matthias
0b0e7eaf96
Mutex TTL Cache accesses which can be accessed by multiple threads
...
Apparently, cachetools is (intentionally) not threadsafe
when using the Caches directly.
It's therefore recommended to wrap these with an explicit lock to avoid
problems.
source: https://github.com/tkem/cachetools/issues/245
closes #7215
2022-08-16 19:48:21 +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
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
40e2da10f3
Add hypeorpt cloudpickle magic
...
closes #7078
2022-07-16 11:49:33 +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
Matthias
bb61250bfe
Merge pull request #6987 from freqtrade/profit_metrics
...
Profit metrics
2022-06-18 17:20:20 +02:00
Matthias
474e6705e6
Add Profit factor to backtesting
2022-06-18 16:35:40 +02:00
Matthias
8c46d19071
Fix backtesting bug
...
balance was never released on cancelled trades
2022-06-18 16:27:54 +02:00
Matthias
6a15d36d14
Add Drawdown and profit_factor to /profit
...
#6816
2022-06-18 11:14:28 +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
Italo
7142394121
remove random_state condition
...
otherwise the random sample always draws the same set of points
2022-06-10 09:46:45 +01:00
Italo
dce9fdd0e4
don't overwrite is_random
...
this should fix issue #6746
2022-06-09 20:06:23 +01:00
Matthias
7eacb847b0
Fix backtesting bug when order is not replaced
2022-06-08 20:21:45 +02:00
Matthias
0b806af487
Add orders column to btresult
2022-06-06 10:59:10 +02:00
Matthias
f709222943
Properly close out orders in backtesting
2022-06-05 22:12:27 +02: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
Matthias
eaa656f859
Hyperoptable parameters can be instance attributes
2022-05-30 07:07:47 +02:00
Matthias
1ee08d22d2
Delay parameter init
...
closes #6894
2022-05-29 16:39:52 +02:00
Matthias
3e66275c98
Refactor bot_start to separate function
...
to be reused further ...
2022-05-25 20:01:21 +02:00
Matthias
d6773bc32c
Merge pull request #6886 from freqtrade/fix/typing
...
Fix/typing
2022-05-24 19:41:59 +02:00
Matthias
a8ee77cd5e
Simplify backtesting typechecking
2022-05-24 19:13:35 +02:00
Matthias
23e089061b
Merge pull request #6870 from freqtrade/should_exit_list
...
Should exit list
2022-05-24 06:57:50 +02:00
Matthias
0a713faca8
Fix some type errors
2022-05-24 06:54:16 +02:00
robcaulk
e1c068ca66
add config asserts, use .get method with default values for optional functionality, move data_cleaning_* to freqai_interface (away from user custom pred model) since it is controlled by config params.
2022-05-23 12:07:09 +02:00
Matthias
eb5fe9e3ae
Merge pull request #6857 from froggleston/develop
...
Add support for fudging unavailable funding rates, allowing backtesti…
2022-05-23 06:31:51 +02:00
Matthias
e3beaae8be
update hyperopt typing
2022-05-22 19:32:32 +02:00
Matthias
bdb904e714
Should_exit should return all sell signals
2022-05-22 10:17:49 +02:00
Matthias
f006978caf
Be more explicit in default value
2022-05-21 17:35:49 +02:00
Matthias
2df42a3035
Move "funding fillup" logic to exchange class
2022-05-21 08:50:39 +02:00
Matthias
6bd5535d6c
Use exchange method to combine funding and mark candles
2022-05-21 08:31:34 +02:00
froggleston
c499a92f57
Remove surplus mark columns, and make fillna on funding rate only
2022-05-20 11:48:53 +01:00
froggleston
363098d32d
Fix reversed makr/funding_rate columns
2022-05-18 12:56:43 +01:00
froggleston
736f9f4972
Fix docs and add outer join support for merging funding rates across full timerange
2022-05-18 12:47:37 +01:00
மனோஜ்குமார் பழனிச்சாமி
2b61aa282a
Removed None in dict.get()
...
https://stackoverflow.com/a/12631641
Extra Changes: freqtrade\freqtradebot.py:70
freqtrade\plugins\pairlistmanager.py:31
2022-05-18 03:41:10 +05:30
froggleston
37e4ede65c
Fix flake issues
2022-05-17 22:32:17 +01:00
froggleston
bb758da940
Add support for fudging unavailable funding rates, allowing backtesting of timeranges where futures candles are available, but rates are not
2022-05-17 22:05:33 +01:00
eSeR1805
34684ec86a
Merge branch 'freqtrade:develop' into feat_bt_cancel_entry_reporting
2022-05-17 14:09:57 +03:00
eSeR1805
0585b378b3
BT: Report canceled/replaced orders also.
2022-05-17 14:07:42 +03:00
eSeR1805
6e8f24f6a7
BT: track canceled/replaced orders also.
2022-05-17 14:07:02 +03:00
Matthias
6fd003c655
Merge pull request #6851 from eSeR1805/feat_bt_cancel_entry_reporting
...
BT: Reporting canceled trade entries
2022-05-17 07:05:26 +02:00
மனோஜ்குமார் பழனிச்சாமி
7cd0f8a7b1
Merge branch 'develop' into patch-10
2022-05-17 08:07:13 +05:30
eSeR1805
f2e2e57237
Report trade entries canceled by user.
2022-05-17 01:41:31 +03:00
eSeR1805
fb7c0792c0
Track trade entries canceled by user.
2022-05-17 01:41:01 +03:00
robcaulk
aae233bd6c
try passing the check tests
2022-05-15 17:42:15 +02:00
robcaulk
b03c7b514d
optional style for interfacing freqai with backtesting
2022-05-15 17:42:15 +02:00
Matthias
a0b25938f4
Fix exit_reason assignment in backtesting
2022-05-15 17:41:59 +02:00
robcaulk
764f9449b4
fix logger, debug some flake8 appeasements
2022-05-15 17:41:34 +02:00
robcaulk
fc837c4daa
add freqao backend machinery, user interface, documentation
2022-05-15 17:38:58 +02:00
Matthias
18fd3bb333
Update stoploss handling for entry-order adjustment
2022-05-15 15:45:39 +02:00
eSeR1805
1c20fb7638
Refresh open_rate and stoploss on order replacement.
2022-05-14 16:37:04 +03:00
மனோஜ்குமார் பழனிச்சாமி
64670726a6
flake8 fix
2022-05-13 21:52:26 +05:30
மனோஜ்குமார் பழனிச்சாமி
71a80cab3a
fixed variable naming style
2022-05-13 21:19:40 +05:30
Matthias
277e07589e
update/fix some comments and docs
2022-05-07 17:47:37 +02:00
Matthias
d11c44940e
Slightly reword docs
...
remove some Note-boxes - people tend to skip these.
2022-05-06 06:42:01 +02:00
Matthias
2d9be6dace
move open_rate updating to close_bt_order
2022-05-05 19:50:16 +02:00
eSeR1805
2bed0eab0c
BT: Update trade open_rate on first filled order.
2022-05-05 12:19:05 +03:00
eSeR1805
496bf84e3a
Merge branch 'develop' into feat_readjust_entry
2022-05-04 21:43:41 +03:00
Matthias
88c8fe5570
Merge pull request #6715 from nicolaspapp/feat/relative-drawdown
...
Add relative drawdown
2022-05-02 21:09:14 +02:00
Matthias
3f64c6307f
Maintain compatibility with old backtest results
2022-05-02 20:01:44 +02:00
Matthias
1e2523af61
Fix some assumptions on the data
...
available_capital is not guaranteed to be available, while dry-run-wallet is.
2022-05-02 19:44:14 +02:00
eSeR1805
04c51d2d1a
Merge branch 'develop' into feat_readjust_entry
2022-05-01 21:42:15 +03:00
eSeR1805
4e43194dfe
BT: Refactor open order management.
2022-05-01 18:06:20 +03:00
Matthias
995c48b642
Merge branch 'develop' into pairlocks_direction
2022-05-01 14:59:04 +02:00
eSeR1805
9d205132d0
Revert unintended comment change.
2022-05-01 12:10:11 +03:00
eSeR1805
8c19953cdd
Quick exit when order should be maintained.
2022-05-01 12:08:19 +03:00
Matthias
53a2f55cf0
Merge branch 'develop' into pr/nicolaspapp/6715
2022-05-01 10:03:10 +02:00
Matthias
4580127fa8
Small refactor
2022-04-30 14:51:57 +02:00
Matthias
c6c569b772
chore: split BTAnalyais to metrics
2022-04-30 14:47:27 +02:00
Matthias
4262f84744
Merge branch 'develop' into pr/nicolaspapp/6715
2022-04-30 14:22:18 +02:00
Matthias
2acb68e6e2
Move hyperopt-loss functions to their own package
2022-04-30 13:59:23 +02:00
eSeR1805
3be2afdd88
Merge branch 'develop' into feat_readjust_entry
2022-04-30 13:39:23 +03:00
eSeR1805
ad0c5d9440
Refactor entry adjustment for backtesting.
2022-04-30 13:38:17 +03:00
Matthias
09b74cebce
Move edge bot_loop_start to edge_cli
...
(otherwise it's called twice when running trade mode with edge on).
2022-04-30 08:55:07 +02:00
Sam Germain
4a6f1e90c3
Merge branch 'develop' into bot-start
2022-04-29 22:23:42 -06:00
Matthias
43049e0465
Evict cache if parameter file changed
...
closes #6735
2022-04-29 19:44:17 +02:00
Matthias
fbd142844f
Refactor bt-caching stuff to it's own module
2022-04-29 19:37:13 +02:00
eSeR1805
eb23170c43
Merge branch 'develop' into feat_readjust_entry
2022-04-28 23:06:52 +03:00
Matthias
d1a61f9c61
Don't start futures backtest if leverage-tiers don't contain pair
2022-04-28 20:05:19 +02:00
Matthias
1e83589641
Fix hyperopt
2022-04-28 06:59:03 +02:00
Matthias
30c9dc6975
Fix exit-signa being assigned when tag is set but no signal is present.
2022-04-27 13:53:11 +02:00
Rokas Kupstys
6d99222320
Add 'exit_tag' parameter to 'custom_exit_price' callback.
2022-04-26 10:01:51 +03:00
Sam Germain
4fd904e0a9
added bot_start to backtesting
2022-04-25 17:48:57 -06:00
Matthias
44000ae0b3
Fix CAGR missing for old results
2022-04-25 17:37:25 +02:00
Matthias
246a336f56
Merge pull request #6726 from froggleston/bt_concat
...
Move df append to pd concat
2022-04-25 16:03:27 +02:00
froggleston
431c539cbd
Fix isort import order
2022-04-25 10:42:24 +01:00
Matthias
4444259078
Fix hyperopt-loss interface to enforce kwargs
2022-04-25 11:33:18 +02:00
froggleston
580da21dda
Move df append to pd concat
2022-04-25 10:31:19 +01:00
Matthias
4143ebbeae
Add CAGR calculation to backtesting
2022-04-25 10:51:11 +02:00
Matthias
737bdfe844
Use "side" parameter when calling Pairlocks
2022-04-24 14:33:24 +02:00
Matthias
7c79d937e0
Properly type "side" parameter
2022-04-24 14:33:24 +02:00
Matthias
9e199165b4
Update protection-interface to support per-side locks
2022-04-24 14:33:24 +02:00
Matthias
25c6c5e326
Update backtest sell terminology to exit
2022-04-24 14:30:50 +02:00
Matthias
3c17409bd7
Update buy to entry in backtesting
2022-04-24 14:28:15 +02:00
Nicolas Papp
0f943c482b
PEP8 code compliance
2022-04-23 13:15:14 -03:00
Matthias
d4e12371c2
Merge pull request #6558 from samgermain/recursive-strategy-folder
...
Recursively search subdirectories in config['user_data_dir']/strategies for a strategy
2022-04-23 14:23:53 +02:00
Matthias
f2912f8815
Improve mypy runs
2022-04-23 11:31:12 +02:00