Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Facebook!
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Indikatoren

Turtle Breakout Indicator Tested on Gold: Profitable in 2025 and 2026 (70) - Indikator für den MetaTrader 5

Ali Akbar
Ali Akbar
  • MQL5 Developer & Algorithmic Trading Specialist in  Freelance
  • Pakistan
  • 1664
Hi, I'm Ali. 24 years old, trading for around 5 years, and developing MQL5/MQL4 tools. I mainly work on automating manual strategies, fixing broken EA logic, and building clean indicators. I care more about clean architecture and proper risk management than over-complicated code. Always down to talk
| German English Русский 中文 Español 日本語 Português 한국어 Français Italiano Türkçe
Ansichten:
16
Rating:
(2)
Veröffentlicht:
MQL5 Freelance Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Breakout-Exit-Lab: Donchian-Breakouts mit drei nebeneinander dargestellten Ausstiegsstrategien

Markiert Donchian-Kanal-Breakouts im Turtle-Stil und verfolgt jeden einzelnen davon mit drei Ausstiegsmöglichkeiten gleichzeitig: einem ATR-Trailing-Stop, dem Turtle-Ausstiegskanal und einem festen Zielkurs. Ein Fenster zeigt an, welcher Ausstieg bei Ihrem Wertpapier den größten Gewinn erzielt hat, in R, inklusive Spread. Kein Repainting, mit Puffern für einen Expert Advisor.

Warum drei Ausstiegsmöglichkeiten?

Bei Breakout-Systemen steht und fällt alles mit dem Ausstieg. Der Einstieg ist einfach und darüber sind sich alle einig: Schließt der Kurs über dem höchsten Hoch der letzten 20 Balken, kauft man. Danach fangen die Diskussionen an. Mit ATR nachziehen? Den 10-Balken-Ausstiegskanal der Turtles verwenden? Ein festes 2R nehmen und aussteigen?

Jeder Breakout-Indikator, den ich gefunden habe, wählt einen Ausstieg und zeichnet ihn ein. Ich wollte alle drei bei denselben Einstiegspunkten auf meinem eigenen Symbol sehen, bevor ich mich entschied. Daher nimmt dieser Indikator jeden Breakout und lässt ihn parallel durch drei Ausstiegsszenarien laufen, um die Ergebnisse dann nebeneinander darzustellen.

Wie ein Ausbruch definiert wird

  1. Der Einstiegskanal besteht aus dem höchsten Hoch und dem tiefsten Tief der letzten InpEntryBars-Bars (standardmäßig 20, Turtle-System 1).
  2. Ein Kaufsignal ist ein geschlossener Balken, der über dem Kanalhoch schließt, während der vorhergehende Balken dies nicht tat. Ein Verkaufssignal ist das Spiegelbild davon. Es zählt nur der erste Schlusskurs jenseits des Kanals, sodass ein starker Trend nicht bei jedem Balken einen Pfeil erzeugt.
  3. Der Handel beginnt bei der Eröffnung des nächsten Balkens. Der anfängliche Stop liegt in einer Entfernung von InpStopATR mal ATR (2,0 × ATR(20), das „2N“ der Turtles).
  4. Ein optionaler Trendfilter behält nur Ausbrüche auf der Seite eines 200-EMA bei. Er ist standardmäßig deaktiviert.

Die drei Ausstiegsmöglichkeiten

  • A. ATR-Trail. Der Stop folgt dem besten Kurs seit dem Einstieg in Höhe von InpTrailATR mal ATR (standardmäßig 3,0) und wird niemals zurückgesetzt.
  • B. Turtle-Ausstiegskanal. Der Stop folgt bei einer Long-Position dem tiefsten Tief der letzten InpExitBars-Bars (standardmäßig 10, System 1) und bei einer Short-Position dem höchsten Hoch.
  • C. Festes Ziel. Ein Take-Profit bei InpTargetR mal dem anfänglichen Risiko (standardmäßig 2R), mit dem anfänglichen Stop.

Jedes Ergebnis wird in R gemessen, wobei 1R der Abstand vom Einstieg bis zum anfänglichen Stop ist. Der Spread des Signalbars wird als Kosten abgezogen. Ein Stop, den der Kurs durch eine Kurslücke durchbricht, wird zum Eröffnungskurs des Balkens ausgeführt, nicht zum Stop-Kurs. Wenn sich sowohl der Stop als auch das Ziel innerhalb eines Balkens befinden, wird der Stop gezählt, da ein einzelner Balken nicht erkennen kann, was zuerst eintrat.

Jeder Ausbruch wird separat gewertet, sodass sich Trades überschneiden können. Das Panel zeigt einen Vergleich der Ausstiege bei derselben Gruppe von Einstiegspunkten. Es handelt sich nicht um eine Kontosimulation mit Positionsgrößenberechnung.

