und werden Sie Mitglied unserer Fangruppe
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Bewerten Sie es im Terminal MetaTrader 5
- Ansichten:
- 14
- Rating:
- Veröffentlicht:
-
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance
Stormbreaker ADX ist ein MetaTrader-5-Expert-Advisor, der die Richtung des Supertrend mit der ADX-Stärke und dem Richtungsverhältnis von +DI und −DI kombiniert. Er wertet Signale anhand abgeschlossener Kerzen aus, legt die Positionsgröße anhand eines festen Kapital-Risiko-Budgets fest und setzt einen ATR-basierten Schutz-Stop.
Der herunterladbare Quellcode dient zu Studien-, Test- und Anpassungszwecken. Der EA verspricht keine Gewinne; testen Sie ihn mit den Daten und Kontraktspezifikationen Ihres Brokers, bevor Sie einen Live-Einsatz in Betracht ziehen.

Abbildung 1. Die Einstiegsfilter werden zu Beginn einer neuen Kerze im Signal-Zeitrahmen nacheinander ausgewertet.
1. Strategieübersicht
Der Standard-Signal-Zeitrahmen ist H4. Bei jedem neuen H4-Balken liest der EA den vorherigen abgeschlossenen Balken aus (Verschiebung 1), berechnet einen benutzerdefinierten Supertrend aus dem ATR und liest die Werte für ADX, +DI, −DI und ATR aus. Ein Handel wird nur dann in Betracht gezogen, wenn die Richtung des Supertrends und die Bewegungsrichtung übereinstimmen und der ADX den Einstiegsschwellenwert erreicht.
| Komponente | Standard | Zweck |
|---|---|---|
| Signal-Zeitrahmen | H4 | Zeitrahmen für die Signalauswertung; Eintritte werden einmal pro neuem Balken geprüft. |
| Supertrend | ATR 10, Faktor 3,0 | Definiert die aktuelle Trendrichtung. |
| ADX / DMI | ADX 14; Einstiegsschwelle 23 | Filtert nach der Trendstärke und bestätigt die Richtung mithilfe von +DI und −DI. |
| Schwellenwert für die Ausstiegsstärke | ADX unter 18 | Schließt eine verwaltete Position, wenn die Trendstärke unter das Ausstiegsniveau absinkt. |
| Anfänglicher Stop | 2 × ATR(10) | Setzt den Stop am Schlusskurs des abgeschlossenen Signalbalkens und passt ihn anschließend an die Preisregeln des Brokers an. |
| Risikobudget | 0,5 % des aktuellen Eigenkapitals | Berechnet das Volumen anhand des geschätzten Verlusts zwischen dem aktuellen Einstiegskurs und dem Stop. |
| Take-Profit | Keiner | Es gibt kein festes Take-Profit-Ziel; Ausstiege erfolgen signaal- bzw. styrkebasiert oder per Stop-Loss. |
2. Ein- und Ausstiegsregeln
| Aktion | Bedingungen |
|---|---|
| Kaufposition eröffnen | Kauf-Einstiege aktiviert; Supertrend ist bullisch; ADX ≥ 23; +DI > −DI. |
| Verkaufsposition eröffnen | Verkaufseinstiege aktiviert; Supertrend ist bärisch; ADX ≥ 23; −DI > +DI. |
| Schließen einer bestehenden Position | ADX < 18 oder die Richtung des Supertrends kehrt sich entgegen der Position um. Ein entgegengesetztes qualifiziertes Signal schließt bzw. kehrt die verwaltete Position ebenfalls um. |
Der EA baut eine Position in derselben Richtung nicht weiter auf, wenn er eine bestehende Position mit dem konfigurierten Symbol und der konfigurierten Magic Number findet. Ein Stop-Loss bleibt unabhängig vom Signalausstieg aktiv.
3. Risikobasierte Volumenberechnung
Vor dem Absenden einer Order schätzt Stormbreaker mithilfe von `OrderCalcProfit `den Verlust pro Lot vom aktuellen Ask-/Bid-Einstiegskurs bis zum vorgeschlagenen Stop . Er teilt das 0,5-prozentige Risikobudget des Eigenkapitals durch diesen geschätzten Verlust pro Lot, rundet das Volumen dann auf die vom Broker zugelassene Volumenschrittweite ab und wendet die maximale Volumenobergrenze an. Zudem wird die verfügbare Margin überprüft. Sollte das minimal zulässige Lot das Risikobudget überschreiten oder die Margin nicht ausreichen, lässt der EA den Handel aus.
double risk_cash = AccountInfoDouble(ACCOUNT_EQUITY) * 0.5 / 100.0; double one_lot_loss = MathAbs(one_lot_profit); double volume = MathFloor((risk_cash / one_lot_loss) / volume_step) * volume_step; volume = MathMin(volume, MaxVolume);
Auszug zur Veranschaulichung vereinfacht. Der vollständige Quellcode enthält Prüfungen auf ungültige Preise, die Übereinstimmung von Tick und Volumen, Stop-Abstände des Brokers sowie die Margin. Da der Stop vom Schlusskurs der vorherigen Kerze abgeleitet wird, während die Positionsgröße auf dem aktuellen Einstiegskurs basiert, können Slippage, Kurslücken und Ausführungskosten dazu führen, dass der realisierte Verlust von 0,5 % abweicht. Hierbei handelt es sich um ein Risikoziel, nicht um einen garantierten Maximalverlust.

