欢迎使用全新的 WEEX API 文档。需要查看旧版本?切换到旧版文档
WEEX

下止盈止损条件单 (TRADE)

  • POST /capi/v3/placeTpSlOrder

请求权重

10s order rate limit(X-ORDER-COUNT-10S)为1; 1min order rate limit(X-ORDER-COUNT-1M)为1; IP rate limit(X-USED-WEIGHT-1M)为0

请求体(Request Body)

参数名类型是否必填说明
symbolString是交易对。
clientAlgoIdString是客户自定义条件单 ID(1-36 位,匹配 ^[\\.A-Z\:/a-z0-9_-]{1,36}$)。
planTypeString是条件单类型:TAKE_PROFIT、STOP_LOSS。
triggerPriceString是触发价格,必须大于 0。
executePriceString否执行价格。为 0 或省略表示市价;大于 0 表示限价。全部仓位止盈止损(quantity 为 0、null 或省略)仅支持市价,传非零执行价会报错。带单类型 API key 仅支持市价。
quantityString否委托数量,不得小于 0。为 0、null 或省略表示全部仓位;大于 0 表示指定数量。closePosition=true 时只能为 0、null 或省略。带单类型 API key 仅支持全部仓位。
positionSideString是持仓方向:LONG、SHORT。
triggerPriceTypeString否触发价类型:CONTRACT_PRICE、MARK_PRICE,默认 CONTRACT_PRICE。
reduceOnlyBoolean否兼容参数。本接口始终只平仓,服务端固定按 true 处理;传 false 或省略也不会开仓。
closePositionBoolean否是否对全部仓位设置止盈止损,Boolean,取值 true、false,省略按 false 处理。true 时 quantity 只能为 0、null 或省略,executePrice 只能为 0 或省略。false 或省略时,仍由 quantity 决定是否为全部仓位。
请求示例
PowerShellCode
curl -X POST "https://api-contract.weex.com/capi/v3/placeTpSlOrder" \ -H "ACCESS-KEY:*******" \ -H "ACCESS-SIGN:*******" \ -H "ACCESS-PASSPHRASE:*****" \ -H "ACCESS-TIMESTAMP:1659076670000" \ -H "Content-Type: application/json" \ -d '{ "symbol": "BTCUSDT", "clientAlgoId": "tp-20240201-1", "planType": "TAKE_PROFIT", "triggerPrice": "70500", "executePrice": "70500", "quantity": "0.01", "positionSide": "LONG", "triggerPriceType": "MARK_PRICE", "reduceOnly": true }'

参数关系

  • closePosition=true 时,quantity 为非零值会报错;为 0、null 或省略时按全部仓位处理。
  • 无论是否传 closePosition,quantity 为 0、null 或省略都表示全部仓位止盈止损,executePrice 必须为 0 或省略;非零执行价会报错。
  • closePosition=false 或省略且 quantity>0 时,支持市价(executePrice=0 或省略)及限价(executePrice>0)执行。
  • 所有止盈止损订单均只平仓,reduceOnly 固定按 true 处理,与传入值无关。
  • timeInForce 由服务端设置,无需传入:市价执行为 IMMEDIATE_OR_CANCEL(IOC),限价执行为 GOOD_TIL_CANCEL(GTC)。全部仓位始终市价执行并使用 IOC。
  • planType 支持 TAKE_PROFIT、STOP_LOSS,两者适用相同规则。

全部仓位市价止损示例(quantity 可省略,也可传 0):

JSONCode
{ "symbol": "ETHUSDT", "clientAlgoId": "full-position-sl-1", "planType": "STOP_LOSS", "triggerPrice": "2000", "executePrice": "0", "positionSide": "LONG", "triggerPriceType": "CONTRACT_PRICE", "closePosition": true }
返回参数

返回数组,字段如下:

参数名类型说明
successBoolean是否提交成功。
orderIdLong成功时返回的条件单 ID。
errorCodeString当 success = false 时的错误码。
errorMessageString当 success = false 时的错误信息。
返回示例
JSONCode
[ { "success": true, "orderId": 812345678901234900, "errorCode": "", "errorMessage": "" } ]