Un rapport de backtest MT5 est une affirmation portant sur un jeu de trades précis, produit sur un historique de prix précis. Presque toutes les mauvaises lectures viennent du fait qu’on laisse tomber une moitié de cette phrase. Le facteur de profit affiché est lu comme une propriété de l’expert advisor. C’est une propriété de deux autres choses : la population de trades que le rapport a couverte, et les ticks dont le testeur a été nourri.
Cet article est l’ordre de lecture qui produit une décision. Ce que le rapport a supposé avant d’imprimer quoi que ce soit, quelle métrique répond à quelle question, où chaque chiffre vous ment, et ce que chaque lecture vous dit de changer. La procédure pour produire un rapport est un autre travail — faire un backtest la couvre de bout en bout.
| Conditions du test | |
|---|---|
| Identifiant d’expérience | EXP-REPORT-READING-001 |
| Expérience parente | EXP-BACKTEST-RUNBOOK-001 |
| Source | data/run-manifests/*.json → results, ledger_recomputed, shadow_runs |
| Population | all 23 runs published on mt5depot at the time of derivation |
| Build MT5 | 6090 and 6140 |
| Modèle | Every tick generated from M1 bars (Model 0) and Every tick based on real ticks (Model 4) |
| Compte | 10,000 USD deposit on all 23 runs |
| Dernière vérification | 2026-08-26 |
Chaque chiffre ci-dessous vient d’un backtest, et les 23 exécutions portent toutes un verdict PASS — ce sont celles qui ont franchi le contrôle de publication. Cela en fait un ensemble de survivants : rien ici ne dit à quelle fréquence un backtest passe. Cela dit à quoi ressemble, vu de l’intérieur, un rapport qui passe.
Mise en place : ce que le rapport a supposé avant d’imprimer un chiffre
Le bloc Settings en haut d’un rapport MT5 n’est pas un préambule. C’est la liste des hypothèses dont hérite chaque chiffre en dessous, et six d’entre elles décident si le reste vaut la peine d’être lu. Le nom du courtier et le build figurent dans la ligne de titre du rapport lui-même — le nôtre indiquait Exness-MT5Trial5 (Build 6090).
| Champ de Settings | Ce qu’il fixe réellement | Ce que les nôtres consignent |
|---|---|---|
Symbol: / Period: | Les régimes dont le résultat est un échantillon | 22 exécutions commencent en janvier 2019 ; cairn commence en juin 2021 |
| Model (génération des ticks) | Comment les ticks à l’intérieur de chaque bougie ont été produits | Model 0 (généré à partir des bougies M1) sur 12 exécutions, Model 4 (ticks réels) sur 11 |
Initial Deposit: | Le dénominateur de chaque pourcentage de la page | 10 000 USD sur les 23 |
| Spread | Le coût prélevé sur chaque jambe | Mesuré sur exactement 1 exécution sur 23 — les autres héritent de ce que portait l’historique de prix |
| Commission | Un coût que le testeur n’applique que si vous le réglez | 0 sur les 23 |
Inputs: | Les réglages qui ont produit ceci, en entier | Vérifiés face au rapport sur chaque exécution |
La liste Inputs: est la ligne que les gens sautent, et c’est celle qui rend un rapport reproductible tout court : c’est l’ensemble complet des valeurs qu’il faudrait ressaisir pour retrouver la même page.
Deux de ces lignes méritent un instant. Une ligne de commission à zéro ne veut pas dire que la commission a été ignorée. Cela veut dire qu’aucune n’a été prélevée sur le symbole testé. Ce sont deux affirmations différentes, et seul le relevé d’exécution vous dit laquelle s’applique. Et un spread non mesuré n’est pas un spread nul : dans 22 de nos 23 exécutions, ce champ est vide parce qu’aucun enregistreur ne tournait à côté du test. Chaque jambe a simplement pris le spread que portait l’historique M1. Seul tidewell-slack peut indiquer sa propre moyenne, à 19,14 points.
Un piège de nommage a sa place ici. Le champ que les guides plus anciens appellent qualité de modélisation est imprimé par MT5 sous le nom History Quality:, dans le bloc Results, à côté de Bars:, Ticks: et Symbols:. Chercher « modelling quality » dans un rapport Build 6090 ne trouve rien. Dans nos propres relevés, le chiffre n’est présent que sur 2 des 23 manifestes, parce qu’il n’est conservé que lorsque le rapport source en indiquait un — c’est une propriété de ces relevés, pas une mesure de la fréquence à laquelle MetaTrader l’imprime. En pratique, cela veut dire que vous ne pouvez pas vous en servir comme filtre pour des rapports que vous n’avez pas produits. La source des données tick est la question qui se cache dessous, et celle-là admet toujours une réponse : demandez quel historique l’exécution a utilisé.
Lire le rapport, métrique par métrique
Lisez la page dans cet ordre. Ce n’est délibérément pas l’ordre dans lequel MetaTrader l’imprime, parce que les deux disqualifications les moins coûteuses se trouvent en bas du rapport.
- Lisez
Settingsen premier. Le modèle, l’Initial Deposit:, le spread et la commission. Chaque pourcentage en dessous en hérite, et une exécution au spread non mesuré n’est pas une exécution sans spread. - Lisez
Total Trades:avant tout ratio. Un ratio et sa taille d’échantillon sont un seul fait, pas deux. Notez le nombre à côté du ratio. - Demandez quels trades le chiffre affiché couvre. Si un relevé de trades est publié à côté, vérifiez que son total correspond à
Total Trades:. L’un de nos 23 rapports ne correspond pas. - Lisez
Equity Drawdown Maximal:, pas la ligne du solde, et notez si vous avez pris le chiffreMaximalou leRelative— ce sont deux lignes distinctes. - Trouvez l’historique de prix. Quel courtier, quelle source, quelle période. C’est le champ qui a déplacé un verdict dans nos relevés ; le modèle de ticks, non.
Voici toute la lecture en un tableau, avec les libellés que le rapport imprime réellement. La colonne « dans notre ensemble » indique ce que chaque métrique a donné sur 23 exécutions publiées. Cela vaut mieux qu’une fourchette de manuel, parce que c’est mesuré sur le même genre de rapport que celui que vous tenez.
| Libellé du rapport | La question à laquelle il répond | Dans notre ensemble | Signal d’alerte |
|---|---|---|---|
Total Trades: | La quantité de preuves disponibles | 108 à 4 725 par exécution | En dessous d’environ 100 ; un ratio sur 20 trades est une rumeur |
Profit Factor: | Profit brut divisé par perte brute (facteur de profit) | 1,22 à 1,59 sur les 23 | Au-dessus d’environ 2,0 sur une fenêtre courte ; vérifiez d’abord Total Trades: |
Profit Trades (% of total): | Le taux de réussite — la forme de la distribution, pas son signe | 30,80 % à 82,27 %, toutes rentables | Cité seul, sans facteur de profit à côté |
Total Net Profit: | La devise gagnée, avant tout contexte | 386,05 à 28 687,43 USD sur le même dépôt de 10 000 USD | Cité sans l’Initial Deposit: ni le nombre d’années |
Balance Drawdown Maximal: | Le pire creux en trades clôturés (drawdown maximal) | 0,67 % à 18,24 % | Cité alors qu’une ligne de capital figure sur la même page |
Equity Drawdown Maximal: | Le pire creux, positions ouvertes comprises | Plus profond que le solde sur 23 exécutions sur 23 | Ignoré — c’est le chiffre dont dépend votre marge |
Expected Payoff: | Le résultat moyen par trade, en devise | Non conservé dans nos manifestes | Lu comme une prévision plutôt que comme une moyenne |
Recovery Factor: / Sharpe Ratio: | Le rendement par unité de douleur, de deux façons | Non conservé dans nos manifestes | Comparé entre des rapports aux nombres de trades différents |
History Quality: | Si le flux de ticks peut résoudre votre stop | Indiqué sur 2 des 23 | Absent et source des données inconnue |
Deux conventions de ce bloc piègent les lecteurs avant même que l’interprétation commence.
Total Trades: et Total Deals: sont deux comptes différents. Dans MetaTrader 5, un aller-retour vaut deux deals — une entrée, une sortie — de sorte qu’un rapport affichant Total Trades: 50 affiche Total Deals: 100 à côté, et les clôtures partielles ajoutent des deals sans ajouter de trades. Lisez les ratios face aux trades, jamais face aux deals.
Il y a six lignes de drawdown, pas une. Le rapport imprime Absolute, Maximal et Relative pour le solde comme pour le capital. Pire, le montant et le pourcentage échangent leurs places entre deux d’entre elles : Balance Drawdown Maximal: 36.84 (0.37%) met la devise en premier, et Balance Drawdown Relative: 0.37% (36.84) met le pourcentage en premier. Deux rapports peuvent citer « 0.37% » et « 36.84 » depuis des lignes voisines et désigner le même événement — ou deux événements différents.
Le reste du bloc Results — Z-Score:, AHPR:, GHPR:, LR Correlation:, LR Standard Error:, Margin Level: et les corrélations MFE/MAE — décrit la forme de la courbe de capital plutôt que sa taille. Rien de tout cela ne sauve un rapport dont le nombre de trades est trop petit, et rien de tout cela ne survit à un changement d’historique de prix mieux que ne le fait le facteur de profit. Lisez-le après les cinq étapes ci-dessus, ou pas du tout.
Deux des lignes de métriques font l’essentiel des dégâts en pratique : lisez-les ensemble plutôt qu’à la suite.
Le profit net a besoin de son dénominateur et de son calendrier. Nos 23 exécutions partent toutes des mêmes 10 000 USD, ce qui les rend exceptionnellement comparables. Elles s’étalent malgré tout de 0,51 % à 57,38 % par an. Le bas de la fourchette est instructif. orrery affiche un facteur de profit de 1,46 avec un drawdown maximal de 0,67 % — le plus beau couple de chiffres du catalogue. Il a gagné 386,05 USD en 7,58 ans. Rien dans ce rapport n’est malhonnête. Il répond simplement à une autre question que celle que la plupart des lecteurs croient poser.
Le taux de réussite et le facteur de profit sont ici presque indépendants. Sur les 23 exécutions publiées, la corrélation entre les deux vaut 0,37. L’essentiel de ce qui décide si un EA gagne de l’argent est donc invisible depuis la ligne du taux de réussite. nautical gagne 30,80 % de ses trades et rend un facteur de profit de 1,22 ; gyre gagne 82,27 % et rend 1,59. Les deux sont rentables, et 51 points séparent leurs taux de réussite.
Le facteur de profit que votre rapport ne vous montre pas
C’est la partie qu’aucun rapport ne vous montre, et c’est pourquoi nous avons pu écrire cet article à partir de nos propres données. Chaque exécution publiée conserve son relevé complet de trades clôturés, de sorte que chaque rapport se coupe en deux. Il y a la tranche sur laquelle l’EA a été sélectionné — la fenêtre de développement face à laquelle la publication a été contrôlée. Puis il y a les trades survenus après sa mise en ligne, sur lesquels rien n’a été sélectionné. Vingt de nos 23 exécutions publient les deux tranches ; les trois autres ne publient aucune tranche post-publication.
| EA | Tranche de calage | Tranche post-publication | Chiffre affiché |
|---|---|---|---|
orrery | 1,28 (195 trades) | 6,43 (15 trades) | 1,46 (210 trades) |
windrose | 1,31 (101 trades) | 3,58 (7 trades) | 1,38 (108 trades) |
cairn | 1,48 (4 583 trades) | 1,64 (142 trades) | 1,48 (4 725 trades) |
gyre | 1,55 (136 trades) | — (5 trades, aucun perdant) | 1,59 (141 trades) |
tessera | 1,28 (624 trades) | 0,88 (21 trades) | 1,27 (645 trades) |
zerqon | 1,53 (232 trades) | 0,72 (21 trades) | 1,43 (253 trades) |
Lisez ensemble la première et la dernière colonne de la ligne orrery. Le chiffre affiché dit 1,46 ; la période sur laquelle l’EA a réellement été choisi dit 1,28 ; la différence tient dans 15 trades — 7 % du relevé — tournant à un facteur de profit de 6,43. Lisez la ligne zerqon de la même façon et elle va dans l’autre sens : 1,53 sur la tranche de calage, 0,72 sur les 21 trades survenus depuis, et un chiffre affiché de 1,43 qui masque les deux.
Sur les 20 exécutions qui publient les deux tranches, le chiffre affiché est meilleur que celui de la tranche de calage dans 14 cas et moins bon dans 6. Les trois autres sont écartées à dessein : n’ayant qu’une seule tranche, leur chiffre affiché et leur chiffre de calage couvrent exactement les mêmes trades, si bien que l’écart entre les deux n’est pas du tout un effet de population — c’est l’arrondi à deux décimales du rapport lui-même, face au relevé recalculé. almanac imprime 1.52 là où le relevé recalcule 1,5153. Appliquez ce même seuil d’arrondi aux 20 et 13 d’entre elles montrent encore un écart que l’arrondi ne peut pas expliquer, dont 8 dans le sens flatteur.
Cette asymétrie n’est pas un scandale. Un chiffre affiché qui recouvre deux périodes est tiré vers celle des deux qui a eu le plus de chance. Il reste qu’il n’est jamais le chiffre à comparer à une affirmation sur le comportement futur.
Pièges : comment ces chiffres induisent en erreur
Le mode de défaillance qui sous-tend ces cinq points est le même : un rapport est la mesure d’une population, et chaque métrique de la page hérite en silence de la population sur laquelle le testeur a été pointé.
L’améliorer : ce que chaque lecture vous dit de changer
Un changement par itération, et relisez les trois mêmes chiffres à chaque fois : le nombre de trades, le facteur de profit et le drawdown du capital. L’ordre ci-dessous va du moins coûteux au plus coûteux — les vérifications bon marché d’abord, parce que deux d’entre elles mettent régulièrement fin à l’enquête.
- Si le nombre de trades est petit, allongez la période — ne touchez pas aux paramètres. Un facteur de profit bâti sur moins d’une centaine de trades bouge davantage sous l’effet d’une fenêtre plus longue que sous celui de n’importe quel réglage que vous pourriez ajuster. Notre plus petite exécution publiée compte 108 trades, et c’est celle dont nous citons les ratios avec le plus de précautions.
- Si le chiffre affiché et la tranche de calage divergent, relisez uniquement sur la tranche de calage. C’est le chiffre face auquel les réglages ont été choisis. C’est celui à comparer à tout autre candidat.
- Si le drawdown du capital dépasse nettement celui du solde, dimensionnez sur le chiffre du capital. L’écart vous dit combien de positions l’EA porte dans le même mouvement. L’exécution chrysalis l’énonce sans détour : jusqu’à sept à la fois.
- Si le rapport vient des données de quelqu’un d’autre, relancez-le sur une seconde source avant toute autre chose. C’est la vérification dont l’effet mesuré est le plus grand de tout notre ensemble, et c’est la dernière que les gens font.
Ce qui a réellement déplacé les chiffres : la source des données, pas le modèle de ticks
L’un de nos EA a été relancé délibérément pour séparer ces deux variables, et le relevé d’exécution indique pour chaque exécution fantôme ce qu’elle isole.
Exécution tidewell-slack | Ce qui a changé | Trades | Facteur de profit | Drawdown max | Qualité d’historique | Verdict |
|---|---|---|---|---|---|---|
| Publiée | Historique M1 Exness, Model 0 | 303 | 1,35 | 9,92 % | 99 % | PASS |
| Fantôme — isole la source des données | Historique Dukascopy, Model 0 | 351 | 1,13 | 18,18 % | 99 % | FAIL |
| Fantôme — isole les ticks réels | Historique Dukascopy, Model 4 | 345 | 1,11 | 18,20 % | 100 % | FAIL |
Lisez ce tableau comme deux expériences distinctes. Ne changer que l’historique de prix — de la première à la deuxième ligne, à modèle de ticks identique — a fait passer le facteur de profit de 1,35 à 1,13, presque doublé le drawdown et retourné le verdict du succès à l’échec. Ne changer que le modèle de ticks sur ce nouvel historique — de la deuxième à la troisième ligne — a déplacé le facteur de profit de 0,02 et le drawdown de 0,02 point. Et la qualité d’historique affiche 99 % et 100 % sur les deux exécutions qui ont échoué : le champ sur lequel la plupart des gens filtrent était donc excellent d’un bout à l’autre.
Un second EA pointe dans la même direction sous un autre angle. kestrel-hover est publié sur ticks réels Dukascopy à un facteur de profit de 1,33 avec un drawdown de 7,11 %, et son exécution fantôme sur historique M1 Exness en Model 0 affiche 1,30 et 6,76 % — la source et le modèle ont changé en même temps, et le résultat n’a presque pas bougé. La stabilité d’une source de données à l’autre est possible. Elle n’est simplement pas quelque chose qu’un rapport isolé puisse démontrer.
La règle pratique : un rapport n’est une preuve transportable que dans la mesure où son historique de prix l’est. Relancer sur une seconde source coûte une soirée. Dans nos relevés, c’est la seule vérification de cet article qui ait jamais changé une décision.
Prochaines étapes : du rapport à la décision
Bien lire un rapport est la deuxième étape sur quatre. La séquence est backtest → lecture → analyse walk-forward → démo, et chacune retire une façon différente de se tromper. Un rapport qui survit aux quatre a mérité une petite position ; celui qui survit aux deux premières a mérité un test de plus.
- Entraînez-vous sur des relevés complets. Chaque fiche du catalogue d’EA publiés porte sa liste complète de trades clôturés et son manifeste d’exécution, de sorte que vous pouvez recalculer vous-même un chiffre affiché et voir exactement quels trades l’ont produit. C’est le seul exercice qui fait tenir la lecture.
- Si un chiffre vous renvoie à la stratégie plutôt qu’au test, c’est dans le Builder que la règle elle-même change. Chercher parmi des réglages est encore un autre travail, couvert par l’optimisation des paramètres.
- Avant de dimensionner quoi que ce soit sur un chiffre de drawdown que vous venez de lire, la gestion du risque pour les traders sur EA le transforme en un dépôt et une taille de lot.
- La façon dont nous produisons, notons et consignons tout cela est exposée dans notre méthodologie de test.
Les résultats passés dans un testeur ne sont pas une prévision, et aucune des exécutions ci-dessus n’est une promesse sur les 12 prochains mois. L’intérêt de bien lire un rapport est plus modeste et plus utile qu’une prédiction. Il vous dit ce qui a été démontré, et ce qui a seulement été imprimé.