File tree Expand file tree Collapse file tree 1 file changed +15
-1
lines changed
Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -151,7 +151,21 @@ def fetch_stoploss_order(
151151 if self .trading_mode == TradingMode .FUTURES :
152152 params = params or {}
153153 params .update ({"stop" : True })
154- return self .fetch_order (order_id , pair , params )
154+ order = self .fetch_order (order_id , pair , params )
155+ if self .trading_mode == TradingMode .FUTURES and order .get ("status" , "open" ) == "closed" :
156+ # Places a real order - which we need to fetch explicitly.
157+
158+ if new_orderid := order .get ("info" , {}).get ("actualOrderId" ):
159+ order1 = self .fetch_order (order_id = new_orderid , pair = pair , params = {})
160+ order1 ["id_stop" ] = order1 ["id" ]
161+ order1 ["id" ] = order_id
162+ order1 ["type" ] = "stoploss"
163+ order1 ["stopPrice" ] = order .get ("stopPrice" )
164+ order1 ["status_stop" ] = "triggered"
165+
166+ return order1
167+
168+ return order
155169
156170 def cancel_stoploss_order (self , order_id : str , pair : str , params : dict | None = None ) -> dict :
157171 if self .trading_mode == TradingMode .FUTURES :
You can’t perform that action at this time.
0 commit comments