Retour aux projets

Finance quantitative · Analyse · Python

Backtest et optimisation de portefeuille

Ce projet est directement lié au projet « Application de suivi de patrimoine »: les résultats de backtests et de simulations sont utilisés pour piloter les décisions d’allocation du portefeuille suivi dans l’application principale. Il vise à construire un environnement d’analyse pour tester différentes approches d’investissement sur plusieurs actifs, comparer leurs performances et étudier la dynamique risque/rendement d’un portefeuille. Il s’inscrit dans une logique de finance quantitative appliquée : données propres, hypothèses explicites, métriques comparables et visualisations lisibles.

PythonPandasNumPyPlotlyBacktestingMonte Carlo

Ce que ce projet démontre

Capacité à structurer un moteur de backtest, comparer plusieurs allocations et intégrer une simulation Monte Carlo pour estimer la distribution des trajectoires possibles.

Backtest et optimisation de portefeuille - detailed view

Mon rôle

Définition des hypothèses, récupération et nettoyage des données, implémentation des backtests, simulation Monte Carlo, calcul des métriques, visualisation des résultats et interprétation financière.

Contexte

Je voulais compléter l’apprentissage académique de la finance de marché par un outil d’analyse construit de bout en bout. L’objectif était de tester des hypothèses d’investissement, comparer des résultats et interpréter concrètement performance, volatilité, drawdown, diversification et robustesse des trajectoires.

Objectif

Développer un cadre d’analyse permettant de comparer plusieurs stratégies, visualiser leurs résultats, simuler des scénarios (Monte Carlo) et évaluer la robustesse d’un portefeuille selon plusieurs métriques.

Démonstration

Le projet en action

Deep dive

Lecture technique du projet

Ce module constitue la brique quantitative du suivi patrimonial: il backteste des allocations, mesure leur risque/rendement et ajoute des simulations Monte Carlo pour estimer la robustesse des trajectoires.

  • Backtests multi-stratégies sur un univers d’actifs homogénéisé.
  • Comparaison de scénarios d’allocation et de fréquences de rebalancing.
  • Calcul de métriques de risque/rendement annualisées et drawdowns.
  • Simulation Monte Carlo pour distribution de trajectoires de portefeuille.
  • Restitution des résultats via graphiques orientés décision.

Captures

Écrans et visualisations clés

Comparaison des backtests sur 5 ans

Comparaison des trajectoires de performance de plusieurs stratégies sur 5 ans.

Simulation Monte Carlo d’un portefeuille

Projection Monte Carlo pour visualiser la dispersion des scénarios de portefeuille.

Architecture

Organisation technique

Couche données

Préparation des séries de prix/rendements, nettoyage des trous de cotation et alignement temporel pour garantir des comparaisons cohérentes.

Moteur de backtest

Exécution de stratégies paramétrées (allocation initiale, règles de rebalancing, horizon, contraintes) avec journalisation des valeurs de portefeuille.

Moteur simulation

Génération de trajectoires Monte Carlo à partir des rendements historiques pour évaluer l’éventail de scénarios possibles.

Couche reporting

Production de KPI et de visualisations comparatives (performance cumulée, drawdown, dispersion des trajectoires) exploitables pour l’arbitrage.

Pipeline

Flux de données

  1. 1.Chargement des séries marché et normalisation des timestamps.
  2. 2.Application des règles de stratégie et exécution des backtests.
  3. 3.Calcul des métriques portefeuille (rendement, risque, drawdown).
  4. 4.Lancement des simulations Monte Carlo sur l’horizon défini.
  5. 5.Consolidation des résultats dans des graphiques comparables.
  6. 6.Utilisation des conclusions pour orienter les choix d’allocation du projet de suivi patrimonial.

Choix techniques

Décisions structurantes

Cadre de comparaison unifié

Les stratégies sont évaluées avec la même base de données, les mêmes périodes et les mêmes conventions de calcul pour limiter les biais de comparaison.

Lecture risque/rendement multi-métriques

L’évaluation combine performance et risque (volatilité, drawdown, Sharpe) pour éviter des conclusions basées uniquement sur le rendement brut.

Monte Carlo comme test de robustesse

Les simulations servent à mesurer l’incertitude et la dispersion des issues possibles, pas à prédire précisément le futur.

Intégration au suivi patrimonial

Les scénarios les plus robustes sont réinjectés dans la logique d’allocation du projet de suivi de patrimoine.

Fiabilité

Qualité et contrôles

  • Paramètres de tests explicités (horizon, règles, hypothèses de base).
  • Pipeline séparable entre préparation des données, calcul et visualisation.
  • Contrôles de cohérence sur l’alignement temporel des séries utilisées.

Limites

Points d'attention actuels

  • Résultats sensibles à la période historique choisie et au régime de marché.
  • Les simulations Monte Carlo restent dépendantes des hypothèses de distribution et de volatilité.
  • Pas de prise en compte exhaustive des frictions réelles (frais détaillés, slippage avancé, fiscalité complète).

Évolutions

Prochaines étapes

  • Ajouter des contraintes d’optimisation plus fines (bornes par classe d’actifs, budgets de risque).
  • Étendre les analyses de stress test (chocs de corrélation, baisses extrêmes, scénarios macro).
  • Automatiser l’échange de résultats entre module backtest et application de suivi patrimonial.

Difficultés rencontrées

Les principaux enjeux du projet

Concevoir un cadre unique pour comparer plusieurs stratégies (buy & hold, allocations pondérées, rebalancing périodique) avec les mêmes hypothèses de départ.

Intégrer des simulations Monte Carlo lisibles pour estimer une distribution de scénarios, sans sur-vendre la capacité prédictive du modèle.

Conserver une séparation claire entre données brutes, logique de calcul, visualisations et interprétation afin de garder un pipeline maintenable.

Résultats et apprentissages

Ce que j'en retiens

Backtests reproductibles sur un horizon de 5 ans pour comparer stratégies et allocations.

Comparaison normalisée de métriques de risque/rendement: performance annualisée, volatilité, drawdown, Sharpe et stabilité relative.

Ajout d’un module de simulation Monte Carlo pour visualiser des trajectoires probables et quantifier l’incertitude autour des résultats historiques.

Base d’analyse réutilisée dans le projet de suivi de patrimoine pour relier suivi opérationnel et décision d’allocation.

Autres projets

Continuer la visite

Application de suivi de patrimoine - project preview

Finance personnelle · Python · PyQt6

Application de suivi de patrimoine

Application desktop PyQt6 + SQLite pour centraliser des comptes multi-actifs, reconstruire l’historique hebdomadaire et analyser la performance d’un portefeuille.

Voir ce projet
Pricing d’options en C++ (CRR, Black-Scholes, Monte Carlo) - project preview

Finance quantitative · C++ · Pricing

Pricing d’options en C++ (CRR, Black-Scholes, Monte Carlo)

Projet de groupe en C++ pour pricer plusieurs types d’options (européennes, américaines, asiatiques) avec CRR, Black-Scholes et Monte Carlo.

Voir ce projet

Échanger

Je peux détailler les choix techniques et les résultats en entretien.

Si ce projet vous intéresse, je peux revenir plus précisément sur le besoin initial, la structure des données, les hypothèses, les difficultés rencontrées et les limites de l'analyse.