Pro Parabolic SAR Flip Signal Multi Filter MT5
- Indikatoren
- Version: 2.11
- Aktivierungen: 5
Parabolic SAR Multi-Filter-System MT5: Algorithmische Trendumkehr-Engine
1. PRODUKTÜBERSICHT & FUNKTIONSARCHITEKTUR
Das Parabolic SAR Multi-Filter-System MT5 ist ein professioneller, aus mehreren Komponenten bestehender Indikator zur technischen Analyse, der speziell für das MetaTrader 5-Terminal entwickelt wurde. Der Indikator kombiniert das klassische Parabolic Time/Price-System von J. Welles Wilder mit einer fortschrittlichen modularen Filterarchitektur, die aus 17 unterschiedlichen sekundären Validierungsmodulen besteht.
Das Hauptziel dieser Software besteht darin, falsche Ausbruchsignale zu eliminieren, die häufig bei eigenständigen Parabolic-SAR-Implementierungen unter konsolidierten oder unberechenbaren Marktbedingungen auftreten. Anstatt Signale ausschließlich auf der Grundlage einzelner Schnittpunkte der Kurskurven zu generieren, wertet der Indikator das Richtungsmomentum, gleitende Durchschnitte über mehrere Zeitrahmen, Trenderschöpfungsniveaus, Oszillatoren, dynamische Unterstützungs-/Widerstandszonen und automatisierte Fibonacci-Retracement-Niveaus aus, bevor er Kauf- und Verkaufseinstiegspfeile anzeigt.
Das Programm läuft vollständig innerhalb der nativen MQL5-Ausführungsumgebung und nutzt dabei ein optimiertes Indikator-Handle-Management, interne Array-Speicherzuweisung sowie Vektorberechnungen, um sicherzustellen, dass der Terminalbetrieb keinerlei Latenzbeeinträchtigungen erfährt.
2. FUNKTIONSPRINZIP UND MECHANISMUS DER SIGNALERZEUGUNG
Die Berechnungsabfolge des Indikators erfolgt über ein zweistufiges sequentielles Validierungsmodell: Erkennung einer primären Trendwende, gefolgt von einer sekundären Bestätigung durch mehrere Filter.
2.1. Primäre Umkehrlogik des Parabolic SAR
Die algorithmische Kernbasis verfolgt die Kursverschiebung unter Verwendung der parabolischen Formel von Welles Wilder:
- Aufwärtsgerichteter SAR: SAR(t) = SAR(t-1) + AF * [EP(t-1) - SAR(t-1)], wobei EP das Extremhoch des aktuellen Aufwärtstrends ist.
- Abwärtsgerichteter SAR: SAR(t) = SAR(t-1) – AF * [SAR(t-1) – EP(t-1)], wobei EP das extreme Tief des aktuellen Abwärtstrends ist.
- Der Beschleunigungsfaktor (AF) wird mit dem Wert „InpStep“ (Standard: 0,02) initialisiert und erhöht sich bei jedem nachfolgenden Hoch-/Tief-Wert um „InpStep“ bis zum Wert „InpMaximum“ (Standard: 0,20).
Eine gültige Richtungsumkehr („Flip“) tritt ausschließlich bei einem Polaritätswechsel ein:
- Bedingung für einen bullischen Flip: Der Parabolic-SAR-Wert der vorherigen Kerze lag auf oder über dem vorherigen Hoch (SAR[i-1] >= High[i-1]), und der Parabolic-SAR-Wert der aktuellen Kerze liegt auf oder unter dem aktuellen Tief (SAR[i] <= Low[i]).
- Bedingung für einen bärischen Flip: Der Parabolic-SAR der vorherigen Kerze lag auf oder unter dem vorherigen Tief (SAR[i-1] <= Low[i-1]), und der Parabolic-SAR der aktuellen Kerze liegt auf oder über dem aktuellen Hoch (SAR[i] >= High[i]).
2.2. Strenges, nicht-repaintendes Ausführungsmodell
Die Signalintegrität wird durch explizite Regeln zur Bar-Indizierung innerhalb von „OnCalculate“ geregelt:
- Die Darstellung von Pfeilen (BuyBuffer und SellBuffer) sowie die Ausgabe von Alarmen werden streng auf der Grundlage geschlossener Kerzen berechnet (rates_total - 2, was der Kerze 1 relativ zum Live-Kurs entspricht).
- Aktive, sich bildende Kerzen (rates_total - 1, was Kerze 0 entspricht) werden bei jedem eingehenden Tick explizit auf EMPTY_VALUE zurückgesetzt.
- Sobald ein Bar schließt und ein Pfeil gezeichnet wird, bleiben seine Koordinaten, Pufferwerte und grafischen Markierungen dauerhaft in den historischen Daten festgehalten. Signale verschwinden nicht, ändern ihre Position nicht und werden bei nachfolgenden Kursbewegungen nicht neu berechnet.
2.3. Logik der Filterausführung
Wenn bei Kerze [i] ein primärer SAR-Flip auftritt, wertet der Algorithmus alle aktivierten Filterbedingungen gleichzeitig aus. Das Einstiegssignal wird genau dann validiert, wenn alle aktiven Filter für diese Kerze den booleschen Wert „true“ zurückgeben:
- Ausgabe eines bullischen Signals: Bullischer SAR-Flip == „True“ UND alle aktiven Kauf-Filter == „True“. Der Pfeil wird bei „Low[i] – (Range * InpOffsetATR)“ eingezeichnet.
- Ausgabe eines bärischen Signals: Bärischer SAR-Flip == „True“ UND alle aktiven Verkaufsfilter == „True“. Der Pfeil wird bei „High[i]“ + (Range * InpOffsetATR) eingezeichnet.
3. TECHNISCHE SPEZIFIKATIONEN DER 17 KONFLUENZFILTER
Die Architektur umfasst 17 konfigurierbare Filtermodule, die auf klassischen technischen Modellen basieren und individuelle Handelsprofile ermöglichen:
- Filter 01: RSI-Cross-Filter (Use_RSI_Cross_Filter)
Bewertet relative Momentum-Grenzbedingungen unter Verwendung von RSI(14). Ein Kaufsignal setzt voraus, dass der RSI die Schwelle „Überverkauft“ überschreitet (RSI[i] > „Überverkauft“ UND RSI[i-1] <= „Überverkauft“). Ein Verkaufssignal setzt voraus, dass der RSI die Überkauft-Schwelle unterschreitet (RSI[i] < Überkauft UND RSI[i-1] >= Überkauft).
- Filter 02: ADX-Trendstärkenfilter (Use_ADX_Filter)
Misst das direktionale Marktmomentum mithilfe des Average Directional Index. Sowohl für Kauf- als auch für Verkaufsausführungen muss die Haupt-ADX-Linie gleich oder größer als ADX_Min_Level (Standard: 20,0) sein, wodurch ruhige Seitwärtsphasen herausgefiltert werden.
- Filter 03: Filter für einen einzelnen gleitenden Durchschnitt (Use_MA_Filter)
Erzwingt eine makroökonomische Richtungsausrichtung relativ zu einem einzelnen gleitenden Durchschnitt. Kaufsignale erfordern Close[i] > MA[i]. Verkaufssignale erfordern Close[i] < MA[i].
- Filter 04: Ichimoku-Senkou-Span-B-Filter (Use_Ichimoku_Filter)
Verwendet die dynamische Gleichgewichtslinie mit dem längsten Zyklus des Ichimoku-Kinko-Hyo-Systems (Standardperiode 52, um 26 Balken verschoben). Kaufsignale erfordern Close[i] > Senkou Span B[i]. Verkaufssignale erfordern Close[i] < Senkou Span B[i].
- Filter 05: Langfristiger RSI-75-Filter (Use_RSI75_Filter)
Wendet einen langzyklischen Relative-Strength-Index (Periode 75) als Makrotrend-Detektor an. Kaufsignale erfordern RSI75[i] > 50,0 (bullische Dominanz). Verkaufssignale erfordern RSI75[i] < 50,0 (bärische Dominanz).
- Filter 06: Filter mit doppeltem gleitendem Durchschnitt (Use_DoubleMA_Filter)
Verwendet zwei exponentielle gleitende Durchschnitte (Standard: schneller 30-EMA gegenüber langsamem 140-EMA). Kaufsignale erfordern, dass der schnelle EMA[i] > dem langsamen EMA[i] ist. Verkaufssignale erfordern, dass der schnelle EMA[i] < dem langsamen EMA[i] ist.
- Filter 07: Awesome-Oscillator-Multimodus-Filter (Use_AO_Filter)
Bietet drei wählbare Unterfiltermechanismen, die aus dem Momentum des Medianpreises (HL/2) berechnet werden:
a) AO-Volumenfilter: AO[i] >= AO_Buy_Min für Kauf; AO[i] <= AO_Sell_Max für Verkauf.
b) AO-Farbfilter: AO[i] > AO[i-1] (grüner Balken) für Kauf; AO[i] < AO[i-1] (roter Balken) für Verkauf.
c) AO-Null-Filter: AO[i] > AO[i-1] UND AO[i] > 0 für Kauf; AO[i] < AO[i-1] UND AO[i] < 0 für Verkauf.
- Filter 08: Sekundärer Parabolischer SAR-Filter (Use_SAR_Filter)
Wendet eine unabhängige sekundäre Parabolic-SAR-Basisberechnung mit eigenen Schritt- und Maximalparametern an, um eine doppelte Kursentwicklung zu überprüfen. Ein Kauf erfordert Close[i] > SAR_Filter[i]; ein Verkauf erfordert Close[i] < SAR_Filter[i].
- Filter 09: Heiken-Ashi-Preisaktionsfilter (Use_HeikenAshi_Filter)
Berechnet intern synthetische Preisaktionsbalken (HA_Close = (O+H+L+C)/4, HA_Open = (HA_Open[prev]+HA_Close[prev])/2). Ein Kauf erfordert HA_Close[i] > HA_Open[i] (bullischer Kerzenkörper); ein Verkauf erfordert HA_Close[i] < HA_Open[i] (bärischer Kerzenkörper).
- Filter 10: Commodity Channel Index-Trendfilter (Use_CCI_Filter)
Bewertet die zyklische Abweichung vom statistischen Mittelwert über den Zeitraum CCI_Period (Standard: 50). Ein Kauf erfordert CCI[i] > 0; ein Verkauf erfordert CCI[i] < 0.
- Filter 11: CCI-Überkauft-/Überverkauft-Filter (Use_CCI_OBOS_Filter)
Misst statistische Kurs-Extreme über kürzere Zeiträume (Standard: 14). Ein Kauf erfordert CCI[i] > CCI_Overbought (Standard: 100,0); ein Verkauf erfordert CCI[i] < CCI_Oversold (Standard: -100,0).
- Filter 12: Relative-Vigor-Index-Trendfilter (Use_RVI_Filter)
Analysiert die Position des Schlusskurses im Verhältnis zu den Kerzenspannen über den RVI_Period (Standard: 75). Ein Kaufsignal wird bei RVI_Main[i] > 0 ausgelöst; ein Verkaufssignal bei RVI_Main[i] < 0.
- Filter 13: RVI-Signallinien-Kreuzungsfilter (Use_RVI_Signal_Filter)
Verfolgt Mikro-Momentum-Kreuzungen zwischen der RVI-Hauptlinie und der Signallinie (gewichteter gleitender 4-Perioden-Durchschnitt des RVI). Ein Kauf erfordert RVI_Main[i] > RVI_Signal[i]; ein Verkauf erfordert RVI_Main[i] < RVI_Signal[i].
- Filter 14: MACD-Histogramm-Signalfilter (Use_MACD_Filter)
Misst das Konvergenz-/Divergenz-Momentum anhand der Spanne des MACD-Histogramms (Hauptlinie – Signallinie). Ein Kaufsignal wird bei MACD_Histogram[i] > 0 ausgelöst; ein Verkaufssignal bei MACD_Histogram[i] < 0.
- Filter 15: MACD-Nulllinienfilter (Use_MACD_Zero_Filter)
Bewertet die absolute Position der MACD-Hauptlinie relativ zur Nulllinie. Ein Kaufsignal setzt MACD_Main[i] > 0 voraus; ein Verkaufssignal setzt MACD_Main[i] < 0 voraus.
- Filter 16: Filter für Unterstützungs- und Widerstandszonen (Use_SR_Filter)
Durchsucht historische Kerzen über den Zeitraum SR_Period (Standard: 50), um Schwankungshochs (Widerstand) und Schwankungstiefs (Unterstützung) zu identifizieren. Prüft, ob das Tief/Hoch der Auslösekerze eine Toleranzzone von SR_Zone_Points * _Point berührt oder durchbricht. Ein Kauf erfordert eine geringe Interaktion mit der Unterstützung; ein Verkauf erfordert eine starke Interaktion mit dem Widerstand.
- Filter 17: Algorithmischer Fibonacci-Retracement-Filter (Use_Fib_Filter)
Berechnet strukturelle Marktschwankungen mithilfe eines dynamischen 3-Parameter-ZigZag-Algorithmus (ZigZag_Depth: 12, ZigZag_Deviation: 5, ZigZag_Backstep: 3). Ermittelt den jüngsten Höchst- und Tiefststand, bestimmt die Impulsrichtung, berechnet die Fibonacci-Retracement-Grenzen zwischen Fib_Level_1 (Standard: 0,382) und Fib_Level_2 (Standard: 0,618) und validiert Signale nur dann, wenn die Kerzenspannen mit dieser Retracement-Zone des Goldenen Schnitts interagieren.
4. VOLLSTÄNDIGES VERZEICHNIS DER EINGABEPARAMETER
Die folgende Dokumentation behandelt alle Eingabeparameter, die auf der Registerkarte „Eingaben“ in MetaTrader 5 verfügbar sind:
=== SAR-Parameter ===
- InpStep (Typ: double | Standard: 0,02 | Einheit: Faktor): Anfänglicher Beschleunigungsfaktor (AF) für Parabolic-SAR-Berechnungen. Steuert die Empfindlichkeit der parabolischen Kurve zu Beginn der Trendbildung.
- InpMaximum (Typ: double | Standard: 0,20 | Einheit: Faktor): Maximale Obergrenze für den Beschleunigungsfaktor. Verhindert, dass sich der SAR-Schritt unabhängig von der Trenddauer über diese Grenze hinaus ausdehnt.
=== Anzeigeeinstellungen ===
- InpSARColor (Typ: Farbe | Standard: clrDodgerBlue): Farbe, die den direkt auf den Kerzen des Charts eingezeichneten Punkten der Parabolischen SAR zugewiesen wird.
- InpBuyColor (Typ: Farbe | Standard: clrAqua): Farbe, die den bestätigten bullischen Einstiegspfeilen zugewiesen wird.
- InpSellColor (Typ: Farbe | Standard: clrRed): Farbe, die den bestätigten bärischen Einstiegspfeilen zugewiesen wird.
- InpArrowCodeBuy (Typ: int | Standard: 233 | Einheit: Wingdings-Code): Schriftzeichen-ID für bullische Signalpfeile (233 steht für einen Aufwärtspfeil).
- InpArrowCodeSell (Typ: int | Standard: 234 | Einheit: Wingdings-Code): Schriftzeichen-ID für bärische Signalpfeile (234 steht für einen Abwärtspfeil).
- InpArrowWidth (Typ: int | Standard: 2 | Bereich: 1 bis 5): Pixeldicke und visuelle Größe der Pfeilmarkierungen im Chart.
- InpOffsetATR (Typ: double | Standard: 0,3 | Einheit: Kerzenbereichsverhältnis): Vertikaler Versatzabstand zwischen dem Hoch/Tief des Balkens und der Pfeilgrafik, berechnet als Kerzenbereich multipliziert mit diesem Faktor.
=== Warnmeldungen & Benachrichtigungen ===
- InpAlerts (Typ: bool | Standard: true): Aktiviert native Popup-Meldungsdialogfelder des Terminals, wenn ein Signal bei Balken 1 schließt.
- InpAlertSound (Typ: bool | Standard: true): Aktiviert die Wiedergabe eines lokalisierten Tons über die Lautsprecher des Terminals bei Bestätigung des Signals.
- InpAlertPush (Typ: bool | Standard: true): Versendet mobile Push-Benachrichtigungen an Android- und iOS-MetaTrader-Apps, die über die MetaQuotes-ID verknüpft sind.
- InpAlertEmail (Typ: bool | Standard: false): Versendet automatische E-Mail-Benachrichtigungen über die SMTP-Konfiguration des Terminals.
- InpSoundFile (Typ: string | Standard: „alert.wav“): Name der Audiodatei im Verzeichnis „MT5/Sounds“ für akustische Benachrichtigungen.
=== Einstellungen für den RSI-Cross-Filter ===
- Use_RSI_Cross_Filter (Typ: bool | Standard: false): Schaltet das RSI-Crossover-Filtermodul für überverkaufte/überkaufte Bereiche ein oder aus.
- RSI_Length (Typ: int | Standard: 14 | Einheit: Bars): Berechnungszeitraum für den Relative Strength Index.
- RSI_Price_Source (Typ: ENUM_APPLIED_PRICE | Standard: PRICE_CLOSE): Art der Kursreihe, die zur Berechnung der RSI-Werte verwendet wird.
- Oversold (Typ: double | Standard: 30,0 | Einheit: Indexwert): Unterer Schwellenwert für die Validierung eines bullischen Momentum-Crossovers.
- Overbought (Typ: double | Standard: 70,0 | Einheit: Indexwert): Oberer Schwellenwert für die Validierung eines bärischen Momentum-Crossovers.
=== ADX-Filtereinstellungen ===
- Use_ADX_Filter (Typ: bool | Standard: false): Schaltet den Volatilitäts-/Trendfilter des Average Directional Movement Index ein oder aus.
- ADX_Period (Typ: int | Standard: 10 | Einheit: Balken): Glättungszyklus für die Bewertung der Richtungsbewegung.
- ADX_Min_Level (Typ: double | Standard: 20,0 | Einheit: Indexwert): Mindestschwelle für die Trendstärke, die erreicht sein muss, bevor ein Signal ausgelöst wird.
=== Einstellungen für den einzelnen MA-Filter ===
- Use_MA_Filter (Typ: bool | Standard: false): Schaltet den Trendrichtungsfilter auf Basis eines einzelnen gleitenden Durchschnitts ein oder aus.
- MA_Period (Typ: int | Standard: 50 | Einheit: Bars): Rückblickfenster für die Mittelwertbildung der gleitenden Durchschnittslinie.
- MA_Method (Typ: ENUM_MA_METHOD | Standard: MODE_SMA): Mathematischer Glättungsalgorithmus (SMA, EMA, SMMA oder LWMA).
- MA_Shift (Typ: int | Standard: 0 | Einheit: Bars): Horizontale Verschiebung nach vorne oder hinten, die auf den gleitenden Durchschnittspuffer angewendet wird.
=== Ichimoku Senkou Span B-Filtereinstellungen ===
- Use_Ichimoku_Filter (Typ: bool | Standard: false): Schaltet den Ichimoku-Kinko-Hyo-Senkou-Span-B-Trendfilter ein oder aus.
- Ichimoku_SenkouB (Typ: int | Standard: 52 | Einheit: Bars): Mittelungszeitraum für die Berechnung von Senkou Span B ((Höchstwert + Tiefstwert) / 2 über 52 Bars).
- Ichimoku_Kijun (Typ: int | Standard: 26 | Einheit: Bars): Index für die Verschiebung nach vorne, der auf die Koordinaten von Senkou Span B angewendet wird.
=== RSI-75-Filtereinstellungen ===
- Use_RSI75_Filter (Typ: bool | Standard: false): Schaltet den Trendfilter für die RSI-Mittellinie mit Makro-Periode ein oder aus.
- RSI_Filter_Period (Typ: int | Standard: 75 | Einheit: Bars): Erweiterter Rückblickzeitraum für die Berechnung des Makro-RSI.
=== Einstellungen für den Double-MA-Filter ===
- Use_DoubleMA_Filter (Typ: bool | Standard: false): Schaltet das Modul zur Trendorientierung mittels doppelter gleitender Durchschnitte ein oder aus.
- MA_A_Period (Typ: int | Standard: 30 | Einheit: Bars): Länge des Mittelungszyklus für den schnellen gleitenden Durchschnitt A.
- MA_A_Method (Typ: ENUM_MA_METHOD | Standard: MODE_EMA): Auf den gleitenden Durchschnitt A angewendete Glättungsmethode.
- MA_A_Applied (Typ: ENUM_APPLIED_PRICE | Standard: PRICE_CLOSE): Angewandte Kursquelle für den gleitenden Durchschnitt A.
- MA_A_Shift (Typ: int | Standard: 0 | Einheit: Bars): Horizontale Bar-Verschiebung für den gleitenden Durchschnitt A.
- MA_B_Period (Typ: int | Standard: 140 | Einheit: Balken): Länge des Mittelungszyklus für den langsamen gleitenden Durchschnitt B.
- MA_B_Method (Typ: ENUM_MA_METHOD | Standard: MODE_EMA): Auf den gleitenden Durchschnitt B angewendete Glättungsmethode.
- MA_B_Applied (Typ: ENUM_APPLIED_PRICE | Standard: PRICE_CLOSE): Angewandte Kursquelle für den gleitenden Durchschnitt B.
- MA_B_Shift (Typ: int | Standard: 0 | Einheit: Bars): Horizontale Bar-Verschiebung für den gleitenden Durchschnitt B.
=== Filtereinstellungen für den Awesome Oscillator ===
- Use_AO_Filter (Typ: bool | Standard: false): Hauptschalter zur Aktivierung der Auswertung des Awesome Oscillators.
- Use_AO_Volume_Filter (Typ: bool | Standard: false): Validiert Signale anhand von Schwellenwerten für die absolute Größe des AO-Histogramms.
- AO_Buy_Min (Typ: double | Standard: 4,0 | Einheit: Oszillatorwert): Minimaler positiver Schwellenwert, der für die Freigabe eines Kaufsignals erforderlich ist.
- AO_Sell_Max (Typ: double | Standard: -4,0 | Einheit: Oszillatorwert): Maximaler negativer Schwellenwert, der für die Freigabe eines Verkaufssignals erforderlich ist.
- Use_AO_Color_Filter (Typ: bool | Standard: false): Überprüft Signale anhand der Steigung zwischen den einzelnen Balken (grüne/rote Balken).
- Use_AO_Zero_Filter (Typ: bool | Standard: false): Erzwingt eine strenge Ausrichtung, bei der Kaufsignale eine AO-Ausdehnung über Null und Verkaufssignale eine AO-Ausdehnung unter Null erfordern.
=== Einstellungen für den Parabolic-SAR-Filter ===
- Use_SAR_Filter (Typ: bool | Standard: false): Schaltet die Bestätigung des parabolischen SAR-Trends durch eine sekundäre Basislinie ein oder aus.
- SAR_Step (Typ: double | Standard: 0,02 | Einheit: Faktor): Anfänglicher Beschleunigungsfaktor für den sekundären SAR-Filter.
- SAR_Maximum (Typ: double | Standard: 0,2 | Einheit: Faktor): Obergrenze für den maximalen Beschleunigungsfaktor des sekundären SAR-Filters.
=== Einstellungen für den Heiken-Ashi-Filter ===
- Use_HeikenAshi_Filter (Typ: bool | Standard: false): Schaltet den Echtzeit-Heiken-Ashi-Kerzenpolaritätsfilter ein oder aus.
=== Einstellungen für den CCI-Trendfilter ===
- Use_CCI_Filter (Typ: bool | Standard: false): Schaltet den Trendfilter für den Commodity Channel Index (CCI) an der Nulllinie ein oder aus.
- CCI_Period (Typ: int | Standard: 50 | Einheit: Bars): Rückblickfenster für die Mittelwertbildung bei der Berechnung des Trend-CCI.
- CCI_Applied (Typ: ENUM_APPLIED_PRICE | Standard: PRICE_CLOSE): Typ der verwendeten Kursreihe für die Berechnung des Trend-CCI.
=== Einstellungen für den CCI-Überkauft- und Überverkauft-Filter ===
- Use_CCI_OBOS_Filter (Typ: bool | Standard: false): Schaltet den statistischen Extremwert-Barrierefilter über den kurzfristigen CCI ein oder aus.
- CCI_OBOS_Period (Typ: int | Standard: 14 | Einheit: Bars): Rückblickzeitraum für die Bewertung der Oszillator-Grenzwerte.
- CCI_OBOS_Applied (Typ: ENUM_APPLIED_PRICE | Standard: PRICE_CLOSE): Angewandte Kursquelle für den OBOS-CCI.
- CCI_Overbought (Typ: double | Standard: 100,0 | Einheit: Level): Obere statistische Barriere, die die Freigabe des Kauffilters auslöst.
- CCI_Oversold (Typ: double | Standard: -100,0 | Einheit: Level): Untere statistische Schwelle, die die Freigabe des Verkaufsfilters auslöst.
=== Einstellungen für den RVI-Trendfilter ===
- Use_RVI_Filter (Typ: bool | Standard: false): Schaltet die Trendvalidierung des Relative Vigor Index anhand der Nulllinie ein oder aus.
- RVI_Period (Typ: int | Standard: 75 | Einheit: Balken): Lookback-Mittelwertbildungsfenster für die Berechnung des Langzyklus-RVI.
=== Einstellungen für den RVI-Signalfilter ===
- Use_RVI_Signal_Filter (Typ: bool | Standard: false): Schaltet die Bestätigung des Crossovers zwischen RVI-Haupt- und Signallinie ein oder aus.
- RVI_Signal_Period (Typ: int | Standard: 20 | Einheit: Bars): Rückblickzeitraum für die Auswertung der schnellen RVI-Signallinie.
=== Einstellungen für den MACD-Signalfilter ===
- Use_MACD_Filter (Typ: bool | Standard: false): Schaltet die Bestätigung des MACD-Histogramm-Moments (Haupt- vs. Signallinie) ein oder aus.
- MACD_FastEMA (Typ: int | Standard: 12 | Einheit: Bars): Periode des schnellen exponentiellen gleitenden Durchschnitts im MACD.
- MACD_SlowEMA (Typ: int | Standard: 26 | Einheit: Bars): Periode des langsamen exponentiellen gleitenden Durchschnitts im MACD.
- MACD_SignalSMA (Typ: int | Standard: 9 | Einheit: Balken): Periode des einfachen gleitenden Durchschnitts der Signallinie im MACD.
- MACD_Applied (Typ: ENUM_APPLIED_PRICE | Standard: PRICE_CLOSE): Angewandter Kurstyp für die Berechnungen der MACD-Eingabewerte.
=== MACD-Filter-Einstellungen der Stufe 0 ===
- Use_MACD_Zero_Filter (Typ: bool | Standard: false): Schaltet den Polaritätsfilter der MACD-Hauptlinie relativ zur Null-Basislinie ein oder aus.
=== Einstellungen für Unterstützungs- und Widerstandsfilter ===
- Use_SR_Filter (Typ: bool | Standard: false): Schaltet den dynamischen Filter für Kursabpraller in Hoch-/Tief-Zonen ein oder aus.
- SR_Period (Typ: int | Standard: 50 | Einheit: Bars): Rückblickfenster, das zur Ermittlung struktureller Hochs und Tiefs gescannt wird.
- SR_Zone_Points (Typ: double | Standard: 80 | Einheit: Punkte): Pufferzone um die Unterstützungs- und Widerstandslinien herum.
=== Einstellungen für den Fibonacci-Filter ===
- Use_Fib_Filter (Typ: bool | Standard: false): Schaltet den algorithmischen ZigZag-Swing-Retracement-Filter ein oder aus.
- Fib_Level_1 (Typ: double | Standard: 0,382 | Einheit: Verhältnis): Erste Retracement-Grenze (typischerweise 38,2 % Fibonacci-Verhältnis).
- Fib_Level_2 (Typ: double | Standard: 0,618 | Einheit: Verhältnis): Zweite Retracement-Grenze (typischerweise 61,8 % Fibonacci-Verhältnis).
- ZigZag_Depth (Typ: int | Standard: 12 | Einheit: Bars): Mindestanzahl an Bars, die ohne ein neues Extrem erforderlich ist, um einen Swing-Abschnitt zu bilden.
- ZigZag_Deviation (Typ: int | Standard: 5 | Einheit: Punkte): Mindestschwelle für den Kursabstand, die erforderlich ist, um eine Swing-Abweichung zu validieren.
- ZigZag_Backstep (Typ: int | Standard: 3 | Einheit: Balken): Mindestabstand in Balken zwischen aufeinanderfolgenden Swing-Punkten.
5. BUFFER-MAPPING & EXPERT-ADVISOR-INTEGRATION (EA)
Der Indikator verfügt über eine standardisierte Pufferindizierung, die den nahtlosen Datenabruf innerhalb benutzerdefinierter Expert Advisors oder Handels-Utilities über die native MQL5-Funktion „iCustom“ ermöglicht:
Struktur der Pufferzuordnung:
- Pufferindex 0: Werte der parabolischen SAR-Trajektorie (Doppel-Gleitkomma-Kursniveaus).
- Pufferindex 1: Werte der bestätigten bullischen Kaufsignal-Pfeile (Kursausführungspunkt auf Bar 1; gibt EMPTY_VALUE zurück, wenn kein Signal vorliegt).
- Pufferindex 2: Werte der bestätigten bärischen Verkaufssignal-Pfeile (Kursausführungspunkt auf Bar 1; gibt EMPTY_VALUE zurück, wenn kein Signal vorliegt).
Integrationsbeispiel (MQL5-Quellcode):
Um verifizierte, nicht nachzeichnende Signale innerhalb eines Expert Advisors zu extrahieren, führen Sie das folgende Implementierungsmuster aus:
- Initialisieren Sie das Handle innerhalb von OnInit():
int IndicatorHandle = iCustom(_Symbol, _Period, "ParabolicSAR_Signal_MultiFilter_v2_NoRepaint");
- Rufen Sie die Signale in OnTick() beim Schließen des Balkens ab (Auswertung von Balken 1):
double buySignal[], sellSignal[];
ArraySetAsSeries(buySignal, true);
ArraySetAsSeries(sellSignal, true);
CopyBuffer(IndicatorHandle, 1, 1, 1, buySignal);
CopyBuffer(IndicatorHandle, 2, 1, 1, sellSignal);
if(buySignal[0] != EMPTY_VALUE && buySignal[0] > 0)
{
// Kaufaufträge ausführen
}
else if(sellSignal[0] != EMPTY_VALUE && sellSignal[0] > 0)
{
// Verkaufsorder-Operationen ausführen
}
6. EMPFOHLENE BETRIEBSKONFIGURATIONEN
Obwohl die Software in allen von MetaTrader 5 unterstützten Chart-Zeitrahmen und für alle liquiden Wertpapiere funktioniert, sollten je nach Handelsmethodik unterschiedliche Parameterprofile ausgewählt werden:
Profil A: Intraday-Momentum-Scalping
- Zielinstrumente: EURUSD, GBPUSD, USDJPY, XAUUSD.
- Unterstützte Zeitrahmen: M5, M15.
- Empfohlene Konfiguration:
- Basis-SAR: InpStep = 0,02, InpMaximum = 0,20.
- Aktive Filter: Use_DoubleMA_Filter = true (EMA 30 / EMA 140), Use_ADX_Filter = true (Periode 10, Mindestwert 22,0), Use_CCI_Filter = true (Periode 50).
- Begründung: Isoliert richtungsgebundene Mikroausbrüche, die mit der Struktur des mittelfristigen gleitenden Durchschnitts übereinstimmen, und filtert gleichzeitig seitwärtsgerichtete Marktschwankungen heraus.
Profil B: Swing- und trendfolgende Ausführung
- Zielinstrumente: Liquiditätsechte Währungspaare, Index-CFDs, Rohstoffe.
- Unterstützte Zeitrahmen: H1, H4, D1.
- Empfohlene Konfiguration:
- Basis-SAR: InpStep = 0,015, InpMaximum = 0,15.
- Aktive Filter: Use_Ichimoku_Filter = true (Senkou B 52, Kijun 26), Use_MACD_Filter = true (12, 26, 9), Use_Fib_Filter = true (ZigZag-Tiefe 12, Abweichung 5, Rückschritt 3).
- Begründung: Erfasst wichtige makroökonomische Trendumkehren bei bestätigten Kursausbrüchen über die Ichimoku-Gleichgewichtsgrenze hinaus in Kombination mit Rückläufen nach dem Goldenen Schnitt.
Profil C: Erholung von strukturellen Unterstützungs-/Widerstandsniveaus
- Zielinstrumente: Hochvolatile Devisen-Crosses und Indizes.
- Unterstützte Zeitrahmen: M15, M30, H1.
- Empfohlene Konfiguration:
- Basis-SAR: InpStep = 0,02, InpMaximum = 0,20.
- Aktive Filter: Use_SR_Filter = true (Periode 50, Zonenpunkte 80), Use_RSI_Cross_Filter = true (Länge 14, Überverkauft 30, Überkauft 70).
- Begründung: Erkennt Parabolic-SAR-Umkehrübergänge, die direkt innerhalb wichtiger struktureller Unterstützungs- oder Widerstandsgrenzen auftreten.
7. LEISTUNG, RESSOURCENMANAGEMENT UND TERMINAL-EINSTELLUNGEN
- Algorithmische Effizienz: Der Code nutzt optimierte interne Ringberechnungen und gibt Handles während „OnDeinit“ über „IndicatorRelease“ frei. Die Validierung der Mindestanzahl an Balken verhindert eine vorzeitige Verarbeitung bei Charts mit unzureichender Historie.
- Einrichtung von Push-Benachrichtigungen: Um Signalbenachrichtigungen auf iOS-/Android-Geräten zu erhalten, geben Sie Ihre MetaQuotes-ID unter „Extras“ -> „Optionen“ -> „Benachrichtigungen“ ein, stellen Sie sicher, dass „Push-Benachrichtigungen aktivieren“ aktiviert ist, und überprüfen Sie, ob „InpAlertPush“ auf „true“ gesetzt ist.
- Audiodateien: Akustische Warnmeldungen basieren auf Audiodateien, die sich im Ordner „Sounds“ des Terminals befinden. Stellen Sie sicher, dass „InpSoundFile“ auf eine gültige .wav-Datei in Ihrem Verzeichnis verweist.
8. HAFTUNGSAUSSCHLUSS ZU REGULATORISCHEN RISIKEN
Der Handel mit Devisen, Indizes, Rohstoffen, Kryptowährungen und anderen Finanzderivaten birgt ein erhebliches Risiko und ist möglicherweise nicht für alle Anleger geeignet. Hohe Marktvolatilität und finanzielle Hebelwirkung können sich sowohl zu Ihrem Vorteil als auch zu Ihrem Nachteil auswirken und möglicherweise zum Verlust eines Teils oder des gesamten von Ihnen eingezahlten Kapitals führen.
Diese Software ist ein analytisches und operatives Indikator-Tool, das ausschließlich zur Unterstützung von Händlern bei der technischen Bewertung entwickelt wurde; sie stellt weder eine Finanz-, Anlage- noch Handelsberatung dar, noch garantiert sie gewinnbringende Ergebnisse. Die Analyse historischer Kursverläufe, statistische Backtesting-Modelle und vergangene Performance-Kennzahlen stellen keine verlässlichen Indikatoren für zukünftige Handelsergebnisse dar. Nutzer müssen dieses Produkt unter realistischen Handelsbedingungen gründlich auf einem simulierten Demokonto testen, bevor sie es in Live-Handelsumgebungen einsetzen.
