Laboratoire
Neuf intelligencesartificielles s’affrontent.
Chaque agent reçoit le même capital de départ, les mêmes données de marché et la même contrainte de risque. Aucun ne connaît les décisions des autres. Ce qui les distingue, c’est le modèle de langage qui raisonne derrière — et la façon dont il encaisse le doute.
Simulation. Les ordres passent sur un compte de démonstration, avec de l’argent fictif. Rien de ce qui est affiché ici n’est un conseil d’investissement, et des résultats passés ne présagent d’aucun résultat futur.
Pourquoi nous l’avons construit
Un marché est un banc d’essai honnête : il ne s’intéresse pas à l’élégance du code, seulement à la justesse des décisions. En faisant tourner plusieurs modèles côte à côte sur le même flux, on obtient une mesure de ce que chacun sait vraiment faire quand l’information est incomplète et le temps compté.
C’est le genre de système que nous construisons pour nos clients : plusieurs modèles orchestrés, une mémoire partagée, des garde-fous qui coupent avant la casse, et des mesures qui disent la vérité plutôt que de flatter. Le sujet est le trading, la mécanique est transposable à n’importe quelle décision automatisée.
Comment ça fonctionne
- 01
Les données de marché sont collectées en continu, puis normalisées en un état commun à tous les agents.
- 02
Chaque agent raisonne sur cet état et propose une décision. Une couche de contradiction met la thèse à l’épreuve avant qu’elle ne devienne un ordre.
- 03
Un gestionnaire de risque dimensionne, plafonne, et coupe. Chaque portefeuille est ensuite mesuré contre l’indice de référence.
Résultats
Chargement des résultats…
Ce que ça nous a appris
La valeur d’un système se lit autant dans les pannes traversées que dans les fonctionnalités livrées. Quelques-unes, et ce qu’elles ont changé :
- Un disjoncteur ne vaut que testé en conditions réelles
- Le coupe-circuit de perte maximale avait un chemin de contournement. Aucune relecture ne l’avait vu ; son premier déclenchement réel l’a exposé en quelques secondes.
- Un cache doit vieillir à l’horloge, pas au compteur
- Une fraîcheur indexée sur un compteur de cycles remis à zéro à chaque redémarrage a gelé une donnée pendant seize jours, sans qu’aucune alerte ne se déclenche. Le système paraissait sain — il répétait la même réponse.
- Neuf agents sur un même quota, c’est une avalanche
- Lancés ensemble, ils saturaient le fournisseur et se bloquaient mutuellement. La correction n’est pas de réessayer plus fort : c’est d’étaler les départs et de brider à la source.
- Un modèle qui « ne répond pas » répond souvent mal
- Environ 16 % des cycles d’un agent étaient perdus sur ce qui ressemblait à une absence de réponse. C’était un format de sortie inattendu. Après correction : proche de zéro.
Ce que ce projet démontre
Ce sont les compétences que nous mettons au service de nos clients, adossées ici à du code qui tourne — pas à une ligne de CV.
- Systèmes concurrents — plusieurs processus sur un état partagé, verrous, écritures atomiques, isolation des pannes.
- Modèles de langage en production — appels outillés, bascule entre fournisseurs, gestion fine des modes de panne propres à chaque modèle.
- Résilience réseau — bridage à la source, réessais progressifs, dégradation gracieuse : le contrôle du risque tourne même quand plus aucun modèle ne répond.
- Systèmes de risque — plafonds, arrêts, dimensionnement des positions et coupe-circuit, empilés en couches indépendantes.
- Rigueur expérimentale — groupes de contrôle, essais isolés, détection des facteurs confondants, mesures publiées même défavorables.
- Observabilité — journaux structurés, piste d’audit, sauvegardes datées, tableau de bord temps réel.