Mettre en place un environnement de recherche : Python, environnements virtuels, Jupyter et VS Code
Installez Python, créez un environnement de projet isolé, ajoutez pandas, numpy et matplotlib, et exécutez votre premier calcul dans un notebook.
Ce que vous allez apprendre
- Quelle version de Python installer en 2026 et pourquoi « une version derrière la plus récente » est généralement le choix le plus sûr.
- Comment créer un environnement virtuel afin que chaque projet de trading dispose de son propre ensemble de paquets, reproductible.
- Comment installer pandas, numpy, matplotlib et Jupyter, et comment figer les versions dans un fichier
requirements.txt. - Comment organiser un dossier de recherche pour que les données, les notebooks et le code réutilisable ne se mélangent pas.
Explication
Python est un langage de programmation généraliste devenu l'outil standard de la recherche quantitative en finance grâce à ses bibliothèques de données. Le cours Trading systématique et backtesting testait une règle dans un tableur ; ce cours transpose les mêmes idées en code.
Quelle version ? Fin 2026, la série Python la plus récente est la 3.15, et pandas 3.0 (sorti en janvier 2026) exige Python 3.11 ou plus récent. Règle pratique : installez la dernière version qui a au moins quelques mois, car les toutes nouvelles versions manquent parfois de paquets précompilés (« wheels ») pour les bibliothèques scientifiques. Consultez toujours la page de téléchargement actuelle et, sous Windows, cochez « Add python to PATH » pendant l'installation. Vérifiez avec python --version dans un terminal (sous macOS et Linux, il vous faudra peut-être python3).
Environnements virtuels. Un environnement virtuel (venv) est un dossier privé qui contient sa propre copie des paquets Python d'un projet. Sans lui, mettre à jour pandas pour le projet A peut casser silencieusement le projet B. Le module intégré en crée un :
python -m venv .venv
Activez-le avec .venv\Scripts\activate (Windows) ou source .venv/bin/activate (macOS/Linux). L'invite affiche alors (.venv) et, dès lors, pip installe uniquement dans ce dossier. L'outil pip est l'installateur de paquets de Python ; PyPI (le Python Package Index) est le dépôt public depuis lequel il télécharge.
Les bibliothèques de base. numpy fournit des tableaux numériques rapides ; pandas construit des tableaux étiquetés (DataFrames) au-dessus de numpy et constitue l'outil principal de ce cours ; matplotlib trace des graphiques ; Jupyter vous donne des notebooks, des documents qui mêlent code, résultats et notes. Installez-les en une seule ligne :
pip install pandas numpy matplotlib jupyterlab pyarrow
Le paquet pyarrow est facultatif mais recommandé par l'équipe de pandas, car pandas 3.0 l'utilise pour son nouveau type de chaîne par défaut et pour une lecture de fichiers plus rapide.
Reproductibilité. Après l'installation, exécutez pip freeze > requirements.txt. Le fichier liste les versions exactes, par exemple pandas==3.0.1. Plus tard, pip install -r requirements.txt recrée un environnement identique, de sorte qu'un backtest d'aujourd'hui produise les mêmes chiffres ; un résultat que vous ne pouvez pas reproduire n'est pas un résultat.
Notebook ou script ? Les notebooks Jupyter (lancés avec jupyter lab) sont idéaux pour l'exploration, car chaque cellule s'exécute séparément et affiche son résultat. VS Code (Visual Studio Code, un éditeur gratuit) ouvre les mêmes notebooks .ipynb ainsi que de simples scripts .py, propose un débogueur et signale les erreurs pendant la saisie. Sélectionnez dans VS Code l'interpréteur situé dans .venv, sinon vos imports échoueront avec « No module named pandas » alors même que vous l'avez installé.
Une arborescence qui tient la distance :
data/raw/pour les fichiers téléchargés que vous ne modifiez jamais à la main,data/processed/pour les versions nettoyées.notebooks/pour l'exploration, numérotés (01_load.ipynb,02_returns.ipynb).src/pour les fonctions réutilisables (indicateurs, métriques),tests/pour les tests unitaires que vous écrirez à la leçon 9.requirements.txtet un.gitignorequi exclut.venv/, les gros fichiers de données et tout fichier contenant des clés d'API.
Exemple commenté
Exemple hypothétique : une première cellule de notebook qui remplace un calcul de taille de position que vous avez peut-être fait à la main dans le cours Gestion du risque et des trades. Hypothèses : compte de €10,000, risque de 1% par trade, entrée à €50.00, stop à €47.00. Les frais, le spread et le slippage sont ignorés.
account = 10_000
risk_pct = 0.01
entry, stop = 50.0, 47.0
risk_eur = account * risk_pct
per_share = entry - stop
shares = int(risk_eur // per_share)
print(shares, shares * entry, shares * per_share)
Étape par étape : risque en euros = 10,000 × 0.01 = €100. Risque par action = 50 − 47 = €3. Nombre d'actions = 100 ÷ 3 = 33.3, et l'opérateur de division entière // arrondit à 33 vers le bas (arrondir vers le haut dépasserait le budget de risque). Valeur de la position = 33 × €50 = €1,650. Risque réellement prévu = 33 × €3 = €99. Le résultat affiché est 33 1650.0 99.0.
Le tiret bas dans 10_000 sert uniquement à la lisibilité. Et le risque prévu n'est pas la perte maximale : un gap au-delà du stop peut faire perdre plus de €99.
Erreur fréquente
pip install sans environnement activé, parfois avec des droits d'administrateur. Quelques mois plus tard, deux projets ont besoin de versions différentes de pandas, une mise à jour casse d'anciens notebooks, et personne ne sait quelles versions ont produit le backtest de l'an dernier. Créez un .venv par projet, versionnez requirements.txt et n'installez jamais rien dans le Python du système.Exercice pratique
Sur papier, écrivez la séquence exacte de commandes de terminal pour : créer un dossier de projet nommé momentum_research, y créer et activer un environnement virtuel, installer pandas, numpy, matplotlib et JupyterLab, enregistrer les versions et lancer JupyterLab. Indiquez ensuite ce que python -c "import pandas; print(pandas.__version__)" devrait afficher si l'installation a fonctionné.
Afficher la solution
mkdir momentum_researchpuiscd momentum_researchpython -m venv .venvsource .venv/bin/activate(macOS/Linux) ou.venv\Scripts\activate(Windows)pip install pandas numpy matplotlib jupyterlabpip freeze > requirements.txtjupyter lab
La commande de vérification affiche une chaîne de version telle que 3.0.1 (votre numéro exact dépend de la version en vigueur au moment de l'installation).
Limites : les ordinateurs d'entreprise et certaines distributions Linux restreignent les chemins d'installation ; si python est introuvable, utilisez python3 ou le chemin complet indiqué par votre installateur.
Points clés à retenir
- Utilisez une version récente mais pas toute neuve de Python 3 ; pandas 3.0 exige Python 3.11 ou plus récent.
- Un environnement virtuel par projet et un
requirements.txtaux versions figées rendent chaque backtest reproductible. - pandas, numpy, matplotlib et Jupyter sont les quatre outils sur lesquels repose ce cours ; VS Code relie notebooks et scripts.
- Séparez dès le premier jour les données brutes, les données traitées, les notebooks et le code réutilisable.
Étape suivante
La leçon 2 couvre le peu de Python de base dont vous avez besoin avant d'aborder pandas : types de données, listes, dictionnaires, boucles, fonctions et lecture d'un message d'erreur.
Auto-évaluation
Répondez aux questions, puis vérifiez vos réponses. Vous pouvez recommencer autant de fois que vous le souhaitez.
Auto-évaluation automatique pour vos propres révisions. Vos réponses sont vérifiées dans votre navigateur ; nous ne les voyons pas et ne les évaluons pas. Ce n'est ni un examen ni une qualification.
Votre progression
« Terminée » signifie seulement que vous avez marqué la leçon comme lue. Ce n'est pas un test de votre compréhension. La progression et les notes sont enregistrées uniquement dans ce navigateur, sur cet appareil — pas dans un compte.