Backtest XAUUSD : que faire quand une bougie touche le stop et l’objectif ?

Deux scénarios simulés pour la même bougie XAUUSD selon l’ordre du stop et de l’objectif.

Article d’archive. Texte préparé le 6 novembre 2026, mis en ligne le 7 novembre 2026.

Le moteur d’un backtest doit décider quelle sortie intervient en premier. Lorsque la même bougie XAUUSD dépasse le stop et l’objectif, ce choix peut inverser le résultat d’une opération. Voici un calcul reproductible et une méthode pour isoler l’incertitude.

Ce qu’une bougie permet de savoir

Une bougie OHLC résume une période en quatre valeurs. L’ouverture et la clôture donnent les extrémités temporelles de la période. Le plus haut et le plus bas donnent ses extrêmes de prix. Quand une position est déjà ouverte et que les deux seuils de sortie sont franchis, ce résumé laisse plusieurs trajectoires possibles. Le moteur doit retenir le premier seuil déclenché, car la position est fermée à ce stade dans le modèle de l’exemple.

Identifiez aussi le prix représenté par le graphique. La documentation de MetaTrader 5 indique que, selon le symbole et les données disponibles, les barres peuvent être construites à partir du Bid ou du Last, le dernier prix échangé. Pour une position longue dans le cas ordinaire décrit par MetaQuotes, l’achat se fait à l’Ask et les seuils de sortie sont vérifiés au Bid. Pour une position courte, les seuils de sortie sont vérifiés à l’Ask. Les règles peuvent différer pour certains instruments négociés en bourse. Vérifiez celles du symbole et du courtier utilisés pour le test. [MetaQuotes, données de ticks dans MetaTrader 5 et principes de déclenchement des ordres, consultés le 6 novembre 2026.]

Un calcul reproductible sur une minute

Prenons des données fictives, exprimées en dollars par once. Une position longue d’une once est ouverte avant la bougie, au prix Ask de 2 500,20. Le stop est fixé à 2 498,00 et l’objectif à 2 503,00, tous deux observés au Bid. La bougie Bid ouvre à 2 500,00, affiche un plus haut de 2 503,50 et un plus bas de 2 497,50, puis clôture à 2 500,50. Pour isoler la chronologie, on suppose des trajectoires continues entre les points du tableau et un prix d’exécution égal au seuil. La commission aller-retour de 0,40 USD est elle aussi fictive.

Trajectoire du BidPremière sortieRésultat brutRésultat net
Ouverture → haut → bas → clôtureObjectif à 2 503,00+2,80 USD+2,40 USD
Ouverture → bas → haut → clôtureStop à 2 498,00−2,20 USD−2,60 USD
Deux trajectoires fictives compatibles avec la même bougie Bid.

Pour reproduire le calcul, soustrayez le prix d’entrée du prix de sortie, multipliez par la quantité et retranchez la commission. L’écart entre les deux résultats nets est de 5,00 USD pour une once. L’entrée à l’Ask et la sortie au Bid intègrent déjà l’écart entre les prix acheteur et vendeur. Déduire un spread forfaitaire en plus le compterait deux fois dans cet exemple.

Comment auditer un backtest

  1. Repérez les sorties ambiguës. Pour une position longue déjà ouverte, signalez les bougies dont le plus bas Bid est inférieur ou égal au stop et le plus haut Bid supérieur ou égal à l’objectif. Traitez séparément les ouvertures au-delà d’un seuil. Si la position ou les ordres deviennent actifs en cours de bougie, écartez les cotations antérieures à leur activation et classez le cas comme indéterminé si la chronologie manque.
  2. Relancez le test avec deux conventions explicites. Dans la première, le stop passe en priorité pour les cas ambigus. Dans la seconde, l’objectif passe en priorité. Comparez le nombre de cas concernés, le résultat net et la baisse maximale du capital. Relancez la simulation complète si une sortie modifie la taille de la position suivante ou la possibilité de reprendre une entrée.
  3. Rejouez les cas avec des ticks horodatés. Utilisez si possible l’historique Bid et Ask du courtier pour le même symbole. Vérifiez les trous et l’ordre des cotations qui partagent un horodatage. Pour chaque cas, gardez la première cotation admissible après activation, le niveau déclenché, le prix d’exécution simulé et la règle appliquée. Conservez le statut indéterminé quand l’historique est incomplet.

Les ticks générés par MetaTrader 5 à partir des données d’une minute suivent les règles du testeur. En mode généré, celui-ci utilise un spread fixe au sein de la minute, alors que le spread peut varier avec les ticks réels. Notez le mode du testeur et la version du terminal avec les résultats. Vous pouvez ajouter la source des prix et la règle de sortie au journal de trading Geekkech. [MetaQuotes, ticks réels et générés dans MetaTrader 5.]

Ce que le test mesure et où il s’arrête

Les deux simulations mesurent la sensibilité du résultat à une règle de chronologie. Un écart de cotation, du glissement ou un changement dans la succession des positions peuvent donner un résultat en dehors de l’intervalle observé. Même avec des ticks, le prix auquel un stop se déclenche et le prix auquel l’ordre est exécuté peuvent différer. L’historique de cotations aide à dater le déclenchement. L’exécution reste une hypothèse à modéliser.

Pour une stratégie assistée par apprentissage automatique, le même contrôle s’applique après la prévision. Dans une étude évaluée par les pairs et publiée le 1er octobre 2026, Alan Gaona, Jennifer Rangel-Madariaga et Lourdes Uribe intègrent des coûts forfaitaires à la définition des mouvements que le modèle doit prédire, puis les utilisent séparément pour simuler le résultat des transactions. Cette distinction permet d’évaluer la prévision et son application économique. L’étude porte sur des actions, des paires de devises et des cryptomonnaies. Les hypothèses de coût de l’exercice XAUUSD restent propres à l’exemple. [Frontiers in Applied Mathematics and Statistics, méthodologie de l’étude.]

Le fonctionnement en images

Deux scénarios simulés pour la même bougie XAUUSD selon l’ordre du stop et de l’objectif.
Schéma éditorial original Geekkech. Une bougie, deux résultats. Exemple simulé. L’ordre des seuils crée un écart de 5 USD par once.