更新策略
更新已有策略的参数。仅 draft 或 paused 状态的策略可以更新;要让变更生效,需要重新部署已暂停的策略。
端点
PATCH /v1/strategies/{id}
权重: 5 鉴权: 必填(需签名)—— 参见 鉴权。
请求
路径参数:id —— 策略标识符(例如 strat_8f2a1b)。
请求体所有字段都是可选的。只会修改你提交的字段,其他字段保持不变。
| 名称 | 类型 | 必填 | 说明 |
|---|---|---|---|
name | string | 否 | 新名称,1–64 个字符。在账户内必须保持唯一。 |
template_id | string | 否 | 切换到另一个模板,会重置 params 校验。 |
params | object | 否 | 整体替换当前的 params 对象(不做合并)。会按当前模板的 schema 校验。 |
symbols | array<string> | 否 | 替换交易对列表,1–10 个。 |
timeframe | enum<1m|5m|15m|1h|4h|1d> | 否 | 新的 K 线周期。 |
capital | decimal | 否 | 新的资金分配,使用十进制字符串。 |
leverage | integer | 否 | 新杠杆倍数,范围 1–20。 |
响应
返回更新后的策略对象。
{
"id": "strat_8f2a1b",
"name": "BTC grid 1h v2",
"template_id": "tpl_grid",
"params": {
"grid_levels": 12,
"upper_price": "74000",
"lower_price": "58000",
"rebalance_threshold": "0.015"
},
"symbols": ["BTCUSDT"],
"timeframe": "1h",
"capital": "12000.00",
"leverage": 3,
"status": "draft",
"deployed_at": null,
"created_at": "2026-04-28T15:30:00Z",
"updated_at": "2026-04-29T12:00:00Z",
"stats": {
"open_positions": 0,
"total_pnl": "0.00",
"total_trades": 0,
"win_rate": "0.000"
}
}
响应字段
与 创建策略 的结构一致。只有 updated_at 以及你修改过的字段会发生变化。
错误
400 INVALID_PARAMETER—— 请求体未通过校验(例如params与模板 schema 不匹配、leverage超出范围)。404 NOT_FOUND—— 策略不存在或不属于调用者。409 INVALID_STATE—— 策略不在draft或paused状态,请先暂停。409 DUPLICATE_NAME—— 账户下已有其他策略使用了新的name。
完整列表参见 错误。
示例
curl -X PATCH "https://api.pipai.example/v1/strategies/strat_8f2a1b" \
-H "X-PipAI-API-Key: $API_KEY" \
-H "X-PipAI-Timestamp: $TS" \
-H "X-PipAI-Signature: $SIG" \
-H "Content-Type: application/json" \
-d '{
"name": "BTC grid 1h v2",
"params": {
"grid_levels": 12,
"upper_price": "74000",
"lower_price": "58000",
"rebalance_threshold": "0.015"
},
"capital": "12000.00"
}'