Skip to content

v0.6.0 — M1 正确性与回测-实盘口径统一

Choose a tag to compare

@oldfunk oldfunk released this 21 Oct 07:49
· 296 commits to main since this release

M1 正确性与回测-实盘口径统一

这一版把「能跑」推进到「口径可信」:回测和实盘用同一套判定、费用、风控与成交假设。engine.enabled 仍保持 false,等 Pi 双端验收通过后再开。

修复的硬问题(14 项审计)

  • 持仓元数据:entry_day / peak_price 落库,旧库自动迁移回填;time_stop / trailing_stop 在实盘真正生效,重启不丢。
  • 回测口径:T 日收盘判定 → T+1 开盘价成交(±0.01 滑点);当日买入 T+1 冻结;once 改为按交易日;一字涨停不买、一字跌停不卖、停牌不成交。
  • 风控接入:回测、引擎、条件单、CLI、AI 共用同一组风控参数;峰值与日亏基线落库(risk_state),重启不被绕过;引擎与条件单共用同一份日内订单预算。
  • 计价与未来函数:多持仓按各自最新价计价;引擎日线上下文排除当日未收盘 K 线。
  • 实时行情:只认连续竞价 9:30–11:30 / 13:00–15:00;报价日期不是当天或超过 180 秒直接丢弃(午休/节假日旧价不进场)。
  • 其他:规则级 enabled:false 生效;engine.universe=auto/list 语义落地;科创板买入最低 200 股;条件单日上限按成交日统计。
  • 除权除息(M1 降级保护):同步时检测历史收盘被回溯调整并写 op_log(data:revision);新增 corporate apply 人工调整入口。自动调整与分红税细化在 M1.5。

验证

  • 新增 tests/test_m1_correctness.py(20 项),含「回测 vs 模拟实盘 tick」成交日/成交价对照。
  • 本地 python -m pytest -q:170 passed。
  • 路线图与验收清单:docs/ROADMAP.md。

升级注意

  • 首次启动会自动给 positions 表加列并回填(幂等)。
  • 若同步输出出现 revisions / op_log 的 data:revision,请人工核对除权除息后用 corporate apply 调整账本。
  • engine.enabled 本版仍为 false。