Trading · Module intermédiaire · Évaluer une méthode

Backtesting Forex : tester une stratégie sans fausser les résultats

Écrire les règles, respecter l’ordre des informations et simuler les coûts. Découvrez comment lire un test historique, repérer ses biais et distinguer un résultat calculé d’une preuve de rentabilité future.

Niveau : intermédiairePar StéphaneLecture : environ 9 min
Loupe examinant une grille sur une plaque de verre, avec un carnet et des blocs menthe sur un bureau bleu nuit.
Une illustration décorative de la vérification des données. Les montants et la courbe présentés dans ce guide sont fictifs.

Cette page complète le module Forex intermédiaire. Pour interpréter les montants simulés, la gestion du risque et le calcul de la taille de position constituent des bases utiles.

01 · Les règles avant les chiffres

Qu’est-ce qu’un backtest Forex ?

Un backtest applique une méthode à des données historiques pour calculer les opérations qu’elle aurait produites dans un modèle donné. Il sert à examiner sa logique et ses résultats simulés. Il ne démontre pas qu’une stratégie est exploitable en réel.

Le test peut être manuel, en avançant un graphique sans afficher sa suite, ou automatisé avec un programme. Dans les deux cas, les règles doivent être suffisamment précises pour qu’une autre personne puisse reproduire les décisions.

Exemple de protocole expérimental

  • Données : EUR/USD horaire, fournisseur et fuseau documentés.
  • Événement : clôture au-dessus du plus haut des 20 barres précédentes, en excluant la barre actuelle de ce seuil.
  • Exécution : achat au premier prix ask disponible après connaissance de la clôture, selon le modèle retenu.
  • Taille : 10 000 unités de base fixes, sans pyramide ni position simultanée sur la même paire.
  • Sorties : stop à 30 pips, objectif à 60 pips ou clôture après 24 barres ; ordre de traitement des événements précisé.

Ces nombres illustrent des règles à tester. Ils ne décrivent pas une stratégie validée. Pour approfondir le critère de cassure, consultez le guide du breakout Forex.

Un protocole doit également préciser les périodes exclues, les annonces éventuelles, les positions encore ouvertes en fin de test et le capital de départ. Une condition vague comme « entrer quand la tendance est forte » ne suffit pas.

02 · Ce que le moteur peut réellement savoir

Données, frais et conditions d’exécution

Notez la source, les dates, les trous de cotation, les doublons et les changements de fuseau. Sur le Forex, deux flux peuvent présenter des prix ou des clôtures différents. La précision apparente d’un rapport ne corrige pas une série incomplète ou mal interprétée.

Ne pas utiliser une information avant sa disponibilité

Si la décision utilise la clôture d’une barre, cette clôture doit être connue avant l’envoi de l’ordre simulé. Entrer rétroactivement au meilleur prix de cette même barre introduit une information future.

Le même problème apparaît avec un sommet repéré grâce aux barres suivantes, une moyenne centrée ou la clôture quotidienne finale consultée alors que la journée n’est pas terminée. Le timestamp d’une donnée et le moment où elle devient exploitable doivent être distingués.

Une barre ne donne pas toujours l’ordre des événements

Les prix d’ouverture, plus haut, plus bas et clôture ne suffisent pas à reconstituer chaque déplacement. Si le stop et l’objectif se trouvent tous deux dans la plage d’une barre, on ne sait pas nécessairement lequel a été touché en premier.

Il faut alors des données plus fines ou une hypothèse prudente et constante. Des ticks générés ne sont pas des ticks effectivement observés ; même une base de ticks réels peut présenter des lacunes. Vérifiez le mode utilisé par le moteur.

Les coûts à modéliser

Spread, commission, glissement, financement de détention et conversion peuvent affecter le résultat. Avec des prix bid/ask d’exécution qui intègrent déjà le spread, l’ajouter une seconde fois le compterait deux fois.

Un achat utilise normalement le prix ask et sa fermeture le bid, selon le produit. Un ordre stop ordinaire ne garantit pas une exécution au seuil. Une simulation qui suppose toujours le prix demandé peut donc embellir les résultats.

Un mode de test rapide peut convenir à une vérification technique préliminaire sans être assez détaillé pour la méthode évaluée. Documentez les paramètres du moteur, les frais et les caractéristiques du contrat.

03 · Garder une évaluation distincte

Éviter le surajustement et les essais oubliés

Le surajustement apparaît lorsqu’une méthode épouse trop étroitement les particularités de données déjà examinées. Choisir la meilleure combinaison parmi des centaines d’essais peut produire un résultat séduisant sans comportement durable.

Un découpage chronologique possible

01 · ConceptionDéfinir

Explorer les règles sur une première période et consigner les variantes.

02 · ValidationComparer

Évaluer les choix sur une période suivante, sans oublier qu’elle sert encore à sélectionner.

03 · Test finalGeler

Examiner une période tenue à l’écart après avoir arrêté les règles.

Schéma de méthode, sans proportion ou durée universelle. Les fenêtres se suivent dans le temps ; des opérations ou informations traversant leurs frontières nécessitent un traitement explicite.

Après consultation du test final, le modifier puis le relancer ne préserve pas son caractère inédit. Gardez la trace des essais, même abandonnés. Une nouvelle version doit être identifiée et son évaluation interprétée en tenant compte de l’historique de recherche.

Le walk-forward n’efface pas tous les biais

Une approche walk-forward réestime éventuellement les paramètres sur une fenêtre passée, puis les applique à la fenêtre suivante. Toute la procédure doit être définie, y compris les dates, les paramètres autorisés et le traitement des positions.