Abbildung 2. Die Stop-Niveaus basieren auf dem ATR; der EA hat kein festes Gewinnziel.
4. Eingaben und Standardwerte
| Eingabe | Standardwert | Bedeutung |
|---|---|---|
| SignalTimeframe | PERIOD_H4 | Für Signale verwendeter Zeitrahmen. |
| SupertrendFaktor | 3,0 | Vom Supertrend verwendeter ATR-Multiplikator. |
| SupertrendATRPeriod | 10 | ATR-Periode für den Supertrend und den anfänglichen Stop. |
| ADXPeriod | 14 | Berechnungszeitraum für ADX/DMI. |
| Einstiegs-ADX | 23,0 | Mindestwert für den ADX bei einem neuen Einstieg. |
| ExitADX | 18,0 | ADX-Wert, unterhalb dessen eine offene Position geschlossen wird. |
| Stop-ATR-Multiplikator | 2,0 | ATR-Multiplikator, der für den anfänglichen Stop verwendet wird. |
| MaxVolume | 100,0 | Obergrenze für Lots; die tatsächlichen Symbolgrenzen gelten weiterhin. |
| Abweichungspunkte | 20 | Maximale Preisabweichung, die an die Handelsanforderung übergeben wird, in Punkten. |
| EnableBuy / EnableSell | true / true | Jede Richtung aktivieren oder deaktivieren. |
| MagicNumber | 51003 | Kennung zum Auffinden der vom EA verwalteten Position. |
Der Risikoprozentsatz von 0,5 % ist derzeit eine feste Konstante im Quellcode und kein vom Benutzer einzugebender Wert.
5. Beispiel für einen MQL5-Signalcode
Der folgende Auszug zeigt die vom EA verwendeten Einstiegsbedingungen für geschlossene Kerzen:bool long_signal = EnableBuy && direction < 0 && adx >= EntryADX && plus_di > minus_di; bool short_signal = EnableSell && direction > 0 && adx >= EntryADX && minus_di > plus_di; if(long_signal) STOpenPosition(true, bar.close - StopATRMultiple * atr, 0.0, MagicNumber, "ST ADX long", MaxVolume, DeviationPoints); else if(short_signal) STOpenPosition(false, bar.close + StopATRMultiple * atr, 0.0, MagicNumber, "ST ADX short", MaxVolume, DeviationPoints); else if(position != 0 && (adx < ExitADX || (position > 0 && direction > 0) || (position < 0 && direction < 0))) STClosePosition(MagicNumber);
Im vollständigen EA werden diese Bedingungen erst ausgeführt, nachdem eine neue Kerze im Signal-Zeitrahmen erkannt und die Werte der zuvor geschlossenen Kerze sowie die Indikatorwerte erfolgreich abgerufen wurden.
6. Backtest-Übersicht des Brokers
Die folgenden Abbildungen stammen aus den mitgelieferten Berichten des MetaTrader 5-Strategietesters für XAGUSD auf dem H4-Chart. Da die Anfangseinlagen unterschiedlich sind, wird neben dem Nettogewinn auch die Nettorendite angezeigt. Die Qualität der Tick-Historie variiert ebenfalls und ist bei Fusion Markets besonders begrenzt.| Broker | Zeitraumende | Anfängliche Einlage | Nettogewinn | Nettorendite | Maximale Kapitalabnahme | Gewinnfaktor | Sharpe-Ratio | Trades | Reale Ticks |
|---|---|---|---|---|---|---|---|---|---|
| IC Markets | 23.09.2026 | 1.000.000 USD | 154.482,51 USD | 15,45 % | 19,40 % | 1,12 | 0,50 | 520 | 32 % |
| BlackBull Markets | 24.09.2026 | 1.000.000 USD | 225.766,54 USD | 22,58 % | 5,00 % | 1,45 | 1,00 | 196 | 41 % |
| Fusion Markets | 23.09.2026 | 100.000 USD | 26.680,57 USD | 26,68 % | 8,97 % | 1,26 | 2,22 | 374 | 4 % |

