feat: preserve Quant OS target-package vertical slice

This commit is contained in:
2026-07-30 21:27:44 +08:00
parent 00efeb7ec2
commit 919c64c679
42 changed files with 15454 additions and 404 deletions
+54 -31
View File
@@ -13,23 +13,26 @@ JQData (authorized account)
canonical immutable snapshot
exact-set/hash + semantic reconstruction
|
+---------+----------+
| |
v v
snapshot-backtest snapshot-decision
local event engine Signal -> Target -> Order Delta
| |
+---------+----------+
|
portable-momentum-v1
+----------------------+
|
v
snapshot-backtest / snapshot-decision
portable-momentum-v1 compatibility path (smoke only)
local Baseline authority:
Universe
-> frozen Ridge model bundle / Alpha
-> risk + cost-aware Portfolio
-> post-risk TargetPackageV1 (weights, no account quantities)
-> five-layer hash trace
|
+------------+-------------+
| | |
JoinQuant bundle QMT bundle local contract oracle
hosted backtest built-in/qmttools backtest-only
| |
JoinQuant consumer QMT consumer
T+1-open account bind completed-close bind + quickTrade=0
order_target passorder (backtest-only)
synthetic PIT/features -> purged walk-forward -> Ridge challenger
(not deployment-frozen)
Current TargetPackage fixture is synthetic research evidence, not market proof.
Qlib 0.9.7:
Tushare completed/checksummed Parquet -> immutable managed provider
@@ -159,19 +162,24 @@ terminal/xtquant build 探针时不假设它与 `price × quantity` 的精确误
## Research and model boundary
synthetic research pipeline 已实现
synthetic research vertical slice 当前实际接通
- PIT table 和未来值拒绝;
- Universe 原因码;
- 透明价量特征与 T+1-open 标签时钟;
- train-only winsor/impute/standardize
- purge/embargo walk-forward
- deterministic Ridge、OOS IC/RankIC
- factor risk、dated cost/capacity 和 constrained target。
- deterministic Ridge、OOS IC/RankIC 与可重放 model bundle
- 60 日对角 realized variance
- dated explicit fee + spread + square-root impact/capacity
- deterministic constrained portfolio、独立 post-risk gate
- reference execution binding、完整五层 hash trace 与 TargetPackageV1。
这些功能证明研究管线可执行。Ridge 尚未冻结成带版本、输入 schema 和推理
hash 的 deployment bundle,也没有授权真实长样本 OOS 与四引擎推理验证,因此
不是生产 champion。
`factor_risk.py`、CVXPY 路径和 guarded TWAP/POV 仍是有单测的独立组件,
不在上述 vertical slice 中。Ridge 已能冻结预处理、系数、标签、训练截止日
和 lineage,但目前只有 synthetic 候选;没有授权真实长样本 OOS、真实风险/
成本校准、多期逐层 parity 或 QMT peer,因此不是生产 champion。已有的单包
JoinQuant run 只观察 execution consumer。
Qlib 路径固定为 `0.9.7`。CPython 3.12 实际 fixture smoke 已得到:
@@ -191,9 +199,15 @@ L6,不声称 L3 target 或 L4 order-intent parity。
## Portable strategy and platform boundary
当前可跨 hosted wrapper 冻结的共同基线是 `portable-momentum-v1`。平台 API
不得进入 symbol normalization、momentum score、target weight、target
quantity 和 order delta 计算。
hosted artifact 有两个互斥模式:
- `portable_momentum_smoke`:保留历史连通性回归,平台端计算动量;
- `target_package`:本地唯一权威已完成 Universe/Alpha/Portfolio/Risk
hosted wrapper 只验证包、精确匹配 `signal_as_of + next_session`、读取账户
事实并构造 execution plan,绝不回退到 momentum。
`portable-momentum-v1` 不是生产 Baseline。TargetPackage 只有权重,没有股数、
现金、订单或成交;这些属于下一交易日平台账户绑定后的 execution layer。
canonical 股票代码采用 JoinQuant 形式:
@@ -208,8 +222,9 @@ canonical 股票代码采用 JoinQuant 形式:
QMT built-in bundle 和 qmttools runner 都硬限制为 backtest/history。built-in
状态存放在模块全局 `g`,不写入可能在下个 `handlebar` 回滚的
`ContextInfo` 用户属性。两条路径固定中证 500 benchmark、PIT 历史成分/ST
与 baseline 费率;built-in 的 10% 参与率由 QMT GUI 设置,qmttools
`ContextInfo` 用户属性。动量 smoke 路径固定中证 500 benchmark、PIT 历史
成分/ST 与费率;TargetPackage 路径消费本地冻结 Universe/权重,不重新计算
Alpha/Portfolio/Risk。built-in 的 10% 参与率由 QMT GUI 设置,qmttools
程序化传入。live mutation 只存在于外部 XtTrader adapter,并且默认关闭、
未认证、没有 live 启动命令;operator 可运行的 shadow CLI 只接受查询边界。
@@ -217,6 +232,9 @@ QMT built-in bundle 和 qmttools runner 都硬限制为 backtest/history。built
最低交换合同是:
- [`model_bundle.schema.json`](../schemas/model_bundle.schema.json)
- [`target_package.schema.json`](../schemas/target_package.schema.json)
- [`release_reachability.schema.json`](../schemas/release_reachability.schema.json)
- [`signal.schema.json`](../schemas/signal.schema.json)
- [`target.schema.json`](../schemas/target.schema.json)
- [`order_event.schema.json`](../schemas/order_event.schema.json)
@@ -228,8 +246,13 @@ saved/current source aggregate、saved/current schema aggregate 和 payload
schema。`verify-snapshot-decision` 与 data snapshot semantic verifier 承担
各自边界的同类职责。
这些合同已有自动测试;最近一次标准库套件为 224 tests、OK、6 个可选路径
skip。测试结果不能替代 schema 迁移演练、真实平台导出或券商回调认证。
`release_reachability` 对每层分别记录 `implemented``unit_tested`
`local_entrypoint_reachable``jq_entrypoint_reachable`
`qmt_entrypoint_reachable``real_platform_observed`,并逐文件验证路径与
SHA。源文件总 hash 不能冒充真实运行。测试结果仍不能替代 schema 迁移演练、
真实平台导出或券商回调认证。当前只有
`execution.real_platform_observed=true`,由一个真实 JoinQuant
TargetPackage smoke 支持;其他四层及 all-layer summary 仍为 false。
## Clocks and reconciliation
@@ -274,12 +297,12 @@ synthetic/fake 数据是合同测试,不是市场证据;Qlib synthetic fixtu
当前还缺:
- 授权 JQData 真实快照、基本面公告 PIT、完整公司行动/Security Master
- Ridge/LightGBM 冻结模型包和真实 OOS 证据;
- 授权真实数据训练的冻结模型包和真实 OOS 证据;
- 真实数据校准的风险、冲击、容量和 TCA;
- 真实 JoinQuant/QMT 导出;
- 授权真实数据的多期 JoinQuant 导出、逐层本地对账与真实 QMT peer
- 券商状态映射、restart recovery daemon、20 日 shadow 与连续对账;
- 运维监控、kill-switch 演练和程序化交易合规确认。
所以 Quant OS 是可执行、可继续填证据的生产候选框架,不是已经达到整体
60 分的实盘系统。证据政策见
所以 Quant OS 已具备本地五层 vertical slice 与 TargetPackage 平台边界,
但仍只是可继续填证据的候选骨架,不是已经达到整体 60 分的实盘系统。证据政策见
[`AUDIT_2026-07-25.md`](AUDIT_2026-07-25.md)。