select_order should use ft_order_side, not the exchange specific one

This commit is contained in:
Matthias 2022-02-12 17:06:03 +01:00
parent 08803524bd
commit 119d4d5204
2 changed files with 7 additions and 4 deletions

View File

@ -659,13 +659,13 @@ class LocalTrade():
self, order_side: str = None, is_open: Optional[bool] = None) -> Optional[Order]:
"""
Finds latest order for this orderside and status
:param order_side: Side of the order (either 'buy' or 'sell')
:param order_side: ft_order_side of the order (either 'buy', 'sell' or 'stoploss')
:param is_open: Only search for open orders?
:return: latest Order object if it exists, else None
"""
orders = self.orders
if order_side:
orders = [o for o in self.orders if o.side == order_side]
orders = [o for o in self.orders if o.ft_order_side == order_side]
if is_open is not None:
orders = [o for o in orders if o.ft_is_open == is_open]
if len(orders) > 0:

View File

@ -1277,11 +1277,14 @@ def test_select_order(fee):
order = trades[4].select_order('buy', False)
assert order is not None
trades[4].orders[1].ft_order_side = 'sell'
order = trades[4].select_order('sell', True)
assert order is not None
trades[4].orders[1].ft_order_side = 'stoploss'
order = trades[4].select_order('stoploss', None)
assert order is not None
assert order.ft_order_side == 'stoploss'
order = trades[4].select_order('sell', False)
assert order is None
def test_Trade_object_idem():