跳到主要内容

杠杆账户OTO下单 (TRADE)

接口描述

发送一个新的 OTO 订单。

  • 一个 OTO 订单(One-Triggers-the-Other)是一个包含了两个订单的订单列表.
  • 第一个订单被称为生效订单,必须为 LIMITLIMIT_MAKER 类型的订单。最初,订单簿上只有生效订单。
  • 第二个订单被称为待处理订单。它可以是任何订单类型,但不包括使用参数 quoteOrderQtyMARKET 订单。只有当生效订单完全成交时,待处理订单才会被自动下单。
  • 如果生效订单或者待处理订单中的任意一个被单独取消,订单列表中剩余的那个订单也会被随之取消或过期。
  • 如果生效订单在下订单列表后立即完全成交,则可能会得到订单响应。其中,生效订单的状态为 FILLED ,但待处理订单的状态为 PENDING_NEW。针对这类情况,如果需要检查当前状态,您可以查询相关的待处理订单。
  • OTO 订单将2 个订单添加到未成交订单计数,EXCHANGE_MAX_NUM_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中。

HTTP请求

POST /sapi/v1/margin/order/oto

请求权重

6(UID)

请求参数

名称类型是否必需描述
symbolSTRINGYES
isIsolatedSTRINGNO是否逐仓杠杆,"TRUE", "FALSE", 默认 "FALSE"
listClientOrderIdSTRINGNO整个订单列表的唯一ID。 如果未发送则自动生成。
仅当前一个订单列表已填满或完全过期时,才会接受含有相同 listClientOrderId 值的新订单列表。listClientOrderIdworkingClientOrderIdpendingClientOrderId 不同。
newOrderRespTypeENUMNO设置响应: JSON. ACK, RESULT, 或 FULL; MARKET 和 LIMIT 订单类型默认为 FULL, 所有其他订单默认为 ACK.
sideEffectTypeENUMNONO_SIDE_EFFECT, MARGIN_BUY ;默认为 NO_SIDE_EFFECT. 详见FAQ
selfTradePreventionModeENUMNO允许的 ENUM 取决于交易对的配置。支持的值有 EXPIRE_TAKER,EXPIRE_MAKER,EXPIRE_BOTH,NONE
autoRepayAtCancelBOOLEANNO只有在自动借款单生效时,true表示的是撤单后需要把订单产生的借款归还,默认为true
workingTypeENUMYES支持的数值: LIMITLIMIT_MAKER
workingSideENUMYESBUY, SELL
workingClientOrderIdSTRINGNO用于标识生效订单的唯一ID。如果未发送则自动生成。
workingPriceDECIMALYES
workingQuantityDECIMALYES用于设置生效订单的数量。
workingIcebergQtyDECIMALYES只有当 workingTimeInForceGTC 时才能使用。
workingTimeInForceENUMNO有效值 GTC/FOK/IOC
pendingTypeENUMYES支持的数值: 订单类型, 请注意,系统不支持使用 quoteOrderQtyMARKET 订单。
pendingSideENUMYESBUY, SELL
pendingClientOrderIdSTRINGNO用于标识待处理订单的唯一ID。如果未发送则自动生成。
pendingPriceDECIMALNO
pendingStopPriceDECIMALNO
pendingTrailingDeltaDECIMALNO
pendingQuantityDECIMALYES用于设置待处理订单的数量。
pendingIcebergQtyDECIMALNO只有当 pendingTimeInForceGTC 时才能使用。
pendingTimeInForceENUMNOGTC,IOC,FOK
  • autoRepayAtCancel补充说明: 在频繁下单撤单的情况下,为提高资金利用率,建议设置为FALSE

  • 根据 pendingType 或者workingType的不同值,对于某些可选参数有强制要求,具体如下:

    类型强制要求的参数其他信息
    workingType = LIMITworkingTimeInForce
    pendingType = LIMITpendingPricependingTimeInForce
    pendingType = STOP_LOSSTAKE_PROFITpendingStopPrice 与/或 pendingTrailingDelta
    pendingType = STOP_LOSS_LIMITTAKE_PROFIT_LIMITpendingPricependingStopPrice 与/或 pendingTrailingDeltapendingTimeInForce

响应示例

{
"orderListId": 13551,
"contingencyType": "OTO",
"listStatusType": "EXEC_STARTED",
"listOrderStatus": "EXECUTING",
"listClientOrderId": "JDuOrsu0Ge8GTyvx8J7VTD",
"transactionTime": 1725521998054,
"symbol": "BTCUSDT",
"isIsolated": false,
"orders": [
{
"symbol": "BTCUSDT",
"orderId": 29896699,
"clientOrderId": "y8RB6tQEMuHUXybqbtzTxk"
},
{
"symbol": "BTCUSDT",
"orderId": 29896700,
"clientOrderId": "dKQEdh5HhXb7Lpp85jz1dQ"
}
],
"orderReports": [
{
"symbol": "BTCUSDT",
"orderId": 29896699,
"orderListId": 13551,
"clientOrderId": "y8RB6tQEMuHUXybqbtzTxk",
"transactTime": 1725521998054,
"price": "80000.00000000",
"origQty": "0.02000000",
"executedQty": "0",
"cummulativeQuoteQty": "0",
"status": "NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "SELL",
"selfTradePreventionMode": "NONE"
},
{
"symbol": "BTCUSDT",
"orderId": 29896700,
"orderListId": 13551,
"clientOrderId": "dKQEdh5HhXb7Lpp85jz1dQ",
"transactTime": 1725521998054,
"price": "50000.00000000",
"origQty": "0.02000000",
"executedQty": "0",
"cummulativeQuoteQty": "0",
"status": "PENDING_NEW",
"timeInForce": "GTC",
"type": "LIMIT",
"side": "BUY",
"selfTradePreventionMode": "NONE"
}
]
}