Projet phare2026
Orion
Moteur de trading algorithmique construit sur la microstructure de marché: il lit le carnet d'ordres en profondeur, en backtest comme en live, avec les méthodes des desks institutionnels plutôt que celles des bots retail.
- rust
- microstructure
- carnet d'ordres
- react
Le principe#
Orion ne regarde pas seulement le prix: il travaille au plus près du carnet d'ordres, en suit la profondeur en continu et en tire ses signaux. C'est une approche issue des desks institutionnels, à l'opposé des bots retail qui réagissent à une bougie.
Il travaille sur les contrats à terme du CME, à partir du flux le plus fin qu'une bourse publie: chaque ordre, un par un. J'y travaille depuis plus de six mois.
Ce qu'il fait#
- Il reconstruit le carnet d'ordres à l'identique, ordre par ordre, avec la position de chaque ordre dans sa file d'attente. Sur des millions de comparaisons, le carnet reconstruit concorde à 100 % avec un carnet publié indépendamment.
- Il mesure ce qui se passe dans ce carnet: liquidité qui apparaît et disparaît, gros ordres, prix moyens pondérés, volatilité.
- Il décide à partir de ces mesures, dans une couche de stratégies séparée, la seule où vivent les seuils.
- Il exécute, en simulation avec une file d'attente réaliste, ou en réel via un courtier.
Le même moteur tourne en backtest, sur l'historique, et en live, branché sur le flux temps réel, sans aucune branche de code propre à l'un ou à l'autre.
Cinq règles tenues par le code#
Orion repose sur cinq principes, chacun imposé par la structure du code plutôt que par la discipline:
- Un seul format de marché, le flux ordre par ordre. Tout le reste en est dérivé.
- Aucun nombre magique: prix, quantités et durées ont chacun leur type.
- L'instant de réception fait foi, jamais l'horodatage de la bourse. Voir le futur est impossible, pas seulement interdit.
- Parité backtest et live: rien de ce qui décide ne lit l'horloge du système.
- Refuser plutôt que dégrader: une donnée incohérente est rejetée bruyamment, jamais corrigée en silence.
Comment il est construit#
Le cœur est écrit en Rust de bout en bout: un workspace de dix-sept crates, chacun avec une responsabilité, des dépendances qui ne vont que dans un sens, et des conventions vérifiées par l'outillage plutôt que par la relecture. Une interface React sert à piloter le moteur et à observer ce qu'il fait.
La fiabilité passe par les tests: environ 3 400 tests, dont des tests différentiels contre une implémentation naïve, des séquences aléatoires, une énumération exhaustive des petits cas, et la comparaison à des journées de marché réelles. Rejouer une séance produit le même résultat, octet pour octet.
Pour aller plus loin#
- Pourquoi j'ai construit mon propre moteur de trading
- Reconstruire un carnet d'ordres depuis un flux MBO
- Structurer un gros projet Rust: les règles d'Orion
- Données de marché: du carnet d'ordres à la bougie
Où en est le projet#
Orion est en cours de mise en production.