AutoTrader ⟸retour
AutoTrader est un projet personnel: une plateforme complète de trading algorithmique construite sur Interactive Brokers. Ce qui a commencé comme un moyen d'automatiser quelques idées de trading est devenu un système sérieux, prêt pour la production.
Architecture
La plateforme tourne en tant qu'architecture microservices de 13 services orchestrée avec Docker Compose:
- Laravel gère la logique métier, l'API, les files d'attente de jobs, et les événements WebSocket
- FastAPI (Python) sert d'adaptateur vers l'API d'Interactive Brokers
- Un second service FastAPI exécute l'optimisation bayésienne pour le tuning des paramètres d'algorithmes via Optuna
- React 19 + TypeScript alimente le tableau de bord de monitoring
- PostgreSQL et Redis gèrent la persistance et la distribution d'événements en temps réel
Algorithmes de trading
Le système supporte un framework d'algorithmes modulaire. Les algorithmes sont auto-découverts via des attributs PHP 8, et chacun définit son propre schéma de paramètres. Il y a actuellement plus de 11 algorithmes implémentés, allant du simple buy-and-hold à l'analyse spectrale (FFT), le trading par signaux LSTM, et des stratégies adaptatives aux régimes de marché.
Backtesting et optimisation
Le moteur de backtesting rejoue les données historiques barre par barre avec une simulation réaliste des exécutions, du slippage, et des commissions. Les résultats sont suivis avec des snapshots et affichés dans le tableau de bord.
Pour l'optimisation des paramètres, la plateforme utilise l'optimisation bayésienne via Optuna, permettant de tuner les algorithmes sur de grands espaces de paramètres sans recherche par grille exhaustive.
Le tableau de bord
Le frontend React offre un suivi en temps réel des positions, ordres, et P&L via des connexions WebSocket. Il expose aussi la bibliothèque complète d'algorithmes, l'historique de backtests, les résultats de scans, et les runs d'optimisation.
Ce projet est là où je pousse mes limites techniques. Il touche aux systèmes distribués, au traitement de données en temps réel, à l'optimisation proche du ML, à la modélisation financière, et au développement full-stack, le tout en même temps. Il tourne en mode paper trading par défaut, avec l'infrastructure de trading live prête à l'emploi.