Beyond De Prado and Cotton: Hierarchical and Iterative Methods for General Mean–Variance Portfolios

By Bernd J. Wuebben

Rating

1843
Battle Count: 57

Relevance

10/10
Directly addresses the core problem of quantitative portfolio construction: integrating alpha signals into regularized portfolio allocation. CRISP at γ≈0.5 with 100 sweeps is recommended as a production-ready method delivering 80-94% of oracle Sharpe across multiple regimes. The paper provides a complete practitioner's guide (Section 8.5) with six concrete scenarios, a κ(C) diagnostic for method selection, and constraint handling for long-only/sector-capped portfolios. The factor-streaming variant enables portfolio construction at Russell-all-cap scale (N=30,000) with 4.8MB memory vs 7.2GB dense. The three-method spectrum (HRP-µ → HRP-Σµ → CRISP) covers the full range from interpretable tree-based to high-performance iterative solutions. Directly relevant to quant equity, factor investing, tactical asset allocation, and Black-Litterman view integration.

Implementation Complexity

5/10
CRISP is remarkably simple to implement: scalar Gauss-Seidel with O(N²) per sweep, no matrix factorization, no tree construction. Algorithm 2 is ~15 lines of pseudocode. The factor-streaming variant (Algorithm 3) adds moderate complexity but is well-documented. HRP-µ requires tree construction (Ward linkage) plus signed IVP representatives and 2×2 Cramer's rule at each node. HRP-Σµ adds recursive MVO with L1 normalisation. All three methods share the same 2×2 between-branch system. The paper provides complete pseudocode, worked numerical examples, function catalogs, and a public repository with reproduction scripts. Main complexity lies in understanding the theoretical framework (correlation conditioning, shrinkage trajectory, three regularisation channels) rather than the code itself. Dependencies are minimal: Python, NumPy, SciPy only.

Reproducibility

5/5
Exceptional reproducibility. All code, data generators, raw numerical outputs, and figure scripts are publicly available at https://github.com/bwuebben/beyond_hrp_and_cotton. Fixed random seeds (global seed 42) at each call site. Minimal dependencies (Python 3.13, NumPy, SciPy only). Two headline commands reproduce all tables in ~30s and ~2-4 min respectively. Bit-identical outputs across architectures. Full pseudocode for all algorithms provided. Worked numerical examples with intermediate quantities. Ridge sensitivity, linkage sensitivity, and covariance regime robustness all documented.

About this paper

Methodology: Hierarchical and Iterative Signal-Aware Portfolio Construction (HRP-µ, HRP-Σµ, CRISP). Problem types: Portfolio Optimization, Risk Management, Optimization, Regularization, Iterative Numerical Methods.

The interactive Everscope explorer (charts, battles, favorites) loads below.