用 A 股真实数据跑 7 个核心理论。坦诚地说:5 个策略里 4 个跑输了 buy & hold。
把"量化五大流派"知识库里的核心理论,用 A 股真实数据 (2010-2026) 跑出可比较的回测结果。两个独立的实战:
趋势 (TSMOM) / 均值回归 (z-score 价差) / 因子 (Momentum + Value + Low-Vol) / ML (GBR) / 风险管理 (Kelly + Risk Parity + Vol Targeting)。每个流派 1-2 个代表策略,跑 2010-2026 全部历史。
把"金融 ML"做成 A 股头部量化私募的样子:1,800 只股 × 18 个 alpha 因子 × LightGBM walk-forward × 18 月横截面分组回测。
把每一派的核心理论用 1-2 个最经典的策略实现出来。基准是 buy & hold 沪深 300。
| 流派 | 策略 | 年化 | Sharpe | MDD | 结果 |
|---|---|---|---|---|---|
| ① 趋势 / CTA | TSMOM 12-1 | -2.94% | -0.23 | -67.63% | ❌ 跑输 |
| ② 均值回归 | HS300/CYB z-score | -8.89% | -1.10 | -77.28% | ❌ 跑输 |
| ③ 因子投资 | Value (Low PB) | +2.78% | +0.06 | -35.60% | ✅ 跑赢 |
| ④ 机器学习 | GBR on 6 features | -1.57% | -0.34 | -32.24% | ❌ 跑输 |
| ⑤ 风险管理 | Vol Target 10% | +2.87% | +0.08 | -34.68% | ✅ 性价比最高 |
| 基准 BH | Buy & Hold 沪深 300 | +1.59% | -0.02 | -46.70% | 基准 |
Value (Low PB) — 2.78% 年化, Sharpe 0.06, MDD 仅 -35.6%
LongOnly TSMOM 跑平基准。Kelly sweep 显示 Half Kelly 是 sweet spot (终值 1.48 vs Full Kelly 1.68, 但波动减半)。
把模型做"真"一点:1,800 只股横截面,18 个 alpha 因子,LightGBM walk-forward,月度调仓。
月度 Spearman 负的,比随机还差 1%。这印证了 López de Prado 的论断:金融 ML 90% 是防过拟合。
| 策略 | 年化 | Sharpe | MDD | Calmar | 评价 |
|---|---|---|---|---|---|
| Q5 (Top 20%) 等权 | +11.31% | +0.39 | -35.23% | +0.32 | ✅ 跑赢基准 |
| Q1 (Bottom 20%) 等权 | +7.87% | +0.42 | -17.88% | +0.44 | 回撤小 |
| TopBottom 多空对冲 | -1.56% | -0.20 | -37.17% | -0.04 | ❌ 做空端亏 |
| Universe 等权 (基准) | +10.18% | +0.52 | -16.29% | +0.62 | 最稳 |
| 排名 | 因子 | 含义 |
|---|---|---|
| 1 | hi_252_ratio | 52 周新高比(价格位置) |
| 2 | mom_1 | 1 日动量 |
| 3 | mom_60 | 60 日动量 |
| 4 | vol_60 | 60 日波动率 |
| 5 | turn_60 | 60 日换手率(流动性) |
| 6 | lo_252_ratio | 52 周新低比 |
| 7 | mom_20 | 20 日动量 |
| 8 | mom_5 | 5 日动量 |
| 9 | vol_20 | 20 日波动率 |
| 10 | mom_10 | 10 日动量 |
行业头部量化私募 8-12% alpha 的真正来源:
| 维度 | 行业标准 | 我的真实结果 | 差距 |
|---|---|---|---|
| IC mean | > 0.03 | -0.018 | 数量级差 |
| ICIR | > 0.5 | -0.098 | 5 倍差 |
| 因子数 | 100+ | 18 | 5-6 倍 |
| 行业中性化 | 必须 | 无 | 100% |
| 财报数据 | 必须 | 无 | 100% |
| Barra 风险模型 | 必须 | 无 | 100% |
| 样本年限 | 5-10 年 | 2.5 年 | 2-4 倍 |
结论:真实差距 = 因子数量 + 行业数据 + 风险模型 + 样本年限。 头部 8-12% alpha 来自"**数百因子 + 行业中性 + 真正 Barra + 容量上杠杆**"。 简化的 18 因子 + 无行业中性 → IC 微负是预期之内的。
5 阶段流水线:拉数据 → 因子工程 → ML 训练 → 回测 → 综合报告
PY=~/.hermes/projects/finance-refresh/a-stock-sentiment/.venv-quant/bin/python
# Stage 1: 拉数据 (秒级,有缓存)
$PY ~/.hermes/projects/finance-refresh/quant-schools/08-backtest/scripts/_shared.py
# Stage 2-5: 跑 5 个 backtest
for s in 01_trend_cta 02_mean_reversion 03_factor 04_ml 05_risk_mgmt; do
$PY ~/.hermes/projects/finance-refresh/quant-schools/08-backtest/scripts/${s}.py
done
# Stage 6: 综合报告
$PY ~/.hermes/projects/finance-refresh/quant-schools/08-backtest/scripts/00_consolidate.py
PY=~/.hermes/projects/finance-refresh/a-stock-sentiment/.venv-quant/bin/python
# Stage 1: 拉 1,800 只股 × 2.5 年数据 (~15 min, 之后秒级)
$PY ~/.hermes/projects/finance-refresh/quant-schools/08-backtest/cross_section_ml/scripts/01_build_panel.py
# Stage 2-5: 因子 → ML → 回测 → 报告
$PY scripts/02_factor_engineering.py
$PY scripts/03_ml_train.py
$PY scripts/04_backtest.py
$PY scripts/05_consolidate.py