Revue de recherche · construction de portefeuille · étude 13
Construction de portefeuille : HRP, NCO et denoising de covariance face à Markowitz
Sur 44 actifs et 39 marchés de stratégies, la boîte à outils de López de Prado bat de façon fiable le mean-variance brut en out-of-sample, mais le résultat marquant est que la valeur du denoising est entièrement fonction de q = T/N
López de Prado soutient que l'optimisation mean-variance sur une covariance d'échantillon est un piège, la « malédiction de Markowitz », où des actifs plus corrélés donnent des poids optimaux plus instables et plus concentrés, et propose comme remède le denoising/detoning de covariance, le Hierarchical Risk Parity (HRP), la Nested Clustered Optimization (NCO) et la Theory-Implied Correlation (TIC). Cette étude reproduit les quatre méthodes et les compare en walk-forward aux contrôles à covariance brute, à l'inverse-variance et au naïf 1/N, sur de vraies données multimarchés, en posant la seule question qui compte : ces méthodes réduisent-elles réellement la variance out-of-sample réalisée, et survivent-elles à une correction de deflated-Sharpe, mieux que les contrôles ? L'explorateur ci-dessous vous permet de reproduire le mécanisme central, la dépendance de régime q = T/N du denoising, dans le navigateur.
Advances in Financial ML, chap. 16
López de Prado (2018) · HRP, NCO & denoising
Code et données
lopez-de-prado-work-review / projects / 13
the claim
Ce que dit López de Prado
- L'optimisation mean-variance sur une covariance d'échantillon est un piège, la « malédiction de Markowitz » : plus les actifs sont corrélés, plus les poids optimaux deviennent instables et concentrés, et l'inversion de matrice échoue précisément lorsqu'on a le plus besoin de diversification.
- Ses remèdes évitent ou stabilisent l'inversion : denoising/detoning de covariance via la loi de Marčenko–Pastur, Hierarchical Risk Parity (clustering + bissection récursive, sans inversion), Nested Clustered Optimization et Theory-Implied Correlation. Il soutient que ces méthodes battent le Markowitz brut en out-of-sample.
our result
Ce que nous avons trouvé
- Sur l'objectif de variance, la boîte à outils fonctionne et la malédiction est réelle : le Markowitz brut est partout le pire allocateur, dernier dans 39/39 marchés de stratégies et avec une vol OOS environ 65 % supérieure à la meilleure méthode de LdP dans l'univers de 44 actifs, avec une concentration dégénérée.
- Mais sur une base de risque comparable, la marge honnête est modeste : le HRP bat le Markowitz brut d'environ 15 % une fois les jambes à risque égal, et le meilleur deflated Sharpe revient souvent aux références robustes les plus simples (1/N, inverse-variance), et non aux méthodes élaborées.
- Une nuance nette et pédagogique : la valeur du denoising est entièrement fonction de T/N, sans effet sur une covariance singulière (q<1), elle n'aide qu'une fois q > 1. Aucune des méthodes ne transforme un menu perdant en menu gagnant ; leur rôle est le contrôle du risque, pas l'alpha (DSR ≈ 0 dans l'univers de stratégies net perdant).
Le résultat en trois lignes
Markowitz dernier · 39/39 marchés
La boîte à outils gagne sur la variance, de façon fiable
Le Markowitz mean-variance / min-variance brut est le pire allocateur sur la variance out-of-sample réalisée dans l'ensemble des 39 marchés de stratégies et dans l'univers de 44 actifs, sous tout cadrage. HRP, NCO et inverse-variance réduisent la variance OOS et déconcentrent le portefeuille ; la malédiction de Markowitz est ici réelle et inconditionnelle.
Avantage sur 1/N ≈ 15 %
Mais la marge honnête est modeste
Une fois les jambes à risque égal, le HRP bat le min-variance brut dans 38/39 marchés avec une médiane de seulement ~15 % ; le titre non normalisé de ~50 % est en grande partie un artefact des magnitudes brutes en dollars. Sur une base de risque comparable, le vainqueur OOS honnête est souvent le simple 1/N / inverse-variance, le HRP suivant de près.
Denoising = f(q = T/N)
Le résultat marquant
La valeur du denoising de covariance est entièrement fonction de q = T/N. À N=300 / T=252 (q=0,84), la covariance d'échantillon est singulière, condition number ~1e17, et le denoising de Marčenko–Pastur est quasi sans effet. Divisez le menu par deux à N=150 (q=1,68) et il réduit le condition number d'environ 4× et ne trouve que 7 valeurs propres sur 150 comme signal.
Le résultat marquant, quand le denoising aide-t-il réellement ?
La valeur du denoising de covariance est entièrement fonction de q = T/N
C'est le résultat le plus net et le plus pédagogique de l'étude, et celui que la plupart des écrits sur HRP/NCO escamotent. La loi de Marčenko–Pastur qui alimente le denoising de covariance est indéfinie pour une covariance d'échantillon singulière, et vous avez une covariance singulière dès que vous avez plus de séries que de jours in-sample.
Avec N=300 stratégies et une fenêtre de 252 jours, q = 0,84 < 1 : la covariance d'échantillon est de rang déficient avec un condition number de ~1e17, et le denoising MP est quasi sans effet, il conserve les 300 valeurs propres comme « signal ». C'est précisément la motivation de López de Prado pour le HRP : quand on ne peut pas inverser la covariance du tout, les méthodes sans inversion sont les seules à ne pas exploser.
Divisez le menu par deux à N=150 (même fenêtre → q = 1,68) et la covariance bascule vers le bien posé : le denoising réduit désormais le condition number de 4,1× et ne trouve que 7 valeurs propres sur 150 comme signal, aplatissant les 143 autres en bruit. L'enseignement pratique le plus important : un praticien disposant d'environ 300 stratégies et d'un an de données quotidiennes se trouve dans le régime où le denoising ne peut pas aider et où HRP / inverse-variance sont indispensables.
| univers | N | q = T/N | cond (brute) | cond (denoised) | réduction | facteurs de signal |
|---|---|---|---|---|---|---|
| actifs | 9 | 28.0 | 8.6e3 | 9.0e2 | 9.6× | 1 / 9 |
| stratégies N=300 | 300 | 0.84 | 4.3e17 | 3.5e17 | 1.2× | 300 / 300 |
| stratégies N=150 | 150 | 1.68 | 2.1e3 | 5.0e2 | 4.1× | 7 / 150 |
Condition number médian par pli de la covariance fournie à l'allocateur. q est calculé sur le nombre d'instruments actifs par pli. Le detoning peut regonfler le conditionnement (il retire le vecteur propre de marché, laissant un résidu quasi singulier) : c'est donc une aide au clustering, pas une correction du conditionnement.
Démo, explorateur de la malédiction de Markowitz / denoising
Faites glisser entre les trois régimes walk-forward réels de l'étude et regardez le condition number de la covariance exploser à mesure que q = T/N tend vers 1, et le denoising de Marčenko–Pastur s'effondrer en quasi sans effet précisément là où la covariance d'échantillon devient singulière.
q = fenêtre in-sample de 252 jours ÷ N. Les barres sont le condition number médian par pli de la covariance fournie à l'allocateur.
À q = 0.84 < 1 il y a plus de stratégies (300) que de jours in-sample (252) : la covariance d'échantillon est de rang déficient avec un condition number proche de 4.3e17. La loi de Marčenko–Pastur est indéfinie ici, donc le denoising est quasi sans effet (seulement 1.2×, conservant l'ensemble des 300 valeurs propres comme « signal »). On ne peut pas inverser cette matrice, seules les méthodes sans inversion (HRP, inverse-variance) survivent.
Et le bénéfice : vol OOS annualisée réalisée par allocateur sur l'univers de 44 actifs (jambes à risque égal). Plus c'est bas, mieux c'est. Le Markowitz mean-variance brut est le pire ; HRP / NCO / inverse-variance en tête.
portfolio_assetsLa malédiction de Markowitz, mesurée
Le Markowitz brut est dernier dans 39/39 marchés de stratégies, sous tout cadrage
C'est le cas d'usage visé par López de Prado, répartir un budget de risque entre de nombreuses stratégies décorrélées, et la démonstration la plus nette de la malédiction. Le Markowitz mean-variance / min-variance brut est le pire allocateur sur la variance OOS dans les 39 marchés, dans les deux régimes de q et les deux conventions d'unité. La malédiction est ici réelle et inconditionnelle.
Mais la marge honnête compte. En unités brutes de PnL en dollars, le HRP bat le Markowitz brut d'une médiane d'environ 50 %, gonflée, car les poids du Markowitz à covariance singulière explosent sur quelques jambes à forte vol en dollars. Sur la base équitable, vol-targeted (chaque jambe à 10 % de risque annualisé), le HRP bat le min-variance brut dans 38/39 marchés avec une médiane de seulement ~15 %. Un avantage réel mais peu spectaculaire.
Deux nuances que le graphique rend évidentes : (i) sur une base de risque comparable, le vainqueur honnête est la méthode robuste la plus simple, le simple 1/N / inverse-variance, le HRP juste derrière ; les méthodes élaborées (NCO, detoning) sont classées pires que le 1/N dans ce panel net-bruité, une mise en garde contre la sur-ingénierie. (ii) Sous vol-targeting, l'inverse-variance se réduit exactement au 1/N, la vérification de cohérence attendue, que l'exécution reproduit.
L'univers de 44 actifs
Même verdict sur de vrais rendements cross-asset
Sur les rendements quotidiens clôture-à-clôture de 44 instruments réels, perps crypto, ETF actions américaines et majors FX, le tableau tient. En unités de rendement brut (table), TIC-NCO et HRP livrent la plus basse vol OOS (0,146, 0,159) ; le mean-variance brut est le pire à 0,418, une vol OOS environ 65 % supérieure à la meilleure méthode de LdP, avec un N-effectif dégénéré de 2,6 (il mise le portefeuille sur une poignée de noms). Voilà la malédiction, mesurée.
Sur l'axe ajusté au risque, le vainqueur honnête est la méthode robuste la plus simple : le meilleur Deflated Sharpe revient à l' inverse-variance (0,64) et au NCO denoise-detone (0,75), pas au Markowitz fondé sur l'inversion, et pas toujours au HRP. L'avantage du HRP, c'est la réduction du risque et la déconcentration, pas l'alpha.
| allocateur | vol OOS | Sharpe OOS | DSR | N-eff | condition number |
|---|---|---|---|---|---|
| tic_nco | 0.146 | 0.10 | 0.34 | 3.8 | 1.5e4 |
| hrp | 0.159 | 0.15 | 0.43 | 4.9 | 1.9e16 |
| hrp_denoise | 0.162 | 0.16 | 0.44 | 4.8 | 3.6e4 |
| inv_var | 0.167 | 0.27 | 0.64 | 6.8 | 1.9e16 |
| nco_denoise_detone | 0.180 | 0.34 | 0.75 | 6.3 | 1.7e16 |
| nco | 0.181 | −0.04 | 0.15 | 2.5 | 1.9e16 |
| 1/N | 0.282 | 0.09 | 0.32 | 18.2 | 1.9e16 |
| min_var_raw | 0.292 | −0.03 | 0.17 | 2.1 | 1.9e16 |
| mean_var_raw | 0.418 | 0.16 | 0.44 | 2.6 | 1.9e16 |
Du meilleur au pire par vol OOS, en unités de rendement brut. Le condition number est la valeur médiane par pli de la covariance fournie à l'allocateur, notez que le HRP (1,9e16) ignore entièrement la covariance brute singulière, tandis que les méthodes TIC et denoised imposent une structure bien conditionnée (1,5e4, 3,6e4).
L'avantage du HRP passe-t-il à l'échelle ?
L'avantage du HRP sur 1/N croît avec l'ampleur de l'univers
Le résultat sur 39/44 actifs ci-dessus, le HRP battant à peine 1/N en variance, se révèle être un artefact de petit univers. En réexécutant le même walk-forward sur un panel de perp-crypto de 690 noms avec traitement du biais de survie et en balayant la taille d'univers N, on voit que la diversification hiérarchique du HRP a besoin d'ampleur pour s'exprimer : le ratio de variance OOS face à 1/N chute de ~0,87 à N=25 (≈9% de réduction de variance) à ~0,48 à N=100 et au-delà (≈50% de réduction).
La réserve honnête : à grand N, le gain de variance n'est pas un gain de Sharpe. Le HRP se concentre à mesure que l'arbre s'approfondit, l'ampleur effective s'effondre (eff-N ≈ 4–5 à N=690 malgré des centaines de noms) et le turnover grimpe de 0,14 à 0,49. Un déploiement tenant compte des frais ne conserve donc qu'une partie de cet avantage de variance face aux coûts ; c'est une histoire de réduction du risque, pas d'alpha gratuit.
| N | var HRP | var 1/N | var HRP/1N | Sharpe HRP | Sharpe 1/N |
|---|---|---|---|---|---|
| 25 | 0.518 | 0.597 | 0.87 | 0.80 | 0.64 |
| 50 | 0.594 | 0.653 | 0.91 | 0.83 | 0.60 |
| 100 | 0.337 | 0.676 | 0.50 | 0.87 | 0.58 |
| 200 | 0.307 | 0.685 | 0.45 | 0.28 | 0.53 |
| 690 | 0.321 | 0.669 | 0.48 | 0.19 | 0.52 |
Variance annualisée OOS et Sharpe par taille d'univers N (24 plis walk-forward, panel de perp-crypto de 690 noms). var HRP/1N < 1 = HRP à variance plus faible que l'équipondéré ; le ratio chute à mesure que N croît. Notez que les colonnes de Sharpe se croisent : 1/N dépasse le HRP à grand N à mesure que le HRP se concentre.
L'axe ajusté au risque
Une variance plus basse ne signifie pas plus de rendement. Deflater le Sharpe OOS réalisé de chaque allocateur face au menu de neuf allocateurs sépare les méthodes robustes des fragiles.
L'affirmation spécifique la plus forte de López de Prado, selon laquelle le pipeline complet denoise → detone → NCO domine, n'est ici que partiellement étayée. Le NCO a besoin d'une entrée denoised et bien conditionnée pour bien se comporter : le NCO brut affiche un Sharpe OOS négatif et le pire DSR parmi les variantes de NCO. Le detoning échange du conditionnement contre de la qualité de clustering. Les méthodes robustes et peu paramétrées (HRP, inverse-variance, NCO denoised) sont celles qui survivent en out of sample.
Le négatif honnête
Les échantillons de stratégies décorrélées sont net perdants (médiane de Sharpe OOS ≈ −4,9 à N=300, vol-targeted). L'échantillonneur à décorrélation gloutonne tire délibérément des noms non corrélés d'un corpus dominé par des perdants, et aucun allocateur ne peut fabriquer du rendement à partir d'un menu perdant, le Deflated Sharpe est ≈ 0 partout dans l'univers de stratégies. Les méthodes de portefeuille contrôlent le risque, pas le signe. Nous le rapportons plutôt que de le cacher derrière un cherry-pick à rendement positif.
Verdict
HRP / NCO / denoising battent le Markowitz brut pour le contrôle de la variance out-of-sample, de façon reproductible (Markowitz dernier dans 39/39 marchés de stratégies et pire dans l'univers de 44 actifs). Mais sur une base de risque comparable, l'avantage sur les références robustes les plus simples (1/N, inverse-variance) est modeste (~15 % dans l'univers de stratégies), ces références sont souvent le vainqueur OOS honnête, et aucune des méthodes ne transforme un menu perdant en menu gagnant. Une confirmation fidèle et sans fard de l'esprit du travail, l'inversion de matrice sur une covariance d'échantillon bruitée ou singulière est l'ennemie ; la structure et le shrinkage aident, sans survendre l'ampleur de l'avantage du HRP.
Méthode
- Données réelles uniquement, multimarché : rendements quotidiens clôture-à-clôture de 44 instruments (perps crypto, ETF actions américaines, majors FX), plus jusqu'à 300 séries de PnL quotidien par stratégie, décorrélées de façon gloutonne, sur 39 marchés, le cas d'usage de López de Prado.
- Walk-forward, causal : les poids sont estimés sur une fenêtre in-sample de 252 jours, maintenus sur la fenêtre out-of-sample suivante de 63 jours, puis roulés de 63 jours. Les poids ne sont jamais évalués sur les données qui les ont construits.
- Neuf allocateurs comparés : 1/N, inverse-variance, Markowitz min-variance et mean-variance bruts, HRP, HRP-sur-denoised, NCO, NCO denoise-detone et TIC-NCO.
- La métrique principale est la volatilité annualisée OOS réalisée (plus c'est bas, mieux c'est), avec le Deflated Sharpe Ratio du flux réalisé de chaque allocateur deflaté face au menu de neuf allocateurs (False Strategy Theorem).
- Diagnostics : concentration des poids (N-effectif, HHI) et condition number de la covariance effectivement fournie à l'allocateur, la mesure directe de la malédiction. Un scaleur de vol par jambe, causal et purement in-sample, place chaque jambe à un risque annualisé commun de 10 % pour une comparaison inter-méthodes équitable.
- Le kernel HRP en Numba est vérifié comme identique au bit près à la référence numpy (max |Δw| ≤ 5,6e-17) sur N ∈ {8, 17, 40, 120} à chaque exécution.
Notes et limites
Deux conventions d'unité sont rapportées car elles mesurent des choses différentes : le classement de vol OOS est invariant d'échelle et robuste, mais l'ampleur de l'avantage du HRP dépend de la façon dont les jambes sont mises à l'échelle, le chiffre non normalisé de ~50 % est en partie un artefact des magnitudes brutes en dollars, et le ~15 % vol-targeted est la comparaison équitable. Le corpus de stratégies est net perdant, de sorte que l'histoire du Sharpe est atténuée par construction, et les méthodes elles-mêmes sont celles de López de Prado, non inédites. La contribution est l'audit empirique, multimarché et walk-forward, en particulier la dépendance de régime q = T/N du denoising.
Reproductibilité
Le moteur (allocateurs, denoise/detone MP, HRP/NCO/TIC, walk-forward, DSR, le kernel HRP en Numba testé pour l'identité au bit près), les figures et les tables sont rassemblés dans le projet 13 de lopez-de-prado-work-review. L'explorateur de cette page est autonome : les régimes de condition number et les chiffres de vol OOS par allocateur sont encodés à partir des tables de l'étude, de sorte que le mécanisme qu'il illustre se reproduit exactement à chaque chargement.
Citer
Références
Les sources primaires de l'appareil examiné ici :
- López de Prado, M. (2016). Building Diversified Portfolios that Outperform Out of Sample. Journal of Portfolio Management, 42(4). (Hierarchical Risk Parity.)
- López de Prado, M. (2018). Advances in Financial Machine Learning. Wiley. (Ch. 16, HRP.)
- López de Prado, M. (2020). Machine Learning for Asset Managers. Cambridge University Press. (Denoising de covariance, detoning et Nested Clustered Optimization.)
- López de Prado, M., & Lewis, M. J. (2019). Detection of False Investment Strategies Using Unsupervised Learning Methods, and the Theory-Implied Correlation matrix. Quantitative Finance.
- Bailey, D. H., & López de Prado, M. (2014). The Deflated Sharpe Ratio: Correcting for Selection Bias, Backtest Overfitting, and Non-Normality. Journal of Portfolio Management, 40(5).
Voir aussi
L'étude complémentaire sur la discipline de sélection et le Deflated Sharpe Ratio se trouve à Backtest Overfitting & the Deflated Sharpe Ratio, et l'ensemble plus large des travaux est à Research.

