修改持仓止盈止损
修改持仓止盈止损
修改已设置 的持仓止盈止损订单,支持现货和合约交易。
限频:每秒 1 次
限速规则:UserID
请求地址
POST /deepcoin/trade/modify-position-sltp
请求参数
| 字段名 | 是否必填 | 类型 | 字段描述 |
|---|---|---|---|
| instType | 是 | string | 产品类型 现货: SPOT合约: SWAP |
| instId | 是 | string | 产品ID 例如:现货 BTC-USDT,合约 BTC-USDT-SWAP |
| ordId | 是 | string | 止盈止损订单ID(从 set-position-sltp 接口响应中获取) |
| posSide | 否 | string | 持仓方向(合约必填) 多头: long空头: short |
| mrgPosition | 否 | string | 保证金仓位模式(合约) 合仓: merge分仓: split |
| tdMode | 否 | string | 交易模式(合约) 全仓: cross逐仓: isolated |
| posId | 否 | string | 仓位ID(当 mrgPosition 为 split 时必填) |
| tpTriggerPx | 否 | string | 止盈触发价 止盈和止损至少填写一个 |
| tpTriggerPxType | 否 | string | 止盈触发价类型 最新价: last指数价: index标记价: mark默认: last |
| tpOrdPx | 否 | string | 止盈委托价-1 表示市价默认: -1 |
| slTriggerPx | 否 | string | 止损触发价 止盈和止损至少填写一个 |
| slTriggerPxType | 否 | string | 止损触发价类型 最新价: last指数价: index标记价: mark默认: last |
| slOrdPx | 否 | string | 止损委托价-1 表示市价默认: -1 |
| sz | 否 | string | 持仓数量,用于部分止盈止损 不填表示全部持仓 |
注意事项:
ordId为必填项,必须是有效的待成交止盈止损订单IDtpTriggerPx和slTriggerPx至少需要提供一个- 合约交易在分仓模式下(
mrgPosition=split),必须提供posId - 现货交易不需要填写
posSide、mrgPosition、tdMode和posId - 订单ID从
set-position-sltp接口的响应中获取
请求示例
现货 - 同时修改止盈和止损:
{
"instType": "SPOT",
"instId": "BTC-USDT",
"ordId": "1000762096073860",
"tpTriggerPx": "110000",
"slTriggerPx": "103000"
}
合约 - 修改多头仓位止盈止损(合仓模式):
{
"instType": "SWAP",
"instId": "BTC-USDT-SWAP",
"ordId": "1000596069447069",
"posSide": "long",
"mrgPosition": "merge",
"tdMode": "cross",
"tpTriggerPx": "110000",
"tpTriggerPxType": "mark",
"tpOrdPx": "-1",
"slTriggerPx": "103000",
"slTriggerPxType": "mark",
"slOrdPx": "-1"
}
合约 - 修改特定仓位止盈止损(分仓模式):
{
"instType": "SWAP",
"instId": "BTC-USDT-SWAP",
"ordId": "1000596069492933",
"posSide": "long",
"mrgPosition": "split",
"tdMode": "isolated",
"posId": "1000596069432784",
"tpTriggerPx": "111000",
"tpTriggerPxType": "mark",
"tpOrdPx": "-1",
"slTriggerPx": "104000",
"slTriggerPxType": "mark",
"slOrdPx": "-1",
"sz": "200"
}
仅修改止盈:
{
"instType": "SWAP",
"instId": "BTC-USDT-SWAP",
"ordId": "1000596069447069",
"posSide": "long",
"mrgPosition": "merge",
"tdMode": "cross",
"tpTriggerPx": "112000",
"tpTriggerPxType": "mark",
"tpOrdPx": "-1"
}
仅修改止损:
{
"instType": "SWAP",
"instId": "BTC-USDT-SWAP",
"ordId": "1000596069447069",
"posSide": "long",
"mrgPosition": "merge",
"tdMode": "cross",
"slTriggerPx": "101000",
"slTriggerPxType": "mark",
"slOrdPx": "-1"
}
响应参数
| 字段名 | 类型 | 字段描述 |
|---|---|---|
| ordId | string | 止盈止损订单ID |
| sCode | string | 事件执行结果的状态码0: 成功 |
| sMsg | string | 事件执行失败时的消息 |
响应示例
成功响应:
{
"code": "0",
"msg": "",
"data": {
"ordId": "1000596069447069",
"sCode": "0",
"sMsg": ""
}
}
失败响应:
{
"code": "51400",
"msg": "订单不存在",
"data": {
"ordId": "",
"sCode": "51400",
"sMsg": "订单不存在或已被执行"
}
}
说明
功能说明
- 修改已设置的持仓止盈和/或止损订单
- 支持现货(SPOT)和合约(SWAP)交易
- 通过指定
sz参数可以修改部分仓位止盈止损 - 支持不同的触发价类型(最新价、指数价、标记价)
- 可以修改市价或限价委托执行止盈止损
- 可以单独修改止盈或止损
使用场景
- 策略调整:根据市场情况调整止盈止损水平
- 风险管理:根据持仓表现收紧或放宽止损
- 利润优化:随着价格有利变动调整止盈目标
- 部 分仓位管理:仅修改部分仓位的止盈止损
重要提示
- 订单ID必需:必须提供从 set-position-sltp 响应中获取的有效
ordId - 订单状态:只能修改待成交的止盈止损订单(尚未触发或执行)
- 价格精度:触发价格必须符合产品的价格精度要求
- 参数一致性:
instId、posSide、mrgPosition等参数应与原订单一致 - 至少修改一个:必须修改止盈或止损中的至少一个
- 分仓模式:分仓模式下必须提供
posId - 查询订单:使用 trigger-orders-pending 接口查询现有止盈止损订单并获取订单ID
相关接口
- 设置持仓止盈止损:
/deepcoin/trade/set-position-sltp- 创建新的止盈止损订单 - 取消持仓止盈止损:
/deepcoin/trade/cancel-position-sltp- 取消止盈止损订单 - 查询待成交条件单:
/deepcoin/trade/trigger-orders-pending- 查询现有止盈止损订单
常见错误
| 错误码 | 错误信息 | 解决方案 |
|---|---|---|
| 51400 | 订单不存在 | 检查订单ID是否正确,订单是否已被取消或执行 |
| 51000 | 参数错误 | 检查必填参数是否完整,参数格式是否正确 |
| 51001 | 止盈和止损至少需要设置一个 | 至少提供 tpTriggerPx 或 slTriggerPx 其中一个 |