Identifie les cassures du canal de Donchian selon la méthode « Turtle » et associe à chacune d’entre elles trois stratégies de sortie simultanées : un stop suiveur ATR, le canal de sortie « Turtle » et un objectif fixe. Un panneau indique quelle stratégie de sortie a généré le plus de profit sur votre symbole, en R, spread inclus. Sans repeint, avec des tampons pour un Expert Advisor.
Le succès ou l’échec des systèmes de cassure dépend de la sortie. L’entrée est simple et fait l’unanimité : si le cours clôture au-dessus du plus haut des 20 dernières barres, vous achetez. C’est après cela que les débats commencent. Suivre le cours avec un stop glissant ATR ? Utiliser le canal de sortie à 10 barres des Turtles ? Prendre un objectif fixe de 2R et sortir ?
Tous les indicateurs de cassure que j’ai trouvés choisissent une seule sortie et la tracent. Je voulais voir les trois options sur les mêmes points d’entrée, sur mon propre titre, avant de faire mon choix. Cet indicateur prend donc chaque cassure et la soumet en parallèle à trois stratégies de sortie, puis affiche les résultats côte à côte.
Chaque résultat est mesuré en R, où 1R correspond à la distance entre le point d’entrée et le stop initial. Le spread de la barre de signal est soustrait à titre de coût. Un stop franchi par un écart de cours est exécuté au cours d’ouverture de la barre, et non au prix du stop. Lorsque le stop et l’objectif se trouvent tous deux à l’intérieur d’une même barre, le stop est comptabilisé, car une barre ne permet pas de déterminer lequel est survenu en premier.
Chaque cassure est évaluée séparément, ce qui permet aux transactions de se chevaucher. Le tableau présente une comparaison des sorties pour un même ensemble d’entrées. Il ne s’agit pas d’une simulation de compte avec dimensionnement des positions.
La sortie choisie est également tracée sur le graphique. Chaque transaction est accompagnée d’une ligne d’entrée et de son résultat en R, et le stop de la dernière transaction est tracé sous forme de ligne pointillée.
XAUUSD, données de démonstration MetaQuotes, paramètres par défaut. La simulation 2025 porte sur les 360 jours jusqu’au 31 décembre 2025. La simulation 2026 porte sur les 260 jours jusqu’au 18 septembre 2026.
| XAUUSD | Transactions | Taux de réussite | PF | Somme |
|---|---|---|---|---|
| H4 2025, sortie A (ATR trail) | 129 | 43,4 % | 1,45 | +23,08R |
| H4 2025, sortie B (canal de 10 barres) | 129 | 41,1 % | 2,34 | +66,20R |
| H4 2025, sortie C (objectif 2R) | 129 | 45,7 % | 1,68 | +47,83R |
| H4 2026, sortie A | 76 | 35,5 % | 1,10 | +3,46R |
| H4 2026, sortie B | 76 | 35,5 % | 1,70 | +22,35R |
| H4 2026, sortie C | 75 | 38,7 % | 1,26 | +11,99 R |
| 1er semestre 2025, sortie A | 465 | 37,6 % | 1,32 | +70,32 R |
| 1er semestre 2025, sortie B | 465 | 37,8 % | 1,23 | +51,18R |
| 1er semestre 2025, sortie C | 465 | 37,8 % | 1,21 | +60,32R |
| 1er semestre 2026, sortie A | 270 | 39,6 % | 1,21 | +25,14R |
| 1er semestre 2026, sortie B | 270 | 40,4 % | 1,29 | +35,15R |
| 1er semestre 2026, sortie C | 269 | 38,3 % | 1,23 | +39,06R |
Les douze sont tous positifs. Sur le H4, le canal de sortie « Turtle » s’est avéré être la meilleure sortie pour les deux années, tandis que le suivi ATR a été le moins performant. Sur le H1, il n’y a pas eu de vainqueur clair : le suivi a dominé en 2025 et l’objectif fixe en 2026. C’est la raison d’être de ce panel. La « meilleure sortie » a varié en fonction de l’horizon temporel et de l’année, même pour un même titre.
Voici maintenant l’élément important à retenir avant que l’enthousiasme ne prenne le dessus. L’or a fortement progressé en 2025, ce qui se reflète dans la répartition. Avec la sortie B sur H4, les 99 positions longues ont généré +79,4 R et les 30 positions courtes ont perdu -13,2 R. En 2026, l’or a fluctué dans les deux sens, et les deux côtés ont été positifs : 42 positions longues ont généré +14,9 R et 34 positions courtes ont généré +7,5 R.
Pour déterminer dans quelle mesure cela reflète la tendance de l’or, j’ai appliqué les mêmes paramètres par défaut à trois paires de devises sur le graphique H4, sur la même période de 2026 :
| H4 2026 | Somme des sorties A (PF) | Somme des sorties B (PF) | Somme des sorties C (PF) |
|---|---|---|---|
| EURUSD | -11,74R (0,68) | -3,86R (0,89) | -5,97R (0,88) |
| GBPUSD | -9,21R (0,77) | -3,15R (0,91) | +6,90R (1,13) |
| USDJPY | +1,30R (1,03) | +0,73R (1,02) | +3,03R (1,06) |
Stable à négatif. Les cassures nécessitent un marché qui évolue selon une tendance, ce qui était le cas de l’or pendant cette période, contrairement à la plupart de ces paires. J’interprète donc les chiffres de l’or comme signifiant que « les cassures ont fonctionné tant que l’or évoluait selon une tendance », et non comme la preuve qu’elles fonctionneront toujours.
Fig. 1. XAUUSD H4, fin juillet àmi-septembre 2026 : flèches de cassure, canal d’entrée et résultat de chaque transaction selon la sortie B
Fig. 2. Le graphique XAUUSD H4 en 2025 et 2026, avec la sortie B indiquée
| Données d'entrée | Par défaut | Fonction |
|---|---|---|
| InpEntryBars | 20 | Longueur du canal d'entrée en barres |
| InpExitBars | 10 | Longueur du canal de sortie pour la sortie B |
| InpATRPeriod | 20 | Période ATR |
| InpStopATR | 2,0 | Stop initial, multiples de l'ATR |
| InpTrailATR | 3,0 | Distance de sortie (Trail), multiples de l'ATR |
| InpTargetR | 2,0 | Sortie C : prise de bénéfices, multiples de R |
| InpUseTrend | false | Ne conserver que les cassures du côté de la tendance EMA |
| InpTrendEMA | 200 | Période de l'EMA de tendance, intervalle de temps du graphique |
| InpDrawExit | A. Suivi ATR | Sortie tracée sur le graphique et envoyée aux tampons 6 à 9 |
| InpDaysBack | 365 | Nombre de jours d'historique dans le tableau de bord |
| InpDrawDays | 60 | Jours avec des lignes de tendance tracées |
| InpShowPanel | true | Afficher le panneau |
| InpPanelCorner | en haut à gauche | Coin du panneau |
| InpAlertPopup | true | Alerte contextuelle en cas de nouvelle cassure |
| InpAlertPush | false | Notification push en cas de nouvelle cassure |
Pour le système Turtle 2 classique, réglez InpEntryBars sur 55 et InpExitBars sur 20.
Une cassure est enregistrée sur la barre qui s'est clôturée au-delà du canal ; un Expert Advisor la lit donc au décalage 1 une fois cette barre clôturée. Les flèches sont conservées sur l'historique complet chargé, et pas seulement dans la fenêtre de notation. J’ai vérifié dans le testeur de stratégie que les signaux détectés en temps réel par un EA correspondaient exactement à ceux présents dans les tampons à la fin de l’exécution : 473 sur 473 sur H1 et 131 sur 131 sur H4 pour l’or en 2025.
| Tampon | Contenu |
|---|---|
| 0 | Achat en cassure, la valeur correspond à l’entrée prévue (ouverture de la barre suivante), EMPTY_VALUE dans le cas contraire |
| 1 | Vente en cas de cassure, même format |
| 2, 3 | Haut et bas du canal d'entrée |
| 4 | Stop de la dernière transaction sous le niveau de sortie tracé |
| 5 | Stop initial sur la barre de cassure |
| 6 à 9 | Tableau de bord de la sortie dessinée sur la dernière barre clôturée : transactions clôturées, gains, somme en R, somme des pertes en R |
int handle; datetime lastBar = 0; int OnInit() { handle = iCustom(_Symbol, PERIOD_H4, "BreakoutExitLab"); return(handle == INVALID_HANDLE ? INIT_FAILED : INIT_SUCCEEDED); } void OnTick() { //--- Les cassures sont confirmées sur les barres de clôture ; il faut donc vérifier une fois par nouvelle barre datetime bar = iTime(_Symbol, PERIOD_H4, 0); if(bar == lastBar) return; lastBar = bar; double buy[1], sell[1], stop[1]; if(CopyBuffer(handle, 0, 1, 1, buy) < 1 || CopyBuffer(handle, 1, 1, 1, sell) < 1 || CopyBuffer(handle, 5, 1, 1, stop) < 1) return; if(buy[0] != EMPTY_VALUE) Print("Breakout buy, initial stop ", stop[0]); if(sell[0] != EMPTY_VALUE) Print("Breakout sell, initial stop ", stop[0]); }
L'indicateur ne comporte délibérément aucun groupe d'entrées. MQL5 considère chaque « groupe d'entrées » comme un paramètre de la fonction iCustom(), et chaque valeur qui suit est décalée d'une position.
Une petite chose que j’ai apprise en créant le panneau : une étiquette de graphique ne peut contenir que 63 caractères au maximum. Les premières lignes de mon panneau étaient plus longues et MetaTrader les coupait au milieu d’un chiffre ; je veille donc désormais à ce qu’elles restent courtes.
Les résultats proviennent des données des barres ; l’ordre des événements au sein d’une même barre est donc inconnu. Seul le spread est facturé, sans commission ni dérapage au-delà des écarts par rapport au stop. Les transactions sont comptabilisées une par une et peuvent se chevaucher ; les sommes ne constituent donc pas une courbe de capital. Chaque chiffre ci-dessus provient des données d’un courtier sur deux périodes au cours desquelles l’or a affiché une forte tendance.
Ali Rajput
Traduit de l’anglais par MetaQuotes Ltd.
Code original : https://www.mql5.com/en/code/77687
ATS Confirmed Swings - non-repainting swing highs and lows
Les plus hauts et les plus bas de swing ne sont marqués qu'après confirmation par N barres clôturées ; ainsi, un swing tracé ne se déplace jamais et ne disparaît jamais.
Basket Pair Closer
Position manager for MT5 that closes the best winner together with the worst loser when their combined result reaches your minimum. Basket take profit and stop loss in money, magic filter, simple panel. Works with grid, martingale and manual trades. Open source code.
DataSnooping: SPA test, Reality Check, StepM and model confidence set
Is the best of many strategies really better than the benchmark? Hansen's SPA test, White's Reality Check, Romano-Wolf StepM and the model confidence set.
Swap Markup Scanner
Shows the broker's hidden financing markup and the carry for every symbol, as annual % of notional.