跳到主要内容

暂停策略

停止已部署策略的新入场。默认情况下,已有持仓保持开仓状态,并继续按策略的出场规则进行管理。传入 close_positions: true 可在转入 paused 之前按市价平掉所有未平仓的持仓。

端点

POST /v1/strategies/{id}/pause

权重: 5 鉴权: 必填(需签名)—— 参见 鉴权

请求

路径参数:id —— 策略标识符(例如 strat_8f2a1b)。

名称类型必填说明
close_positionsbooleantrue 时,引擎会在暂停前为每个未平仓持仓发送市价平仓订单。为 false(默认)时,已有持仓保持原状,即使不再开新仓,引擎仍会继续监控出场条件。

响应

返回策略对象,其中 status"paused"

{
"id": "strat_8f2a1b",
"name": "BTC grid 1h",
"template_id": "tpl_grid",
"params": {
"grid_levels": 8,
"upper_price": "72000",
"lower_price": "60000",
"rebalance_threshold": "0.02"
},
"symbols": ["BTCUSDT"],
"timeframe": "1h",
"capital": "10000.00",
"leverage": 3,
"status": "paused",
"deployed_at": "2026-04-29T08:00:00Z",
"created_at": "2026-04-28T15:30:00Z",
"updated_at": "2026-04-29T12:00:00Z",
"stats": {
"open_positions": 0,
"total_pnl": "184.32",
"total_trades": 47,
"win_rate": "0.638"
}
}

响应字段

获取策略 的结构一致。暂停成功后:

  • statuspaused
  • updated_at 为暂停时间戳。
  • 若传入 close_positions: truestats.open_positions0;否则保持不变。

当使用 close_positions: true 时,平仓事件会通过 策略状态 WebSocket 推送,然后才返回此响应。

错误

  • 404 NOT_FOUND —— 策略不存在或不属于调用者。
  • 409 INVALID_STATE —— 策略状态不是 deployed。对已经暂停的策略,会返回此错误而不是空操作。

完整列表参见 错误

示例

curl -X POST "https://api.pipai.example/v1/strategies/strat_8f2a1b/pause" \
-H "X-PipAI-API-Key: $API_KEY" \
-H "X-PipAI-Timestamp: $TS" \
-H "X-PipAI-Signature: $SIG" \
-H "Content-Type: application/json" \
-d '{ "close_positions": true }'