当前状态
目前量化项目被拆成两个独立仓库。
**Quant-Trade** 是实际的策略与交易研究系统,已经包含策略、因果回测、风险控制、Shadow、Binance Demo 适配、状态恢复和执行安全边界。当前 Runtime 主要运行 V0.3,最新研究版本已经发展到 V0.9,但 V0.9 仍然属于 research_only,没有获得执行资格,也没有打开确认性 lockbox。
**Quant-OS** 目前完成了 SAD v1.0 架构文档,但还没有完整应用代码。它的目标不是替代 Quant-Trade,也不是重新写一套交易机器人,而是成为统一的研究、实验、结果管理与可视化入口。
两个项目继续保持独立:
``text
Quant-Trade
负责策略、因子计算、因果回测、风险语义和研究执
Quant-OS 负责实验配置、任务调度、运行记录、因子评价和可视化 ```
这一阶段要解决的问题
当前最大的工程问题不是缺少更多指标,而是研究路径与运行路径尚未完全统一。
- Runtime 与最新研究版本使用不同入口。
- 策略内部存在不同版本的 Signal / Intent 表达。
- 因子仍嵌在策略实现中,没有形成独立的 Factor catalog。
- 回测结果缺少统一 BacktestRun、连续 MTM equity 和完整 artifact lineage。
- 参数调整尚未被正式约束,容易在同一 development 数据上反复试错。
- Quant-OS 目前还不能发起 FactorExperiment 或 StrategyExperiment。
因此,接下来的开发顺序是先让 Quant-Trade 成为一个确定性、只读的 Research Runner,再让 Quant-OS 调用它。
最终研究闭环
因子研究
FactorDefinition
→ FactorVersion
→ FactorExperiment
→ FactorRun
→ FactorValues
→ Forward Return
→ FactorMetrics
→ 绑定 StrategyInstance策略研究
StrategyVersion
→ StrategyInstance
→ StrategyExperiment
→ BacktestRun
→ MTM Equity
→ Trades / Fills
→ MAE / MFE
→ 压力场景
→ 结果对比所有实验都必须创建新记录,不能覆盖已有版本。正收益不会自动提高执行资格,失败实验也不能被删除。
第一阶段:Quant-Trade Research Integration v1
第一阶段只改造 Quant-Trade,不做策略调优。
1. 统一标识与策略契约
建立跨系统稳定模型:
- `InstrumentId`
- `DatasetReference`
- `StrategyReference`
- `StrategyInput`
- `StrategyOutput`
- `Signal`
- `RiskHint`
- `Explanation`
- `StrategyCapabilities`
InstrumentId 不再只使用 BTCUSDT 这类 symbol,而是明确包含交易所、市场类型和标的,例如:
BINANCE:USDT_PERPETUAL:BTCUSDTV0.3 与 V0.9 都通过 adapter 接入同一个 StrategyRunner。Adapter 只能做数据结构转换,不能改变原始信号方向、时间或参数。
2. 冻结执行能力边界
V0.9 在本阶段继续保持:
research_only = true
execution_eligible = false
demo_allowed = false
live_allowed = falseResearch Runner 不导入 authenticated execution adapter,不读取交易凭证,不生成可消费的 RiskAuthorization,也不能访问 lockbox。
3. 建立 Factor catalog
现有策略内部变量分为四类:
- **Alpha**:用于预测方向或相对收益。
- **市场状态**:用于识别 Regime、breadth、波动和过滤条件。
- **风险变量**:用于 Stop、仓位、杠杆和清算距离。
- **执行质量**:用于手续费、滑点、延迟和成交质量。
初始注册的因子包括:
``text
V0.3
session_vwap
atr_14
standardized_return
vwap_deviation
momentum_setup
reversal_setu
V0.5–V0.7 btc_regime return_1d / return_7d / return_30d realized_volatility_30d breadth volatility_weight quality_weight
V0.8 btc_beta_60d residual_return residual_momentum_14d
V0.9 settled_funding_mean_9 settled_funding_mean_21 funding_quality ```
这些因子通过只读 FactorProvider 输出,不复制新的计算逻辑,也不改变原公式。
4. 参数 Schema 与预注册
每个策略版本和因子版本必须声明参数类型、范围和权限:
- `READ_ONLY`
- `ADJUSTABLE_RESEARCH`
- `FIXED`
- `RISK_HARD_LIMIT`
- `PREREGISTRATION_REQUIRED`
- `EXECUTION_LOCKED`
浏览器或外部系统只能修改白名单中的研究参数。风险硬限制不能被提高,执行锁定参数不能被实验覆盖。
每次实验必须先记录:
- Hypothesis
- Expected mechanism
- Primary metric
- Constraint metrics
- Parameters to change
- Allowed values
- Experiment budget
- Maximum trials
- Development dataset
- `lockbox_access = false`
5. 只读 Research CLI
Quant-Trade 对外提供固定命令:
validate_request
run_strategy_experiment
run_factor_experiment
export_catalog调用方只能提交 JSON 规范化请求,不能传入任意 Python module、shell command 或 executable。
6. 不可变研究产物
FactorExperiment 输出:
factor_run.json
factor_values.parquet
forward_returns.parquet
factor_quality.parquet
factor_diagnostics.json
artifact_manifest.jsonStrategyExperiment 输出:
backtest_run.json
metrics.json
trades.parquet
fills.parquet
mtm_equity.parquet
diagnostics.parquet
execution_scenarios.json
artifact_manifest.json每个产物都有 schema version、SHA256、row count、source commit 和 lineage。
7. 回测可信度增强
新增连续 mark-to-market equity:
- wallet balance
- equity
- realized / unrealized PnL
- fees
- Funding
- gross / net exposure
- initial / maintenance margin
- liquidation buffer
- drawdown
每笔交易增加:
- MAE
- MFE
- MAE_R
- MFE_R
- holding time
- entry / exit Regime
- leverage
- fee
- slippage
- Funding
- max margin usage
- min liquidation buffer
8. 执行压力场景
使用同一份 signal plan 比较:
- `BASELINE`
- `COST_2X`
- `LATENCY_NORMAL`
- `LATENCY_STRESSED`
- `PARTIAL_FILL_STRESSED`
- `VOLATILITY_SLIPPAGE_STRESSED`
- `PROTECTION_DELAY_STRESSED`
- `COMBINED_STRESS`
杠杆统一展示 2x、5x、10x、20x。2x 和 5x 是优先研究区间,10x 和 20x 只作为压力测试,不能自动进入 Demo 或 Live。
第一阶段验收标准
- V0.3 与 V0.9 都能通过同一 StrategyRunner 执行。
- 新旧路径 parity test 通过。
- 因子按类别正确注册。
- FactorRun 与 BacktestRun 不可覆盖。
- 研究请求不能访问 lockbox。
- Research Runner 不加载交易凭证或 execution adapter。
- V0.9 仍然没有执行资格。
- 所有 artifact 可以被外部系统校验和导入。
第二阶段:Quant-OS Research Workbench v1
Quant-Trade 的 Research Integration 通过人工检查后,再实现 Quant-OS。
MVP 技术栈
``text
Frontend
Next.js
TypeScript
TailwindCSS
shadcn/ui
TanStack Query
EChart
Backend FastAPI PostgreSQL Redis Celery DuckDB Parquet ```
系统仍然面向 2 vCPU / 4 GB RAM 的单机环境。MVP 不引入 ClickHouse、Kafka、Kubernetes,也不拆分微服务。Celery 并发默认保持为 1。
初始页面
第一版启用:
- 总览
- 数据中心
- 因子研究
- 策略研究
- 回测中心
- 任务中心
- Research Runner 设置
模拟交易、实盘交易、组合管理、完整风控中心、插件中心、模型中心和 AI研究员先隐藏,不创建无数据的空壳页面。
Trusted Local Runner
Quant-OS 通过受控 subprocess 调用 Quant-Trade Research CLI:
Quant-OS Celery Worker
→ 校验 ExperimentSpec
→ 调用固定 Research CLI
→ 校验 ArtifactManifest
→ 校验 SHA256
→ 导入 Run metadata
→ DuckDB 查询 Parquet
→ 前端展示调用过程禁止 shell=True,禁止任意命令和路径,运行环境只保留必要变量,不传递 OS secret。
Catalog 同步
Quant-OS 定期同步:
- StrategyDefinition
- StrategyVersion
- FactorDefinition
- FactorVersion
- ParameterSchema
- Capability
- Source commit
同步操作幂等,不覆盖旧版本。
因子研究页面
因子页面按类别选择指标。
**Alpha 因子:**
- Time-Series IC
- Pooled Panel IC
- Cross-Sectional RankIC
- ICIR / RankICIR
- Rolling IC
- Decay
- Coverage
- Sign Agreement
- Quantile Return
- Long-Short Return
- Monotonicity
- Turnover
- Regime Stability
- Symbol Stability
- Cost Sensitivity
**市场状态:**
- State coverage
- State duration
- Transition stability
- Conditional expectancy
- Conditional PnL / MDD
- Filter pass rate
- False-positive reduction
**风险变量:**
- MAE distribution
- Stop utilization
- Liquidation reduction
- Margin utilization
- Drawdown reduction
- Tail loss
- Leverage sensitivity
**执行质量:**
- Fee impact
- Slippage impact
- Latency sensitivity
- Partial-fill impact
- Missed-fill rate
- Protection-delay loss
当前多资产策略只有少量大型币种,因此单日 Cross-Sectional RankIC 必须显示样本量警告,不能作为唯一晋级依据。V0.3 的短周期事件信号则优先展示 Forward Return、Hit Rate、Expectancy、MAE、MFE、Signal Decay 和 Fee-adjusted Return。
因子实验工作台
用户可以:
复制现有因子配置
→ 填写预注册假设
→ 修改白名单参数
→ 选择 development dataset
→ 选择 Forward Return horizon
→ 创建 FactorExperiment
→ 运行 FactorRun
→ 对比 baseline旧 FactorVersion 不会被覆盖。
策略实验工作台
用户可以:
复制 StrategyInstance
→ 填写预注册假设
→ 修改白名单参数
→ 选择执行压力场景
→ 选择杠杆研究场景
→ 创建 StrategyExperiment
→ 运行 BacktestRun
→ 查看结果并对比 baselineQuant-OS 不允许在浏览器中直接编辑和执行 Python 策略代码。策略逻辑修改仍然必须在 Quant-Trade 中通过 Git commit 创建新的 StrategyVersion。
回测中心
核心指标:
- PnL
- Total Return
- MDD
- Win Rate
- ProfitFactor
- Trade Count
- Fees
- Funding
- Liquidation Count
- Margin Utilization
核心图表:
- 连续 MTM equity
- Drawdown
- Symbol PnL
- Side PnL
- Monthly PnL
- Regime PnL
- MAE / MFE
- Leverage sensitivity
- Stress scenario comparison
页面必须明确显示:
- 当前结果是否仅属于 development。
- Lockbox 是否未打开。
- `execution_eligible` 状态。
- 10x / 20x 是否仅为压力研究。
- MTM 是否使用简化模型。
- 指标是否 unavailable。
- RankIC 是否样本不足。
第二阶段验收标准
- Quant-OS 可以同步 Quant-Trade catalog。
- 可以创建一次 FactorExperiment。
- 可以创建一次 StrategyExperiment。
- Celery 能调用固定 Research CLI。
- Run artifact 可以自动校验和导入。
- 因子、策略、回测页面使用真实数据。
- 失败实验保留且不可覆盖。
- 浏览器不能提交任意 Python 或 shell 命令。
- OS 不持有 Binance 交易凭证。
- 没有实现任何交易执行功能。
第三阶段:端到端验证
第一轮端到端验证只使用 development 数据和小型固定 fixture。
FactorExperiment 验证
同步因子目录
→ 选择一个已有因子
→ 创建预注册
→ 修改一个允许研究的参数
→ 运行 FactorExperiment
→ 导入 FactorRun
→ 查看 Decay / Stability / Forward Return
→ 与 baseline 比较StrategyExperiment 验证
同步策略目录
→ 复制一个 StrategyInstance
→ 创建预注册
→ 选择 BASELINE 与 COST_2X
→ 选择 2x 与 5x
→ 运行 StrategyExperiment
→ 导入 BacktestRun
→ 查看 MTM / MAE / MFE / Diagnostics
→ 与 baseline 比较安全验证
- 请求不能访问 lockbox。
- 请求不能指定任意 executable。
- 请求不能注入 shell。
- 请求不能越过参数范围。
- 请求不能提高风险硬限制。
- V0.9 不能进入 Demo 或 Live。
- 相同请求幂等。
- 相同 run_id 内容冲突必须拒绝。
第四阶段:研究治理
Quant-OS 不只是结果展示工具,还必须限制过拟合。
每次实验必须绑定:
- Hypothesis
- Expected mechanism
- Primary metric
- Constraint metrics
- Parameter set
- Trial budget
- Development dataset
- Source commit
- Artifact lineage
系统禁止:
- 删除失败实验。
- 只保存最佳参数。
- 自动按最高 PnL 晋级。
- 自动打开 lockbox。
- 自动修改 execution eligibility。
- AI 自动发起实验。
- OS 自动修改或合并 Quant-Trade 代码。
第五阶段:Shadow 与 Demo
只有以下条件全部满足后,才讨论 Shadow 和 Demo 的统一管理:
1. Research 与 Runtime 使用同一个 StrategyPort。 2. Replay、Shadow、Demo 的策略行为一致。 3. BacktestRun 可以完整复现。 4. 连续 MTM equity 完整。 5. Symbol-level leverage 与 margin mode 统一。 6. 执行压力测试通过。 7. Development gate 通过。 8. 一次性 lockbox 通过。 9. Demo safety gate 通过。
即使进入该阶段,Quant-OS 初期也只查看和启动受控 Shadow,不直接开放 Live 下单。
冻结的安全底线
- V0.9 继续保持 research-only。
- 当前不打开 lockbox。
- 当前不启用主网。
- 当前不自动晋级策略。
- AI 不进入交易关键路径。
- 两个仓库不合并。
- Quant-OS 不持有交易凭证。
- 浏览器不能执行任意代码。
- 所有实验不可变、可追溯。
- 失败结果必须保留。
实施顺序
1. Quant-Trade:feature/research-integration-v1
2. 人工检查策略 parity、安全边界和测试
3. Quant-OS:feature/research-workbench-v1
4. 完成一次 FactorExperiment
5. 完成一次 StrategyExperiment
6. 检查 artifact lineage 与实验治理
7. 再决定是否合并到 main当前阶段只建设到 FactorRun、BacktestRun 和研究可视化。先证明结果可信、流程可复现、实验不越权,再讨论真实交易。