Skip to main content
Retour aux Docs
🤖Constructeur de Bots

Moteur de backtesting

Monte Carlo + rejeu historique avant de passer en réel

Le moteur de backtesting vous permet de tester une stratégie de trading sur le passé avant même d'y risquer le moindre capital. Plutôt que de deviner si « acheter chaque marché présentant un edge d'au moins 5pp » ou « fader tout ce qui dépasse 95% » rapporte réellement de l'argent, vous passez vos règles au crible de conditions historiques et obtenez des chiffres concrets : taux de réussite, P&L, drawdown maximal, ratio de Sharpe et un journal de transactions complet. Il se trouve sur /dashboard/backtest et fait le pont entre une idée et une position en réel.

C'est l'un des outils les plus négligés de la plateforme, et c'est précisément pour cela que les traders disciplinés s'y appuient. Une stratégie qui semble manifestement rentable dans votre tête produit souvent un taux de réussite de 48% et un drawdown peu flatteur une fois rejouée. Mieux vaut l'apprendre ici que sur le solde de votre compte.

Ce que fait réellement le moteur

Predite fait tourner deux moteurs de backtest complémentaires derrière une même page. Ils répondent à des questions différentes, et les utilisateurs sérieux utilisent les deux.

1. Simulation Monte Carlo

Le panneau principal exécute une simulation Monte Carlo qui modélise le comportement d'une stratégie sur des centaines de journées de trading simulées. Elle repose sur des statistiques historiques Polymarket — edge moyen, variance de l'edge, taux de réussite de base et durée de détention typique pour chaque archétype de stratégie — puis simule jour après jour si une opportunité apparaît, quelle taille de position vous prendriez et comment elle se résout.

