From ab93fd3be4d9391f7e60e917636cc671b9443807 Mon Sep 17 00:00:00 2001 From: Matthias Date: Sat, 4 May 2024 09:15:15 +0200 Subject: [PATCH] Enhance trade to verify #10166 --- freqtrade/optimize/backtesting.py | 1 + tests/optimize/test_backtesting_adjust_position.py | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/freqtrade/optimize/backtesting.py b/freqtrade/optimize/backtesting.py index e16ea8606..59432bd97 100644 --- a/freqtrade/optimize/backtesting.py +++ b/freqtrade/optimize/backtesting.py @@ -778,6 +778,7 @@ class Backtesting: t = self._get_exit_for_signal(trade, row, exit_, current_time) if t: return t + return None def _run_funding_fees(self, trade: LocalTrade, current_time: datetime, force: bool = False): """ diff --git a/tests/optimize/test_backtesting_adjust_position.py b/tests/optimize/test_backtesting_adjust_position.py index 983e4b47f..cf30489e1 100644 --- a/tests/optimize/test_backtesting_adjust_position.py +++ b/tests/optimize/test_backtesting_adjust_position.py @@ -213,3 +213,8 @@ def test_backtest_position_adjustment_detailed(default_conf, fee, mocker, levera assert trade.nr_of_successful_entries == 2 assert trade.nr_of_successful_exits == 1 assert pytest.approx(trade.liquidation_price) == liq_price + + # Adjust to close trade + backtesting.strategy.adjust_trade_position = MagicMock(return_value=-trade.stake_amount) + trade = backtesting._get_adjust_trade_entry_for_candle(trade, row_exit, current_time) + assert trade.is_open is False