QuantConnect Python Notebooks

Supports de cours pour l’apprentissage du trading algorithmique avec QuantConnect LEAN.

Note : Ces notebooks sont des supports de cours à lire sur GitHub ou en local. Pour exécuter les backtests, copiez le code dans un projet QuantConnect Cloud.

4-Type Classification

Type Count Description
(a) quantbook QC Cloud 18 QuantBook research or cloud-deploy descriptors (inclut Cloud-06-PCA-StatArb, Cloud-07-TemporalCNN ajoutés 2026-05, Cloud-08-ValueFactor-ZScore, Cloud-09-OptionWheel ajoutés 2026-06)
(b) research companion 2 QuantBook research paired with a course notebook
(c) standalone research 6 Local yfinance/sklearn training
(d) pedagogical placeholder 33 Course material with embedded QCAlgorithm strings

Récapitulatif : 18+2+6+33 = 59 entrées de classification. Le nombre total de fichiers .ipynb dans le dossier est 55 : la différence reflète les notebooks classés dans plusieurs catégories (ex. course material exécuté localement = (c)+(d)). Voir docs/qc/qc-strategies-status.md pour la classification détaillée.

Note — écarts de classification 4-types (hub vs feuille) : la classification ci-dessus (a/b/c/d) classe les notebooks Python du dossier par modalité d’exécution (quantbook QC Cloud, research companion, standalone local, placeholder pédagogique). Le dossier projects/ — catalogué dans projects/README.md et référencé depuis le hub QuantConnect/README.md — utilise un 4-types distinct par robustesse (Robuste / Historique / Exploratoire / ML-DL-RL). Les deux classifications ont des périmètres disjoints : ce dossier = supports de cours (notebooks pédagogiques), projects/ = stratégies déployables (code backtest). Toute lecture transversale doit garder cette distinction à l’esprit : un notebook (c) « standalone research » n’est pas pour autant une stratégie de production, et inversement un projet « Robuste » n’a pas forcément de notebook pédagogique ici. Alignement non forcé volontairement (cf. note tracker #5661).

Full classification: docs/qc/qc-strategies-status.md


État réel d’exécution (audit 2026-05-05, mise à jour 2026-07-02)

Suite à l’audit du 5 mai 2026, voici l’état honnête de chaque notebook. Aucun output theatrical (cellules qui printent des métadonnées en se faisant passer pour une exécution) ne subsiste après nettoyage de la PR chore/qc-strip-fake-outputs. Mise à jour 2026-05-28 : ajout des 5 notebooks créés depuis l’audit initial (RL avancé + 2 Cloud). Les comptes de cellules par notebook ne sont plus tenus dans cette prose : ils dérivaient à chaque ré-exécution (le « tapis roulant » des re-synchronisations, cf #9377). Le statut d’exécution ci-dessous reste la donnée pédagogique utile ; les décomptes précis relèvent du catalogue généré (COURSE_CATALOG.generated.*).

Légende : - EXÉCUTÉ : cellules avec outputs réels issus d’une vraie exécution kernel - NON EXÉCUTÉ : code source réel mais jamais exécuté (commit attendu après run kernel — préférable au théâtre) - doc cloud : notebook markdown-only documentant un backtest QC Cloud (résultats sur la plateforme, pas dans le notebook)

Notebook Statut Détail
QC-Py-01-Setup NON EXÉCUTÉ
QC-Py-02-Platform-Fundamentals NON EXÉCUTÉ
QC-Py-03-Data-Management NON EXÉCUTÉ
QC-Py-04-Research-Workflow NON EXÉCUTÉ
QC-Py-05-Universe-Selection NON EXÉCUTÉ
QC-Py-05b-FScore-Piotroski EXÉCUTÉ CPU local (yfinance/numpy/scipy), cellules code exécutées, données réelles 14 titres
QC-Py-06-Options-Trading NON EXÉCUTÉ
QC-Py-06b-Derivatives-Valuation-From-Scratch EXÉCUTÉ CPU local (numpy/scipy), 13/13 cellules code, 3 figures
QC-Py-07-Futures-Forex NON EXÉCUTÉ
QC-Py-08-Multi-Asset-Strategies NON EXÉCUTÉ
QC-Py-09-Order-Types NON EXÉCUTÉ
QC-Py-10-Risk-Portfolio-Management NON EXÉCUTÉ
QC-Py-11-Technical-Indicators NON EXÉCUTÉ
QC-Py-12-Backtesting-Analysis NON EXÉCUTÉ
QC-Py-12b-Backtest-Validity EXÉCUTÉ
QC-Py-13-Alpha-Models NON EXÉCUTÉ
QC-Py-14-Portfolio-Construction-Execution NON EXÉCUTÉ
QC-Py-14b-Liquidity-Execution-Costs EXÉCUTÉ CPU local (yfinance/pandas/numpy), cellules exécutées, figures committées
QC-Py-15-Parameter-Optimization NON EXÉCUTÉ
QC-Py-16-Alternative-Data NON EXÉCUTÉ
QC-Py-17-Sentiment-Analysis NON EXÉCUTÉ
QC-Py-18-ML-Features-Engineering EXÉCUTÉ
QC-Py-19-ML-Supervised-Classification NON EXÉCUTÉ
QC-Py-20-ML-Regression-Prediction NON EXÉCUTÉ
QC-Py-21-Portfolio-Optimization-ML NON EXÉCUTÉ
QC-Py-22-Deep-Learning-LSTM NON EXÉCUTÉ
QC-Py-23-State-Space-Models EXÉCUTÉ
QC-Py-23b-PatchTST-iTransformer EXÉCUTÉ
QC-Py-23c-TimesFM-Foundation-Models EXÉCUTÉ
QC-Py-24-Autoencoders-Anomaly EXÉCUTÉ
QC-Py-25-Reinforcement-Learning EXÉCUTÉ
QC-Py-26-LLM-Trading-Signals NON EXÉCUTÉ
QC-Py-27-Production-Deployment NON EXÉCUTÉ
QC-Py-28-Market-Regime-Detection NON EXÉCUTÉ
QC-Py-28b-Macro-Cycle-Regimes EXÉCUTÉ cellules locales exécutées + run QC Cloud 2016-2026 (diagnostic → allocation)
QC-Py-28c-Factor-Preprocessing-Regime EXÉCUTÉ cellules locales exécutées sur série synthétique à régimes (port du livre 06/02, issue #18958)
QC-Py-29-Derivatives-Valuation EXÉCUTÉ cellules locales exécutées (BS / arbre CRR / Monte-Carlo : convergence, grecques, scénario liquidité)
QC-Py-30-LSTM-Training EXÉCUTÉ
QC-Py-31-Transformer-Training EXÉCUTÉ
QC-Py-32-RL-DQN-Trading EXÉCUTÉ
QC-Py-40-PaperTrading-Binance EXÉCUTÉ
QC-Py-41-PaperTrading-IBKR EXÉCUTÉ
QC-Py-Cloud-01-FinBERT-Sentiment EXÉCUTÉ
QC-Py-Cloud-02-ML-Classification EXÉCUTÉ
QC-Py-Cloud-12-SectorRotation-Momentum doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-14-DualMomentum doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-03-Risk-Parity EXÉCUTÉ
QC-Py-Cloud-03b-RiskParity-Composite doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-04-MeanReversion doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-05-MLP-Forecasting EXÉCUTÉ
QC-Py-Cloud-11-RegimeSwitching doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-13-VolTargeting doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-06-PCA-StatArb doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-07-TemporalCNN doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-08-ValueFactor-ZScore doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-09-OptionWheel doc cloud markdown-only — backtest sur QC Cloud
QC-Py-Cloud-10-RL-DQN-Trading EXÉCUTÉ
QC-Py-33-RL-PPO-Trading EXÉCUTÉ
QC-Py-34-RL-SAC-A2C-Trading EXÉCUTÉ
QC-Py-35-RL-Portfolio-Construction EXÉCUTÉ
QC-Py-Dataset-Workflow NON EXÉCUTÉ

Récapitulatif : la majorité des notebooks sont NON EXÉCUTÉS (code réel, exécution kernel ou QC Cloud à faire) ; une part croissante est EXÉCUTÉE et 10 sont des doc cloud (markdown-only). Le décompte précis relève du catalogue généré.

Politique : un notebook NON EXÉCUTÉ avec du code réel est préférable à un notebook avec des outputs théâtraux (print de métadonnées prétendant être une exécution). Les patterns théâtraux suivants sont désormais détectés comme erreur par scripts/validate_qc_notebooks.py : - print("Algorithme charge : {len(qc_code)} caracteres") — métadonnée d’une string, pas une exécution - print("Workflow de deploiement...") — workflow MCP imprimé comme texte - print("Placeholder pour les resultats") — résultats hardcodés - print("Resultats sync depuis QC Cloud projet XXXX") — sans fetch réel

Les notebooks NON EXÉCUTÉS doivent être exécutés (kernel local pour les indépendants, QC Cloud pour ceux qui requièrent QuantBook) avant de pouvoir être marqués EXÉCUTÉ. Aucun raccourci toléré.


Aperçu — le trading quantitatif en images

Chaque notebook de la série rend visible un geste quantitatif distinct, dans une figure extraite des sorties réelles des notebooks. Plutôt qu’une galerie séparée du propos, ces figures sont replacées ci-dessous dans leur progression pédagogique — du premier backtest QuantBook aux agents de renforcement profond — au plus près du concept qu’elles illustrent. La provenance détaillée (cellule, poids, alt-text) est documentée dans assets/readme/MANIFEST.md.

04 — Le workflow de recherche QuantBook. Le QuantBook autorise l’exploration interactive avant l’algorithmation : on y confronte une stratégie simple (croisement de moyennes mobiles) au buy-and-hold de référence sur SPY. La courbe de capital révèle quand la stratégie bat le marché passivement et quand elle le suit — le premier geste de la recherche quantitative.

Workflow de recherche QuantBook : deux sous-graphiques empilés produits sur SPY (juil. 2025 → mai 2026). Haut — prix SPY (noir) avec SMA 50 (bleu) et SMA 200 (rouge) superposées, range 580-760 $. Bas — comparaison des returns cumulatifs normalisés (axe Y = 0.95 → 1.25) : Buy & Hold (gris, pic ~+25 % atteint en 2026-04) vs SMA Crossover (vert, pic ~+15 % après une longue période plate 2025-07 → 2026-02 et un drawdown à 0.97 vers 2026-03). Démontre le crossover SMA 50/200 comme signal de tendance long terme.

08 — Corrélations glissantes, ou la faillite du modèle statique. La corrélation moyenne entre deux actifs cache sa vérité : elle évolue dans le temps et s’effondre précisément lors des périodes de stress où la diversification était censée protéger le portefeuille. La corrélation glissante rend ce risque visible — pourquoi l’allocation statique est un leurre.

Stratégies multi-actifs SPY vs TLT : deux sous-graphiques empilés sur 4 ans (2020-01 → 2024-01). Haut — returns cumulés SPY (bleu marine, pic ~+110 %) vs TLT (orange, pic ~+70 %), avec un bandeau vertical rouge « Periode stress » couvrant ~3 mois en 2021-Q1 (zone COVID / choc taux, TLT dépasse brièvement SPY). Bas — corrélation glissante 60 jours (SPY-TLT) en violet, oscillant entre -0.8 (corrélation fortement négative) et -0.2, avec une ligne pointillée rouge horizontale « Moyenne : -0.45 ». Pendant le bandeau rouge, la corrélation plonge vers -0.82 (diversification actions/obligations temporairement KO sous stress).

10 — Le coût d’un stop-loss. Protéger une position a un prix. Les stops fixes coupent net, les stops trailing suivent la hausse mais se déclenchent sur le bruit, les stops volatilité s’adaptent au régime de marché. Sur un même prix simulé, les trois types laissent des traces différentes — choisir un stop, c’est choisir quel risque on accepte. La partie 4 se clôt sur le Hierarchical Risk Parity : pondérer un portefeuille multi-actifs sans jamais inverser la matrice de covariance, en trois étapes (clustering, quasi-diagonalisation, bisection récursive) — avec la leçon mesurée d’un univers crypto dominé par un seul actif, où la meilleure allocation hiérarchique reste sous le benchmark.

Gestion des risques stop-loss : deux sous-graphiques empilés sur ~75 jours (2023-01-01 → 2023-03-20). Haut — prix simulé (bleu) avec trois stops horizontaux : Fixed Stop 5 % = $97.01 (rouge tirets), ATR Stop 2× = $95.60 (orange tirets-points, plus bas que le fixed car plus conservateur), Support Stop SMA-2 % (vert tirets, mobile), plus le point d'entrée $102.12 (gros point bleu + ligne verticale pointillée). Bas — distance au stop en %, courbes ATR Stop (orange clair, varie 5-18 %) + Fixed Stop (rose pâle, fixe 5 %) + Support Stop (vert, varie 0-10 %). Démontre la comparaison stop-loss fixe vs adaptatif (ATR) vs trend-following (SMA) : l'ATR stop s'élargit quand la volatilité monte (protection anti-whipsaw), le SMA stop suit la tendance.

12 — Le profil risque-rendement d’un backtest. La richesse d’un backtest ne tient pas dans un seul Sharpe : le scatter des rendements quotidiens de la stratégie contre son benchmark expose la dispersion, les queues et la fréquence des bons et mauvais jours. C’est la signature statistique complète du comportement de la stratégie.

12b — Un Sharpe de 0,2 prouve-t-il quoi que ce soit ? Non, si le backtest couvre moins de dix ans : l’erreur-type asymptotique du Sharpe annualisé vaut environ 1/sqrt(N_années) (Lo, 2002) — sur 7 ans, ±0,38. Un Sharpe mesuré à 0,2 est statistiquement indistinguable d’une stratégie sans aucun bord. Le notebook construit la lecture honnête d’un backtest : intervalle de confiance du Sharpe, PSR et ses deux pièges de saisie (annualisation, convention de kurtose — démontrés sur l’article QC research/17112), multiplication des tests et faux positifs, et ce qu’il faut pour qu’une performance soit significative.

Analyse de backtest : deux sous-graphiques côte-à-côte sur 2 ans (2022-01 → 2024-01). Gauche — scatter Strategy Returns (%) vs Benchmark Returns (%) avec droite de régression rouge en pointillés β = 0.44 (la stratégie amplifie modérément le benchmark), ~250 points bleus dispersés dans le quadrant [-3 %, +3 %]², axes croisés à (0, 0). Droite — equity curves comparées : Strategie (bleu marine) finit à 1.42, Benchmark (gris tirets) finit à 1.47, baseline noire horizontale à 1.00. La Strategie reste sous le Benchmark toute l'année 2022 (sous-performance), puis dépasse en 2023-07 → 2023-10 (pic ~1.50). Démontre la mesure du β (sensibilité au benchmark) et le profil risque/rendement : β=0.44 < 1 = stratégie défensive (moins volatile que le marché).

19 — La validation walk-forward, ou l’honnêteté temporelle. Un modèle entraîné une fois puis testé sur tout l’échantillon triche avec le temps. La validation walk-forward décale une fenêtre d’entraînement puis re-teste, fold après fold, en mimant le retrain périodique qu’exige un trading réel. L’accuracy par fold révèle la robustesse — ou l’effondrement — hors échantillon.

Validation walk-forward d'un classifieur supervisé : deux sous-graphiques empilés sur 14 mois (2023-03 → 2024-05). Haut — accuracy par fold (bar chart bleu, axe Y = 0.0 → 1.0, axe X = 1 → 14) avec 2 lignes horizontales : Mean Accuracy = 0.874 (rouge pointillés, performance moyenne élevée) et Random Baseline = 0.5 (gris pointillés, baseline 50/50). Distribution hétérogène : folds 5/6/10/11 ≈ 1.0 (excellents), folds 7 ≈ 0.50 (le plus mauvais, à peine au-dessus du random), folds 3/9 ≈ 0.65 (sous-performances ponctuelles). Bas — accuracy cumulée au fil du temps (courbe bleue pleine, aire bleu clair sous la courbe), démarrant à 1.0 puis convergeant vers ~0.87 sur 14 mois malgré les folds médiocres. Démontre la stabilité OOS du modèle (accuracy cumulée reste > 0.85).

32 — L’agent qui apprend à trader. Le deep reinforcement learning entraîne un agent par essais et erreurs : chaque épisode ajuste sa politique pour maximiser la récompense cumulée. La courbe des récompenses par épisode montre la transition de l’exploration vers l’exploitation — le moment où l’agent cesse de tâtonner et commence à exploiter ce qu’il a appris.

Entraînement DQN (Deep Q-Network) sur trading : quatre sous-graphiques en grille 2×2 sur 200 épisodes. Haut-gauche — reward par épisode (axe Y = -75 à +150), courbe bleue brute très volatile + moyenne mobile MA-10 rouge qui passe de -65 (épisodes 0-100) à ~+50 (épisodes 175-190) — convergence finale vers reward positif. Haut-droite — loss Huber (axe Y = 0.00 à 0.06), courbe brute + moyenne mobile MA-50 rouge en cloche centrée sur l'épisode 175 (explosion temporaire de la loss = transition de phase exploration → exploitation). Bas-gauche — Sharpe Ratio sur 10 évaluations (axe Y = -7 à +1), chute à -6.8 vers l'évaluation 3, remonte progressivement vers 0.05 à l'évaluation 9 ; ligne horizontale pointillée verte Target 0.7 en haut. Bas-droite — résumé textuel « Resume Meilleur Modele » : Meilleur Épisode = 40, Val Sharpe = 0.683, Val Return = +50.1 %, Epsilon final = 0.050, Buffer size = 100 000, Total steps = 1 113 615. Démontre l'apprentissage par renforcement profond appliqué au trading : convergence tardive (épisode 175+), drawdown intermédiaire sévère (Sharpe -6.8), compromis exploration/exploitation (epsilon final 0.05).

Phase 1 : Fondations LEAN (QC-Py-01 à 04)

Notebook Contenu
QC-Py-01-Setup Compte QC, premier backtest, architecture LEAN
QC-Py-02-Platform-Fundamentals QCAlgorithm lifecycle, Initialize/OnData
QC-Py-03-Data-Management History API, consolidators, multi-timeframe
QC-Py-04-Research-Workflow QuantBook, pandas, notebook vers algorithme

Phase 2 : Classes d’actifs (QC-Py-05 à 10)

Notebook Contenu
QC-Py-05-Universe-Selection Univers dynamiques, filtres fondamentaux
QC-Py-05b-FScore-Piotroski F-Score de Piotroski : les 9 sous-scores sur données réelles, convention de datation article vs papier 2000, critique de liquidité, variance small-univers mesurée (#17770)
QC-Py-06-Options-Trading Chaînes d’options, greeks, stratégies couvertes
QC-Py-06b-Derivatives-Valuation-From-Scratch Complément from-scratch de QC-Py-29 : les trois moteurs reconstruits à la main, put américain, asiatique arithmétique, variables de contrôle (#16239)
QC-Py-07-Futures-Forex Contrats à terme, devises, hedging
QC-Py-08-Multi-Asset-Strategies Portefeuilles multi-classes d’actifs
QC-Py-09-Order-Types Market, limit, stop, trailing, combo orders
QC-Py-10-Risk-Portfolio-Management Risk management, position sizing, drawdown, hierarchical risk parity

Phase 3 : Analyse et Stratégie (QC-Py-11 à 17)

Notebook Contenu
QC-Py-11-Technical-Indicators Indicateurs techniques, indicateurs custom
QC-Py-12-Backtesting-Analysis Mesures de performance, Sharpe, drawdown
QC-Py-12b-Backtest-Validity Erreur-type du Sharpe (Lo 2002), PSR (Bailey & López de Prado 2012) et ses pièges de saisie, signification statistique du backtest
QC-Py-13-Alpha-Models Framework Alpha, signaux, combinaison
QC-Py-14-Portfolio-Construction-Execution Construction portefeuille, exécution
QC-Py-14b-Liquidity-Execution-Costs Liquidité et coûts d’exécution : proxys (ADV, Amihud, Corwin-Schultz), loi racine, capacité, stress COVID réel (#16239)
QC-Py-15-Parameter-Optimization Optimization, grid search, walk-forward
QC-Py-16-Alternative-Data données alternatives, sentiment, fundamentals
QC-Py-17-Sentiment-Analysis NLP, analyse sentiment, signaux textuels

Phase 4 : Machine Learning (QC-Py-18 à 29)

Notebook Contenu
QC-Py-18-ML-Features-Engineering Feature engineering pour trading
QC-Py-19-ML-Supervised-Classification Classification, signaux d’achat/vente
QC-Py-20-ML-Regression-Prediction Régression, prédiction de prix
QC-Py-21-Portfolio-Optimization-ML Optimisation ML de portefeuille
QC-Py-22-Deep-Learning-LSTM Réseaux LSTM pour séries temporelles
QC-Py-23-State-Space-Models State Space Models (S4/Mamba) pour séries temporelles
QC-Py-23b-PatchTST-iTransformer PatchTST, iTransformer — transformers spécialisés séries temporelles
QC-Py-23c-TimesFM-Foundation-Models Modèle de fondation zéro-shot (TimesFM 2.5), univarié / multivarié / covariables, quantiles
QC-Py-24-Autoencoders-Anomaly Détection d’anomalies, autoencodeurs
QC-Py-25-Reinforcement-Learning RL, DQN, environnement trading
QC-Py-26-LLM-Trading-Signals LLM pour signaux de trading
QC-Py-27-Production-Deployment Déploiement live, monitoring
QC-Py-28-Market-Regime-Detection Détection de régimes de marché
QC-Py-28b-Macro-Cycle-Regimes Macro et régimes : diagnostic composite borné, indicateurs → budget de risque
QC-Py-28c-Factor-Preprocessing-Regime Prétraitement de facteurs (FFD, standardisation, ACP) pour la détection de régime — port du livre 06/02, comparaison à la classe majoritaire
QC-Py-29-Derivatives-Valuation Valorisation d’un dérivé : Black-Scholes, arbre binomial et Monte-Carlo sur le même contrat — précision, convergence, flexibilité, coût, liquidité

Entraînement ML (QC-Py-30 à 32)

Notebooks d’entraînement de modèles avec checkpoints GPU.

Notebook Modèle Sortie
QC-Py-30-LSTM-Training LSTM Checkpoint PyTorch
QC-Py-31-Transformer-Training Transformer Checkpoint PyTorch
QC-Py-32-RL-DQN-Trading DQN Checkpoint PyTorch

Reinforcement Learning Avancé (QC-Py-33 à 35)

Approfondissement RL au-delà du DQN de la Phase 8 : PPO, SAC/A2C, application portfolio.

Notebook Algorithme Contenu
QC-Py-33-RL-PPO-Trading PPO Proximal Policy Optimization, clipped surrogate, Stable-Baselines3
QC-Py-34-RL-SAC-A2C-Trading SAC + A2C Soft Actor-Critic + A2C, comparatif algorithmes RL
QC-Py-35-RL-Portfolio-Construction RL multi-asset RL pour allocation multi-asset, contraintes de risque

Paper Trading (QC-Py-40 à 41)

Notebook Courtier
QC-Py-40-PaperTrading-Binance Binance
QC-Py-41-PaperTrading-IBKR Interactive Brokers

Stratégies Cloud (QC-Py-Cloud-*)

Notebooks de recherche et stratégies exécutées sur QuantConnect Cloud.

Notebook Stratégie
QC-Py-Cloud-01-FinBERT-Sentiment NLP FinBERT sentiment
QC-Py-Cloud-02-ML-Classification ML classification
QC-Py-Cloud-14-DualMomentum Dual Momentum
QC-Py-Cloud-03-Risk-Parity Risk Parité
QC-Py-Cloud-03b-RiskParity-Composite Risk Parité composite
QC-Py-Cloud-04-MeanReversion Mean Reversion
QC-Py-Cloud-05-MLP-Forecasting MLP Forecasting
QC-Py-Cloud-11-RegimeSwitching Régime Switching
QC-Py-Cloud-13-VolTargeting Volatility Targeting
QC-Py-Cloud-06-PCA-StatArb PCA Statistical Arbitrage
QC-Py-Cloud-07-TemporalCNN Temporal CNN
QC-Py-Cloud-08-ValueFactor-ZScore Value Factor Z-Score
QC-Py-Cloud-09-OptionWheel Option Wheel (risk education)
QC-Py-Cloud-10-RL-DQN-Trading RL DQN (advanced)
QC-Py-Cloud-12-SectorRotation-Momentum Sector Rotation & Multi-Asset Momentum

Utilitaires

Notebook Usage
QC-Py-Dataset-Workflow Workflow de gestion des datasets QC

Conclusion / Prochaines étapes

Ce que vous avez appris

Cette sous-série Python couvre l’éventail complet du trading algorithmique sur QuantConnect, des fondations LEAN aux frontières de l’IA, organisé en 5 arcs pédagogiques :

  • Fondations & Asset Classes (Phases 1-2) : le QCAlgorithm lifecycle, l’universe selection, et les classes d’actifs (equities, options, futures, forex). On apprend à structurer un algo propre via l’Algorithm Framework modulaire.
  • Analyse & Stratégie (Phase 3) : indicateurs techniques, risk/portfolio management (Kelly, Risk Parity), backtesting rigoureux (Sharpe, Sortino, drawdown). On apprend que la métrique seule ne fait pas la stratégie — le walk-forward et l’out-of-sample sont obligatoires.
  • Machine Learning (Phase 4) : feature engineering, classification/régression directionnelle (Random Forest, XGBoost), portfolio optimization ML-enhanced. On apprend que le ML classique est solide en regime stable mais fragile aux coûts de transaction réels.
  • Deep Learning & RL (QC-Py-30 à 35) : LSTM, Transformers, puis Reinforcement Learning (DQN, PPO, SAC/A2C). On apprend que les modèles de profondeur exigent une validation multi-seed et walk-forward — un Sharpe spectaculaire en backtest court est presque toujours un artefact d’overfitting.
  • Production (Paper Trading + Cloud) : déploiement paper/live (IBKR, Binance), stratégies cloud-native (FinBERT sentiment, ML classification, Temporal CNN, Option Wheel). On apprend que la stratégie ne se juge que sur le Sharpe net après frais, slippage et impact de marché.

Le fil rouge : la rigueur méthodologique — l’audit d’exécution honnête (section ci-dessus) et les 36 baselines vérifiées du catalogue enseignent que la plupart des edges apparents ne survivent pas à un backtest aligné.

Prochaines étapes

  1. Suivre l’ordre des phases : les notebooks sont conçus pour être lus séquentiellement (chacun suppose la maîtrise du précédent). Commencer par QC-Py-01 si vous débutez.
  2. Exécuter sur QC Cloud : les notebooks marqués [QC CLOUD] nécessitent QuantConnect Cloud (gratuit) — copier le code dans un projet QC Lab.
  3. Consulter les projets associés : chaque notebook pédagogique a un main.py correspondant dans ../projects/ pour exécution backtest réelle.
  4. Approfondir le RL : si le trading RL vous intéresse, enchaîner QC-Py-25 (intro RL) → 32 (DQN) → 33 (PPO) → 34 (SAC/A2C) dans l’ordre.
  5. Lire le livre : Hands-On AI Trading (Jared Broad, 2025), dont les exemples sont rattachés à ces notebooks dans BOOK_MAPPING.md.
  6. Retour au README principal : pour la vue d’ensemble de la série QuantConnect complète (incluant les 50+ projets de stratégies backtestées) et les cross-series bridges.

Rappel honnête : le trading algorithmique est un domaine où l’overfitting est la règle. La discipline du walk-forward, du multi-seed et du out-of-sample strict — enseignée tout au long de cette sous-série — est ce qui sépare une stratégie robuste d’une illusion statistique.


Navigation : README principal | Livre de référence

Retour au sommet