diff --git a/freqtrade/wallets.py b/freqtrade/wallets.py index 575fe1b67..f4432e932 100644 --- a/freqtrade/wallets.py +++ b/freqtrade/wallets.py @@ -71,7 +71,8 @@ class Wallets: # TODO: potentially remove the ._log workaround to determine backtest mode. if self._log: closed_trades = Trade.get_trades_proxy(is_open=False) - tot_profit = sum([trade.close_profit_abs for trade in closed_trades]) + tot_profit = sum( + [trade.close_profit_abs for trade in closed_trades if trade.close_profit_abs]) else: tot_profit = LocalTrade.total_profit tot_in_trades = sum([trade.stake_amount for trade in open_trades]) diff --git a/tests/test_persistence.py b/tests/test_persistence.py index ab900cbb8..1820250a5 100644 --- a/tests/test_persistence.py +++ b/tests/test_persistence.py @@ -1066,8 +1066,14 @@ def test_get_trades_proxy(fee, use_db): assert isinstance(trades[0], Trade) - assert len(Trade.get_trades_proxy(is_open=True)) == 4 - assert len(Trade.get_trades_proxy(is_open=False)) == 2 + trades = Trade.get_trades_proxy(is_open=True) + assert len(trades) == 4 + assert trades[0].is_open + trades = Trade.get_trades_proxy(is_open=False) + + assert len(trades) == 2 + assert not trades[0].is_open + opendate = datetime.now(tz=timezone.utc) - timedelta(minutes=15) assert len(Trade.get_trades_proxy(open_date=opendate)) == 3