*contract only* create a list of trade orders https://developers.binance.com/docs/derivatives/coin-margined-futures/trade/rest-api/Place-Multiple-Orders https://developers.binance.com/docs/derivatives/usds-margined-futures/trade/rest-api/Place-Multiple-Orders https:
(self, orders: List[OrderRequest], params={})
| 6175 | }, market) |
| 6176 | |
| 6177 | def create_orders(self, orders: List[OrderRequest], params={}): |
| 6178 | """ |
| 6179 | *contract only* create a list of trade orders |
| 6180 | |
| 6181 | https://developers.binance.com/docs/derivatives/coin-margined-futures/trade/rest-api/Place-Multiple-Orders |
| 6182 | https://developers.binance.com/docs/derivatives/usds-margined-futures/trade/rest-api/Place-Multiple-Orders |
| 6183 | https://developers.binance.com/docs/derivatives/option/trade/Place-Multiple-Orders |
| 6184 | |
| 6185 | :param Array orders: list of orders to create, each object should contain the parameters required by createOrder, namely symbol, type, side, amount, price and params |
| 6186 | :param dict [params]: extra parameters specific to the exchange API endpoint |
| 6187 | :returns dict: an `order structure <https://docs.ccxt.com/?id=order-structure>` |
| 6188 | """ |
| 6189 | self.load_markets() |
| 6190 | ordersRequests = [] |
| 6191 | orderSymbols = [] |
| 6192 | for i in range(0, len(orders)): |
| 6193 | rawOrder = orders[i] |
| 6194 | marketId = self.safe_string(rawOrder, 'symbol') |
| 6195 | orderSymbols.append(marketId) |
| 6196 | type = self.safe_string(rawOrder, 'type') |
| 6197 | side = self.safe_string(rawOrder, 'side') |
| 6198 | amount = self.safe_value(rawOrder, 'amount') |
| 6199 | price = self.safe_value(rawOrder, 'price') |
| 6200 | orderParams = self.safe_dict(rawOrder, 'params', {}) |
| 6201 | orderRequest = self.create_order_request(marketId, type, side, amount, price, orderParams) |
| 6202 | ordersRequests.append(orderRequest) |
| 6203 | orderSymbols = self.market_symbols(orderSymbols, None, False, True, True) |
| 6204 | market = self.market(orderSymbols[0]) |
| 6205 | if market['spot']: |
| 6206 | raise NotSupported(self.id + ' createOrders() does not support ' + market['type'] + ' orders') |
| 6207 | response = None |
| 6208 | request = { |
| 6209 | 'batchOrders': ordersRequests, |
| 6210 | } |
| 6211 | request = self.extend(request, params) |
| 6212 | if market['linear']: |
| 6213 | response = self.fapiPrivatePostBatchOrders(request) |
| 6214 | elif market['option']: |
| 6215 | response = self.eapiPrivatePostBatchOrders(request) |
| 6216 | else: |
| 6217 | response = self.dapiPrivatePostBatchOrders(request) |
| 6218 | # |
| 6219 | # [ |
| 6220 | # { |
| 6221 | # "code": -4005, |
| 6222 | # "msg": "Quantity greater than max quantity." |
| 6223 | # }, |
| 6224 | # { |
| 6225 | # "orderId": 650640530, |
| 6226 | # "symbol": "LTCUSDT", |
| 6227 | # "status": "NEW", |
| 6228 | # "clientOrderId": "x-xcKtGhcu32184eb13585491289bbaf", |
| 6229 | # "price": "54.00", |
| 6230 | # "avgPrice": "0.00", |
| 6231 | # "origQty": "0.100", |
| 6232 | # "executedQty": "0.000", |
| 6233 | # "cumQty": "0.000", |
| 6234 | # "cumQuote": "0.00000", |
nothing calls this directly
no test coverage detected