在现货下单API中添加了对下单金额的最小限制(5 USDT),并改进了错误处理机制,针对不同的Binance API异常提供了详细的错误信息。更新了API文档说明,确保用户能够更清晰地理解下单逻辑与要求。此改动提升了系统的健壮性与用户体验。
1784 lines
68 KiB
Plaintext
1784 lines
68 KiB
Plaintext
交易接口
|
||
下单 (TRADE)
|
||
POST /api/v3/order
|
||
|
||
这个请求会把1个订单添加到 EXCHANGE_MAX_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中。
|
||
|
||
权重: 1
|
||
|
||
未成交的订单计数: 1
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
side ENUM YES 详见枚举定义:订单方向
|
||
type ENUM YES 详见枚举定义:订单类型
|
||
timeInForce ENUM NO 详见枚举定义:生效时间
|
||
quantity DECIMAL NO
|
||
quoteOrderQty DECIMAL NO
|
||
price DECIMAL NO
|
||
newClientOrderId STRING NO 用户自定义的orderid,如空缺系统会自动赋值。
|
||
strategyId LONG NO
|
||
strategyType INT NO 不能低于 1000000.
|
||
stopPrice DECIMAL NO 仅 STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, TAKE_PROFIT_LIMIT 需要此参数。
|
||
trailingDelta LONG NO 参见 追踪止盈止损(Trailing Stop)订单常见问题。
|
||
icebergQty DECIMAL NO 仅有限价单(包括条件限价单与限价做事单)可以使用该参数,含义为创建冰山订单并指定冰山订单的数量。
|
||
newOrderRespType ENUM NO 指定响应类型 ACK, RESULT, or FULL; MARKET 与 LIMIT 订单默认为FULL, 其他默认为ACK。
|
||
selfTradePreventionMode ENUM NO 允许的 ENUM 取决于交易对的配置。支持的值有:STP 模式。
|
||
pegPriceType ENUM NO PRIMARY_PEG 或 MARKET_PEG。
|
||
参阅 关于挂钩订单参数的注意事项
|
||
pegOffsetValue INT NO 用于挂钩的价格水平(最大值:100)。
|
||
参阅 关于挂钩订单参数的注意事项
|
||
pegOffsetType ENUM NO 仅支持 PRICE_LEVEL。
|
||
参阅 关于挂钩订单参数的注意事项
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
根据 order type的不同,某些参数 有强制要求,具体如下:
|
||
|
||
Type 强制要求的参数 其他信息
|
||
LIMIT timeInForce, quantity, price
|
||
MARKET quantity 市价买卖单可用quantity参数来设置base asset数量.
|
||
例如:BTCUSDT 市价单,BTC 买卖数量取决于quantity参数.
|
||
|
||
市价买卖单可用quoteOrderQty参数来设置quote asset数量. 正确的quantity取决于市场的流动性与quoteOrderQty
|
||
例如: 市价 BUY BTCUSDT,单子会基于quoteOrderQty- USDT 的数量,购买 BTC.
|
||
市价 SELL BTCUSDT,单子会卖出 BTC 来满足quoteOrderQty- USDT 的数量.
|
||
STOP_LOSS quantity, stopPrice, trailingDelta 条件满足后会下MARKET单子. (例如:达到stopPrice或trailingDelta被启动)
|
||
STOP_LOSS_LIMIT timeInForce, quantity, price, stopPrice, trailingDelta
|
||
TAKE_PROFIT quantity, stopPrice, trailingDelta 条件满足后会下MARKET单子. (例如:达到stopPrice或trailingDelta被启动)
|
||
TAKE_PROFIT_LIMIT timeInForce, quantity, price, stopPrice, trailingDelta
|
||
LIMIT_MAKER quantity, price 订单大部分情况下与普通的限价单没有区别,但是如果在当前价格会立即吃对手单并成交则下单会被拒绝。因此使用这个订单类型可以保证订单一定是挂单方,不会成为吃单方。
|
||
关于挂钩订单参数的注意事项:
|
||
|
||
这些参数仅适用于 LIMIT, LIMIT_MAKER, STOP_LOSS_LIMIT 和 TAKE_PROFIT_LIMIT 订单。
|
||
如果使用了 pegPriceType, 那么 price 字段将是可选的。 否则,price 字段依旧是必须的。
|
||
pegPriceType=PRIMARY_PEG 就是主要挂钩(primary),这是订单簿上与您的订单同一方向的最佳价格。
|
||
pegPriceType=MARKET_PEG 就是市场挂钩(market),这是订单簿上与您的订单相反方向的最佳价格。
|
||
可以通过使用 pegOffsetType 和 pegOffsetValue 来获取最佳价格以外的价格水平。 这两个参数必须一起使用。
|
||
其他:
|
||
|
||
任何LIMIT或LIMIT_MAKER只要填icebergQty参数都可以下冰上订单。
|
||
冰山订单的 timeInForce必须设置为GTC。
|
||
STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT_LIMIT 与 TAKE_PROFIT 单子都能同时填上trailingDelta与stopPrice。
|
||
填上quoteOrderQty的市价单不会触犯过滤器的LOT_SIZE限制。订单的quantity会尽量满足quoteOrderQty的数量。
|
||
条件单的触发价格必须:
|
||
|
||
比下单时当前市价高: STOP_LOSS BUY, TAKE_PROFIT SELL
|
||
比下单时当前市价低: STOP_LOSS SELL, TAKE_PROFIT BUY
|
||
关于 newOrderRespType的三种选择
|
||
|
||
数据源: 撮合引擎
|
||
|
||
Response ACK: 返回速度最快,不包含成交信息,信息量最少
|
||
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 28,
|
||
"orderListId": -1, // 除非此单是订单列表的一部分, 否则此值为 -1
|
||
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
|
||
"transactTime": 1507725176595
|
||
}
|
||
|
||
Response RESULT: 返回速度居中,返回吃单成交的少量信息
|
||
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 28,
|
||
"orderListId": -1, // 除非此单是订单列表的一部分, 否则此值为 -1
|
||
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
|
||
"transactTime": 1507725176595,
|
||
"price": "1.00000000",
|
||
"origQty": "10.00000000",
|
||
"executedQty": "10.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "10.00000000",
|
||
"status": "FILLED",
|
||
"timeInForce": "GTC",
|
||
"type": "MARKET",
|
||
"side": "SELL",
|
||
"workingTime": 1507725176595,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
|
||
Response FULL: 返回速度最慢,返回吃单成交的详细信息
|
||
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 28,
|
||
"orderListId": -1, // 除非此单是订单列表的一部分, 否则此值为 -1
|
||
"clientOrderId": "6gCrw2kRUAF9CvJDGP16IP",
|
||
"transactTime": 1507725176595,
|
||
"price": "1.00000000",
|
||
"origQty": "10.00000000",
|
||
"executedQty": "10.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "10.00000000",
|
||
"status": "FILLED",
|
||
"timeInForce": "GTC",
|
||
"type": "MARKET",
|
||
"side": "SELL",
|
||
"workingTime": 1507725176595,
|
||
"selfTradePreventionMode": "NONE",
|
||
"fills": [
|
||
{
|
||
"price": "4000.00000000",
|
||
"qty": "1.00000000",
|
||
"commission": "4.00000000",
|
||
"commissionAsset": "USDT",
|
||
"tradeId": 56
|
||
},
|
||
{
|
||
"price": "3999.00000000",
|
||
"qty": "5.00000000",
|
||
"commission": "19.99500000",
|
||
"commissionAsset": "USDT",
|
||
"tradeId": 57
|
||
},
|
||
{
|
||
"price": "3998.00000000",
|
||
"qty": "2.00000000",
|
||
"commission": "7.99600000",
|
||
"commissionAsset": "USDT",
|
||
"tradeId": 58
|
||
},
|
||
{
|
||
"price": "3997.00000000",
|
||
"qty": "1.00000000",
|
||
"commission": "3.99700000",
|
||
"commissionAsset": "USDT",
|
||
"tradeId": 59
|
||
},
|
||
{
|
||
"price": "3995.00000000",
|
||
"qty": "1.00000000",
|
||
"commission": "3.99500000",
|
||
"commissionAsset": "USDT",
|
||
"tradeId": 60
|
||
}
|
||
]
|
||
}
|
||
|
||
|
||
订单响应中的特定条件时才会出现的字段
|
||
|
||
订单响应中的有一些字段仅在满足特定条件时才会出现。这些订单响应可以来自下订单,查询订单或取消订单,并且可以包括订单列表类型。 下面列出了这些字段:
|
||
|
||
名称 描述 显示的条件 示例
|
||
icebergQty 冰山订单的数量。 只有在请求中发送 icebergQty 参数时才会出现。 "icebergQty": "0.00000000"
|
||
preventedMatchId 与 symbol 结合使用时,可用于查询因为 STP 导致订单失效的过期订单。 只有在因为 STP 导致订单失效时可见。 "preventedMatchId": 0
|
||
preventedQuantity 因为 STP 导致订单失效的数量。 只有在因为 STP 导致订单失效时可见。 "preventedQuantity": "1.200000"
|
||
stopPrice 用于设置逻辑订单中的触发价。 STOP_LOSS,TAKE_PROFIT,STOP_LOSS_LIMIT 和 TAKE_PROFIT_LIMIT 订单时可见。 "stopPrice": "23500.00000000"
|
||
strategyId 策略单ID; 用以关联此订单对应的交易策略。 如果在请求中添加了参数,则会出现。 "strategyId": 37463720
|
||
strategyType 策略单类型; 用以显示此订单对应的交易策略。 如果在请求中添加了参数,则会出现。 "strategyType": 1000000
|
||
trailingDelta 用以定义追踪止盈止损订单被触发的价格差。 出现在追踪止损订单中。 "trailingDelta": 10
|
||
trailingTime 追踪单被激活和跟踪价格变化的时间。 出现在追踪止损订单中。 "trailingTime": -1
|
||
usedSor 用于确定订单是否使用SOR的字段 在使用SOR下单时出现 "usedSor": true |
|
||
workingFloor 用以定义订单是通过 SOR 还是由订单提交到的订单薄(order book)成交的。 出现在使用了 SOR 的订单中。 "workingFloor": "SOR"
|
||
pegPriceType 挂钩价格类型 仅用于挂钩订单 "pegPriceType": "PRIMARY_PEG"
|
||
pegOffsetType 挂钩价格偏移类型 如若需要,仅用于挂钩订单 "pegOffsetType": "PRICE_LEVEL"
|
||
pegOffsetValue 挂钩价格偏移值 如若需要,仅用于挂钩订单 "pegOffsetValue": 5
|
||
peggedPrice 订单对应的当前挂钩价格 一旦确定,仅用于挂钩订单 "peggedPrice": "87523.83710000"
|
||
测试下单接口 (TRADE)
|
||
POST /api/v3/order/test
|
||
|
||
用于测试订单请求,但不会提交到撮合引擎
|
||
|
||
权重:
|
||
|
||
条件 权重
|
||
没有 computeCommissionRates 1
|
||
有 computeCommissionRates 20
|
||
参数:
|
||
|
||
除了 POST /api/v3/order 所有参数, 下面参数也支持:
|
||
|
||
参数名 类型 是否必需 描述
|
||
computeCommissionRates BOOLEAN NO 默认值: false
|
||
请参阅佣金常见问题解答 了解更多信息。
|
||
数据源: 缓存
|
||
|
||
响应:
|
||
|
||
没有 computeCommissionRates
|
||
|
||
{}
|
||
|
||
有 computeCommissionRates
|
||
|
||
{
|
||
"standardCommissionForOrder": { // 订单交易的标准佣金率
|
||
"maker": "0.00000112",
|
||
"taker": "0.00000114"
|
||
},
|
||
"specialCommissionForOrder": { // 订单交易的特殊佣金率
|
||
"maker": "0.05000000",
|
||
"taker": "0.06000000"
|
||
},
|
||
"taxCommissionForOrder": { // 订单交易的税率
|
||
"maker": "0.00000112",
|
||
"taker": "0.00000114"
|
||
},
|
||
"discount": { // 以BNB支付时的标准佣金折扣。
|
||
"enabledForAccount": true,
|
||
"enabledForSymbol": true,
|
||
"discountAsset": "BNB",
|
||
"discount": "0.25000000" // 当用BNB支付佣金时,在标准佣金上按此比率打折
|
||
}
|
||
}
|
||
|
||
撤销订单 (TRADE)
|
||
DELETE /api/v3/order
|
||
|
||
权重: 1
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
orderId LONG NO
|
||
origClientOrderId STRING NO
|
||
newClientOrderId STRING NO 用户自定义的本次撤销操作的ID(注意不是被撤销的订单的自定义ID)。如无指定会自动赋值。
|
||
cancelRestrictions ENUM NO 支持的值:
|
||
ONLY_NEW - 如果订单状态为 NEW,撤销将成功。
|
||
ONLY_PARTIALLY_FILLED - 如果订单状态为 PARTIALLY_FILLED,撤销将成功。
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
注意:
|
||
|
||
orderId 与 origClientOrderId 必须至少发送一个。
|
||
当同时提供 orderId 和 origClientOrderId 两个参数时,系统首先将会使用 orderId 来搜索订单。然后, 查找结果中的 origClientOrderId 的值将会被用来验证订单。如果两个条件都不满足,则请求将被拒绝。
|
||
数据源: 撮合引擎
|
||
|
||
响应:
|
||
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 28,
|
||
"orderListId": -1, // 除非此单是订单列表的一部分, 否则此值为 -1
|
||
"origClientOrderId": "myOrder1",
|
||
"clientOrderId": "cancelMyOrder1",
|
||
"transactTime": 1507725176595,
|
||
"price": "1.00000000",
|
||
"origQty": "10.00000000",
|
||
"executedQty": "8.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "8.00000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "SELL",
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
|
||
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
|
||
|
||
当仅发送 orderId 时,取消订单的执行(单个 Cancel 或作为 Cancel-Replace 的一部分)总是更快。发送 origClientOrderId 或同时发送 orderId + origClientOrderId 会稍慢。
|
||
|
||
关于 cancelRestrictions
|
||
|
||
如果 cancelRestrictions 值不是任何受支持的值,则错误将是:
|
||
{
|
||
"code": -1145,
|
||
"msg": "Invalid cancelRestrictions"
|
||
}
|
||
|
||
如果订单没有通过 cancelRestrictions 的条件,错误将是:
|
||
{
|
||
"code": -2011,
|
||
"msg": "Order was not canceled due to cancel restrictions."
|
||
}
|
||
|
||
撤销单一交易对的所有挂单 (TRADE)
|
||
DELETE /api/v3/openOrders
|
||
|
||
撤销单一交易对下所有挂单。这也包括了来自订单列表的挂单。
|
||
|
||
权重: 1
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
数据源: 撮合引擎
|
||
|
||
响应:
|
||
|
||
[
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"origClientOrderId": "E6APeyTJvkMvLMYMqu1KQ4",
|
||
"orderId": 11,
|
||
"orderListId": -1,
|
||
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
|
||
"transactTime": 1684804350068,
|
||
"price": "0.089853",
|
||
"origQty": "0.178622",
|
||
"executedQty": "0.000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "BUY",
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"origClientOrderId": "A3EF2HCwxgZPFMrfwbgrhv",
|
||
"orderId": 13,
|
||
"orderListId": -1,
|
||
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
|
||
"transactTime": 1684804350068,
|
||
"price": "0.090430",
|
||
"origQty": "0.178622",
|
||
"executedQty": "0.000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "BUY",
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"orderListId": 1929,
|
||
"contingencyType": "OCO",
|
||
"listStatusType": "ALL_DONE",
|
||
"listOrderStatus": "ALL_DONE",
|
||
"listClientOrderId": "2inzWQdDvZLHbbAmAozX2N",
|
||
"transactionTime": 1585230948299,
|
||
"symbol": "BTCUSDT",
|
||
"orders": [
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 20,
|
||
"clientOrderId": "CwOOIPHSmYywx6jZX77TdL"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 21,
|
||
"clientOrderId": "461cPg51vQjV3zIMOXNz39"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"origClientOrderId": "CwOOIPHSmYywx6jZX77TdL",
|
||
"orderId": 20,
|
||
"orderListId": 1929,
|
||
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
|
||
"transactTime": 1684804350068,
|
||
"price": "0.668611",
|
||
"origQty": "0.690354",
|
||
"executedQty": "0.000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "STOP_LOSS_LIMIT",
|
||
"side": "BUY",
|
||
"stopPrice": "0.378131",
|
||
"icebergQty": "0.017083",
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"origClientOrderId": "461cPg51vQjV3zIMOXNz39",
|
||
"orderId": 21,
|
||
"orderListId": 1929,
|
||
"clientOrderId": "pXLV6Hz6mprAcVYpVMTGgx",
|
||
"transactTime": 1684804350068,
|
||
"price": "0.008791",
|
||
"origQty": "0.690354",
|
||
"executedQty": "0.000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT_MAKER",
|
||
"side": "BUY",
|
||
"icebergQty": "0.639962",
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
]
|
||
}
|
||
]
|
||
|
||
撤消挂单再下单 (TRADE)
|
||
POST /api/v3/order/cancelReplace
|
||
|
||
撤消挂单并在同个交易对上重新下单。
|
||
|
||
在撤消订单和下单前会判断: 1) 过滤器参数, 以及 2) 目前下单数量。
|
||
|
||
即使请求中没有尝试发送新订单,比如(newOrderResult: NOT_ATTEMPTED),未成交订单的数量仍然会加1。
|
||
|
||
权重: 1
|
||
|
||
未成交的订单计数: 1
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
side ENUM YES
|
||
type ENUM YES
|
||
cancelReplaceMode ENUM YES 指定类型:STOP_ON_FAILURE - 如果撤消订单失败将不会继续重新下单。
|
||
ALLOW_FAILURE - 不管撤消订单是否成功都会继续重新下单。
|
||
timeInForce ENUM NO
|
||
quantity DECIMAL NO
|
||
quoteOrderQty DECIMAL NO
|
||
price DECIMAL NO
|
||
cancelNewClientOrderId STRING NO 用户自定义的id,如空缺系统会自动赋值
|
||
cancelOrigClientOrderId STRING NO 必须提供 cancelOrderId 或者 cancelOrigClientOrderId。
|
||
|
||
当同时提供 cancelOrderId 和 cancelOrigClientOrderId 两个参数时,系统首先将会使用 cancelOrderId 来搜索订单。
|
||
|
||
然后, 查找结果中的 cancelOrigClientOrderId 的值将会被用来验证订单。
|
||
|
||
如果两个条件都不满足,则请求将被拒绝。
|
||
cancelOrderId LONG NO 必须提供 cancelOrderId 或者 cancelOrigClientOrderId。
|
||
|
||
当同时提供 cancelOrderId 和 cancelOrigClientOrderId 两个参数时,系统首先将会使用 cancelOrderId 来搜索订单。
|
||
|
||
然后, 查找结果中的 cancelOrigClientOrderId 的值将会被用来验证订单。
|
||
|
||
如果两个条件都不满足,则请求将被拒绝。
|
||
newClientOrderId STRING NO 用于辨识新订单。
|
||
strategyId LONG NO
|
||
strategyType INT NO 不能低于 1000000。
|
||
stopPrice DECIMAL NO
|
||
trailingDelta LONG NO 参考 追踪止盈止损(Trailing Stop)订单常见问题
|
||
icebergQty DECIMAL NO
|
||
newOrderRespType ENUM NO 指定响应类型:
|
||
指定响应类型 ACK, RESULT, or FULL; MARKET 与 LIMIT 订单默认为FULL, 其他默认为ACK。
|
||
selfTradePreventionMode ENUM NO 允许的 ENUM 取决于交易对的配置。支持的值有:STP 模式。
|
||
cancelRestrictions ENUM NO 支持的值:
|
||
ONLY_NEW - 如果订单状态为 NEW,撤销将成功。
|
||
ONLY_PARTIALLY_FILLED - 如果订单状态为 PARTIALLY_FILLED,撤销将成功。
|
||
orderRateLimitExceededMode ENUM NO 支持的值:
|
||
|
||
DO_NOTHING(默认值)- 仅在账户未超过未成交订单频率限制时,会尝试取消订单。
|
||
|
||
CANCEL_ONLY - 将始终取消订单。
|
||
pegPriceType ENUM NO PRIMARY_PEG 或 MARKET_PEG。
|
||
参阅 关于挂钩订单参数的注意事项
|
||
pegOffsetValue INT NO 用于挂钩的价格水平(最大值:100)。
|
||
参阅 关于挂钩订单参数的注意事项
|
||
pegOffsetType ENUM NO 仅支持 PRICE_LEVEL。
|
||
参阅 关于挂钩订单参数的注意事项
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
如同 POST /api/v3/order,额外的强制参数取决于 type 。
|
||
|
||
响应格式根据消息的处理是成功、部分成功还是失败而有所不同。
|
||
|
||
数据来源: 撮合引擎
|
||
|
||
请求 响应
|
||
cancelReplaceMode orderRateLimitExceededMode 未成交订单数 cancelResult newOrderResult status
|
||
STOP_ON_FAILURE DO_NOTHING 在限制范围内 ✅ SUCCESS ✅ SUCCESS 200
|
||
❌ FAILURE ➖ NOT_ATTEMPTED 400
|
||
✅ SUCCESS ❌ FAILURE 409
|
||
超出限制范围 ✅ SUCCESS ✅ SUCCESS N/A
|
||
❌ FAILURE ➖ NOT_ATTEMPTED N/A
|
||
✅ SUCCESS ❌ FAILURE N/A
|
||
CANCEL_ONLY 在限制范围内 ✅ SUCCESS ✅ SUCCESS 200
|
||
❌ FAILURE ➖ NOT_ATTEMPTED 400
|
||
✅ SUCCESS ❌ FAILURE 409
|
||
超出限制范围 ❌ FAILURE ➖ NOT_ATTEMPTED 429
|
||
✅ SUCCESS ❌ FAILURE 429
|
||
ALLOW_FAILURE DO_NOTHING 在限制范围内 ✅ SUCCESS ✅ SUCCESS 200
|
||
❌ FAILURE ❌ FAILURE 400
|
||
❌ FAILURE ✅ SUCCESS 409
|
||
✅ SUCCESS ❌ FAILURE 409
|
||
超出限制范围 ✅ SUCCESS ✅ SUCCESS N/A
|
||
❌ FAILURE ❌ FAILURE N/A
|
||
❌ FAILURE ✅ SUCCESS N/A
|
||
✅ SUCCESS ❌ FAILURE N/A
|
||
CANCEL_ONLY 在限制范围内 ✅ SUCCESS ✅ SUCCESS 200
|
||
❌ FAILURE ❌ FAILURE 400
|
||
❌ FAILURE ✅ SUCCESS 409
|
||
✅ SUCCESS ❌ FAILURE 409
|
||
超出限制范围 ✅ SUCCESS ✅ SUCCESS N/A
|
||
❌ FAILURE ❌ FAILURE 400
|
||
❌ FAILURE ✅ SUCCESS N/A
|
||
✅ SUCCESS ❌ FAILURE 409
|
||
响应:账户没有超出未成交订单计数时的 Response SUCCESS
|
||
|
||
// 撤单和下单都成功
|
||
{
|
||
"cancelResult": "SUCCESS",
|
||
"newOrderResult": "SUCCESS",
|
||
"cancelResponse": {
|
||
"symbol": "BTCUSDT",
|
||
"origClientOrderId": "DnLo3vTAQcjha43lAZhZ0y",
|
||
"orderId": 9,
|
||
"orderListId": -1,
|
||
"clientOrderId": "osxN3JXAtJvKvCqGeMWMVR",
|
||
"transactTime": 1684804350068,
|
||
"price": "0.01000000",
|
||
"origQty": "0.000100",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "SELL"
|
||
},
|
||
"newOrderResponse": {
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 10,
|
||
"orderListId": -1,
|
||
"clientOrderId": "wOceeeOzNORyLiQfw7jd8S",
|
||
"transactTime": 1652928801803,
|
||
"price": "0.02000000",
|
||
"origQty": "0.040000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "BUY",
|
||
"fills": []
|
||
}
|
||
}
|
||
|
||
响应:选择了 STOP_ON_FAILURE 而且账户没有超出未成交订单计数时, 撤单出现错误
|
||
|
||
{
|
||
"code": -2022,
|
||
"msg": "Order cancel-replace failed.",
|
||
"data": {
|
||
"cancelResult": "FAILURE",
|
||
"newOrderResult": "NOT_ATTEMPTED",
|
||
"cancelResponse": {
|
||
"code": -2011,
|
||
"msg": "Unknown order sent."
|
||
},
|
||
"newOrderResponse": null
|
||
}
|
||
}
|
||
|
||
响应:撤单成功而且账户没有超出未成交订单计数时,下单失败
|
||
|
||
{
|
||
"code": -2021,
|
||
"msg": "Order cancel-replace partially failed.",
|
||
"data": {
|
||
"cancelResult": "SUCCESS",
|
||
"newOrderResult": "FAILURE",
|
||
"cancelResponse": {
|
||
"symbol": "BTCUSDT",
|
||
"origClientOrderId": "86M8erehfExV8z2RC8Zo8k",
|
||
"orderId": 3,
|
||
"orderListId": -1,
|
||
"clientOrderId": "G1kLo6aDv2KGNTFcjfTSFq",
|
||
"transactTime": 1684804350068,
|
||
"price": "0.006123",
|
||
"origQty": "10000.000000",
|
||
"executedQty": "0.000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT_MAKER",
|
||
"side": "SELL"
|
||
},
|
||
"newOrderResponse": {
|
||
"code": -2010,
|
||
"msg": "Order would immediately match and take."
|
||
}
|
||
}
|
||
}
|
||
|
||
响应:选择 ALLOW_FAILURE 而且账户没有超出未成交订单计数时, 撤单出现错误
|
||
|
||
{
|
||
"code": -2021,
|
||
"msg": "Order cancel-replace partially failed.",
|
||
"data": {
|
||
"cancelResult": "FAILURE",
|
||
"newOrderResult": "SUCCESS",
|
||
"cancelResponse": {
|
||
"code": -2011,
|
||
"msg": "Unknown order sent."
|
||
},
|
||
"newOrderResponse": {
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 11,
|
||
"orderListId": -1,
|
||
"clientOrderId": "pfojJMg6IMNDKuJqDxvoxN",
|
||
"transactTime": 1648540168818
|
||
}
|
||
}
|
||
}
|
||
|
||
响应:选择 cancelReplaceMode=ALLOW_FAILURE 而且账户没有超出未成交订单计数时, 撤单和下单失败
|
||
|
||
{
|
||
"code": -2022,
|
||
"msg": "Order cancel-replace failed.",
|
||
"data": {
|
||
"cancelResult": "FAILURE",
|
||
"newOrderResult": "FAILURE",
|
||
"cancelResponse": {
|
||
"code": -2011,
|
||
"msg": "Unknown order sent."
|
||
},
|
||
"newOrderResponse": {
|
||
"code": -2010,
|
||
"msg": "Order would immediately match and take."
|
||
}
|
||
}
|
||
}
|
||
|
||
响应:选择 orderRateLimitExceededMode=DO_NOTHING 而且账户超出未成交订单计数时
|
||
|
||
{
|
||
"code": -1015,
|
||
"msg": "Too many new orders; current limit is 1 orders per 10 SECOND."
|
||
}
|
||
|
||
响应:选择 orderRateLimitExceededMode=CANCEL_ONLY 而且账户超出未成交订单计数时
|
||
|
||
{
|
||
"code": -2021,
|
||
"msg": "Order cancel-replace partially failed.",
|
||
"data": {
|
||
"cancelResult": "SUCCESS",
|
||
"newOrderResult": "FAILURE",
|
||
"cancelResponse": {
|
||
"symbol": "LTCBNB",
|
||
"origClientOrderId": "GKt5zzfOxRDSQLveDYCTkc",
|
||
"orderId": 64,
|
||
"orderListId": -1,
|
||
"clientOrderId": "loehOJF3FjoreUBDmv739R",
|
||
"transactTime": 1715779007228,
|
||
"price": "1.00",
|
||
"origQty": "10.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "SELL",
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
"newOrderResponse": {
|
||
"code": -1015,
|
||
"msg": "Too many new orders; current limit is 1 orders per 10 SECOND."
|
||
}
|
||
}
|
||
}
|
||
|
||
注意:
|
||
|
||
上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
|
||
当仅发送 orderId 时,取消订单的执行(单个 Cancel 或作为 Cancel-Replace 的一部分)总是更快。发送 origClientOrderId 或同时发送 orderId + origClientOrderId 会稍慢。
|
||
修改订单并保留优先级 (TRADE)
|
||
PUT /api/v3/order/amend/keepPriority
|
||
|
||
由客户发送以减少其现有当前订单的原始数量。
|
||
|
||
这个请求将添加0个订单到 EXCHANGE_MAX_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中。
|
||
|
||
请阅读 保留优先权的修改订单常见问题 了解更多信息。
|
||
|
||
权重: 4
|
||
|
||
未成交的订单计数: 0
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
orderId LONG NO* 需提供 orderId 或 origClientOrderId。
|
||
origClientOrderId STRING NO* 需提供 orderId 或 origClientOrderId。
|
||
newClientOrderId STRING NO* 订单在被修改后被赋予的新 client order ID。
|
||
如果未发送则自动生成。
|
||
可以将当前 clientOrderId 作为 newClientOrderId 发送来重用当前 clientOrderId 的值。
|
||
newQty DECIMAL YES 交易的新数量。 newQty 必须大于0, 但是必须比订单的原始数量小。
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
数据源: 撮合引擎
|
||
|
||
来自单个订单的响应:
|
||
|
||
{
|
||
"transactTime": 1741926410255,
|
||
"executionId": 75,
|
||
"amendedOrder": {
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 33,
|
||
"orderListId": -1,
|
||
"origClientOrderId": "5xrgbMyg6z36NzBn2pbT8H",
|
||
"clientOrderId": "PFaq6hIHxqFENGfdtn4J6Q",
|
||
"price": "6.00000000",
|
||
"qty": "5.00000000",
|
||
"executedQty": "0.00000000",
|
||
"preventedQty": "0.00000000",
|
||
"quoteOrderQty": "0.00000000",
|
||
"cumulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "SELL",
|
||
"workingTime": 1741926410242,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
}
|
||
|
||
来自订单列表中单个订单的响应:
|
||
|
||
{
|
||
"transactTime": 1741669661670,
|
||
"executionId": 22,
|
||
"amendedOrder": {
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 9,
|
||
"orderListId": 1,
|
||
"origClientOrderId": "W0fJ9fiLKHOJutovPK3oJp",
|
||
"clientOrderId": "UQ1Np3bmQ71jJzsSDW9Vpi",
|
||
"price": "0.00000000",
|
||
"qty": "4.00000000",
|
||
"executedQty": "0.00000000",
|
||
"preventedQty": "0.00000000",
|
||
"quoteOrderQty": "0.00000000",
|
||
"cumulativeQuoteQty": "0.00000000",
|
||
"status": "PENDING_NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "MARKET",
|
||
"side": "BUY",
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
"listStatus": {
|
||
"orderListId": 1,
|
||
"contingencyType": "OTO",
|
||
"listOrderStatus": "EXECUTING",
|
||
"listClientOrderId": "AT7FTxZXylVSwRoZs52mt3",
|
||
"symbol": "BTCUSDT",
|
||
"orders": [
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 8,
|
||
"clientOrderId": "GkwwHZUUbFtZOoH1YsZk9Q"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 9,
|
||
"clientOrderId": "UQ1Np3bmQ71jJzsSDW9Vpi"
|
||
}
|
||
]
|
||
}
|
||
}
|
||
|
||
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
|
||
|
||
订单列表(Order lists)
|
||
发送新 OCO 订单 - 已弃用 (TRADE)
|
||
POST /api/v3/order/oco
|
||
|
||
权重: 1
|
||
|
||
未成交的订单计数: 2
|
||
|
||
发送新的 OCO。
|
||
|
||
价格限制:
|
||
SELL: Limit price > 最后交易价格 > stop Price
|
||
BUY: Limit price < 最后交易价格 < stop Price
|
||
数量限制:
|
||
两条腿的数量必须相同。
|
||
不过, 冰山 交易的数量不一定相同
|
||
OCO 将2个订单添加到 EXCHANGE_MAX_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中。
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
listClientOrderId STRING NO 整个orderList的唯一ID
|
||
side ENUM YES 详见枚举定义:订单方向
|
||
quantity DECIMAL YES
|
||
limitClientOrderId STRING NO 限价单的唯一ID
|
||
price DECIMAL YES
|
||
limitStrategyId LONG NO
|
||
limitStrategyType INT NO 不能低于 1000000
|
||
limitIcebergQty DECIMAL NO
|
||
trailingDelta LONG NO
|
||
stopClientOrderId STRING NO 止损/止损限价单的唯一ID
|
||
stopPrice DECIMAL YES
|
||
stopStrategyId LONG NO
|
||
stopStrategyType INT NO 不能低于 1000000
|
||
stopLimitPrice DECIMAL NO 如果提供,须配合提交stopLimitTimeInForce
|
||
stopIcebergQty DECIMAL NO
|
||
stopLimitTimeInForce ENUM NO 有效值 GTC/FOK/IOC
|
||
newOrderRespType ENUM NO 详见枚举定义:订单返回类型
|
||
selfTradePreventionMode ENUM NO 允许的 ENUM 取决于交易对的配置。支持的值有:STP 模式。
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
数据源: 撮合引擎
|
||
|
||
响应
|
||
|
||
{
|
||
"orderListId": 0,
|
||
"contingencyType": "OCO",
|
||
"listStatusType": "EXEC_STARTED",
|
||
"listOrderStatus": "EXECUTING",
|
||
"listClientOrderId": "JYVpp3F0f5CAG15DhtrqLp",
|
||
"transactionTime": 1563417480525,
|
||
"symbol": "LTCBTC",
|
||
"orders": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 2,
|
||
"clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 3,
|
||
"clientOrderId": "xTXKaGYd4bluPVp78IVRvl"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 2,
|
||
"orderListId": 0,
|
||
"clientOrderId": "Kk7sqHb9J6mJWTMDVW7Vos",
|
||
"transactTime": 1563417480525,
|
||
"price": "0.000000",
|
||
"origQty": "0.624363",
|
||
"executedQty": "0.000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "STOP_LOSS",
|
||
"side": "BUY",
|
||
"stopPrice": "0.960664",
|
||
"workingTime": -1,
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 3,
|
||
"orderListId": 0,
|
||
"clientOrderId": "xTXKaGYd4bluPVp78IVRvl",
|
||
"transactTime": 1563417480525,
|
||
"price": "0.036435",
|
||
"origQty": "0.624363",
|
||
"executedQty": "0.000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT_MAKER",
|
||
"side": "BUY",
|
||
"workingTime": 1563417480525,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
]
|
||
}
|
||
|
||
New Order list - OCO (TRADE)
|
||
POST /api/v3/orderList/oco
|
||
|
||
发送新 one-cancels-the-other (OCO) 订单,激活其中一个订单会立即取消另一个订单。
|
||
|
||
OCO 包含了两个订单,分别被称为 上方订单 和 下方订单。
|
||
其中一个订单必须是 LIMIT_MAKER/TAKE_PROFIT/TAKE_PROFIT_LIMIT 订单,另一个订单必须是 STOP_LOSS 或 STOP_LOSS_LIMIT 订单。
|
||
针对价格限制:
|
||
如果 OCO 订单方向是 SELL:
|
||
LIMIT_MAKER/TAKE_PROFIT_LIMIT price > 最后交易价格 > STOP_LOSS/STOP_LOSS_LIMIT stopPrice
|
||
TAKE_PROFIT stopPrice > 最后交易价格 > STOP_LOSS/STOP_LOSS_LIMIT stopPrice
|
||
如果 OCO 订单方向是 BUY:
|
||
LIMIT_MAKER/TAKE_PROFIT_LIMIT price < 最后交易价格 < stopPrice
|
||
TAKE_PROFIT stopPrice < 最后交易价格 < STOP_LOSS/STOP_LOSS_LIMIT stopPrice
|
||
OCO 会添加 2个订单 到 EXCHANGE_MAX_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中。
|
||
权重: 1
|
||
|
||
未成交的订单计数: 2
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING Yes
|
||
listClientOrderId STRING No 整个 OCO order list 的唯一ID。 如果未发送则自动生成。
|
||
仅当前一个订单已填满或完全过期时,才会接受具有相同的listClientOrderId。
|
||
listClientOrderId 与 aboveClientOrderId 和 belowCLientOrderId 不同。
|
||
side ENUM Yes 订单方向:BUY or SELL
|
||
quantity DECIMAL Yes 两个订单的数量。
|
||
aboveType ENUM Yes 支持值:STOP_LOSS_LIMIT, STOP_LOSS, LIMIT_MAKER, TAKE_PROFIT, TAKE_PROFIT_LIMIT。
|
||
aboveClientOrderId STRING No 上方订单的唯一ID。 如果未发送则自动生成。
|
||
aboveIcebergQty LONG No 请注意,只有当 aboveTimeInForce 为 GTC 时才能使用。
|
||
abovePrice DECIMAL No 当 aboveType 是 STOP_LOSS_LIMIT, LIMIT_MAKER 或 TAKE_PROFIT_LIMIT 时,可用以指定限价。
|
||
aboveStopPrice DECIMAL No 如果 aboveType 是 STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT 或 TAKE_PROFIT_LIMIT 才能使用。
|
||
必须指定 aboveStopPrice 或 aboveTrailingDelta 或两者。
|
||
aboveTrailingDelta LONG No 请看 追踪止盈止损(Trailing Stop)订单常见问题。
|
||
aboveTimeInForce ENUM No 如果 aboveType 是 STOP_LOSS_LIMIT 或 TAKE_PROFIT_LIMIT,则为必填项。
|
||
aboveStrategyId LONG No 订单策略中上方订单的 ID。
|
||
aboveStrategyType INT No 上方订单策略的任意数值。
|
||
小于 1000000 的值被保留,无法使用。
|
||
abovePegPriceType ENUM NO 参阅 关于挂钩订单参数的注意事项
|
||
abovePegOffsetType ENUM NO
|
||
abovePegOffsetValue INT NO
|
||
belowType ENUM Yes 支持值:STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT,TAKE_PROFIT_LIMIT。
|
||
belowClientOrderId STRING No
|
||
belowIcebergQty LONG No 请注意,只有当 belowTimeInForce 为 GTC 时才能使用。
|
||
belowPrice DECIMAL No 当 belowType 是 STOP_LOSS_LIMIT, LIMIT_MAKER 或 TAKE_PROFIT_LIMIT 时,可用以指定限价。
|
||
belowStopPrice DECIMAL No 如果 belowType 是 STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT 或 TAKE_PROFIT_LIMIT 才能使用。
|
||
必须指定 belowStopPrice 或 belowTrailingDelta 或两者。
|
||
belowTrailingDelta LONG No 请看 追踪止盈止损(Trailing Stop)订单常见问题。
|
||
belowTimeInForce ENUM No 如果belowType 是 STOP_LOSS_LIMIT 或 TAKE_PROFIT_LIMIT,则为必须配合提交的值。
|
||
belowStrategyId LONG No 订单策略中下方订单的 ID。
|
||
belowStrategyType INT No 下方订单策略的任意数值。
|
||
小于 1000000 的值被保留,无法使用。
|
||
belowPegPriceType ENUM NO 参阅 关于挂钩订单参数的注意事项
|
||
belowPegOffsetType ENUM NO
|
||
belowPegOffsetValue INT NO
|
||
newOrderRespType ENUM No 响应格式可选值: ACK, RESULT, FULL。
|
||
selfTradePreventionMode ENUM No 允许的 ENUM 取决于交易对上的配置。 支持值:STP 模式。
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG Yes
|
||
数据源: 撮合引擎
|
||
|
||
响应:
|
||
|
||
使用 newOrderRespType 参数来选择 orderReports 的响应格式。以下示例适用于 RESULT 响应类型。 请参阅 POST /api/v3/order了解更多 orderReports 的响应类型。
|
||
|
||
{
|
||
"orderListId": 1,
|
||
"contingencyType": "OCO",
|
||
"listStatusType": "EXEC_STARTED",
|
||
"listOrderStatus": "EXECUTING",
|
||
"listClientOrderId": "lH1YDkuQKWiXVXHPSKYEIp",
|
||
"transactionTime": 1710485608839,
|
||
"symbol": "LTCBTC",
|
||
"orders": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 10,
|
||
"clientOrderId": "44nZvqpemY7sVYgPYbvPih"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 11,
|
||
"clientOrderId": "NuMp0nVYnciDiFmVqfpBqK"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 10,
|
||
"orderListId": 1,
|
||
"clientOrderId": "44nZvqpemY7sVYgPYbvPih",
|
||
"transactTime": 1710485608839,
|
||
"price": "1.00000000",
|
||
"origQty": "5.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "STOP_LOSS_LIMIT",
|
||
"side": "SELL",
|
||
"stopPrice": "1.00000000",
|
||
"workingTime": -1,
|
||
"icebergQty": "1.00000000",
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 11,
|
||
"orderListId": 1,
|
||
"clientOrderId": "NuMp0nVYnciDiFmVqfpBqK",
|
||
"transactTime": 1710485608839,
|
||
"price": "3.00000000",
|
||
"origQty": "5.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT_MAKER",
|
||
"side": "SELL",
|
||
"workingTime": 1710485608839,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
]
|
||
}
|
||
|
||
|
||
New Order List - OTO (TRADE)
|
||
POST /api/v3/orderList/oto
|
||
|
||
发送一个新的 OTO 订单。
|
||
|
||
一个 OTO 订单(One-Triggers-the-Other)是一个包含了两个订单的订单列表.
|
||
第一个订单被称为生效订单,必须为 LIMIT 或 LIMIT_MAKER 类型的订单。最初,订单簿上只有生效订单。
|
||
第二个订单被称为待处理订单。它可以是任何订单类型,但不包括使用参数 quoteOrderQty 的 MARKET 订单。只有当生效订单完全成交时,待处理订单才会被自动下单。
|
||
如果生效订单或者待处理订单中的任意一个被单独取消,订单列表中剩余的那个订单也会被随之取消或过期。
|
||
如果生效订单在下订单列表后立即完全成交,则可能会得到订单响应。其中,生效订单的状态为 FILLED ,但待处理订单的状态为 PENDING_NEW。针对这类情况,如果需要检查当前状态,您可以查询相关的待处理订单。
|
||
OTO 订单将2 个订单添加到 EXCHANGE_MAX_NUM_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中。
|
||
权重: 1
|
||
|
||
未成交的订单计数: 2
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
listClientOrderId STRING NO 整个订单列表的唯一ID。 如果未发送则自动生成。
|
||
仅当前一个订单列表已填满或完全过期时,才会接受含有相同 listClientOrderId 值的新订单列表。
|
||
listClientOrderId 与 workingClientOrderId 和 pendingClientOrderId 不同。
|
||
newOrderRespType ENUM NO 用于设置JSON响应的格式。 支持的数值: 订单返回类型
|
||
selfTradePreventionMode ENUM NO 允许的数值取决于交易对上的配置。参考 STP 模式
|
||
workingType ENUM YES 支持的数值: LIMIT, LIMIT_MAKER
|
||
workingSide ENUM YES 支持的数值: 订单方向
|
||
workingClientOrderId STRING NO 用于标识生效订单的唯一ID。
|
||
如果未发送则自动生成。
|
||
workingPrice DECIMAL YES
|
||
workingQuantity DECIMAL YES 用于设置生效订单的数量。
|
||
workingIcebergQty DECIMAL NO 仅当 workingTimeInForce 为 GTC 或 workingType 为 LIMIT_MAKER 时,才能使用此功能。
|
||
workingTimeInForce ENUM NO 支持的数值: 生效时间
|
||
workingStrategyId LONG NO 订单策略中用于标识生效订单的 ID。
|
||
workingStrategyType INT NO 用于标识生效订单策略的任意数值。
|
||
小于 1000000 的值被保留,无法使用。
|
||
pendingType ENUM YES 支持的数值: 订单类型
|
||
请注意,系统不支持使用 quoteOrderQty 的 MARKET 订单。
|
||
workingPegPriceType ENUM NO 参阅 关于挂钩订单参数的注意事项
|
||
workingPegOffsetType ENUM NO
|
||
workingPegOffsetValue INT NO
|
||
pendingSide ENUM YES 支持的数值: 订单方向
|
||
pendingClientOrderId STRING NO 用于标识待处理订单的唯一ID。
|
||
如果未发送则自动生成。
|
||
pendingPrice DECIMAL NO
|
||
pendingStopPrice DECIMAL NO
|
||
pendingTrailingDelta DECIMAL NO
|
||
pendingQuantity DECIMAL YES 用于设置待处理订单的数量。
|
||
pendingIcebergQty DECIMAL NO 只有当 pendingTimeInForce 为 GTC 或者当 pendingType 为 LIMIT_MAKER 时才能使用。
|
||
pendingTimeInForce ENUM NO 支持的数值: 生效时间
|
||
pendingStrategyId LONG NO 订单策略中用于标识待处理订单的 ID。
|
||
pendingStrategyType INT NO 用于标识待处理订单策略的任意数值。
|
||
小于 1000000 的值被保留,无法使用。
|
||
pendingPegPriceType ENUM NO 参阅 关于挂钩订单参数的注意事项
|
||
pendingPegOffsetType ENUM NO
|
||
pendingPegOffsetValue INT NO
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
|
||
根据 pendingType 或者 workingType 的不同值,对于某些参数的强制要求
|
||
|
||
根据 pendingType 或者workingType的不同值,对于某些可选参数有强制要求,具体如下:
|
||
|
||
类型 强制要求的参数 其他信息
|
||
workingType = LIMIT workingTimeInForce
|
||
pendingType = LIMIT pendingPrice, pendingTimeInForce
|
||
pendingType = STOP_LOSS 或 TAKE_PROFIT pendingStopPrice 与/或 pendingTrailingDelta
|
||
pendingType = STOP_LOSS_LIMIT 或 TAKE_PROFIT_LIMIT pendingPrice, pendingStopPrice 与/或 pendingTrailingDelta, pendingTimeInForce
|
||
数据源: 撮合引擎
|
||
|
||
响应:
|
||
|
||
{
|
||
"orderListId": 0,
|
||
"contingencyType": "OTO",
|
||
"listStatusType": "EXEC_STARTED",
|
||
"listOrderStatus": "EXECUTING",
|
||
"listClientOrderId": "yl2ERtcar1o25zcWtqVBTC",
|
||
"transactionTime": 1712289389158,
|
||
"symbol": "LTCBTC",
|
||
"orders": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 4,
|
||
"clientOrderId": "Bq17mn9fP6vyCn75Jw1xya"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 5,
|
||
"clientOrderId": "arLFo0zGJVDE69cvGBaU0d"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 4,
|
||
"orderListId": 0,
|
||
"clientOrderId": "Bq17mn9fP6vyCn75Jw1xya",
|
||
"transactTime": 1712289389158,
|
||
"price": "1.00000000",
|
||
"origQty": "1.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "SELL",
|
||
"workingTime": 1712289389158,
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 5,
|
||
"orderListId": 0,
|
||
"clientOrderId": "arLFo0zGJVDE69cvGBaU0d",
|
||
"transactTime": 1712289389158,
|
||
"price": "0.00000000",
|
||
"origQty": "5.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "PENDING_NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "MARKET",
|
||
"side": "BUY",
|
||
"workingTime": -1,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
]
|
||
}
|
||
|
||
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
|
||
|
||
|
||
New Order List - OTOCO (TRADE)
|
||
POST /api/v3/orderList/otoco
|
||
|
||
发送一个新的 OTOCO 订单。
|
||
|
||
一个 OTOCO 订单(One-Triggers-One-Cancels-the-Other)是一个包含了三个订单的订单列表。
|
||
第一个订单被称为生效订单,必须为 LIMIT 或 LIMIT_MAKER 类型的订单。最初,订单簿上只有生效订单。
|
||
生效订单的行为与此一致 OTO
|
||
一个OTOCO订单有两个待处理订单(pending above 和 pending below),它们构成了一个 OCO 订单列表。只有当生效订单完全成交时,待处理订单们才会被自动下单。
|
||
待处理上方(pending above)订单和待处理下方(pending below)订单都遵循与 OCO 订单列表相同的规则 Order List OCO。
|
||
OTOCO 在 EXCHANGE_MAX_NUM_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器的基础上添加3个订单。
|
||
权重: 1
|
||
|
||
未成交的订单计数: 3
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
listClientOrderId STRING NO 整个订单列表的唯一ID。 如果未发送则自动生成。
|
||
仅当前一个订单列表已填满或完全过期时,才会接受含有相同 listClientOrderId 值的新订单列表。
|
||
listClientOrderId 与 workingClientOrderId, pendingAboveClientOrderId 以及 pendingBelowClientOrderId 不同。
|
||
newOrderRespType ENUM NO 用于设置JSON响应的格式。 支持的数值: 订单返回类型
|
||
selfTradePreventionMode ENUM NO 允许的数值取决于交易对上的配置。参考 STP 模式
|
||
workingType ENUM YES 支持的数值: LIMIT, LIMIT_MAKER
|
||
workingSide ENUM YES 支持的数值: 订单方向
|
||
workingClientOrderId STRING NO 用于标识生效订单的唯一ID。
|
||
如果未发送则自动生成。
|
||
workingPrice DECIMAL YES
|
||
workingQuantity DECIMAL YES
|
||
workingIcebergQty DECIMAL NO 仅当 workingTimeInForce 为 GTC 或 workingType 为 LIMIT_MAKER 时,才能使用此功能。
|
||
workingTimeInForce ENUM NO 支持的数值: 生效时间
|
||
workingStrategyId LONG NO 订单策略中用于标识生效订单的 ID。
|
||
workingStrategyType INT NO 用于标识生效订单策略的任意数值。
|
||
小于 1000000 的值被保留,无法使用。
|
||
workingPegPriceType ENUM NO 参阅 关于挂钩订单参数的注意事项
|
||
workingPegOffsetType ENUM NO
|
||
workingPegOffsetValue INT NO
|
||
pendingSide ENUM YES 支持的数值: 订单方向
|
||
pendingQuantity DECIMAL YES
|
||
pendingAboveType ENUM YES 支持的数值: STOP_LOSS_LIMIT, STOP_LOSS, LIMIT_MAKER, TAKE_PROFIT, TAKE_PROFIT_LIMIT
|
||
pendingAboveClientOrderId STRING NO 用于标识待处理上方订单的唯一ID。
|
||
如果未发送则自动生成。
|
||
pendingAbovePrice DECIMAL NO 当 pendingAboveType 是 STOP_LOSS_LIMIT, LIMIT_MAKER 或 TAKE_PROFIT_LIMIT 时,可用以指定限价。
|
||
pendingAboveStopPrice DECIMAL NO 如果 pendingAboveType 是 STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, TAKE_PROFIT_LIMIT 才能使用。
|
||
pendingAboveTrailingDelta DECIMAL NO 参见 追踪止盈止损(Trailing Stop)订单常见问题
|
||
pendingAboveIcebergQty DECIMAL NO 只有当 pendingAboveTimeInForce 为 GTC 时才能使用。
|
||
pendingAboveTimeInForce ENUM NO
|
||
pendingAboveStrategyId LONG NO 订单策略中用于标识待处理上方订单的 ID。
|
||
pendingAboveStrategyType INT NO 用于标识待处理上方订单策略的任意数值。
|
||
小于 1000000 的值被保留,无法使用。
|
||
pendingAbovePegPriceType ENUM NO 参阅 关于挂钩订单参数的注意事项
|
||
pendingAbovePegOffsetType ENUM NO
|
||
pendingAbovePegOffsetValue INT NO
|
||
pendingBelowType ENUM NO 支持的数值: STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, TAKE_PROFIT_LIMIT
|
||
pendingBelowClientOrderId STRING NO 用于标识待处理下方订单的唯一ID。
|
||
如果未发送则自动生成。
|
||
pendingBelowPrice DECIMAL NO 当 pendingBelowType 是 STOP_LOSS_LIMIT 或 TAKE_PROFIT_LIMIT 时,可用以指定限价。
|
||
pendingBelowStopPrice DECIMAL NO 如果 pendingBelowType 是 STOP_LOSS, STOP_LOSS_LIMIT, TAKE_PROFIT, TAKE_PROFIT_LIMIT 才能使用。
|
||
必须指定 pendingBelowStopPrice 或 pendingBelowTrailingDelta 或两者。
|
||
pendingBelowTrailingDelta DECIMAL NO
|
||
pendingBelowIcebergQty DECIMAL NO 只有当 pendingBelowTimeInForce 为 GTC 时才能使用。
|
||
pendingBelowTimeInForce ENUM NO
|
||
pendingBelowStrategyId LONG NO 订单策略中用于标识待处理下方订单的 ID。
|
||
pendingBelowStrategyType INT NO 用于标识待处理下方订单策略的任意数值。
|
||
小于 1000000 的值被保留,无法使用。
|
||
pendingBelowPegPriceType ENUM NO 参阅 关于挂钩订单参数的注意事项
|
||
pendingBelowPegOffsetType ENUM NO
|
||
pendingBelowPegOffsetValue INT NO
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
|
||
根据 pendingAboveType, pendingBelowType 或者workingType的不同值,对于某些参数的强制要求
|
||
|
||
根据 pendingAboveType, pendingBelowType 或者workingType的不同值,对于某些可选参数有强制要求,具体如下:
|
||
|
||
类型 强制要求的参数 其他信息
|
||
workingType = LIMIT workingTimeInForce
|
||
pendingAboveType = LIMIT_MAKER pendingAbovePrice
|
||
pendingAboveType = STOP_LOSS/TAKE_PROFIT pendingAboveStopPrice 与/或 pendingAboveTrailingDelta
|
||
pendingAboveType = STOP_LOSS_LIMIT/TAKE_PROFIT_LIMIT pendingAbovePrice, pendingAboveStopPrice 与/或 pendingAboveTrailingDelta, pendingAboveTimeInForce
|
||
pendingBelowType = LIMIT_MAKER pendingBelowPrice
|
||
pendingBelowType = STOP_LOSS/TAKE_PROFIT pendingBelowStopPrice 与/或 pendingBelowTrailingDelta
|
||
pendingBelowType = STOP_LOSS_LIMIT/TAKE_PROFIT_LIMIT pendingBelowPrice, pendingBelowStopPrice 与/或 pendingBelowTrailingDelta, pendingBelowTimeInForce
|
||
数据源: 撮合引擎
|
||
|
||
响应:
|
||
|
||
{
|
||
"orderListId": 1,
|
||
"contingencyType": "OTO",
|
||
"listStatusType": "EXEC_STARTED",
|
||
"listOrderStatus": "EXECUTING",
|
||
"listClientOrderId": "RumwQpBaDctlUu5jyG5rs0",
|
||
"transactionTime": 1712291372842,
|
||
"symbol": "LTCBTC",
|
||
"orders": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 6,
|
||
"clientOrderId": "fM9Y4m23IFJVCQmIrlUmMK"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 7,
|
||
"clientOrderId": "6pcQbFIzTXGZQ1e2MkGDq4"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 8,
|
||
"clientOrderId": "r4JMv9cwAYYUwwBZfbussx"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 6,
|
||
"orderListId": 1,
|
||
"clientOrderId": "fM9Y4m23IFJVCQmIrlUmMK",
|
||
"transactTime": 1712291372842,
|
||
"price": "1.00000000",
|
||
"origQty": "1.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "SELL",
|
||
"workingTime": 1712291372842,
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 7,
|
||
"orderListId": 1,
|
||
"clientOrderId": "6pcQbFIzTXGZQ1e2MkGDq4",
|
||
"transactTime": 1712291372842,
|
||
"price": "1.00000000",
|
||
"origQty": "5.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "PENDING_NEW",
|
||
"timeInForce": "IOC",
|
||
"type": "STOP_LOSS_LIMIT",
|
||
"side": "BUY",
|
||
"stopPrice": "6.00000000",
|
||
"workingTime": -1,
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 8,
|
||
"orderListId": 1,
|
||
"clientOrderId": "r4JMv9cwAYYUwwBZfbussx",
|
||
"transactTime": 1712291372842,
|
||
"price": "3.00000000",
|
||
"origQty": "5.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "PENDING_NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT_MAKER",
|
||
"side": "BUY",
|
||
"workingTime": -1,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
]
|
||
}
|
||
|
||
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
|
||
|
||
New Order List - OPO(TRADE)
|
||
POST /api/v3/orderList/opo
|
||
|
||
发送一个新的 OPO 订单。
|
||
|
||
OPO 会向 EXCHANGE_MAX_NUM_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中添加 2 个订单。
|
||
权重: 1
|
||
|
||
未成交订单计数: 2
|
||
|
||
参数:
|
||
|
||
名称 类型 必填 描述
|
||
symbol STRING YES
|
||
listClientOrderId STRING NO 订单列表中的唯一 ID。如果未发送,则自动生成。只有当之前的同一 listClientOrderId 的订单列表已成交或完全过期后,才接受新的同一 listClientOrderId 的订单列表。listClientOrderId 与 workingClientOrderId 和 pendingClientOrderId 不同。
|
||
newOrderRespType ENUM NO JSON 响应格式。支持的数值:订单返回类型
|
||
selfTradePreventionMode ENUM NO 允许的数值取决于交易对的配置。支持的数值:STP模式
|
||
workingType ENUM YES 支持的数值:LIMIT,LIMIT_MAKER
|
||
workingSide ENUM YES 支持的数值:订单方向
|
||
workingClientOrderId STRING NO 生效订单中挂单的任意唯一 ID。如果未发送,则自动生成。
|
||
workingPrice DECIMAL YES 生效订单价格
|
||
workingQuantity DECIMAL YES 设置生效订单的数量
|
||
workingIcebergQty DECIMAL NO 仅当 workingTimeInForce 为 GTC 或 workingType 为 LIMIT_MAKER 时可用
|
||
workingTimeInForce ENUM NO 支持的数值:生效时间
|
||
workingStrategyId LONG NO 用于标识订单策略中生效订单的任意数字值
|
||
workingStrategyType INT NO 用于标识生效订单策略的任意数字值。小于 1000000 的值为保留值,不能使用。
|
||
workingPegPriceType ENUM NO 详见 挂钩订单
|
||
workingPegOffsetType ENUM NO
|
||
workingPegOffsetValue INT NO
|
||
pendingType ENUM YES 支持的数值:订单类型。注意,不支持使用 quoteOrderQty 的 MARKET 订单。
|
||
pendingSide ENUM YES 支持的数值:订单方向
|
||
pendingClientOrderId STRING NO 待执行订单中挂单的任意唯一 ID。如果未发送,则自动生成。
|
||
pendingPrice DECIMAL NO 待执行订单价格
|
||
pendingStopPrice DECIMAL NO 待执行订单止损价格
|
||
pendingTrailingDelta DECIMAL NO 待执行订单跟踪止损差值
|
||
pendingIcebergQty DECIMAL NO 仅当 pendingTimeInForce 为 GTC 或 pendingType 为 LIMIT_MAKER 时可用
|
||
pendingTimeInForce ENUM NO 支持的数值:生效时间
|
||
pendingStrategyId LONG NO 用于标识订单策略中待执行订单的任意数字值
|
||
pendingStrategyType INT NO 用于标识待执行订单策略的任意数字值。小于 1000000 的值为保留值,不能使用。
|
||
pendingPegPriceType ENUM NO 详见 挂钩订单
|
||
pendingPegOffsetType ENUM NO
|
||
pendingPegOffsetValue INT NO
|
||
recvWindow DECIMAL NO 该值不能大于 60000。支持最多三位小数精度(例如 6000.346),以便指定微秒。
|
||
timestamp LONG YES 时间戳
|
||
数据来源:撮合引擎
|
||
|
||
响应示例:
|
||
|
||
{
|
||
"orderListId": 0,
|
||
"contingencyType": "OTO",
|
||
"listStatusType": "EXEC_STARTED",
|
||
"listOrderStatus": "EXECUTING",
|
||
"listClientOrderId": "H94qCqO27P74OEiO4X8HOG",
|
||
"transactionTime": 1762998011671,
|
||
"symbol": "BTCUSDT",
|
||
"orders": [
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 2,
|
||
"clientOrderId": "JX6xfdjo0wysiGumfHNmPu"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 3,
|
||
"clientOrderId": "2ZJCY0IjOhuYIMLGN8kU8S"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 2,
|
||
"orderListId": 0,
|
||
"clientOrderId": "JX6xfdjo0wysiGumfHNmPu",
|
||
"transactTime": 1762998011671,
|
||
"price": "102264.00000000",
|
||
"origQty": "0.00060000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.00000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "BUY",
|
||
"workingTime": 1762998011671,
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 3,
|
||
"orderListId": 0,
|
||
"clientOrderId": "2ZJCY0IjOhuYIMLGN8kU8S",
|
||
"transactTime": 1762998011671,
|
||
"price": "0.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.00000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "PENDING_NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "MARKET",
|
||
"side": "SELL",
|
||
"workingTime": -1,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
]
|
||
}
|
||
|
||
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
|
||
|
||
New Order List - OPOCO (../TRADE)
|
||
POST /api/v3/orderList/opoco
|
||
|
||
发送一个 OPOCO 订单。
|
||
|
||
权重: 1
|
||
|
||
未成交订单计数: 3
|
||
|
||
参数:
|
||
|
||
名称 类型 必填 描述
|
||
symbol STRING YES 交易对符号
|
||
listClientOrderId STRING NO 订单列表中的任意唯一 ID。如果未发送,则自动生成。只有当之前的同一 listClientOrderId 的订单列表已成交或完全过期时,才接受新的同一 listClientOrderId 的订单列表。listClientOrderId 与 workingClientOrderId、pendingAboveClientOrderId 和 pendingBelowClientOrderId 不同。
|
||
newOrderRespType ENUM NO JSON 响应格式。支持的数值:订单返回类型
|
||
selfTradePreventionMode ENUM NO 允许的值取决于交易对的配置。支持的数值:STP模式
|
||
workingType ENUM YES 支持的数值:LIMIT,LIMIT_MAKER
|
||
workingSide ENUM YES 支持的数值:订单方向
|
||
workingClientOrderId STRING NO 生效订单中挂单的任意唯一 ID。如果未发送,则自动生成。
|
||
workingPrice DECIMAL YES 生效订单价格
|
||
workingQuantity DECIMAL YES 生效订单数量
|
||
workingIcebergQty DECIMAL NO 仅当 workingTimeInForce 为 GTC 或 workingType 为 LIMIT_MAKER 时可用
|
||
workingTimeInForce ENUM NO 支持的数值:生效时间
|
||
workingStrategyId LONG NO 用于标识订单策略中生效订单的任意数字值
|
||
workingStrategyType INT NO 用于标识生效订单策略的任意数字值。小于 1000000 的值为保留值,不能使用。
|
||
workingPegPriceType ENUM NO 详见 挂钩订单
|
||
workingPegOffsetType ENUM NO
|
||
workingPegOffsetValue INT NO
|
||
pendingSide ENUM YES 支持的数值:订单方向
|
||
pendingAboveType ENUM YES 支持的数值:STOP_LOSS_LIMIT,STOP_LOSS,LIMIT_MAKER,TAKE_PROFIT,TAKE_PROFIT_LIMIT
|
||
pendingAboveClientOrderId STRING NO 待执行“上方”订单中开放订单的任意唯一 ID。如果未发送,则自动生成。
|
||
pendingAbovePrice DECIMAL NO 当 pendingAboveType 为 STOP_LOSS_LIMIT、LIMIT_MAKER 或 TAKE_PROFIT_LIMIT 时,可用于指定限价。
|
||
pendingAboveStopPrice DECIMAL NO 当 pendingAboveType 为 STOP_LOSS、STOP_LOSS_LIMIT、TAKE_PROFIT、TAKE_PROFIT_LIMIT 时可用。
|
||
pendingAboveTrailingDelta DECIMAL NO 详见 追踪止盈止损常见问题
|
||
pendingAboveIcebergQty DECIMAL NO 仅当 pendingAboveTimeInForce 为 GTC 或 pendingAboveType 为 LIMIT_MAKER 时可用。
|
||
pendingAboveTimeInForce ENUM NO
|
||
pendingAboveStrategyId LONG NO 用于标识订单策略中待执行上方订单的任意数字值。
|
||
pendingAboveStrategyType INT NO 用于标识待执行上方订单策略的任意数字值。小于 1000000 的值为保留值,不能使用。
|
||
pendingAbovePegPriceType ENUM NO 详见 挂钩订单
|
||
pendingAbovePegOffsetType ENUM NO
|
||
pendingAbovePegOffsetValue INT NO
|
||
pendingBelowType ENUM NO 支持的数值:STOP_LOSS,STOP_LOSS_LIMIT,TAKE_PROFIT,TAKE_PROFIT_LIMIT
|
||
pendingBelowClientOrderId STRING NO 待执行“下方”订单中开放订单的任意唯一 ID。如果未发送,则自动生成。
|
||
pendingBelowPrice DECIMAL NO 当 pendingBelowType 为 STOP_LOSS_LIMIT 或 TAKE_PROFIT_LIMIT 时,可用于指定限价。
|
||
pendingBelowStopPrice DECIMAL NO 当 pendingBelowType 为 STOP_LOSS、STOP_LOSS_LIMIT、TAKE_PROFIT 或 TAKE_PROFIT_LIMIT 时可用。pendingBelowStopPrice、pendingBelowTrailingDelta 或两者之一必须被指定。
|
||
pendingBelowTrailingDelta DECIMAL NO
|
||
pendingBelowIcebergQty DECIMAL NO 仅当 pendingBelowTimeInForce 为 GTC 或 pendingBelowType 为 LIMIT_MAKER 时可用。
|
||
pendingBelowTimeInForce ENUM NO 支持的数值:生效时间
|
||
pendingBelowStrategyId LONG NO 用于标识订单策略中待执行下方订单的任意数字值。
|
||
pendingBelowStrategyType INT NO 用于标识待执行下方订单策略的任意数字值。小于 1000000 为保留值,不能使用。
|
||
pendingBelowPegPriceType ENUM NO 详见 挂钩订单
|
||
pendingBelowPegOffsetType ENUM NO
|
||
pendingBelowPegOffsetValue INT NO
|
||
recvWindow DECIMAL NO 该值不能大于 60000。支持最多三位小数精度(例如 6000.346),以便指定微秒。
|
||
timestamp LONG YES 时间戳
|
||
响应:
|
||
|
||
{
|
||
"orderListId": 2,
|
||
"contingencyType": "OTO",
|
||
"listStatusType": "EXEC_STARTED",
|
||
"listOrderStatus": "EXECUTING",
|
||
"listClientOrderId": "bcedxMpQG6nFrZUPQyshoL",
|
||
"transactionTime": 1763000506354,
|
||
"symbol": "BTCUSDT",
|
||
"orders": [
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 9,
|
||
"clientOrderId": "OLSBhMWaIlLSzZ9Zm7fnKB"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 10,
|
||
"clientOrderId": "mfif39yPTHsB3C0FIXznR2"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 11,
|
||
"clientOrderId": "yINkaXSJeoi3bU5vWMY8Z8"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 9,
|
||
"orderListId": 2,
|
||
"clientOrderId": "OLSBhMWaIlLSzZ9Zm7fnKB",
|
||
"transactTime": 1763000506354,
|
||
"price": "102496.00000000",
|
||
"origQty": "0.00170000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.00000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "BUY",
|
||
"workingTime": 1763000506354,
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 10,
|
||
"orderListId": 2,
|
||
"clientOrderId": "mfif39yPTHsB3C0FIXznR2",
|
||
"transactTime": 1763000506354,
|
||
"price": "101613.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.00000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "PENDING_NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "STOP_LOSS_LIMIT",
|
||
"side": "SELL",
|
||
"stopPrice": "10100.00000000",
|
||
"workingTime": -1,
|
||
"selfTradePreventionMode": "NONE"
|
||
},
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 11,
|
||
"orderListId": 2,
|
||
"clientOrderId": "yINkaXSJeoi3bU5vWMY8Z8",
|
||
"transactTime": 1763000506354,
|
||
"price": "104261.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.00000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "PENDING_NEW",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT_MAKER",
|
||
"side": "SELL",
|
||
"workingTime": -1,
|
||
"selfTradePreventionMode": "NONE"
|
||
}
|
||
]
|
||
}
|
||
|
||
注意: 上面的 payload 没有显示所有可以出现的字段,更多请看 订单响应中的特定条件时才会出现的字段 部分。
|
||
|
||
取消订单列表 (TRADE)
|
||
DELETE /api/v3/orderList
|
||
|
||
取消整个订单列表。
|
||
|
||
权重: 1
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
orderListId LONG NO orderListId 或 listClientOrderId 必须被提供
|
||
listClientOrderId STRING NO orderListId 或 listClientOrderId 必须被提供
|
||
newClientOrderId STRING NO 用户自定义的本次撤销操作的ID(注意不是被撤销的订单的自定义ID)。如无指定会自动赋值。
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
其他注意点:
|
||
|
||
取消订单列表中的单个订单将取消整个订单列表.
|
||
当同时提供 orderListId 和 listClientOrderId 两个参数时,系统首先将会使用 orderListId 来搜索订单。然后, 查找结果中的 listClientOrderId 的值将会被用来验证订单。如果两个条件都不满足,则请求将被拒绝。
|
||
数据源: 撮合引擎
|
||
|
||
响应:
|
||
|
||
{
|
||
"orderListId": 0,
|
||
"contingencyType": "OCO",
|
||
"listStatusType": "ALL_DONE",
|
||
"listOrderStatus": "ALL_DONE",
|
||
"listClientOrderId": "C3wyj4WVEktd7u9aVBRXcN",
|
||
"transactionTime": 1574040868128,
|
||
"symbol": "LTCBTC",
|
||
"orders": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 2,
|
||
"clientOrderId": "pO9ufTiFGg3nw2fOdgeOXa"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"orderId": 3,
|
||
"clientOrderId": "TXOvglzXuaubXAaENpaRCB"
|
||
}
|
||
],
|
||
"orderReports": [
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"origClientOrderId": "pO9ufTiFGg3nw2fOdgeOXa",
|
||
"orderId": 2,
|
||
"orderListId": 0,
|
||
"clientOrderId": "unfWT8ig8i0uj6lPuYLez6",
|
||
"transactTime": 1688005070874,
|
||
"price": "1.00000000",
|
||
"origQty": "10.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "STOP_LOSS_LIMIT",
|
||
"side": "SELL",
|
||
"stopPrice": "1.00000000"
|
||
},
|
||
{
|
||
"symbol": "LTCBTC",
|
||
"origClientOrderId": "TXOvglzXuaubXAaENpaRCB",
|
||
"orderId": 3,
|
||
"orderListId": 0,
|
||
"clientOrderId": "unfWT8ig8i0uj6lPuYLez6",
|
||
"transactTime": 1688005070874,
|
||
"price": "3.00000000",
|
||
"origQty": "10.00000000",
|
||
"executedQty": "0.00000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "0.00000000",
|
||
"status": "CANCELED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT_MAKER",
|
||
"side": "SELL"
|
||
}
|
||
]
|
||
}
|
||
|
||
SOR
|
||
|
||
下 SOR 订单 (TRADE)
|
||
POST /api/v3/sor/order
|
||
|
||
发送使用智能订单路由 (SOR) 的新订单。
|
||
|
||
这个请求会把1个订单添加到 EXCHANGE_MAX_ORDERS 过滤器和 MAX_NUM_ORDERS 过滤器中。
|
||
|
||
参阅 智能指令路由 (SOR) 了解更多详情。
|
||
|
||
权重: 1
|
||
|
||
未成交的订单计数: 1
|
||
|
||
参数:
|
||
|
||
名称 类型 是否必需 描述
|
||
symbol STRING YES
|
||
side ENUM YES
|
||
type ENUM YES
|
||
timeInForce ENUM NO
|
||
quantity DECIMAL YES
|
||
price DECIMAL NO
|
||
newClientOrderId STRING NO 用户自定义的orderid,如空缺系统会自动赋值。如果几个订单具有相同的 newClientOrderID 赋值,
|
||
那么只有在前一个订单成交后才可以接受下一个订单,否则该订单将被拒绝。
|
||
strategyId LONG NO
|
||
strategyType INT NO 赋值不能小于 1000000.
|
||
icebergQty DECIMAL NO 仅有限价单可以使用该参数,含义为创建冰山订单并指定冰山订单的数量。
|
||
newOrderRespType ENUM NO 指定响应类型:
|
||
指定响应类型 ACK, RESULT 或 FULL; 默认为 FULL。
|
||
selfTradePreventionMode ENUM NO 允许的 ENUM 取决于交易对的配置。支持的值有:STP 模式。
|
||
recvWindow DECIMAL NO 最大值为 60000 毫秒。
|
||
支持最多三位小数的精度(例如 6000.346),以便可以指定微秒。
|
||
timestamp LONG YES
|
||
请注意: POST /api/v3/sor/order 只支持 限价 和 市场 单, 并不支持 quoteOrderQty。
|
||
|
||
数据源: 撮合引擎
|
||
|
||
响应:
|
||
|
||
{
|
||
"symbol": "BTCUSDT",
|
||
"orderId": 2,
|
||
"orderListId": -1,
|
||
"clientOrderId": "sBI1KM6nNtOfj5tccZSKly",
|
||
"transactTime": 1689149087774,
|
||
"price": "31000.00000000",
|
||
"origQty": "0.50000000",
|
||
"executedQty": "0.50000000",
|
||
"origQuoteOrderQty": "0.000000",
|
||
"cummulativeQuoteQty": "14000.00000000",
|
||
"status": "FILLED",
|
||
"timeInForce": "GTC",
|
||
"type": "LIMIT",
|
||
"side": "BUY",
|
||
"workingTime": 1689149087774,
|
||
"fills": [
|
||
{
|
||
"matchType": "ONE_PARTY_TRADE_REPORT",
|
||
"price": "28000.00000000",
|
||
"qty": "0.50000000",
|
||
"commission": "0.00000000",
|
||
"commissionAsset": "BTC",
|
||
"tradeId": -1,
|
||
"allocId": 0
|
||
}
|
||
],
|
||
"workingFloor": "SOR",
|
||
"selfTradePreventionMode": "NONE",
|
||
"usedSor": true
|
||
}
|
||
|
||
测试 SOR 下单接口 (TRADE)
|
||
POST /api/v3/sor/order/test
|
||
|
||
用于测试使用智能订单路由 (SOR) 的订单请求,但不会提交到撮合引擎
|
||
|
||
权重:
|
||
|
||
条件 请求权重
|
||
没有 computeCommissionRates 1
|
||
有 computeCommissionRates 20
|
||
参数:
|
||
|
||
除了 POST /api/v3/sor/order 所有参数, 如下参数也接受:
|
||
|
||
参数名 类型 是否必需 描述
|
||
computeCommissionRates BOOLEAN NO 默认值: false
|
||
数据源: 缓存
|
||
|
||
响应:
|
||
|
||
没有 computeCommissionRates
|
||
|
||
{}
|
||
|
||
有 computeCommissionRates
|
||
|
||
{
|
||
"standardCommissionForOrder": { // 订单交易的标准佣金率。
|
||
"maker": "0.00000112",
|
||
"taker": "0.00000114"
|
||
},
|
||
"taxCommissionForOrder": { // 订单交易的税率。
|
||
"maker": "0.00000112",
|
||
"taker": "0.00000114"
|
||
},
|
||
"discount": { // 以BNB支付时的标准佣金折扣。
|
||
"enabledForAccount": true,
|
||
"enabledForSymbol": true,
|
||
"discountAsset": "BNB",
|
||
"discount": "0.25000000" // 当用BNB支付佣金时,在标准佣金上按此比率打折。
|
||
}
|
||
} |