7. Kompatibilität und praktische Anwendung
- Plattform: MetaTrader 5; Quellsprache: MQL5.
- Fügen Sie den EA dem Chart des zu handelnden Symbols hinzu; der Signal-Zeitrahmen wird über „SignalTimeframe“ ausgewählt.
- Es sind keine externen benutzerdefinierten Indikator-Dateien erforderlich. Der Code nutzt die Standardbibliothek „Trade\Trade.mqh“ sowie integrierte ATR-/ADX-Daten.
- Verwenden Sie für jede EA-Instanz eine eindeutige Magic Number. Vermeiden Sie es, andere Strategien oder manuelle Trades für dasselbe Symbol auf Netting-Konten auszuführen, bei denen Positionen zusammengefasst werden.
- Testen Sie brokerspecifische Mindestvolumina, Tick-Größen, Stop-Distanzen und Margin-Anforderungen zunächst im Strategietester und auf einem Demokonto.
Risikohinweis: Der automatisierte Handel birgt erhebliche Risiken. Ein Stop-Loss kann den Ausstiegskurs bei Kurslücken oder in schnelllebigen Märkten nicht garantieren. Backtest-, Demo- und historische Ergebnisse sind keine Garantie für zukünftige Ergebnisse. Sie sind dafür verantwortlich, den EA und seine Einstellungen vor der Verwendung zu prüfen.
Übersetzt aus dem Englischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/en/code/77718
Turtle Breakout Indicator Tested on Gold: Profitable in 2025 and 2026 (70)
Donchian-Breakouts im „Turtle“-Stil bei Gold, gefolgt von drei Ausstiegsstrategien gleichzeitig: einem ATR-Trailing-Stop, dem „Turtle“-Ausstiegskanal und einem festen Kursziel. Backtest auf XAUUSD H1 und H4 in den Jahren 2025 und 2026, wobei alle zwölf Kombinationen profitabel waren. Keine Nachzeichnung, mit Puffern für einen Expert Advisor.
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.
ImpulseCandle - impulse bar marker with ATR body filter and volume confirmation
Markiert Impuls-Kerzen: Körper mindestens ATR × Multiplikator, Körper mindestens ein festgelegter Anteil der Kerzenspanne, Schlusskurs nahe dem Extremwert, optionale Bestätigung durch Tick-Volumen. Grüner Pfeil unterhalb eines bullischen Impulses, roter Pfeil oberhalb eines bärischen Impulses. Nur geschlossene Balken, kein Repainting. Die Signale befinden sich in den beiden Puffern, sodass ein Expert Advisor sie mit iCustom auslesen kann.
PropGuard 1.02 - account risk manager for prop firm accounts
Schutzmechanismus auf Kontoebene für Konten von Prop-Firmen. Überwacht jede Position auf dem Konto, schließt alle Positionen bei Erreichen des täglichen oder maximalen Verlustlimits, begrenzt das Risiko pro Position, schließt Trades ohne Stop-Loss und kann Positionen bei Nachrichten mit großer Auswirkung glätten.