MCPcopy Create free account
hub / github.com/ccxt/ccxt / edit_orders

Method edit_orders

python/ccxt/bydfi.py:1344–1378  ·  view source on GitHub ↗

edit a list of trade orders https://developers.bydfi.com/en/futures/trade#batch-order-modification :param Array orders: list of orders to edit, each object should contain the parameters required by editOrder, namely id, symbol, amount, price and params :param dict

(self, orders: List[OrderRequest], params={})

Source from the content-addressed store, hash-verified

1342 return self.parse_order(data)
1343
1344 def edit_orders(self, orders: List[OrderRequest], params={}) -> List[Order]:
1345 """
1346 edit a list of trade orders
1347
1348 https://developers.bydfi.com/en/futures/trade#batch-order-modification
1349
1350 :param Array orders: list of orders to edit, each object should contain the parameters required by editOrder, namely id, symbol, amount, price and params
1351 :param dict [params]: extra parameters specific to the exchange API endpoint
1352 :param str [params.wallet]: The unique code of a sub-wallet. W001 is the default wallet and the main wallet code of the contract
1353 :returns dict: an `order structure <https://docs.ccxt.com/?id=order-structure>`
1354 """
1355 self.load_markets()
1356 length = len(orders)
1357 if length > 5:
1358 raise BadRequest(self.id + ' editOrders() accepts a maximum of 5 orders')
1359 ordersRequests = []
1360 for i in range(0, len(orders)):
1361 rawOrder = orders[i]
1362 id = self.safe_string(rawOrder, 'id')
1363 symbol = self.safe_string(rawOrder, 'symbol')
1364 side = self.safe_string(rawOrder, 'side')
1365 amount = self.safe_number(rawOrder, 'amount')
1366 price = self.safe_number(rawOrder, 'price')
1367 orderParams = self.safe_dict(rawOrder, 'params', {})
1368 orderRequest = self.create_edit_order_request(id, symbol, 'limit', side, amount, price, orderParams)
1369 ordersRequests.append(orderRequest)
1370 wallet = 'W001'
1371 wallet, params = self.handle_option_and_params(params, 'editOrder', 'wallet', wallet)
1372 request = {
1373 'wallet': wallet,
1374 'editOrders': ordersRequests,
1375 }
1376 response = self.privatePostV1FapiTradeBatchEditOrder(self.extend(request, params))
1377 data = self.safe_list(response, 'data', [])
1378 return self.parse_orders(data)
1379
1380 def create_edit_order_request(self, id: str, symbol: str, type: OrderType, side: OrderSide, amount: Num = None, price: Num = None, params={}):
1381 clientOrderId = self.safe_string(params, 'clientOrderId')

Callers

nothing calls this directly

Calls 13

BadRequestClass · 0.90
safe_stringMethod · 0.80
safe_numberMethod · 0.80
safe_dictMethod · 0.80
safe_listMethod · 0.80
parse_ordersMethod · 0.80
rangeFunction · 0.50
load_marketsMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected