$cat projects/memoire-markowitz.md

Travail académique — Validé 16/20

Markowitz × Crypto-actifs — Mémoire ESSEC (16/20)

année

2024–2025

rôle

Auteur unique

stack

Excel + Solver, VBA, Python (cvxpy, quadprog JS)

durée

6 mois

Un Conseiller en Gestion de Patrimoine (CGP) doit allouer l'argent de ses clients entre actions, obligations, or, immobilier… Faut-il y ajouter de la crypto ? Si oui, combien, à quel profil de risque, sous quel cadre fiscal et juridique ?

C'est la question centrale de mon mémoire de fin d'études ESSEC, dirigé par un professeur de finance. La réponse n'est pas idéologique — elle est quantitative : on mesure, on compare, on tranche.

  • Pour le client Une mauvaise allocation = soit du rendement laissé sur la table, soit du risque mal cadré (drawdown subi en cas de crise).
  • Pour le conseiller Les régulateurs (MiFID II, MiCA) imposent un devoir de conseil documenté. Recommander 5% de crypto sans justification chiffrée, c'est un risque pénal.
  • Pour la théorie Les crypto-actifs sont volatils, jeunes, peu corrélés au reste. Markowitz tient-il le choc, ou faut-il sortir l'artillerie moderne (Black-Litterman, HRP) ?

