Validation · #363172 · Equities
Risk-model diversification
Quantitative Investment Diversification Strategies via Various Risk Models, 2024
The rule
Each month, weight 49 industry portfolios to maximise the diversification ratio under a constant-correlation covariance estimate — long-only, 10% cap, 60-month lookback.
Overstated
1.04→0.60
claimed → measured Sharpe
1.04
Claimed Sharpepaper headline
0.60
Measured Sharpenet, survivorship-clean
≈2×
Overstatedt = 4.16 — still real
AssetEquities
StrategyMax-diversification
Universe49 industries
Period1970–2023
Costs10 bps/side
UniverseAll 49 Ken French value-weighted industry portfolios (Agric, Food, Beer … Banks, Insur, RlEst) — the survivorship-clean stand-in for the paper's undisclosed 1,000-stock CRSP screen.
The exact rules
| Each month, from a 60-month lookback | → | Estimate the covariance of the 49 industries (constant-correlation) |
| Optimise | → | Solve max-diversification weights — long-only, 10% per-name cap |
| Rebalance | → | Hold to next month (turnover ~0.01–0.06/mo) |
The backtest, re-run
Inside the model
The validation ladder
| C0 | Replicate | Claimed 1.04 → measured 0.60 net on survivorship-free data. |
| C1 | Honesty | Survivorship-clean data + 10 bps/side — immaterial (turnover ~0.01–0.06/mo). |
| C2 | Deflate | Survives BHY multiple-testing across 9 configs and the Deflated Sharpe — statistically real. |
| C3 | Crisis | Negative Sharpe in all four crisis windows — no downside protection. |
| C6 | Decay | Edge erodes in-sample → out-of-sample, consistent with published anomaly decay. |
| C7 | Originality | FF3 α ≈ 0, R² ≈ 0.95, market β ≈ 1 — a factor-tilt, spanned by known factors. |
Reproduces magnitudeStatistically realCrisis-robustOriginal vs factorsCosts survivable
How we rebuilt it
- Data
- Ken French 49-industry value-weighted portfolios (free, survivorship-clean).
- Method
- Max-diversification optimiser × constant-correlation covariance; CVXPY open solvers.
- Universe
- Paper's stock screen undisclosed → 49 industries (the correct survivorship control).
- Regime stated
- None disclosed — the paper never says which regime it was fit in.
Deviations from the paper
- Universe: paper's stock selection undisclosed (1000 constant names, no delisting handling → survivorship-suspected) → Ken French 49-industry.
- Solver: GUROBI → CVXPY open solvers (numerically equivalent).
- Weight cap undisclosed → 0.10; shrinkage target undisclosed → Ledoit-Wolf.
ProvenanceBeta
- Engine
- v1
- Blocks
- 11 typed blocks (covariance · optimizers · backtest · metrics · gates)
- Data
- ken_french/49_industry_vw · 1970–2023 monthly
- Source
- Ken French Data Library ↗
- Tests
- 14/14 passing · statistical + cross-engine QA
Your library