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

Method create_orders

python/ccxt/hashkey.py:2700–2807  ·  view source on GitHub ↗

create a list of trade orders(all orders should be of the same symbol) https://hashkeyglobal-apidoc.readme.io/reference/create-multiple-orders https://hashkeyglobal-apidoc.readme.io/reference/batch-create-new-futures-order :param Array orders: list of orders to cre

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

Source from the content-addressed store, hash-verified

2698 return self.parse_order(response, market)
2699
2700 def create_orders(self, orders: List[OrderRequest], params={}):
2701 """
2702 create a list of trade orders(all orders should be of the same symbol)
2703
2704 https://hashkeyglobal-apidoc.readme.io/reference/create-multiple-orders
2705 https://hashkeyglobal-apidoc.readme.io/reference/batch-create-new-futures-order
2706
2707 :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
2708 :param dict [params]: extra parameters specific to the api endpoint
2709 :returns dict: an `order structure <https://docs.ccxt.com/?id=order-structure>`
2710 """
2711 self.load_markets()
2712 ordersRequests = []
2713 for i in range(0, len(orders)):
2714 rawOrder = orders[i]
2715 symbol = self.safe_string(rawOrder, 'symbol')
2716 type = self.safe_string(rawOrder, 'type')
2717 side = self.safe_string(rawOrder, 'side')
2718 amount = self.safe_number(rawOrder, 'amount')
2719 price = self.safe_number(rawOrder, 'price')
2720 orderParams = self.safe_dict(rawOrder, 'params', {})
2721 orderRequest = self.create_order_request(symbol, type, side, amount, price, orderParams)
2722 clientOrderId = self.safe_string(orderRequest, 'clientOrderId')
2723 if clientOrderId is None:
2724 orderRequest['clientOrderId'] = self.uuid() # both spot and swap endpoints require clientOrderId
2725 ordersRequests.append(orderRequest)
2726 firstOrder = ordersRequests[0]
2727 firstSymbol = self.safe_string(firstOrder, 'symbol')
2728 market = self.market(firstSymbol)
2729 request = {
2730 'orders': ordersRequests,
2731 }
2732 response = None
2733 if market['spot']:
2734 response = self.privatePostApiV1SpotBatchOrders(self.extend(request, params))
2735 #
2736 # {
2737 # "code": 0,
2738 # "result": [
2739 # {
2740 # "code": "0000",
2741 # "order": {
2742 # "accountId": "1732885739589466112",
2743 # "symbol": "ETHUSDT",
2744 # "symbolName": "ETHUSDT",
2745 # "clientOrderId": "1722701490163000",
2746 # "orderId": "1744540984757258752",
2747 # "transactTime": "1722701491385",
2748 # "price": "1500",
2749 # "origQty": "0.001",
2750 # "executedQty": "0",
2751 # "status": "NEW",
2752 # "timeInForce": "GTC",
2753 # "type": "LIMIT",
2754 # "side": "BUY",
2755 # "reqAmount": "0"
2756 # }
2757 # }

Callers

nothing calls this directly

Calls 15

create_order_requestMethod · 0.95
NotSupportedClass · 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
uuidMethod · 0.45

Tested by

no test coverage detected