mirror of
https://github.com/freqtrade/freqtrade.git
synced 2025-12-01 17:43:06 +00:00
Define liquidation price only once in adjustment test
This commit is contained in:
@@ -154,12 +154,13 @@ def test_backtest_position_adjustment_detailed(default_conf, fee, mocker, levera
|
||||
|
||||
trade = backtesting._get_adjust_trade_entry_for_candle(trade, row, current_time)
|
||||
|
||||
liq_price = 0.1038916 if leverage == 1 else 1.2127791
|
||||
assert trade
|
||||
assert pytest.approx(trade.stake_amount) == 200.0
|
||||
assert pytest.approx(trade.amount) == 95.23809524 * leverage
|
||||
assert len(trade.orders) == 2
|
||||
assert trade.orders[-1].ft_order_tag == 'PartIncrease'
|
||||
assert pytest.approx(trade.liquidation_price) == (0.1038916 if leverage == 1 else 1.2127791)
|
||||
assert pytest.approx(trade.liquidation_price) == liq_price
|
||||
|
||||
# Reduce by more than amount - no change to trade.
|
||||
backtesting.strategy.adjust_trade_position = MagicMock(return_value=-500)
|
||||
@@ -171,7 +172,7 @@ def test_backtest_position_adjustment_detailed(default_conf, fee, mocker, levera
|
||||
assert pytest.approx(trade.amount) == 95.23809524 * leverage
|
||||
assert len(trade.orders) == 2
|
||||
assert trade.nr_of_successful_entries == 2
|
||||
assert pytest.approx(trade.liquidation_price) == (0.1038916 if leverage == 1 else 1.2127791)
|
||||
assert pytest.approx(trade.liquidation_price) == liq_price
|
||||
|
||||
# Reduce position by 50
|
||||
backtesting.strategy.adjust_trade_position = MagicMock(return_value=(-100, 'partDecrease'))
|
||||
@@ -184,7 +185,7 @@ def test_backtest_position_adjustment_detailed(default_conf, fee, mocker, levera
|
||||
assert trade.orders[-1].ft_order_tag == 'partDecrease'
|
||||
assert trade.nr_of_successful_entries == 2
|
||||
assert trade.nr_of_successful_exits == 1
|
||||
assert pytest.approx(trade.liquidation_price) == (0.1038916 if leverage == 1 else 1.2127791)
|
||||
assert pytest.approx(trade.liquidation_price) == liq_price
|
||||
|
||||
# Adjust below minimum
|
||||
backtesting.strategy.adjust_trade_position = MagicMock(return_value=-99)
|
||||
@@ -196,4 +197,4 @@ def test_backtest_position_adjustment_detailed(default_conf, fee, mocker, levera
|
||||
assert len(trade.orders) == 3
|
||||
assert trade.nr_of_successful_entries == 2
|
||||
assert trade.nr_of_successful_exits == 1
|
||||
assert pytest.approx(trade.liquidation_price) == (0.1038916 if leverage == 1 else 1.2127791)
|
||||
assert pytest.approx(trade.liquidation_price) == liq_price
|
||||
|
||||
Reference in New Issue
Block a user