Early-Bird-Range-Break-Strategie
Überblick
Die Early Bird Range Break Strategy ist eine C#-Portierung des Expert Advisors MetaTrader „earlyBird3“. Es zielt auf Bereichsausbrüche ab, die kurz nach Eröffnung der europäischen Handelssitzung stattfinden. Der Algorithmus beobachtet einen Konsolidierungsbereich am frühen Morgen, filtert potenzielle Ausbrüche mit einem 14-Perioden-RSI und gibt bis zu drei Marktaufträge in Richtung des Ausbruchs ein. Jede Order verwendet vordefinierte Take-Profit-Levels, einen gemeinsamen Stop-Loss und einen optionalen Trailing-Mechanismus, der nur aktiviert wird, wenn die Volatilität über ihren aktuellen Durchschnitt hinaus ansteigt.
Datenanforderungen
- Ein einzelner Zeitrahmen-Kerzenstrom (Standard: 5-Minuten-Kerzen) für das gehandelte Instrument.
- Das Instrument muss einen gültigen
PriceStepliefern, da alle Stop-Loss- und Take-Profit-Abstände in Punkten definiert sind. - Handelszeiten werden anhand der Zeitstempel eingehender Kerzen (Serverzeit der Datenquelle) ausgewertet.
Handelssitzung
- Bereichskonstruktion – Zwischen
RangeStartHourundRangeEndHourverzeichnet die Strategie das höchste Hoch und das niedrigste Tief. - Handelsfenster – Nach
TradingStartHour:TradingStartMinuteund vorTradingEndHourwird die Breakout-Logik aktiv. - Zwangsschließung – Bei
ClosingHourwerden alle verbleibenden Positionen unabhängig von Gewinn oder Verlust liquidiert. - Nur werktags – Signale werden von Montag bis Freitag verarbeitet.
Eingabelogik
- Ein Long-Breakout-Level ist auf
range high + EntryBufferPointsfestgelegt, während ein Short-Breakout-Level aufrange low - EntryBufferPointsfestgelegt ist. Der Puffer wird in Preispunkten ausgedrückt. - Der RSI-Filter muss für eine lange Einrichtung größer als 50 und für eine kurze Einrichtung kleiner oder gleich 50 sein.
- An jedem Handelstag ist nur ein Ausbruch pro Richtung zulässig. Bei Auslösung werden sofort drei Marktaufträge (Standardvolumen
0.1) übermittelt. - Wenn bereits eine Gegenposition offen ist und
HedgeTradingdeaktiviert ist, wird das neue Signal ignoriert. WennHedgeTradingaktiviert ist, schließt die Strategie zunächst die bestehende Position und geht dann in die neue Richtung. Dies spiegelt die Absicht des ursprünglichen EA wider, verwendet jedoch eine Positionsumkehr, da StockSharp-Konten saldiert werden.
Exit-Management
- Stop-Loss – Ein gemeinsamer Stop-Loss (
StopLossPoints) wird auf die Gesamtposition angewendet. Wenn der Preis das Niveau überschreitet, wird die verbleibende Größe sofort geschlossen. - Take-Profit-Leiter – Drei Ziele (
TakeProfit1Points,TakeProfit2Points,TakeProfit3Points) schließen jeweils einen Positionsteil. Der verbleibende Teil bleibt geöffnet, bis er am Ende der Sitzung gestoppt, nachgezogen oder geschlossen wird. - Trailing Stop – Wenn nur noch ein Teil übrig ist, muss der aktuelle Kerzenbereich
ATR * TrailingRiskMultiplierüberschreiten. Wenn der Preis um mindestensTrailingStopPointsgestiegen ist, wird der Stop-Loss unter Beibehaltung der anfänglichen Stop-Distanz in Handelsrichtung erhöht. - Sitzungsabschluss – Jede offene Belichtung wird vollständig reduziert, sobald die aktuelle Zeit
ClosingHourerreicht.
Parameter
| Parameter | Beschreibung | Standard |
|---|---|---|
AutoTrading |
Aktiviert/deaktiviert die Auftragsausführung. | true |
HedgeTrading |
Ermöglicht die Positionsumkehr bei entgegengesetzten Signalen (implementiert als Flat-and-Reverse). | true |
OrderType |
0 – beide Richtungen, 1 – nur lang, 2 – nur kurz. |
0 |
TradeVolume |
Volumen pro übermittelter Marktorder. | 0.1 |
StopLossPoints |
Stop-Loss-Distanz in Preispunkten. | 60 |
TakeProfit1Points |
Take-Profit-Distanz für den ersten Teil. | 10 |
TakeProfit2Points |
Take-Profit-Distanz für den zweiten Teil. | 20 |
TakeProfit3Points |
Take-Profit-Distanz für den dritten Teil. | 30 |
TrailingStopPoints |
Minimale günstige Bewegung, bevor der Trailing Stop aktiviert wird. | 15 |
TrailingRiskMultiplier |
Bei der Validierung der Volatilitätsausweitung wird der Multiplikator auf ATR angewendet. | 1.0 |
EntryBufferPoints |
Zusätzliche Distanz zu den Ausbruchsniveaus hinzugefügt. | 2 |
RangeStartHour |
Stunde, zu der der Referenzbereich beginnt. | 3 |
RangeEndHour |
Stunde, in der der Referenzbereich endet. | 7 |
TradingStartHour |
Stunde, in der Breakout-Einträge zulässig sind. | 7 |
TradingStartMinute |
Minute, in der Breakout-Einträge zulässig sind. | 15 |
TradingEndHour |
Stunde, nach der keine neuen Einträge mehr vorgenommen werden. | 15 |
ClosingHour |
Stunde, in der alle Geschäfte geschlossen sind. | 17 |
RsiPeriod |
RSI-Lookback, der zum Filtern verwendet wird. | 14 |
VolatilityPeriod |
ATR Rückblick auf das Volatilitätstor. | 16 |
CandleType |
Für die Analyse verwendete Kerzenserie (Standard 5 Minuten). | TimeSpan.FromMinutes(5) |
Hinweise zur Implementierung
- Die Strategie abonniert Kerzen über die StockSharp-Hochebene API und bindet die Indikatoren RSI und ATR direkt an das Abonnement.
- Indikatorwerte werden innerhalb des
ProcessCandle-Rückrufs verbraucht, ohneGetValueaufzurufen oder benutzerdefinierte Puffer zu speichern, gemäß den Projektrichtlinien. - Es werden nur fertige Kerzen verarbeitet; Teilaktualisierungen werden ignoriert.
- Alle Preisabstände werden mit dem Instrument
PriceStepvon Punkten in absolute Preise umgerechnet. Stellen Sie sicher, dass die Sicherheitsdefinition die richtige Tick-Größe offenlegt. - Der ursprüngliche Fachberater hielt separate MQL-Aufträge zur Absicherung bereit. StockSharp verwendet Nettopositionen, daher führt dieser Port einen Schließ- und Umkehrvorgang aus, wenn
HedgeTradingaktiviert ist.
Anwendungstipps
- Passen Sie den Zeitrahmen der Kerze an den im ursprünglichen EA verwendeten Handelsplatz an (M5 bis H1 in MetaTrader). Passen Sie
RangeStartHour,RangeEndHourund das Handelsfenster an, um den lokalen Marktplan Ihres Datenfeeds widerzuspiegeln. - Konzentrieren Sie sich bei der Optimierung auf den Breakout-Puffer, die Take-Profit-Leiter und den Volatilitätsfilter, da diese das Gleichgewicht zwischen falschen Breakouts und verpassten Bewegungen definieren.
- Das Trailing ist bewusst konservativ. Wenn Sie engere Ausstiege benötigen, sollten Sie
TrailingRiskMultiplieroderStopLossPointsreduzieren, damit die Trailing-Anpassungen häufiger erfolgen.