Backtesting8 min de lecture

Comment backtester des stratégies Polymarket sur l'order book

DepthFeed Research

Équipe des données des marchés de prédiction

Guides

Un dernier prix échantillonné une fois par heure ne vous dira jamais si votre ordre aurait été exécuté. Voici comment backtester Polymarket contre le book qu'il aurait réellement traversé.

Pour backtester une stratégie Polymarket, rejouez ses carnets d'ordres d'achat/vente complets enregistrés et dimensionnez les remplissages hypothétiques par rapport à la liquidité observée. Inspectez les horodatages, la cadence de stockage et les lacunes ; l'archive ne peut pas établir le carnet d'ordres exact entre les observations. Un dernier prix ou un prix moyen unique omet également le spread et la profondeur qu'une véritable transaction rencontrerait.

Pourquoi les backtests sur dernier prix mentent

La plupart des données Polymarket disponibles gratuitement se résument au dernier prix traité, souvent échantillonné une fois par heure. C'est suffisant pour tracer un graphique, et rien de plus. Un backtest doit répondre à une question plus difficile : si mon ordre avait été en attente (ou avait traversé le spread) à cet instant, aurait-il été exécuté, dans quelle taille, et à quel prix ?

Y répondre exige l'order book — chaque bid et chaque ask en attente avec sa taille — et non un chiffre unique. Une stratégie backtestée contre le mid suppose qu'elle a toujours été exécutée au mid avec un slippage nul, ce qui n'est jamais le cas. Sur les marchés crypto à très court terme, où les spreads s'élargissent à l'approche du règlement, cette hypothèse peut transformer une stratégie perdante en gagnante apparente.

Étape 1 — Récupérer des données d'order book full-depth

Commencez par des carnets d'ordres complets enregistrés des deux côtés. DepthFeed ingère les mises à jour Polymarket CLOB, mais les observations enregistrées suivent la cadence de capture documentée et peuvent présenter des lacunes. Inspectez les horodatages disponibles pour votre marché plutôt que de supposer que chaque événement en amont a été conservé.

Récupérez les marchés voulus via l'API REST : découvrez-les avec GET /v3/{coin}/markets, puis tirez la profondeur depuis /v3/{coin}/markets/{id}/snapshots. Chaque snapshot porte les tableaux de prix et de tailles bid/ask, ainsi que les timestamps d'exchange et de réception en epoch-millis.

Étape 2 — Reconstruire le book à chaque instant

Rejouez les observations enregistrées dans l'ordre des horodatages. Chacune décrit le carnet d'ordres enregistré à cette observation, y compris la meilleure offre, la meilleure demande, la profondeur et le spread. N'inférez pas un état exact du carnet d'ordres ou des remplissages garantis entre les observations ; rendez explicites dans le backtest toute hypothèse d'interpolation ou de persistance.

Étape 3 — Modéliser les fills contre la profondeur réelle

Simulez maintenant l'exécution honnêtement. Un ordre marketable parcourt le book : il se remplit d'abord contre le meilleur niveau, puis le suivant, jusqu'à épuiser sa taille — son prix moyen est donc pire que le touch dès qu'il consomme plus que le niveau supérieur. Un ordre en attente rejoint la file et n'est exécuté que si le marché traverse son prix avec suffisamment de taille derrière.

Dimensionner les fills contre l'échelle enregistrée est tout l'enjeu : cela vous donne un slippage et une probabilité de fill réalistes au lieu de la fiction selon laquelle vous auriez toujours traité au mid.

Étape 4 — Joindre le prix du sous-jacent

Les marchés crypto up/down de Polymarket sont pilotés par le mouvement spot de l'actif sous-jacent. Chaque snapshot DepthFeed est joint à un prix de référence Binance haute fréquence via le timestamp en epoch-millis, ce qui vous permet d'aligner l'état du book sur le mouvement spot qui a repricé le contrat — indispensable pour toute stratégie qui trade la relation entre le prix crypto et la probabilité implicite du marché.

Étape 5 — Valider l'adaptateur de données en direct

Les réponses REST historiques et les images WebSocket en direct utilisent des contrats documentés distincts. Validez un adaptateur pour leurs identifiants, horodatages et champs avant de les introduire tous deux dans une logique de stratégie partagée. Backtestez sur des observations enregistrées, puis testez en avant l'adaptateur en direct avec du paper trading.

Pièges courants

  • Utiliser des données de dernier prix : masque le spread et le slippage ; gonfle les rendements backtestés.
  • Snapshots à intervalle fixe : un échantillon horaire ou par minute manque l'essentiel de la vie d'un marché de 5 minutes.
  • Ignorer la position dans la file : supposer que les ordres en attente sont toujours exécutés surestime les stratégies passives.
  • Look-ahead bias : ne réagissez qu'aux données dont le timestamp de réception est antérieur ou égal à l'instant de votre décision.
  • Négliger le sous-jacent : l'edge crypto up/down réside généralement dans la relation spot-vers-probabilité.

À retenir

  • 01Backtestez contre l'order book, pas contre le dernier prix — c'est la profondeur qui détermine les fills.
  • 02Utilisez des données event-driven : les échantillons à intervalle fixe manquent la vie des marchés à court terme.
  • 03Modélisez les ordres marketable qui parcourent le book et les ordres en attente qui patientent dans la file.
  • 04Joignez le prix crypto sous-jacent pour capturer la relation spot-vers-probabilité.
  • 05Choisissez des données dont l'historique et le flux live partagent un seul format, pour trader le code que vous avez backtesté.

Un dernier prix échantillonné une fois par heure ne vous dira jamais si votre ordre aurait été exécuté. Voici comment backtester Polymarket contre le book qu'il aurait réellement traversé.

Commencer gratuitement

Vos questions, nos réponses.

Seulement en partie. L'API publique de Polymarket expose les marchés actuels, les trades et un endpoint d'historique des prix, mais elle ne sert pas de snapshots historiques de l'order book — vous ne pouvez donc pas rejouer le book en attente qu'une stratégie aurait traversé. Cette profondeur historique est précisément la lacune que comblent les données d'order book tierces.

Commencez à backtester Polymarket sur de la profondeur réelle.

Gratuit pour démarrer, sans carte. Passez à l'offre supérieure quand votre stratégie est prête pour le carnet complet.

Commencer gratuitement