diff --git a/freqtrade/persistence/trade_model.py b/freqtrade/persistence/trade_model.py index e032b6b96..19ba48fcd 100644 --- a/freqtrade/persistence/trade_model.py +++ b/freqtrade/persistence/trade_model.py @@ -90,6 +90,13 @@ class Order(_DECL_BASE): def safe_filled(self) -> float: return self.filled if self.filled is not None else self.amount or 0.0 + @property + def safe_remaining(self) -> float: + return ( + self.remaining if self.remaining is not None else + self.amount - (self.filled or 0.0) + ) + @property def safe_fee_base(self) -> float: return self.ft_fee_base or 0.0 diff --git a/freqtrade/rpc/rpc.py b/freqtrade/rpc/rpc.py index 55bb5a34b..a0824bcc1 100644 --- a/freqtrade/rpc/rpc.py +++ b/freqtrade/rpc/rpc.py @@ -218,9 +218,10 @@ class RPC: stoploss_current_dist_pct=round(stoploss_current_dist_ratio * 100, 2), stoploss_entry_dist=stoploss_entry_dist, stoploss_entry_dist_ratio=round(stoploss_entry_dist_ratio, 8), - open_order='({} {} rem={:.8f})'.format( - order.order_type, order.side, order.remaining - ) if order else None, + open_order=( + f'({order.order_type} {order.side} rem={order.safe_remaining:.8f})' if + order else None + ), )) results.append(trade_dict) return results