Changer cette procédure après chaque résultat décevant peut à nouveau surajuster la méthode. Si des positions ou cibles se chevauchent entre périodes, évitez de faire circuler une information de l’évaluation vers la sélection.

04 · Un exemple calculé, sans stratégie associée

Lire un rapport de backtesting

Pour expliquer les indicateurs, prenons dix résultats nets fictifs, en USD : +60, −40, +80, −50, −70, +40, +100, −30, −20, +50. Le capital initial est 1 000 USD, sans dépôt ni retrait et sans positions simultanées.

On suppose 4 USD de coûts fixes par opération. Les résultats bruts correspondants sont donc chacun supérieurs de 4 USD. Cet échantillon est construit pour les calculs : il ne constitue pas le backtest d’une méthode ni un nombre suffisant pour conclure.

Résumé des dix opérations inventées
MesureValeurLecture
Résultat brut total+160 USDAvant les 40 USD de coûts supposés
Résultat net total+120 USDSolde final : 1 120 USD
Opérations gagnantes nettes5 sur 10Taux de réussite : 50 %
Moyenne nette observée+12 USD120 ÷ 10 ; pas une espérance future garantie
Profit factor net1,57 environ330 USD de gains ÷ 210 USD de pertes absolues

Le solde peut baisser avant de finir plus haut

Solde après dix opérations fictives, net de fraisAbscisse : opérations clôturées de zéro à dix. Ordonnée : solde en dollars. Départ 1000, sommet après trois opérations 1100, creux après cinq opérations 980, solde final 1120. La courbe n’inclut pas les pertes latentes entre clôtures.980105011200510
Sommet intermédiaire : 1 100 USDCreux suivant : 980 USDRecul : 10,91 %
Courbe calculée après chaque opération clôturée. Les cercles repèrent le sommet après la troisième et le creux après la cinquième. Les pertes latentes entre clôtures ne sont pas représentées.

Drawdown : un recul depuis un sommet

Le recul de 1 100 à 980 USD vaut 120 USD, soit 120 ÷ 1 100 × 100 ≈ 10,91 %. C’est ici le plus grand recul relatif de la série des soldes après clôture, en incluant le capital initial.

Un drawdown calculé sur la valeur du compte avec les positions ouvertes peut être différent et plus important. Précisez la fréquence d’observation, la base et le traitement des dépôts ou retraits avant de comparer deux rapports.

Le taux de réussite ne suffit pas à juger une méthode. Le profit factor dépend aussi de la taille des gains et pertes ; il devient non défini si le dénominateur est nul. Quelques opérations exceptionnelles peuvent influencer fortement ces statistiques.

05 · Chercher ce qui fragilise le résultat

Comment examiner la robustesse d’un test ?

  1. Comparer les paramètres voisins : une seule combinaison brillante entourée de résultats faibles mérite un examen critique.
  2. Modifier les coûts : mesurer ce qui reste après une hypothèse moins favorable de spread ou de glissement.
  3. Séparer les contextes : regarder si les résultats se concentrent sur une seule période ou quelques opérations.
  4. Vérifier des transactions : refaire manuellement des calculs d’entrée, de sortie, de taille et de frais.
  5. Conserver les versions : règles, source des données, dates, paramètres, journal et rapport complet.
  6. Observer ensuite sans modifier : pratiquer une simulation sur des données nouvelles, avec la version identifiée.

Il n’existe pas de nombre magique d’opérations qui transforme un test en preuve. La durée, la diversité des situations et la dépendance entre opérations comptent. Cent opérations très proches dans le temps ne représentent pas nécessairement cent observations indépendantes.

Un journal minimal pour reproduire les résultats

Pour chaque opération : heure du signal, information disponible, prix et heure d’exécution, quantité, sortie, coûts et résultat net. Conservez aussi les événements ignorés et la raison de leur exclusion.

Le rapport final devrait distinguer explicitement période de conception, période d’évaluation, nombre de variantes essayées et limites connues du modèle.

Une démonstration sur des données nouvelles apporte une observation complémentaire. Elle ne reproduit pas toutes les contraintes d’un compte réel, notamment la liquidité, l’exécution et la capacité à respecter une méthode pendant les pertes.

06 · Questions fréquentes

FAQ : backtesting Forex

Peut-on faire un backtest sans programmer ?

Oui, en avançant un graphique sans voir sa suite et en consignant tous les événements selon des règles fixes. Les décisions discrétionnaires et les omissions doivent être documentées pour éviter de ne retenir que les exemples favorables.

Combien d’opérations faut-il tester ?

Aucun seuil universel ne suffit. Il faut examiner la période couverte, les contextes et la dépendance entre les opérations. Un petit échantillon donne des estimations fragiles, même si son résultat est positif.

Un test rentable permet-il de passer en réel ?

Il ne fournit pas cette garantie. Vérifiez d’abord les données, les biais, les coûts et les règles d’exécution. Les contraintes réelles peuvent différer, et les pertes futures rester possibles.

Peut-on optimiser après avoir regardé le test final ?

On peut créer une nouvelle version, mais la période consultée ne redevient pas inédite. Il faut conserver la trace de cette sélection et prévoir une évaluation distincte, sans présenter l’ancien test comme totalement indépendant.

Sources et lectures complémentaires

Les dix résultats et leur courbe sont des exemples pédagogiques créés pour cette page, sans données de marché ni performance de stratégie associée.