Was das Panel zeigt

  • Die Anzahl der Ausbrüche, unterteilt in Long- und Short-Positionen, sowie die Anzahl der noch offenen Positionen.
  • Für jeden Ausstieg: geschlossene Trades, Gewinnquote, Gewinnfaktor, durchschnittliches R und die Summe in R.
  • Für den von Ihnen zur Darstellung ausgewählten Ausstieg (InpDrawExit): die Summen für Long- und Short-Positionen separat, damit Sie erkennen können, ob eine Seite das Ergebnis bestimmt.

Der ausgewählte Ausstieg wird ebenfalls im Chart dargestellt. Jeder Trade erhält eine Einstiegslinie und sein Ergebnis in R, und der Stop des letzten Trades wird als gepunktete Linie dargestellt.

Ergebnisse für Gold

XAUUSD, MetaQuotes-Demodaten, Standardeinstellungen. Der Lauf 2025 umfasst die 360 Tage bis zum 31. Dezember 2025. Der Lauf 2026 umfasst die 260 Tage bis zum 18. September 2026.

XAUUSD Trades Gewinnquote PF Summe
H4 2025, Ausstieg A (ATR-Trail) 129 43,4 % 1,45 +23,08R
H4 2025, Ausstieg B (10-Bar-Kanal) 129 41,1 % 2,34 +66,20R
H4 2025, Ausstieg C (2R-Ziel) 129 45,7 % 1,68 +47,83R
H4 2026, Ausstieg A 76 35,5 % 1,10 +3,46R
H4 2026, Ausstieg B 76 35,5 % 1,70 +22,35R
H4 2026, Ausstieg C 75 38,7 % 1,26 +11,99R
H1 2025, Ausstieg A 465 37,6 % 1,32 +70,32 R
1. Halbjahr 2025, Ausstieg B 465 37,8 % 1,23 +51,18R
1. Halbjahr 2025, Ausstieg C 465 37,8 % 1,21 +60,32R
1. Halbjahr 2026, Ausstieg A 270 39,6 % 1,21 +25,14R
1. Halbjahr 2026, Ausstieg B 270 40,4 % 1,29 +35,15R
1. Halbjahr 2026, Ausstieg C 269 38,3 % 1,23 +39,06R

Alle zwölf sind positiv. Auf der H4-Zeitskala war der Turtle-Exit-Kanal in beiden Jahren der beste Ausstieg, während der ATR-Trail am schwächsten abschnitt. Auf der H1-Zeitskala gab es keinen klaren Sieger: 2025 lag der Trail vorn, 2026 das feste Ziel. Das ist der Grund für die Existenz des Panels. Der „beste Ausstieg“ änderte sich je nach Zeitrahmen und Jahr sogar bei ein und demselben Wertpapier.

Nun zu dem Teil, der wichtig ist, bevor sich jemand zu sehr begeistert. Gold stieg 2025 stark an, was sich in der Aufschlüsselung widerspiegelt. Bei Ausstieg B auf H4 erzielten die 99 Long-Positionen +79,4 R und die 30 Short-Positionen verloren -13,2 R. Im Jahr 2026 schwankte der Goldpreis in beide Richtungen, und beide Seiten waren im Plus: 42 Long-Positionen erzielten +14,9 R und 34 Short-Positionen erzielten +7,5 R.

Um zu sehen, inwieweit dies auf den Goldtrend zurückzuführen ist, habe ich dieselben Standardeinstellungen für drei Devisenpaare auf dem H4-Chart über denselben Zeitraum im Jahr 2026 angewendet:

H4 2026 Summe Exit A (PF) Summe bei Ausstieg B (PF) Summe Ausstieg 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)

Seitwärts bis negativ. Ausbrüche erfordern einen Markt mit Trend, und in diesem Zeitraum war dies bei Gold der Fall, während dies bei diesen Währungspaaren größtenteils nicht zutraf. Daher interpretiere ich die Zahlen für Gold als Hinweis darauf, dass „Ausbrüche funktionierten, solange Gold einen Trend aufwies“, und nicht als Beweis dafür, dass dies immer der Fall sein wird.

Abb. 1. XAUUSD H4, Ende Juli bisMitte September 2026: Ausbruchspfeile, der Einstiegskanal und das Ergebnis jedes Trades bei Ausstieg B

Abb. 2. Das Diagramm für XAUUSD H4 in den Jahren 2025 und 2026, mit eingezeichnetem Ausstiegspunkt B

Eingaben

Eingabe Standard Funktion
InpEntryBars 20 Länge des Einstiegskanals in Bars
InpExitBars 10 Länge des Ausstiegskanals für Ausstieg B
InpATRPeriod 20 ATR-Periode
InpStopATR 2,0 Anfänglicher Stop, ATR-Vielfache
InpTrailATR 3,0 Ausstiegs-Trail-Abstand, ATR-Vielfache
InpTargetR 2,0 Ausstieg C: Take-Profit, R-Vielfache
InpUseTrend false Nur Ausbrüche auf der Seite des EMA-Trends berücksichtigen
InpTrendEMA 200 Trend-EMA-Periode, Chart-Zeitrahmen
InpDrawExit A. ATR-Trail Ausstiegspunkt wird im Chart eingezeichnet und an die Puffer 6 bis 9 gesendet
InpDaysBack 365 Anzahl der Tage in der Historie der Scorecard
InpDrawDays 60 Tage mit gezeichneten Handelslinien
InpShowPanel true Panel anzeigen
InpPanelCorner links oben Eckposition des Fensters
InpAlertPopup true Popup-Warnmeldung bei einem neuen Ausbruch
InpAlertPush false Push-Benachrichtigung bei einem neuen Ausbruch

