feat(strategy): 策略实例做实P0+P1+策略库A+B混合布局(spec§12.6定稿)——实例=策略档案:①绑定:paper/live账户+回测任务加instance_id(paper_accounts/live_accounts ALTER迁移),发起即建档(无档案自动建),绑已有档案时D1发起快照(账户用档案参数复印件)②回写:事件型(回测_on_done/回放线程)落盘update_instance_run;持续型(实走/影子/实盘)读时聚合_instance_runtime(四格覆盖+在跑账户+漂移检测)③D2/D3同步:POST /paper/sync/{id}批量刷运行中模拟账户(实走+影子锁死一致),实盘不在线改参④D5删除保护409⑤P1全景:GET instances/{id}/overview(全部运行账户+净值尾部+合并持仓归因)收编挂起项「按实例归因持仓」⑥前端:策略库重做A+B混合(统计条+在跑巡检模式+左栏代码树中文主显/文件副行+档案区漂移角标/同步/全景;STRATEGY_LABELS抽共享常量),InstanceOverview抽屉(echarts净值对比+归因持仓表),模拟盘/实盘表单加实例档案下拉(选中预填+绑定,路由?instance=直进);mock层enriched/sync/overview(路由序enriched先于{id});+7绑定测试,921绿,build绿,dev浏览器验收过 [vps]
This commit is contained in:
@@ -276,6 +276,43 @@
|
||||
|
||||
业界「策略=代码+实例」两层 + 「先建策略→再发起运行」模式,全部落地。后端待补:策略代码文件 CRUD + 实例 CRUD + 各运行入口接实例参数。
|
||||
|
||||
### 12.6 策略实例做实设计(2026-08-15 定稿)
|
||||
|
||||
**定位**:实例 = 策略档案(代码+参数+标的+周期的组合)。所有正式运行从档案发起、结果回写档案;档案页是「这个策略跑得怎么样」的唯一入口。
|
||||
|
||||
```
|
||||
代码文件(改代码) → 实例(调参数·档案) → 运行(回测/模拟/实盘,用档案的"复印件"跑)
|
||||
↑______结果回写(收益/状态/在跑账户)______|
|
||||
```
|
||||
|
||||
**核心决策**(与用户对齐口径):
|
||||
|
||||
| # | 决策 | 理由 |
|
||||
|---|------|------|
|
||||
| D1 | **发起时快照**:账户创建时复印档案参数存进账户,运行永远用复印件 | 改档案绝不偷改在跑的实盘(安全);实现最简 |
|
||||
| D2 | **漂移可见+手动同步**:档案改参后在跑账户亮「参数已漂移」,一键同步**仅模拟类生效**;实盘不提供在线改参(停了重发) | 实盘在线换参是高危动作 |
|
||||
| D3 | **影子归「模拟」大类,参数与同批账户锁死**:同步按钮作用于该实例全部模拟类账户(实走+影子)一起换 | 影子与实盘参数不一致则双轨对账失效 |
|
||||
| D4 | **一实例多账户不限**:同一档案可同时跑回放/实走/影子做对照(双轨即此玩法),卡片列出全部在跑账户 | 对照实验是刚需,唯一性限制是伪需求 |
|
||||
| D5 | **删除保护**:档案下有运行中账户时禁止删除,提示先停 | 防归因断链 |
|
||||
|
||||
**发起选择口径**(参考聚宽/QuantConnect):
|
||||
- 回测:保持「选代码+填参数」自由模式,可选关联实例(带了则回写)
|
||||
- 模拟盘/实盘:**改为选实例**(实例已含代码+参数+标的+周期,表单减半)
|
||||
- **发起即建档**:模拟盘/实盘提交时若无实例,自动把当前配置存为新实例再发起
|
||||
|
||||
**回写机制**(共用 `update_instance_run(instance_id, 类型, 收益)`,各结算点一行调用):
|
||||
|
||||
| 运行 | 回写时机 | 内容 |
|
||||
|------|---------|------|
|
||||
| 回测 | 任务完成时(提交带 instance_id) | status.backtest + 总收益 |
|
||||
| 回放 | 回放线程跑完 | status.replay + 收益 |
|
||||
| 模拟(实走/影子) | 每日 20:30 结算后 | status.paper_live + 净值收益(影子标注) |
|
||||
| 实盘 | VPS 结算后 | status.live + 收益 |
|
||||
|
||||
**历史口径**:每次运行都是独立记录永不覆盖;卡片显示**最新一次**(一瞥),点运行标签跳任务中心/模拟盘列表**按 instance_id 过滤**看全部(复用现有列表页,零新表)。
|
||||
|
||||
**分期**:P0 做实绑定(instance_id 字段+透传+回写+卡片真数据+漂移+删除保护+同步,约1天)→ P1 实例全景(归因持仓/净值聚合,收编挂起项「按实例归因持仓」)→ P2 按需(参数版本历史/实例对比)。
|
||||
|
||||
## 13. 撮合机制与回放设计(2026-08-12 定稿)
|
||||
|
||||
### 13.1 撮合频率原则(理论硬约束)
|
||||
|
||||
Reference in New Issue
Block a user