From 6abd352c0f15d42a73d6cd85afb9e055a45c6649 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 31 Jul 2021 08:40:57 +0200 Subject: [PATCH] Add test for backtesting dataframe cache --- tests/optimize/test_backtesting.py | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/tests/optimize/test_backtesting.py b/tests/optimize/test_backtesting.py index 1c495f123..deaaf9f2f 100644 --- a/tests/optimize/test_backtesting.py +++ b/tests/optimize/test_backtesting.py @@ -739,6 +739,9 @@ def test_backtest_alternate_buy_sell(default_conf, fee, mocker, testdatadir): # 100 buys signals results = result['results'] assert len(results) == 100 + # Cached data should be 200 (no change since required_startup is 0) + assert len(backtesting.dataprovider.get_analyzed_dataframe('UNITTEST/BTC', '1m')[0]) == 200 + # One trade was force-closed at the end assert len(results.loc[results['is_open']]) == 0 @@ -794,6 +797,10 @@ def test_backtest_multi_pair(default_conf, fee, mocker, tres, pair, testdatadir) # make sure we don't have trades with more than configured max_open_trades assert len(evaluate_result_multi(results['results'], '5m', 3)) == 0 + # Cached data correctly removed amounts + removed_candles = len(data[pair]) - 1 - backtesting.strategy.startup_candle_count + assert len(backtesting.dataprovider.get_analyzed_dataframe(pair, '5m')[0]) == removed_candles + backtest_conf = { 'processed': processed, 'start_date': min_date,