En 1952, Harry Markowitz (Nobel d'économie 1990) prouve une chose simple mais contre-intuitive : la diversification réduit le risque sans sacrifier le rendement, à condition que les actifs ne bougent pas tous en même temps.

Mathématiquement, il s'agit de trouver les pourcentages wi à investir dans chaque actif pour minimiser la variance (la vol au carré) du portefeuille, sous une contrainte de rendement attendu.

Le problème, en symboles :

min   w Σ w

s.c.   Σ wi = 1   (somme = 100%)

        wi ≥ 0   (pas de short)

        w μ = r*  (rendement cible)

μ = vecteur des rendements moyens
Σ = matrice de covariance
w = vecteur des poids

En faisant varier le rendement cible r*, on obtient une courbe : la frontière efficiente. Tous les portefeuilles au-dessus sont impossibles. Tous ceux en-dessous sont dominés (même rendement, plus de risque, ou même risque, moins de rendement). Le travail de l'investisseur, c'est de choisir un point sur cette courbe selon son appétit au risque.

Le SRI (Summary Risk Indicator) est un score réglementaire MiFID II / PRIIPs allant de 1 (très défensif) à 7 (très offensif), basé sur la volatilité annualisée du produit. Chaque client a un profil. Le portefeuille doit s'y aligner.

SRI Vol annualisée Profil type Allocation classique
SRI 1 ≤ 0,5% Très défensif 100% fonds € / oblig court terme
SRI 3 5–12% Équilibré (prudent) ~60% oblig + 40% actions diversifiées
SRI 5 15–30% Dynamique ~80% actions + 20% diversificateurs
SRI 7 > 80% Très offensif Concentré, single-stock, crypto, levier

Pour chaque profil SRI, je calcule deux frontières efficientes sur les mêmes données hebdo 2020–2025 :

  • SC Sans Crypto — 9 actifs traditionnels (obligations US 10Y, MSCI World, Euro Stoxx 50, CAC40, S&P 500, Dow Jones, NASDAQ100, Or, REIT).
  • AC Avec Crypto — les 9 mêmes + un indice crypto custom (BTC / ETH / FIL / MKR, choisis pour leur diversité fonctionnelle).

Pour chaque profil SRI, je compare le rendement attendu, la volatilité réalisée, et le ratio de Sharpe (rendement supplémentaire par unité de risque). Si AC domine SC à risque égal, alors la crypto a sa place. Si AC sous-performe ou ne change rien, le mémoire conclut à son inutilité.

  • Axe X = volatilité acceptée. Plus tu vas à droite, plus tu acceptes que ton portefeuille fluctue.
  • Axe Y = rendement annualisé du portefeuille optimal pour cette vol cible.
  • La courbe orange = frontière de ton univers actuel (par défaut, tous les actifs).
  • La courbe grise pointillée = frontière de référence "Sans Crypto" — pour comparer en permanence.
  • L'étoile dorée ★ = portefeuille au Sharpe maximal sous ta vol acceptée. Là où ton rendement par unité de risque est le plus élevé.
  • Le plateau horizontal = au-delà de la vol max atteignable, ajouter du risque ne rapporte plus. L'univers est saturé sur l'actif le plus rentable.

À tester pour ressentir la pédagogie : 1. Clique sur Sans crypto (preset univers) → tu vois la courbe orange s'écraser sur la grise. Sans crypto, le rendement plafonne à ~19,65% (NASDAQ100 max). 2. Re-clique sur Avec crypto + SRI 5 → tu vois ton rendement passer à ~43%. +24 points de rendement, à risque égal. 3. Sharpe-optimal au SRI 7 sur l'univers Sans crypto → tu retombes sur SRI 3 (vol 12%, Sharpe 0,96). Au-delà, le Sharpe SC décroît. Bascule en Avec crypto et reclique : le Sharpe-optimal saute à SRI 7 (vol 73,8%, Sharpe 1,38). C'est exactement la différence pédagogique du mémoire.

Choisis ton univers d'investissement, déplace le curseur de volatilité acceptée, ou clique sur les profils SRI. L'optimisation Markowitz est recalculée en direct dans ton navigateur.

Univers d'investissement 10 / 10 actifs
Référence Sans Crypto Univers actif Curseur Sharpe-optimal

Contrôles

Profils SRI

Métriques du portefeuille

Rendement
Volatilité
Sharpe

Allocation optimale

Lexique — les 7 termes clés à connaître

Frontière efficiente

Pour chaque niveau de risque accepté, le rendement maximum atteignable. Tout point au-dessus de la courbe est impossible. Tout point en-dessous est sous-optimal.

Plateau

Au-delà d'une certaine vol, ajouter du risque ne paie plus — l'optimiseur a déjà concentré 100% sur l'actif le plus rentable.

  • Sans crypto : plateau à 19,65% (NASDAQ100)
  • Avec crypto : plateau à 104,4% (Indice Crypto)

SRI (Summary Risk Indicator)

Score réglementaire MiFID II / PRIIPs allant de 1 à 7, reflétant la volatilité annualisée du produit.

  • SRI 1 — 0,5% (fonds €, oblig courtes)
  • SRI 3 — 12% (équilibré prudent)
  • SRI 5 — 30% (dynamique)
  • SRI 7 — 100% (max risque)

Ratio de Sharpe

(Rendement − rf) / Volatilité

Rendement supplémentaire par unité de risque. C'est le chiffre que regarde un quant.

  • < 0,5 — médiocre
  • 0,5 → 1 — correct
  • 1 → 2 — bon
  • > 2 — excellent

Vol acceptée vs réalisée

Acceptée = la contrainte que tu fixes (l'axe X). Réalisée = la vol effective du portefeuille optimal trouvé.

Sur le plateau, la réalisée reste plafonnée à la vol max atteignable par l'univers — même si tu pousses la cible plus haut.

Quadratic Programming (QP)

Famille d'équations mathématiques très bien connue : on cherche les meilleurs pourcentages à investir.

Le solveur quadprog tourne dans ton navigateur (~10 Ko) et trouve la meilleure solution en quelques millisecondes.

Limites du Markowitz long-only

  • Sensible aux estimations (μ, Σ bruités)
  • Pas de régularisation
  • Pas de validation out-of-sample

Solutions modernes : Black-Litterman (priors bayésiens), HRP (Hierarchical Risk Parity), shrinkage Ledoit-Wolf sur la covariance.

  1. 1.

    Le ratio de Sharpe est amélioré sur tous les profils SRI quand on ajoute la crypto.

    Ce n'est pas du rendement gratuit — c'est de la diversification. La crypto bouge avec ses propres facteurs (adoption, halving BTC, narratives), peu corrélés aux indices actions.

  2. 2.

    À SRI 5 (vol cible 30%), passer de SC à AC fait bondir le rendement de 19,65% à 43,17%.

    C'est l'intervalle de risque le plus utilisé en gestion de patrimoine. Refuser la crypto à ce profil, c'est un coût d'opportunité documentable.

  3. 3.

    À SRI 7, le Markowitz long-only tend vers une allocation 100% crypto.

    Limite classique du modèle non régularisé : il optimise sur des moyennes historiques, pas sur des espérances robustes. Un Black-Litterman ou un HRP corrigerait ce biais.

  4. 4.

    Sans crypto, le Sharpe culmine dès SRI 3 (0,96) puis décroît vers SRI 7 (0,71). Avec crypto, il continue de monter jusqu'à SRI 7 (1,38).

    Pédagogiquement décisif : sur les actifs traditionnels, prendre plus de risque que SRI 3 ne rémunère plus assez. La crypto étire la zone où le risque additionnel reste payé — c'est le vrai apport, pas juste un boost de rendement brut.

Données

2020-01-05 → 2025-04-27

278 observations hebdomadaires · 9 ou 10 actifs selon l'univers

Optimiseur

QP long-only

quadprog côté navigateur · cvxpy côté Python

Annualisation

(1+rw)52−1

Composition géométrique du rendement hebdo

Taux sans risque

rf = 2,80%

Moyenne du yield US 10Y sur la période

Le notebook ci-dessous reproduit les chiffres du jury au pp près. Il est pensé pour être lu : commentaires explicatifs, formules LaTeX, sortie graphique vérifiable.

Profil SRI Vol cible Rdt SC Rdt AC Sharpe SC Sharpe AC Δ Sharpe
SRI 1 (Défensif)0,5%3,25%3,38%0,931,17+0,24
SRI 3 (Équilibré)12%14,40%18,26%0,961,29+0,33
SRI 5 (Dynamique)30%19,65%43,17%0,711,35+0,64
SRI 7 (Offensif)100%19,65%104,39%0,711,38+0,67

Chiffres du jury ESSEC (Excel + Solver). La replication Python (notebook) donne les mêmes valeurs à ±1pp près. SC = Sans Crypto, AC = Avec Crypto.

  • Pas de régularisation La matrice de covariance estimée sur 278 obs est bruitée. Un shrinkage Ledoit-Wolf ou un Black-Litterman avec views réduirait la sensibilité aux outliers.
  • Pas d'out-of-sample L'optimisation tourne sur 2020–2025 sans validation hors échantillon. Un walk-forward (entraîner sur 2020–2023, tester sur 2024–2025) montrerait la vraie performance prédictive.
  • Indice crypto qualitatif BTC/ETH/FIL/MKR choisis par jugement (capi + diversité fonctionnelle), pas par PCA ou clustering statistique. Subjectif.
  • Long-only Pas de short, pas de levier. Ça simplifie la pédagogie mais coupe une partie de la frontière de Markowitz.
  • Fiscalité post-optimisation L'optimisation se fait brute, puis on applique flat tax 30% (crypto) vs 17,2% (assurance-vie). Idéalement, la fiscalité devrait être intégrée dans l'objectif.

Mémoire noté 16/20. Présenté en jury ESSEC. Disponible sur demande.

Excel + VBA + Solver, c'était l'outil que j'avais. Aujourd'hui je referais le tout en Python avec cvxpy, un shrinkage Ledoit-Wolf sur la covariance, un walk-forward out-of-sample, et un benchmark Hierarchical Risk Parity. Le mémoire ne m'a pas donné des réponses — il m'a donné une pile de questions précises. C'est exactement ce qui me pousse à continuer.