Für das klassische Turtle-System 2 stellen Sie „InpEntryBars“ auf 55 und „InpExitBars“ auf 20 ein.

Verwendung in einem Expert Advisor

Ein Ausbruch wird auf dem Balken vermerkt, der außerhalb des Kanals geschlossen hat, sodass ein EA ihn bei Shift 1 ausliest, sobald dieser Balken geschlossen ist. Pfeile werden über den gesamten geladenen Verlauf hinweg gespeichert, nicht nur innerhalb des ausgewerteten Fensters. Ich habe im Strategietester überprüft, dass die Signale, die ein EA live gesehen hat, genau denen in den Puffern am Ende des Laufs entsprachen: 473 von 473 auf H1 und 131 von 131 auf H4 für Gold im Jahr 2025.

Puffer Inhalt
0 Kauf bei Ausbruch, Wert ist der geplante Einstieg (Eröffnungskurs des nächsten Balkens), andernfalls EMPTY_VALUE
1 Breakout verkaufen, gleiches Format
2, 3 Höchst- und Tiefstwert des Einstiegskanals
4 Stop des letzten Trades unterhalb des eingezeichneten Ausstiegs
5 Anfänglicher Stop am Ausbruch-Bar
6 bis 9 Übersicht über den gezeichneten Ausstieg am letzten geschlossenen Balken: geschlossene Trades, Gewinne, Summe in R, Summe der Verluste in R
int      handle;
datetime lastBar = 0;

int OnInit()
  {
   handle = iCustom(_Symbol, PERIOD_H4, "BreakoutExitLab");
   return(handle == INVALID_HANDLE ? INIT_FAILED : INIT_SUCCEEDED);
  }

void OnTick()
  {
   //--- Ausbrüche werden bei geschlossenen Kerzen bestätigt, daher sollte dies bei jeder neuen Kerze überprüft werden
   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]);
  }

Der Indikator hat absichtlich keine Eingabegruppen. MQL5 zählt jede „Eingabegruppe“ als Parameter von iCustom(), und jeder darauf folgende Wert würde sich um eins verschieben.

Eine Kleinigkeit, die ich beim Erstellen des Panels gelernt habe: Eine Chartbeschriftung kann maximal 63 Zeichen enthalten. Meine ersten Panel-Zeilen waren länger, und MetaTrader hat sie mitten in einer Zahl abgeschnitten, daher halte ich die Zeilen nun kurz.

Einschränkungen

Die Ergebnisse basieren auf Balkendaten, daher ist die Reihenfolge der Ereignisse innerhalb eines Balkens unbekannt. Es wird lediglich der Spread berechnet, ohne Provision und ohne Slippage über Lücken hinaus, die den Stop durchbrechen. Trades werden einzeln gewertet und können sich überschneiden, daher stellen die Summen keine Equity-Kurve dar. Alle oben genannten Zahlen stammen aus den Daten eines Brokers über zwei Zeiträume, in denen Gold einen starken Trend aufwies.

Ali Rajput


Übersetzt aus dem Englischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/en/code/77687

ATS Confirmed Swings - non-repainting swing highs and lows ATS Confirmed Swings - non-repainting swing highs and lows

Schwankungshochs und -tiefs werden erst dann markiert, wenn sie durch N geschlossene Kerzen bestätigt wurden; daher verschiebt sich eine eingezeichnete Schwankung niemals und verschwindet auch nicht.

ATR Trailing Stop (Pine Script Port) ATR Trailing Stop (Pine Script Port)

MQL5-Portierung eines ATR-Trailing-Stop-Indikators in Pine Script: nLoss = ATR-Multiplikator; der Stop wird in einem Aufwärtstrend unter den Kurs und in einem Abwärtstrend über den Kurs verschoben und wechselt die Richtung (mit einem Kauf-/Verkaufspfeil), sobald der Kurs ihn beim Schlusskurs durchbricht. Enthält eine Python-Referenzportierung und einen Paritätstest, der überprüft, ob beide mit einer wörtlichen, Bar-für-Bar-Transkription der Pine-Semantik (na/nz/Series-Historie) übereinstimmen.

Accumulation/Distribution Accumulation/Distribution

Der Accumulation/Distribution Indikator wird aus Änderung von Preis und Volumen bestimmt.

Accelerator Oszillator (AC) Accelerator Oszillator (AC)

Der Acceleration/Deceleration Indikator (AC) misst die Beschleunigung und Verlangsamung des aktuellen Marktimpulses, der Kraft der Kursbewegung.