Les termes utilisés par les vendeurs de stratégies, définis en termes simples — et ce que nous avons réellement constaté lorsque nous les avons testés pour chacun d’entre eux sur plus de 1 000 stratégies et plus de 1 700 indicateurs. Pas de jargon pour le plaisir. Chaque terme renvoie aux résultats qui le sous-tendent, lorsque nous en avons.
Comment une stratégie échoue à notre audit
Pas d’avantage réel (pas d’avantage brut)
Une stratégie présente un avantage lorsque ses règles surpassent une entrée aléatoire (comme un tirage au sort) sur les mêmes barres, avant même que le moindre centime de coût ne soit déduit. L’absence d’avantage brut signifie que le signal n’a jamais rien prédit. Les entrées n’étaient que du bruit déguisé en logique. C’est la raison la plus courante pour laquelle nous rejetons une stratégie, et c’est la conclusion à laquelle les gens s’attendent le moins. Près de la moitié de tout ce que nous écartons échoue à ce stade précis, avant même que le slippage, le spread ou les commissions n’entrent en ligne de compte. On entend souvent dire que ce sont les coûts qui tuent les stratégies. Or, la plupart du temps, elles n’en ont même pas l’occasion. La plupart des systèmes rejetés n’ont jamais vu le jour. Lorsque l’on ramène la courbe de capital à la simple question de savoir si la règle a réellement prédit le mouvement suivant, la réponse est généralement non.
La stratégie a généré des profits parce que le marché a progressé alors qu’elle se trouvait par hasard en position longue. C’est du bêta, une exposition au marché, déguisée en compétence. Une stratégie « acheter et conserver » aurait donné des résultats équivalents, voire meilleurs, avec moins de règles à enfreindre. Ce phénomène apparaît constamment dans les systèmes « long-only » backtestés sur une décennie haussière. Dans notre audit, le « trend-beta » est la deuxième raison la plus fréquente pour laquelle nous rejetons une stratégie, juste derrière l’absence totale d’avantage concurrentiel. Le test est sans appel : il suffit de comparer le système à une simple détention de l’instrument sur la même période. Si une position passive suit la courbe, les règles n’ont rien apporté. Un marché haussier flatte presque toutes les stratégies longues. Notre travail consiste à éliminer cette dérive et à voir ce qu’il reste, le cas échéant.
La quasi-totalité des bénéfices provient d’un nombre infime de jours exceptionnels. Si l’on élimine la poignée de meilleurs jours, la courbe s’aplatit ou devient négative. La stratégie ne disposait pas d’un avantage durable ; elle a simplement remporté quelques jackpots et a ensuite surfé sur la vague. Nous testons cela en supprimant la tranche supérieure des jours gagnants et en relançant le test. Un véritable avantage survit à la perte de ses 10 % les plus performants. Ce n’est pas le cas d’un billet de loterie. Les bénéfices concentrés en queue de distribution constituent notre troisième motif de rejet le plus courant, et c’est le plus séduisant, car le rendement affiché semble spectaculaire. Le problème, c’est qu’on ne peut pas planifier ces jours-là, et qu’en réalité, on rate généralement les plus gros gains à cause d’un écart, d’une interruption ou d’une mauvaise exécution. Une courbe reposant sur cinq bougies vertes n’est pas un système.
La stratégie présentait un véritable avantage sur le papier, puis les spreads, les commissions et les dérapages réels l’ont entièrement anéanti. Positif en brut, négatif en net. C’est l’échec que tout le monde s’attend à voir comme le plus grave. Ce n’est pas le cas. Le coût fatal n’est que notre quatrième motif de rejet le plus courant. L’idée largement répandue, selon laquelle les coûts de trading tuent discrètement les bons systèmes, est réelle mais exagérée. Bien plus de stratégies n’avaient tout simplement aucun avantage à perdre dès le départ. Lorsque les coûts sont fatals, c’est généralement une question de timeframe : plus la barre est courte, plus le spread a de l’importance. Les stratégies de change sur des durées inférieures à 15 minutes échouent ici de manière si systématique que nous ne testons plus les stratégies de change ou de CFD sur des graphiques inférieurs à 30 minutes. Un système peut avoir raison sur la direction et pourtant perdre chaque mois à cause de ses propres coûts de transaction.
Il suffit d’ajuster suffisamment de paramètres pour que n’importe quelle stratégie s’adapte parfaitement à l’historique, y compris au bruit aléatoire qui ne se reproduira pas. C’est ce qu’on appelle l’ajustement à la courbe : un système optimisé pour un passé qui n’existe plus. Il semble irréprochable sur l’échantillon, mais s’effondre face à des données qu’il n’a jamais vues. Le signe révélateur, c’est la fragilité. Il suffit de modifier un seul paramètre pour que la belle courbe s’effondre. Le système a mémorisé l’historique ; il n’a pas appris de règle. Nous nous en prémunissons en effectuant des tests hors échantillon, sur des années et des instruments que l’optimiseur n’a jamais pris en compte. Le surajustement pur représente une part plus faible que ce que l’on pourrait croire, car la plupart des systèmes surajustés sont d’abord éliminés lors de nos vérifications préliminaires : ils ne disposent d’aucun avantage réel dès le départ, mais ne sont qu’un mirage bien ajusté. Une stratégie comportant quatorze paramètres ajustés n’a pas trouvé d’avantage. Elle ne fait que mémoriser.
Le backtest utilise des informations qui n’existaient pas encore au moment de la transaction. Un signal calculé à la clôture de la journée mais sur lequel on agit dès l’ouverture. Un indicateur « repainting » qui révise discrètement les barres passées. Il en résulte une courbe qui n’aurait jamais pu être négociée. Le biais d’anticipation est le bug le plus dangereux du backtest, car il produit la simulation la plus convaincante. Dans notre processus, chaque stratégie qui passe le test des chiffres subit un deuxième examen au cours duquel notre modèle le plus performant recherche de manière antagoniste précisément cela : un cours qui a été dévoilé, une valeur qui a fuité du futur. Cela représente une part plus réduite de nos rejets que les cas « no-edge », mais une part plus coûteuse, car ce sont ces systèmes qui semblent les plus prometteurs jusqu’au moment où vous les négociez et où ils s’effondrent.
Mélangez les données, randomisez l’ordre des transactions ou brouillez le signal, puis vérifiez si l’avantage persiste. Si une stratégie obtient des résultats aussi bons sur du bruit que sur la série réelle, ses résultats étaient dus au hasard. Il s’agit du contrôle placebo que la plupart des backtests publiés omettent complètement. Nous l’appliquons à tout. Une part non négligeable de systèmes qui semblaient rentables s’effondrent dès que leur timing est randomisé, car le schéma résidait dans l’ajustement, et non dans le marché. Le test de permutation n’a rien de glamour et fait disparaître beaucoup de jolies courbes, ce qui explique précisément pourquoi il a sa place dans le processus. Si votre stratégie ne parvient pas à battre une version aléatoire d’elle-même, c’est que vous avez découvert une coïncidence et que vous l’avez qualifiée de système. Peu coûteux à mettre en œuvre, mais dont l’échec est brutal.
Hypothèse d’exécution intra-barre / barre par barre
Lorsqu’une barre couvre une fourchette de cours, le backtester doit déterminer l’ordre dans lequel le plus haut, le plus bas, le cours d’ouverture et le cours de clôture se sont produits à l’intérieur de celle-ci. Si cet ordre est erroné, un stop suiveur ou une sortie intrabarre est exécuté à un cours qui n’aurait jamais été déclenché dans cette séquence. C’est là que de nombreux systèmes à stop suiveur trichent discrètement. L’hypothèse naïve «barre par barre» leur offre des sorties qu’ils n’auraient pas pu capturer en temps réel. Nous avons mesuré l’écart : les exécutions «barre par barre» surestiment les stratégies de stop suiveur de 42 à 84 % par rapport à un modèle intrabar réaliste. Ce n’est pas une erreur d’arrondi. Pour toute une catégorie de systèmes, cette surestimation constitue l’essence même du produit vendu. L’avantage réside dans une hypothèse concernant l’intérieur d’une bougie, et il ne résiste pas au contact avec les ticks réels.
Doublez votre position après chaque perte afin que le prochain gain récupère tout, puis recommencez. Sur le papier, le compte ne fait que grimper, car vous refusez de comptabiliser une perte. En réalité, chaque série de pertes fait croître la position de manière géométrique jusqu’à ce qu’une seule série vide le compte. La Martingale est le moteur qui sous-tend la plupart des bots de type « grid » et DCA, qu’ils utilisent ou non ce terme. C’est pourquoi ils affichent des taux de réussite quasi parfaits avant de s’effondrer face à une seule tendance. Nous avons testé 76 systèmes de type « grid », DCA et Martingale sur les contrats à terme, le Forex et les cryptomonnaies. Tous ont échoué, soit un taux de rejet de 100 %, la seule catégorie de l’ensemble de l’audit à afficher ce résultat. Le problème n’est pas d’ordre mathématique et ne peut pas être résolu par un ajustement de la grille. Il réside dans la conception même du système.
Un système « grid » place une série d’ordres d’achat et de vente à intervalles fixes, dans le but de tirer profit des fluctuations latérales du marché. Dans une phase de consolidation, il génère de petits gains réguliers et semble imparable. Puis le marché s’engage dans une tendance, le côté perdant de la série s’accumule, et la perte ouverte engloutit tous les bénéfices que le système « grid » a jamais enregistrés. Nous avons testé 76 systèmes de trading en grille et de DCA sur des cours acheteur/vendeur réels, dans trois classes d’actifs. Tous ont échoué, à 100 %, sans aucun survivant : c’est le résultat le plus frappant de cet audit. L’échec n’est pas dû à de mauvais paramètres. Il est structurel : une grille est « short » sur la volatilité et « long » sur l’espoir, et tôt ou tard, la volatilité fait payer la note. La courbe de capital bien ordonnée est réelle jusqu’au jour où elle ne l’est plus.
DCA (dollar-cost averaging, au sens des robots de trading)
En investissement, la moyenne des coûts en dollars consiste à acheter un montant fixe selon un calendrier, une habitude sensée mais ennuyeuse. Dans le monde des robots de trading, le terme a été détourné. Ici, le DCA signifie « lisser la perte » sur une position déjà déficitaire, en achetant davantage à mesure qu’elle baisse pour abaisser son prix d’entrée. C’est la martingale sous un nom respectable. Le robot affiche un taux de réussite élevé car il conserve la position et en ajoute jusqu’à ce que le cours finisse par remonter, clôturant dans le vert tandis que la perte initiale gonfle discrètement en arrière-plan. Nous les avons testés parallèlement à des stratégies de « grilles » : 76 systèmes, tous ont échoué une fois les coûts réels pris en compte. L’achat pour faire baisser la moyenne d’une position perdante fonctionne tant que celle-ci continue de baisser, et le marché n’est pas tenu de rebondir pour compenser votre prix moyen. La stratégie qui gagne toujours est généralement celle qui cache ses pertes dans des positions qu’elle ne clôturera pas.
Le taux de réussite correspond à la proportion de transactions clôturées en hausse. C’est la première statistique que tout vendeur de stratégie cite, et la plus trompeuse qu’il puisse choisir. Un système peut gagner 95 % du temps et rester pourtant un perdant assuré, si les rares pertes sont suffisamment importantes pour engloutir tous les petits gains. C’est là tout le piège des stratégies de martingale et de grid : en lissant ses pertes et en refusant de clôturer dans le rouge, un bot affiche un taux de réussite spectaculaire tandis qu’une seule mauvaise tendance anéantit le compte. Un taux de réussite élevé est un choix de conception, pas un avantage. Ce qui nous intéresse, c’est le rapport entre les gains des positions gagnantes et le coût des positions perdantes, sur toute la durée du drawdown, et non le pourcentage de transactions positives. Demandez à n’importe quel bot vantant un taux de réussite de 99 % quelle est sa pire perte isolée.
Le drawdown correspond à la chute entre un pic de capital et le creux suivant ; il s’agit de la profondeur de la perte subie avant d’atteindre un nouveau sommet, mesurée en pourcentage ou en devise. C’est le chiffre qui vous indique si vous auriez réellement pu conserver le système sans qu’il ne s’effondre ni que vous ne deviez vous retirer. Le drawdown sur les transactions clôturées est honnête. C’est dans le drawdown sur les positions ouvertes que les bots « grid » et DCA cachent la vérité. Comme ils refusent de clôturer une position perdante, leur capital comptable semble stable tandis que la perte réelle, non réalisée, gonfle dans les positions encore ouvertes dans le registre. Le compte peut afficher une baisse catastrophique alors que l’historique des transactions montre une série ininterrompue de gains. Nous mesurons le drawdown des positions ouvertes, et non la courbe flatteuse des positions clôturées. Un taux de réussite proche de 100 % et un drawdown susceptible de vider le compte correspondent à la même stratégie décrite de deux manières différentes.
Le slippage est l’écart entre le prix que vous attendiez et celui que vous avez réellement obtenu. Les marchés évoluent entre le moment où vous prenez votre décision et celui où votre ordre est exécuté, et cette différence se déduit de votre compte, transaction après transaction. La plupart des backtests partent du principe que votre ordre est exécuté exactement au prix du signal, un cadeau qu’aucun courtier réel ne vous offre. Modélisez-le honnêtement, et les systèmes à faible volume, rapides ou à horizon court perdent une partie de leur avantage qu’ils n’avaient de toute façon pas à gaspiller. Le slippage est l’un des trois coûts, avec le spread et la commission, à l’origine de nos rejets fatals en termes de coûts : les systèmes qui étaient positifs en brut mais négatifs en net. Son impact est le plus fort lorsque les transactions sont fréquentes et que leur volume est important par rapport à ce qui figure dans le carnet d’ordres. Une exécution que vous avez supposée gratuite est un chiffre que vous avez emprunté à une courbe qui ne vous le remboursera pas en conditions réelles.
L’écart correspond à la différence entre le meilleur cours acheteur et le meilleur cours vendeur. Vous achetez au prix le plus élevé et vendez au prix le plus bas ; la différence constitue un coût que vous payez à chaque aller-retour, que vous soyez gagnant ou perdant. Cela semble insignifiant jusqu’à ce que vous le franchissiez des milliers de fois. Nous le modélisons à partir de données de ticks réelles avec des cotations acheteur/vendeur effectives, et non à partir d’une hypothèse forfaitaire appliquée aux cours de clôture. Plus la période est courte, plus son impact est important. Le trading de devises sur des durées inférieures à 15 minutes est presque entièrement annulé par l’écart : l’avantage est réel, mais inférieur au coût nécessaire pour l’exploiter. C’est pourquoi nous avons cessé de tester les stratégies de devises et de CFD sur des graphiques inférieurs à 30 minutes. Un backtest effectué sur le cours moyen supprime discrètement ce coût. Ce n’est pas le cas sur les comptes réels.
Les données au tick correspondent à chaque cotation et transaction individuelles, avec les cours acheteur et vendeur réels à chaque instant, et non à un prix unique échantillonné une fois par barre. C’est la matière première dont la modélisation honnête des coûts a réellement besoin. Si vous effectuez un backtest sur des cours de clôture de bougies « bien nets », vous ne verrez jamais le spread que vous paieriez réellement ni l’exécution que vous obtiendriez réellement. Pour le Forex, nous utilisons des données au tick avec des cours acheteur/vendeur réels, de sorte que le spread et le slippage sont mesurés, et non estimés. Pour les contrats à terme, nous exploitons 13 ans de données du CME. La différence n’est pas purement théorique. Un système qui s’exécute au cours moyen d’une bougie peut se retrouver en perte dès lors que vous lui imputez le coût réel de chaque entrée et sortie. Des données bon marché donnent des réponses bon marché. Si le modèle de coûts repose sur des estimations, il en va de même pour le verdict sur la stratégie.
Le test « walk-forward » affine une stratégie sur une tranche d’historique, puis la teste sur la tranche suivante qu’elle n’a jamais vue, et fait progresser cette fenêtre dans le temps. L’essai hors échantillon est l’essentiel : si un avantage est réel, il fonctionne sur des données que l’optimiseur n’a pas pu consulter. Si elle ne brille que sur les années pour lesquelles elle a été ajustée, c’est qu’elle a mémorisé du bruit. C’est le test qui distingue une règle authentique d’une coïncidence bien embellie, et c’est celui que la plupart des backtests publiés ignorent car il donne des résultats moins flatteurs. Nous effectuons nos tests sur des années et des instruments non utilisés lors de l’ajustement. Une stratégie qui a besoin de connaître la réponse avant le test n’est pas une prévision. Les véritables avantages sont ennuyeux en ce sens. Ils continuent de fonctionner sur des données auxquelles personne ne les a ajustés.
Contrat à terme continu (ajusté rétrospectivement)
Les contrats à terme expirent ; ainsi, pour effectuer un backtest sur plusieurs années, on relie le contrat arrivant à échéance au suivant afin de former une seule série continue. Si l’on procède sans rigueur, on introduit des écarts fantômes ou des bénéfices à chaque roulement qu’aucun trader n’a jamais réalisés. L’ajustement rétrospectif, qui consiste à décaler les anciennes données pour que la jonction soit lisse, corrige le graphique mais peut rendre les anciens cours négatifs ou fausser les rendements en pourcentage si la méthode est appliquée sans rigueur. C’est un piège silencieux des données : la stratégie semble avoir généré des gains qui n’étaient en réalité qu’un artefact résultant de la manière dont la série a été assemblée. Nous analysons 13 ans de contrats à terme du CME et gérons le roulement de manière rigoureuse, car une mauvaise transition peut créer un avantage à partir de rien. Le contrat sur lequel vous effectuez votre backtest doit correspondre au contrat que vous auriez réellement pu négocier.
Le ratio de Sharpe est le chiffre auquel les traders ont recours pour donner une impression de rigueur : le rendement par unité de risque, exprimé en un seul chiffre clair. C’est également l’un des chiffres les plus faciles à embellir dans le domaine du trading. Le ratio de Sharpe mesure le rendement par unité de risque : on prend le rendement moyen d’une stratégie, on soustrait le taux sans risque, puis on divise le résultat par la volatilité de ces rendements. Une stratégie générant 20 % par an avec des fluctuations brutales peut obtenir un score moins bon qu’une autre rapportant 12 % de manière régulière. Cet indicateur existe précisément pour évaluer cette volatilité.
Les tests multiples expliquent pourquoi un bon backtest est le résultat le moins surprenant d’un audit. Testez suffisamment de stratégies et certaines sembleront rentables par simple hasard ; la question n’est jamais de savoir si vous en avez trouvé une, mais si la barre que vous avez franchie était suffisamment haute pour avoir de l’importance. Testez une seule stratégie et un taux de réussite à peine supérieur à celui d’un tirage au sort peut sembler constituer un avantage. Testez un millier de stratégies et, par simple hasard, plusieurs franchiront cette même barre avec une marge confortable. Aucune d’entre elles n’a mis au jour quoi que ce soit de concret. Il fallait bien que quelqu’un gagne au loto. Les tests multiples (également appelés « data-snooping ») surviennent lorsque ce nombre de tentatives n’est pas pris en compte dans le calcul de la significativité. Le seuil habituel de réussite/échec pour un backtest, une statistique t proche de 2, a été conçu pour tester une seule idée à la fois. Si l’on soumet un millier d’idées à ce même seuil, les faux positifs surpassent en nombre les signaux réels avant même que quiconque ait commencé à les examiner.
Un indicateur qui se redessine vous montre un historique différent de celui qu’il affichait en temps réel. Le signal sur lequel vous avez négocié a généralement déjà évolué au moment où vous le consultez rétrospectivement. Un indicateur qui se redessine vous montre une chose sur le graphique aujourd’hui et autre chose sur la même barre demain, sans qu’aucun code n’ait été modifié entre-temps. La flèche qui signalait un creux parfait à la clôture de mardi peut avoir glissé ou disparu d’ici jeudi, car le calcul sous-jacent n’était pas encore terminé lorsqu’elle est apparue pour la première fois. Ce que vous avez vu en temps réel et ce que l’historique montre aujourd’hui sont deux enregistrements différents de la même bougie.
Le facteur de profit correspond au profit brut divisé par la perte brute ; c’est l’un des chiffres de backtest les plus faciles à gonfler sans modifier la moindre règle de trading. Le facteur de profit correspond au profit brut divisé par la perte brute. Il suffit d’additionner tous les trades gagnants, d’additionner tous les trades perdants, puis de diviser le premier total par le second. Avec Cross 1.0, la stratégie a généré plus de gains que de pertes, du moins sur le papier. C’est un chiffre unique, facile à calculer, facile à afficher sur une page de vente.
Voici les raisons pour lesquelles certaines stratégies se retrouvent sur « The No List » : l’audit complet, chaque stratégie citée, avec son verdict et la raison exacte de son succès ou de son échec.
Avant de partir : obtenez FoxAlgo Data Studio gratuitement — données de marché réelles au tick, auto-agrégées à n'importe quelle unité de temps, prêtes à l'export pour NinjaTrader, MT4/MT5 et CSV.