Place Algo Order
Place Algo Order
Place a strategy/algo order. The order type is determined by ordType.
Request URL
POST /deepcoin/v2/trade/order-algo
Common Request Parameters
| Field Name | Required | Type | Description |
|---|---|---|---|
| instId | true | string | Product ID |
| ordType | true | string | Algo order type: conditional / tp_sl / move_order_stop |
| conditional | false | object | Required when ordType=conditional. See conditional parameters below |
| tpSl | false | object | Required when ordType=tp_sl. See TP/SL parameters below |
| moveOrderStop | false | object | Required when ordType=move_order_stop. See move order stop parameters below |
ordType=conditional (Conditional Order)
conditional parameters:
| Field Name | Required | Type | Description |
|---|---|---|---|
| tdMode | true | string | Trading mode: cross / isolated / cash |
| side | true | string | Order side: buy / sell |
| posSide | true | string | Position side (required for swaps): long / short |
| sz | true | string | Order size |
| triggerPx | true | string | Trigger price |
| triggerPxType | false | string | Trigger price type: last / index / mark, default last |
| orderType | true | string | Order type after trigger: market / limit |
| orderPx | false | string | Order price after trigger, required when orderType=limit |
| mrgPosition | true | string | Position mode (required for swaps): merge / split |
| closePosId | false | string | Position ID to close, required in split mode |
| tpTriggerPx | false | float64 | Take-profit trigger price after opening |
| tpTriggerPxType | false | string | Take-profit trigger price type: last / index / mark |
| tpOrdPx | false | float64 | Take-profit order price, -1 for market price |
| slTriggerPx | false | float64 | Stop-loss trigger price after opening |
| slTriggerPxType | false | string | Stop-loss trigger price type: last / index / mark |
| slOrdPx | false | float64 | Stop-loss order price, -1 for market price |
Request example:
{
"instId": "ETH-USDT-SWAP",
"ordType": "conditional",
"conditional": {
"tdMode": "cross",
"side": "buy",
"posSide": "long",
"sz": "1",
"triggerPx": "1800",
"triggerPxType": "last",
"orderType": "limit",
"orderPx": "1795",
"mrgPosition": "merge",
"tpTriggerPx": 2200,
"tpOrdPx": -1,
"slTriggerPx": 1700,
"slOrdPx": -1
}
}
ordType=tp_sl (Position Take-Profit / Stop-Loss)
tpSl parameters:
| Field Name | Required | Type | Description |
|---|---|---|---|
| tdMode | true | string | Margin mode (required for swaps): cross / isolated |
| posSide | true | string | Position side (required for swaps): long / short |
| mrgPosition | true | string | Position mode (required for swaps): merge / split |
| posId | false | string | Position ID, required in split mode |
| sz | false | string | TP/SL size. If omitted, applies to the entire position |
| tpTriggerPx | false | float64 | Take-profit trigger price. At least one of tpTriggerPx or slTriggerPx is required |
| tpTriggerPxType | false | string | Take-profit trigger price type: last / index / mark |
| tpOrdPx | false | float64 | Take-profit order price, -1 for market price |
| slTriggerPx | false | float64 | Stop-loss trigger price. At least one of tpTriggerPx or slTriggerPx is required |
| slTriggerPxType | false | string | Stop-loss trigger price type: last / index / mark |
| slOrdPx | false | float64 | Stop-loss order price, -1 for market price |
Request example:
{
"instId": "ETH-USDT-SWAP",
"ordType": "tp_sl",
"tpSl": {
"tdMode": "cross",
"posSide": "long",
"mrgPosition": "merge",
"sz": "1",
"tpTriggerPx": 2200,
"tpTriggerPxType": "last",
"tpOrdPx": -1,
"slTriggerPx": 1700,
"slTriggerPxType": "last",
"slOrdPx": -1
}
}
ordType=move_order_stop (Trailing Stop)
moveOrderStop parameters:
| Field Name | Required | Type | Description |
|---|---|---|---|
| posSide | true | string | Position side: long / short |
| triggerPx | true | string | Activation price. -1 to activate immediately, positive value to set activation price |
| retracePoint | true | string | Retracement spread |
Request example:
{
"instId": "ETH-USDT-SWAP",
"ordType": "move_order_stop",
"moveOrderStop": {
"posSide": "long",
"triggerPx": "-1",
"retracePoint": "50"
}
}
Response Parameters
| Field Name | Type | Description |
|---|---|---|
| algoId | string | Algo order ID (returns empty for move_order_stop) |
| sCode | string | Result code, 0 means success |
| sMsg | string | Result message |
Response Example
{
"algoId": "1000595855275418",
"sCode": "0",
"sMsg": ""
}