Point crucial, la simulation est déterministe pour une configuration donnée. Les mêmes entrées produisent toujours le même résultat (elle est initialisée à partir d'un hash de votre configuration), ce qui vous permet d'ajuster un paramètre à la fois et de voir exactement comment il fait évoluer le résultat. Modifiez les entrées qui déterminent la graine et vous obtenez une nouvelle trajectoire. Cela rend Monte Carlo idéal pour les *balayages de paramètres* : « qu'est-ce que faire passer mon edge minimum de 5 à 10 change au taux de réussite et au nombre de transactions ? »

Quatre archétypes de stratégie sont disponibles :

  • EV Follower — suit les signaux d'edge de l'IA ; achète quand l'IA juge un marché mal valorisé. ~58 % de taux de réussite de base, et la deuxième stratégie la plus active.
  • Mean Reversion — prend le contre-pied des probabilités extrêmes, en pariant sur un retour vers le milieu. Moins de trades, avec un edge plus important.
  • Momentum — suit les tendances de prix. La fréquence de trades la plus élevée des quatre, et la durée de détention la plus courte (3 jours contre 5 pour l'EV Follower) : c'est elle qui fait tourner le capital le plus vite.
  • Contrarian — parie contre la foule. Trades rares, à forte conviction et forte variance.

2. Replay historique

Au-dessus du panneau Monte Carlo se trouve le widget de replay (étiqueté BETA). C'est le moteur le plus littéral : il parcourt des instantanés de marché réellement enregistrés dans l'ordre chronologique et simule les entrées et sorties tick par tick. Là où Monte Carlo se demande « comment une stratégie de ce type devrait-elle se comporter statistiquement », le replay se demande « qu'aurait fait *cette stratégie précise* sur l'historique de prix réel de *ce marché précis* ».

Le replay lit dans les tables market_snapshots / market_history, qui sont alimentées par des crons en arrière-plan (toutes les 15 minutes pour le flux d'instantanés, toutes les 4 heures pour le flux de scan). De ce fait, le replay a besoin de données accumulées pour être pertinent — voir la section des pièges.

Comment lancer un backtest, étape par étape

  1. Ouvrez /dashboard/backtest. Vous arrivez sur la carte de configuration, avec des valeurs par défaut raisonnables déjà renseignées (10 000 $ de capital, 5pp d'edge minimum, fenêtre de 6 mois).
  2. Choisissez une stratégie dans le menu déroulant (EV Follower, Mean Reversion, Momentum ou Contrarian). C'est de loin le facteur le plus déterminant de vos résultats.
  3. Définissez votre capital de départ. Utilisez un chiffre réaliste — celui-là même avec lequel vous comptez réellement trader. Les tailles de position se calculent à partir de ce montant, donc 1 000 $ et 100 000 $ produisent des P&L et des drawdowns absolus très différents.
  4. Configurez l'entrée — edge minimum. C'est votre filtre. Le moteur n'« entre » dans une transaction que lorsque l'edge modélisé dépasse ce seuil (en points de pourcentage). Un chiffre plus élevé signifie des transactions moins nombreuses mais de meilleure qualité.
  5. Configurez le sizing — % de position max et fraction de Kelly. Le % de position max plafonne la part du capital qu'une seule transaction peut mobiliser. La fraction de Kelly ajuste la taille du pari en fonction de l'edge : 0,5 correspond au half-Kelly, le choix le plus courant car le Kelly complet (1,0) est mathématiquement optimal mais d'une volatilité brutale. Le moteur retient la plus petite valeur entre votre plafond de position max et la taille dérivée de Kelly.
  6. Configurez les sorties — stop-loss % et take-profit %. Ils délimitent jusqu'où une position peut évoluer en votre défaveur (stop) ou en votre faveur (objectif) avant d'être clôturée. Ils façonnent l'ampleur des gains et des pertes individuels, ce qui détermine à son tour votre profil de drawdown.
  7. Choisissez votre fenêtre de lookback. Sélectionnez 30 jours, 90 jours ou 180 jours d'historique simulé (des runs plus longs sur 1 an sont également disponibles). Les fenêtres plus longues donnent davantage de transactions et des chiffres statistiquement plus fiables ; les fenêtres plus courtes vous montrent le comportement du régime récent.
  8. Cliquez sur Run. Les résultats s'affichent en environ une demi-seconde.

Pour le widget de replay, le flux est similaire mais vous collez en plus un Market ID (un condition ID Polymarket comme 0x1a2b... ou un ticker Kalshi comme PRES-2028), choisissez une fenêtre (7 à 90 jours) et définissez vos dollars par transaction. Laissez le Market ID vide et il revient au chemin Monte Carlo.

Lire les résultats

Après un run, le moteur fait apparaître quatre métriques phares dans de grandes cartes, puis une seconde rangée de statistiques d'appoint, puis des visualisations.

Les quatre chiffres qui comptent le plus

  • Rendement total (%) — le gain ou la perte en pourcentage sur le capital de départ pendant la fenêtre. Le vert est positif, le rouge est négatif. C'est le chiffre principal, mais ne le lisez jamais isolément.
  • P&L ($) — le profit ou la perte en dollars absolus. Utile pour vérifier d'instinct si la stratégie vaut votre temps à votre niveau de capital réel.
  • Taux de réussite (%) — la part des transactions clôturées qui ont rapporté de l'argent. N'y accordez pas trop de poids. Un taux de réussite de 45% peut être très rentable si les gains sont plus importants que les pertes, et un taux de 70% peut perdre de l'argent si les pertes sont énormes. Associez-le toujours au P&L.
  • Ratio de Sharpe — le rendement par unité de volatilité, annualisé (le moteur annualise les rendements quotidiens par √252). C'est le meilleur indicateur de qualité en un seul chiffre. À titre indicatif : en dessous de 1,0 c'est faible, entre 1,0 et 2,0 c'est solide, au-dessus de 2,0 c'est excellent pour des stratégies de marchés de prédiction. Une stratégie avec un rendement total plus faible mais un Sharpe bien plus élevé est souvent celle qu'il vaut mieux trader, car elle est plus régulière et plus facile à augmenter en taille.

Les statistiques d'appoint

  • Nombre total de transactions — la taille de votre échantillon. Moins d'environ 20 transactions signifie que les autres chiffres sont bruités ; traitez-les comme une indication de tendance, pas comme une vérité absolue.
  • Drawdown maximal (%) — la plus forte baisse de pic à creux de l'equity pendant le run. C'est votre chiffre de douleur. Demandez-vous honnêtement : *aurais-je continué à trader à travers un drawdown aussi profond sans paniquer ?* Si le drawdown maximal est de 35% et que vous abandonneriez à 20%, la stratégie n'est pas viable pour vous, quel que soit son rendement.
  • Détention moyenne (jours) — la durée pendant laquelle les positions restent ouvertes. Cela vous indique la cadence : une moyenne de 3 jours correspond à une gestion active ; une moyenne de 12 jours est patiente.

Distribution des résultats et journal de transactions

  • La courbe d'equity trace la valeur du compte sur la fenêtre. Vous voulez une courbe qui monte régulièrement vers le haut et la droite. Une courbe qui s'envole tôt puis s'effrite, ou qui présente une seule chute brutale, est un signal d'alerte même si le point d'arrivée est positif.
  • Les rendements mensuels ventilent le P&L par tranches mensuelles. La régularité compte : une stratégie qui gagne de l'argent sur 5 mois sur 6 est plus digne de confiance qu'une autre qui doit la totalité de son rendement à un seul mois chanceux.
  • Le journal de transactions liste les transactions individuelles avec le sens (YES/NO), l'entrée, la sortie, la taille, le P&L, la durée de détention et le résultat. Lisez spécifiquement vos meilleures et pires transactions — si tout votre rendement provient d'une seule valeur aberrante, vous n'avez pas un edge, vous avez une coïncidence.
  • Utilisez Export CSV (en haut à droite du journal de transactions) pour extraire *toutes* les transactions — pas seulement les 10 dernières affichées — dans un tableur en vue d'un audit plus approfondi. Les champs CSV sont assainis contre l'injection de formules, vous pouvez donc l'ouvrir directement en toute sécurité dans Excel ou Sheets.

Conseils pour des backtests fiables

  • Changez une variable à la fois. Parce que Monte Carlo est déterministe, vous pouvez isoler l'effet de, disons, la fraction de Kelly en maintenant tout le reste constant. Balayez 0,25 / 0,5 / 1,0 et observez comment le Sharpe et le drawdown maximal évoluent ensemble.
  • Optimisez pour le Sharpe et le drawdown, pas pour le rendement brut. Il est facile de gonfler le rendement en augmentant la taille des positions ; il est difficile de le faire sans faire exploser le drawdown. Le meilleur rendement total en apparence est rarement la meilleure stratégie.
  • Exigez un échantillon réel. Poussez la fenêtre à 90 ou 180 jours pour disposer d'assez de transactions. Un run de 30 jours rentable sur 8 transactions n'est pas une preuve.
  • Recoupez Monte Carlo avec le replay. Si une stratégie a l'air excellente sous Monte Carlo, validez la même logique sur l'historique d'un marché réel via le widget de replay. Un accord entre les deux est un signal fort ; un désaccord signifie qu'il faut creuser davantage.
  • Faites correspondre le backtest à la façon dont vous allez réellement trader. Utilisez votre capital réel, vos vrais plafonds de position et des règles de sortie que vous respecterez vraiment. Le backtest d'une stratégie disciplinée que vous ne suivrez pas ne vaut rien.

Pièges et limites

  • Les backtests sont une indication, pas une prophétie. Les deux moteurs sont explicitement étiquetés comme des approximations. Monte Carlo utilise des *statistiques* historiques, pas un replay de chaque transaction réelle ; le moteur de replay utilise des instantanés mis en cache et un modèle à une seule position à la fois. Les performances passées ne garantissent pas les résultats futurs — la mise en garde habituelle est vraie ici pour de bonnes raisons.
  • Le replay a besoin que des données existent. Le moteur de replay exige au moins 10 instantanés pour un marché, et idéalement plus de 50 répartis sur au moins une journée complète, avant de renvoyer un résultat utile. Sur un déploiement récent ou un marché peu couvert, vous verrez un avertissement data_quality: insufficient ou limited. Le remède, c'est simplement le temps — laissez les crons d'instantanés accumuler de l'historique.
  • Les faibles nombres de transactions s'accompagnent d'avertissements. Si moins de 3 à 5 transactions se clôturent, le moteur signale directement une forte variance dans les notes. Croyez ce signalement.
  • Le surajustement est le péché capital. Si vous réglez les paramètres jusqu'à ce que la courbe soit parfaite, vous avez mémorisé du bruit historique, pas trouvé un edge durable. Une stratégie qui survit à plusieurs fenêtres différentes et à une configuration légèrement différente est bien plus crédible qu'une autre qui est parfaite sur exactement un seul réglage.
  • Limite de débit. Les backtests sont plafonnés à 10 runs par heure et par utilisateur, car chaque replay peut scanner des milliers d'instantanés. Planifiez vos balayages de paramètres plutôt que de marteler le bouton Run.

Exigences de plan

Le moteur de backtesting est disponible sur les plans Pro (59 $/mois) et Bot (99 $/mois). Il n'est pas inclus dans le plan Starter (29 $/mois) — les utilisateurs Starter verront une invitation à passer à un plan supérieur sur /dashboard/backtest.

Le backtesting en lui-même ne touche jamais à de l'argent réel, donc le plan Pro suffit pour utiliser toutes les fonctionnalités de cette page. Pour ensuite déployer une stratégie validée en tant que bot automatisé en réel tradant sur le CLOB de Polymarket, il vous faudra le plan Bot, qui débloque le Bot Builder et l'exécution en réel. Le parcours recommandé est : backtest sur Pro ou Bot → paper trading des survivantes → passage en réel sur Bot.

Comment cela se connecte au reste de Predite

Le backtesting se situe au milieu d'un pipeline de validation. Les stratégies que vous testez ici reprennent les conditions employées par l'EV Scanner et le Bot Builder : une configuration performante en backtest se traduit donc presque directement en règles de bot en live. Une fois une stratégie validée en backtest, l'étape naturelle est de la tester en avant, sans risque, en Paper Trading, avant d'engager du capital. Sur le dimensionnement, attention à ne pas confondre : le backtest applique sa propre taille de position fixe, tandis que le Calculateur de Kelly exécute la vraie formule de Kelly, edge / (1 − prix), à un quart de Kelly par défaut et avec un plafond à 25 % du bankroll. Les deux ne coïncideront pas, et c'est le chiffre de Kelly qui doit servir au dimensionnement. Et quand vous serez prêt à automatiser un edge éprouvé, la bibliothèque Stratégies de bot vous permet de câbler exactement ces règles dans un bot qui tourne en continu.

Documents connexes