CM条件单下单(TRADE)
接口描述
CM条件单下单
HTTP请求
POST /papi/v1/cm/conditional/order
请求权重
1
请求参数
| 名称 | 类型 | 是否必需 | 描述 | 
|---|---|---|---|
| symbol | STRING | YES | 交易对 | 
| side | ENUM | YES | 方向 | 
| positionSide | ENUM | NO | 持仓方向,单向持仓模式下非必填,默认且仅可填BOTH;在双向持仓模式下必填,且仅可选择 LONG 或 SHORT | 
| strategyType | ENUM | YES | 条件单类型"STOP", "STOP_MARKET", "TAKE_PROFIT", "TAKE_PROFIT_MARKET"或"TRAILING_STOP_MARKET" | 
| timeInForce | ENUM | NO | |
| quantity | DECIMAL | NO | |
| reduceOnly | STRING | NO | true或false; 非双开模式下默认false;双开模式下不接受此参数 | 
| price | DECIMAL | NO | |
| workingType | ENUM | NO | stopPrice 触发类型: MARK_PRICE, CONTRACT_PRICE. 默认 CONTRACT_PRICE | 
| priceProtect | STRING | NO | 条件单触发保护:"TRUE" or "FALSE", 默认 "FALSE". STOP/STOP_MARKET or TAKE_PROFIT/TAKE_PROFIT_MARKET 需要此参数 | 
| newClientStrategyId | STRING | NO | 用户自定义的订单号,不可以重复出现在挂单中。如空缺系统会自动赋值。必须满足正则规则: ^[\.A-Z\:/a-z0-9_-]{1,32}$ | 
| stopPrice | DECIMAL | NO | Used with STOP/STOP_MARKET or TAKE_PROFIT/TAKE_PROFIT_MARKET orders. | 
| activationPrice | DECIMAL | NO | TRAILING_STOP_MARKET 单使用,默认标记价格 | 
| callbackRate | DECIMAL | NO | TRAILING_STOP_MARKET 单使用, 最小0.1, 最大5,1代表1% | 
| recvWindow | LONG | NO | |
| timestamp | LONG | YES | 
根据 order type 的不同,某些参数强制要求,具体如下:
| 类型 | 强制要求的参数 | 
|---|---|
STOP/TAKE_PROFIT | quantity, price, stopPrice | 
STOP_MARKET/TAKE_PROFIT_MARKET | stopPrice | 
TRAILING_STOP_MARKET | callbackRate | 
- 
条件单为
STOP/TAKE_PROFIT时, 参数timeInForce可以使用(默认GTC) - 
条件单的触发必须:
STOP,STOP_MARKET止损单:- 买入: 最新合约价格/标记价格高于等于触发价
stopPrice - 卖出: 最新合约价格/标记价格低于等于触发价
stopPrice 
- 买入: 最新合约价格/标记价格高于等于触发价
 TAKE_PROFIT,TAKE_PROFIT_MARKET止盈单:- 买入: 最新合约价格/标记价格低于等于触发价
stopPrice - 卖出: 最新合约价格/标记价格高于等于触发价
stopPrice 
- 买入: 最新合约价格/标记价格低于等于触发价
 TRAILING_STOP_MARKET跟踪止损单:- 买入: 当合约价格/标记价格区间最低价格低于激活价格
activationPrice,且最新合约价格/标记价高于等于最低价设定回调幅度。 - 卖出: 当合约价格/标记价格区间最高价格高于激活价格
activationPrice,且最新合约价格/标记价低于等于最高价设定回调幅度。 
- 买入: 当合约价格/标记价格区间最低价格低于激活价格
 
 - 
TRAILING_STOP_MARKET跟踪止损单如果遇到报错{"code": -2021, "msg": "Order would immediately trigger."}
表示订单不满足以下条件:- 买入: 指定的
activationPrice必须小于 latest mark price - 卖出: 指定的
activationPrice必须大于 latest mark price 
 - 买入: 指定的
 - 
条件单的触发必须:
- 
如果订单参数
priceProtect为true:- 达到触发价时,
MARK_PRICE(标记价格)与CONTRACT_PRICE(合约最新价)之间的价差不能超过改symbol触发保护阈值 - 触发保护阈值请参考接口
GET /fapi/v1/exchangeInfo返回内容相应symbol中"triggerProtect"字段 
 - 达到触发价时,
 - 
STOP,STOP_MARKET止损单:- 买入: 最新合约价格/标记价格高于等于触发价
stopPrice - 卖出: 最新合约价格/标记价格低于等于触发价
stopPrice 
 - 买入: 最新合约价格/标记价格高于等于触发价
 - 
TAKE_PROFIT,TAKE_PROFIT_MARKET止盈单:- 买入: 最新合约价格/标记价格低于等于触发价
stopPrice - 卖出: 最新合约价格/标记价格高于等于触发价
stopPrice 
 - 买入: 最新合约价格/标记价格低于等于触发价
 
 - 
 
响应示例
{
    "newClientStrategyId": "testOrder",
    "strategyId":123445,
    "strategyStatus":"NEW",
    "strategyType": "TRAILING_STOP_MARKET", 
    "origQty": "10",
    "price": "0",
    "reduceOnly": false,
    "side": "BUY",
    "positionSide": "SHORT",
    "stopPrice": "9300",        
    "symbol": "BTCUSD_200925",
    "pair": "BTCUSD",
    "timeInForce": "GTC",
    "activatePrice": "9020",   
    "priceRate": "0.3",         
    "bookTime": 1566818724710, //条件单下单时间  
    "updateTime": 1566818724722,
    "workingType":"CONTRACT_PRICE",
    "priceProtect": false   
}