English
preview
MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 67): Verwendung von TRIX-Mustern und der Williams Percent Range

MQL5-Assistenten-Techniken, die Sie kennen sollten (Teil 67): Verwendung von TRIX-Mustern und der Williams Percent Range

MetaTrader 5Handel |
34 0
Stephen Njuki
Stephen Njuki

Einführung

Wir setzen unsere Serie über die Untersuchung von Signalmustern fort, die durch die Paarung von technischen Indikatoren erzeugt werden. Beim letzten Mal haben wir uns den fraktalen, adaptiven, gleitenden Durchschnitt in Verbindung mit dem Force-Index-Oszillator angesehen. In diesem Artikel befassen wir uns mit dem Triple Exponential Moving Average Oscillator (TRIX) in Verbindung mit einem anderen Oszillator, dem Williams Percent Range (WPR). Der TRIX als gleitender Durchschnittsoszillator ist ein Trendindikator, während die Williams Percent Range als Ergänzung zu den Unterstützungs- und Widerstandsniveaus dient.

Wie schon in früheren Artikeln betrachten wir 10 typische Muster, die sich aus der Kombination dieser beiden Indikatoren ergeben können, und trainieren oder optimieren sie mit CHF JPY auf dem 4-Stunden-Zeitrahmen für das Jahr 2023. Mit diesem Symbol werden Vorwärtsbewegungen oder Tests für das Jahr 2024 durchgeführt.

Die grundlegende Definition des TRIX ist, dass es sich um einen Momentum-Oszillator handelt, der den Preis durch die Verwendung eines dreifach exponentiellen gleitenden Durchschnitts glättet. Sie eignet sich am besten zur Erkennung von Trends durch Glättung oder Herausfiltern von Rauschen. Dies wird durch die Messung der Änderungsrate eines dreifach geglätteten gleitenden Durchschnitts erreicht. Neben der Trendbestätigung liefert er auch Divergenzsignale. Der TRIX ergibt sich aus der dreimaligen Anwendung eines exponentiellen Durchschnitts (EMA). Anschließend wird eine prozentuale Veränderung berechnet. Die Formel lautet wie folgt:

trix_form

wobei:

  • EMA₁: Der erste EMA wird auf den Preis (z. B. den Schlusskurs) im Zeitraum N angewendet.
  • EMA₂: Zweiter EMA angewandt auf EMA₁.
  • EMA₃: Dritter EMA auf EMA₂ angewandt.
  • TriX Linie: Prozentuale Veränderung des dreifach geglätteten EMA (Momentum-Oszillator).

Bei den üblichen Einstellungen für den TRIX ist die Periode oft auf 15 eingestellt. Wir verwenden für unsere Tests den Wert 3, da sich dieser angesichts unseres kleinen Testfensters von einem Jahr als ausreichend empfindlich erwiesen hat. Wir verwenden den konstanten Parameter „__PERIOD“ in der Kopfzeile der nutzerdefinierten Signalklasse, um dies zu definieren.

#define __PERIOD 3
class CSignalTRX_WPR : public CExpertSignal
{
protected:
   CiTriX            m_trix;
   CiWPR             m_wpr;
   int               m_patterns_used;
   //--- adjusted parameters

   //--- "weights" of market models (0-100)
   int               m_pattern_0;      // model 0
   int               m_pattern_1;      // model 1

...


   int               m_pattern_9;      // model 9
   //
   //int               m_patterns_usage;   //

public:
   CSignalTRX_WPR(void);
   ~CSignalTRX_WPR(void);
   //--- methods of setting adjustable parameters
   //--- methods of adjusting "weights" of market models
   void              Pattern_0(int value)
   {  m_pattern_0 = value;
   }
   void              Pattern_1(int value)
   {  m_pattern_1 = value;
   }
   void              Pattern_2(int value)
   {  m_pattern_2 = value;
   }


...

   void              PatternsUsed(int value)
   {  m_patterns_used = value;
      PatternsUsage(value);
   }
   //--- method of verification of settings
   virtual bool      ValidationSettings(void);
   //--- method of creating the oscillator and timeseries
   virtual bool      InitIndicators(CIndicators *indicators);
   //--- methods of checking if the market models are formed
   virtual int       LongCondition(void) override;
   virtual int       ShortCondition(void) override;
   virtual double    Direction(void) override;

protected:
   //--- method of initialization of the oscillator
   bool              InitTRX_WPR(CIndicators *indicators);
   //--- methods of getting data
   double            TRX(int ind)
   {  //
      m_trix.Refresh(-1);
      return(m_trix.Main(ind));
   }
   double            TRX_MAX(int ind)
   {  //
      m_trix.Refresh(-1);
      return(m_trix.Main(m_trix.Maximum(0, ind, __PERIOD)));
   }
   double            TRX_MIN(int ind)
   {  //
      m_trix.Refresh(-1);
      return(m_trix.Main(m_trix.Minimum(0, ind, __PERIOD)));
   }
   double            WPR(int ind)
   {  //
      m_wpr.Refresh(-1);
      return(m_wpr.Main(ind));
   }
   double            Close(int ind)
   {  //
      m_close.Refresh(-1);
      return(m_close.GetData(ind));
   }
   double            High(int ind)
   {  //
      m_high.Refresh(-1);
      return(m_high.GetData(ind));
   }
   double            Low(int ind)
   {  //
      m_low.Refresh(-1);
      return(m_low.GetData(ind));
   }
   long              Volume(int ind)
   {  //
      m_tick_volume.Refresh(-1);
      return(m_tick_volume.GetData(ind));
   }
   int               X()
   {  //
      return(StartIndex());
   }
   //--- methods to check for patterns
   bool              IsPattern_0(ENUM_POSITION_TYPE T);
   bool              IsPattern_1(ENUM_POSITION_TYPE T);

...


   bool              IsPattern_9(ENUM_POSITION_TYPE T);
};

MQL5 bietet diesen Indikator als integrierte Funktion, sodass nur minimaler Programmieraufwand unsererseits erforderlich ist. Wir implementieren sie aus der CiTRIX-Klasse. Ihre Auslegung hängt von ihrer Position oder ihrem absoluten Wert ab. Ein positiver TRIX ist ein Zeichen für einen Aufwärtstrend oder einen aufwärts gerichteten Kurs. Ein negativer TRIX markiert den gegenteiligen, abwärts gerichteten Kurs. Die Nulllinie ist ebenfalls eine wichtige Schwelle, deren Überschreiten häufig eine Trendumkehr markiert.

Ein weiteres Schlüsselphänomen dieses Indikators ist die Divergenz, bei der die Kurse in entgegengesetzte Richtungen laufen, was häufig auf schwache Preistrends hinweist. Seine Vorteile liegen in der Verringerung der Verzögerung und des Rauschens im Vergleich zu einzelnen EMAs und in der guten Funktionsweise in trendigen Märkten. In unruhigen Märkten kann es zu Fehlsignalen kommen.

Der WPR ist ein Unterstützungs-/Widerstandsoszillator, der überkaufte und überverkaufte Preisregionen markiert. Er wurde von Larry Williams entwickelt und vergleicht den aktuellen Schlusskurs mit der Hoch-Tief-Spanne in einem bestimmten Zeitraum. Sein Hauptzweck könnte darin bestehen, wichtige Umkehrpunkte auf dem Markt zu identifizieren. Er funktioniert daher am besten in schwankenden und nicht trendgebundenen Märkten. Die Formel lautet wie folgt:

wpr_form

wobei:

  • „Highest High_N“ ist der höchste Preis in den letzten N Perioden.
  • „Lowest Low_N“ ist der niedrigste Preis in den letzten N Perioden.
  • „Close_today“ ist der aktuelle Schlusskurs.
  • „× (-100)“ invertiert den Wert zur leichteren Interpretation (Skala 0 bis -100).

Für beide gemeinsamen Formeln ist „today“ dasselbe wie die aktuellen/letzten Kursbalkenwerte. „Today“ wurde einfach an den täglichen Zeitrahmen angepasst. Normalerweise beträgt die Rückblickperiode 14, aber wir verwenden eine ähnliche Periodenlänge mit dem TRIX-Oszillator, nämlich 3 (siehe oben). Es steht dem Leser frei, diese anzupassen und sogar eigene Zeiträume für die beiden Indikatoren festzulegen. Die Interpretation dieses Oszillators hat Werte von -80 bis -100 als Zeichen dafür, dass sich ein Vermögenswert auf einer Unterstützung befindet. Dies ist eine potenzielle Kaufgelegenheit. Werte im Bereich von -20 bis 0 sind ein Zeichen dafür, dass der Kurs des Vermögenswerts auf Widerstand stößt. Dies signalisiert eine Verkaufsmöglichkeit. Das Überschreiten des mittleren Schwellenwerts von -50 kann auf Trendverschiebungen hinweisen. 

Der Oszillator liefert auch Divergenzsignale, wie z. B. die Aufwärtsdivergenz, bei der eine Umkehr nach oben bevorsteht, wenn der Kurs ein tieferes Tief, der WPR aber ein höheres Tief erreicht. Eine Abwärtsdivergenz liegt hingegen vor, wenn der Kurs ein höheres Hoch, der WPR jedoch ein niedrigeres Hoch erreicht, was ein Zeichen für eine mögliche Abwärtsumkehr ist. Die Vorteile des WPR sind, dass er einfach und effektiv für den kurzfristigen Handel ist. Er lässt sich auch gut mit anderen Indikatoren kombinieren. Seine Grenzen liegen in der Erzeugung falscher Signale in Märkten mit starken Trends und in der Notwendigkeit einer zusätzlichen Bestätigung, wenn bestimmte Signale aufgezeichnet werden.

Damit können wir uns nun die 10 Muster ansehen. Alle Tests werden für das Paar CHF JPY auf dem 4-Stunden-Zeitfenster für den Zeitraum 2023.01.01 bis 2025.01.01 durchgeführt. Das Jahr 2023 ist ein Trainings- oder Optimierungszeitraum, während das Jahr 2024 der Test- oder Vorwärtslaufzeitraum ist.


TRIX Crossover und WPR Pivot

Bei unserem ersten Muster kreuzt der TRIX die Nulllinie und der WPR schwenkt entweder von der Unterstützung oder vom Widerstand weg. Wenn der TRIX seine Nulllinie überschreitet, bedeutet dies eine Trendwende nach oben, da der dreifach geglättete EMA sich nach oben beschleunigt. Sobald sich der WPR von unten nach oben über -80 bewegt, deutet dies darauf hin, dass der Preis eine überverkaufte Situation verlässt oder von der Unterstützung abprallt. Dies bedeutet häufig, dass sich ein Kaufdruck aufbaut, und zusammen bestätigen diese beiden Signale eine potenzielle Trendumkehr oder -fortsetzung mit einem geringeren Risiko eines falschen Ausbruchs. 

Bei der Anwendung dieser Methode kann man zusätzlich zum TRIX-Kreuzungspunkt nach einer Kreuzung mit zunehmender Steigung suchen, um eine stärkere Bestätigung zu erhalten. Es ist auch wichtig, dass das WPR über -80 liegt, aber unter -50 bleibt, um einen vorzeitigen Einstieg bei schwachen Umkehrbewegungen zu vermeiden. Eine Bestätigung durch Volumenspitzen oder einen Durchbruch des Preises über einen wichtigen Widerstand kann ebenfalls in Betracht gezogen werden, um zusätzliches Vertrauen zu schaffen. In unruhigen Märkten wird es immer Risiken geben, daher könnte der Einsatz zusätzlicher Filter wie MA hilfreich sein. Wir setzen dies in MQL5 wie folgt um:

//+------------------------------------------------------------------+
//| Check for Pattern 0.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_0(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && 0.0 < TRX(X()) && 0.0 >  TRX(X() + 1) && -80.0 > WPR(X() + 1) && WPR(X()) > -80.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && 0.0 < TRX(X() + 1) && 0.0 >  TRX(X()) && -20.0 > WPR(X()) && WPR(X() + 1) > -20.0)
   {  return(true);
   }
   return(false);
}

Ein Abwärtssignal liegt vor, wenn der TRIX unter die Nulllinie fällt, was ein Zeichen für einen Abwärtstrend ist, da der geglättete EMA sich verlangsamt. Der WPR würde gleichzeitig von oben unter -20 fallen, was den Ausstieg des Kurses aus der überkauften oder widerständigen Zone als Zeichen für einen zunehmenden Verkaufsdruck kennzeichnet. Diese Kombination deutet in der Regel auf eine mögliche Trendumkehr oder eine Fortsetzung des Abwärtstrends hin. Einschlägige Hinweise spiegeln die obigen Punkte zum Aufwärtstrend wider, wobei die zunehmende fallende Steigung überprüft werden kann, um ein stärkeres Abwärtsmomentum zu gewährleisten, und der WPR sollte unter -20, aber noch nicht bei -50 liegen.

Es sollte auch geprüft werden, ob der Kurs unter die Unterstützung fällt oder ob das Kaufvolumen abnimmt, um eine zusätzliche Bestätigung zu erhalten. Risiken in Whipsaw- oder Range-Bound-Märkten können mit Trendlinien oder RSI gemindert werden. Unsere Testergebnisse von 2023.01.01 bis 2025.01.01, die nur für das Jahr 2023 trainiert wurden, sind unten aufgeführt:

r0


TRIX Preisdivergenz und WPR bei Extremwerten

Unser nächstes Muster nutzt die Divergenz zwischen Preis und TRIX, während der WPR extrem ist. Ein Aufwärtssignal liegt vor, wenn der Kurs niedrigere Tiefststände erreicht, der TRIX jedoch höhere Tiefststände bildet, was auf ein nachlassendes Abwärtsmomentum hindeutet. In Verbindung mit dem WPR, der unter dem Unterstützungsniveau von -80 liegt, deutet dies darauf hin, dass der Kurs überverkauft ist und wahrscheinlich nach oben drehen wird. Dies würde durch den Aufwärtstrend des TRIX unterstützt. Um zuverlässig zu sein, sollten Sie die Divergenz über mindestens zwei Kursschwankungen ermitteln. Es ist auch gut abzuwarten, bis der WPR von unter -80 ansteigt, um den Kaufdruck zu bestätigen.

Kerzenmuster wie der Hammer können ebenfalls zur Einstiegsbestätigung herangezogen werden. Das Risiko bei diesem Muster besteht darin, dass die Divergenz bei starken Abwärtstrends versagt. Eine Bestätigung auf höheren Zeitrahmen kann jedoch dazu beitragen, diese zu minimieren. Wir implementieren dies wie folgt in MQL5:

//+------------------------------------------------------------------+
//| Check for Pattern 1.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_1(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && Low(X() + 1) > Low(X()) && -80.0 > WPR(X()) && TRX(X()) > TRX(X() + 1))
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && High(X()) > High(X() + 1) && WPR(X()) > -20.0 && TRX(X() + 1) > TRX(X()))
   {  return(true);
   }
   return(false);
}

Das Abwärtssignal wird registriert, wenn wir eine negative Divergenz im TRIX mit dem WPR im Widerstandsbereich/überkauften Bereich haben. Diese negative Divergenz tritt auf, wenn der Kurs höhere Hochs erreicht, der TRIX jedoch niedrigere Hochs bildet, was ein Nachlassen des Aufwärtsmomentums anzeigt. Ein WPR über -20 signalisiert die Widerstandszone und deutet auf eine mögliche Umkehr hin. Dies ist oft ein wahrscheinliches Verkaufssignal. Bei der Umsetzung dieser Methode ist es oft eine gute Idee, die Divergenz über mehrere Peaks zu bestätigen, um die Genauigkeit zu gewährleisten. Es kann auch sinnvoll sein, zu warten, bis die WPR nach mehr als einem Balken unter -20 fällt.

Darüber hinaus kann eine Suche nach Abwärtsmustern von Kerzen als zusätzliche Bestätigung für dieses Muster dienen. Die Grenzen der Muster liegen in Märkten mit starken Trends, in denen Divergenzen oft zum Scheitern verurteilt sind. Unsere Testergebnisse für dieses Muster werden im Folgenden vorgestellt:

r1


TRIX-Kreuz und WPR Position

Das Aufwärtssignal für unser nächstes Muster besteht darin, dass der TRIX seine Signalnulllinie übersteigt, was ein Zeichen für einen Aufwärtstrend ist, während der WPR über -50 liegt, was bedeutet, dass sich der Preis in einer neutralen bis widerständigen Zone befindet. Diese Konstellation unterstützt die These eines sich verstärkenden Aufwärtstrends mit geringerer Wahrscheinlichkeit eines Rückschlags. Wenn die TRIX-Kreuzung an einer steiler werdenden Flanke erfolgt, ist dies ein Zeichen für ein starkes Signal. Der WPR sollte über -50 aber unter -20 liegen, da wir nach neutralen Zonen suchen, die sich dem Widerstand nähern. Eine zusätzliche Bestätigung kann der Ausbruch des Kurses über wichtige gleitende Durchschnitte oder die Überprüfung des ADX liefern. Wir setzen dies in MQL5 wie folgt um:

//+------------------------------------------------------------------+
//| Check for Pattern 2.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_2(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && 0.0 < TRX(X()) && 0.0 >  TRX(X() + 1) && WPR(X()) > -50.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && 0.0 < TRX(X() + 1) && 0.0 >  TRX(X()) && -50.0 > WPR(X()))
   {  return(true);
   }
   return(false);
}

Das rückläufige Muster besteht darin, dass der TRIX von oben unter die Nulllinie fällt, während der WPR unter -50 liegt. Dies deutet auf einen Abwärtstrend mit anhaltendem Verkaufsdruck hin. Dieses Argument, wie auch die Aufwärtsspiegelung des obigen Beispiels, basiert auf der geringeren Wahrscheinlichkeit einer Umkehrung, da sich der Kurs an einem neutralen Punkt und weit weg von der Unterstützung befindet. Ein sich verjüngender TRIX ist wie bei den anderen oben genannten Mustern ein starkes Signal. Die WPR sollte ebenfalls unter -50 liegen, aber noch nicht bei -80. Abgehängte Märkte, wie der Aufwärtstrend, eignen sich nicht für dieses Muster, daher sollte es in Märkten mit Trends angewendet werden. Unsere Testergebnisse für Muster-2 lauten wie folgt:

r2


TRIX Trending und WPR Exit

Unser nächstes Muster ist so definiert, dass der TRIX an oder nahe seiner Nulllinie Unterstützung findet, während der WPR die Unterstützungs-/Widerstandszonen verlässt. Bei einer Aufwärtsbewegung würde der TRIX in einer engen Spanne um den Nullpunkt oszillieren, bevor er entscheidend über den Nullpunkt ausbricht. Gleichzeitig würde der WPR den Unterstützungsbereich verlassen, indem er die Schwelle von -80 von unten nach oben durchbricht und darüber schließt. Bei der Identifizierung historischer TRIX-Unterstützungsniveaus kann die Verwendung vergangener Charts eine Herausforderung darstellen und als zu starker Filter wirken, der Handels-Setups oder Gelegenheiten einschränken könnte.

Das Kreuz des WPR von -80 kann durch einen anderen Momentum-Indikator bestätigt werden, der ein steigendes Momentum signalisiert. Engulfing-Preismuster in steigenden Kursen oder Volumenspitzen können ebenfalls als zusätzliche Bestätigungssignale herangezogen werden. Die Einschränkung dieses Musters sind schwache Unterstützungsniveaus, die scheitern können. Eine Überprüfung auf einem höheren Zeitrahmen kann als gute Kontrolle für dieses Muster dienen. Unsere MQL5-Implementierung sieht folgendermaßen aus:

//+------------------------------------------------------------------+
//| Check for Pattern 3.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_3(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && TRX(X()) >= 0.0 && TRX(X() + 1) <= 0.0 && TRX(X() + 2) >= 0.0 && WPR(X() + 1) < -80.0 && WPR(X()) > -80.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && TRX(X() + 2) <= 0.0 && TRX(X() + 1) >= 0.0 && TRX(X()) <= 0.0 && WPR(X()) < -20.0 && WPR(X() + 1) > -20.0)
   {  return(true);
   }
   return(false);
}

Das rückläufige Signal zeigt, dass sich der TRIX in einer Handelsspanne befindet, bevor er nach unten ausbricht, wobei der WPR die -20-Marke von oben überschreitet und darunter schließt. Dies spricht für eine rückläufige Entwicklung. Die TRIX-Konsolidierung, gefolgt von einem Ausbruch nach unten, deutet darauf hin, dass er auf einen „Widerstand“ trifft. Nachlassendes Aufwärtsmomentum. WPR bewegt sich auch bestätigt Verkaufsdruck. Die TRIX-Bestätigung für frühere Höchststände kann, wie bei dem Aufwärtstrend, bei der Erzeugung von Signalen hinderlich sein. Es ist wichtig, darauf zu warten, dass die WPR unter -20 bleibt, um falsche Signale zu vermeiden. Auch fallende Kursbewegungen wie das Abwärts-Engulfing können hier eine Rolle spielen. Starke Markttrends machen die Verwendung dieses Musters sehr schwierig, sodass die Nutzer darauf achten müssen, indem sie andere Indikatoren, wie den RSI, hinzuziehen. Unsere Testergebnisse für dieses Muster finden Sie weiter unten:

r3


TRIX Ausbruch und WPR verlässt den neutralen Bereich

Das Aufwärtssignal unseres fünften Musters besteht darin, dass der TRIX, wie bei Muster 3, einen Widerstand durchbricht, während der WPR zwischen -50 und -20 liegt. Dies bestätigt in der Regel, dass sich der Kurs in einer steigenden oder neutralen Zone befindet und deutet somit auf einen nachhaltigen Ausbruch hin. Bei diesem Muster können die TRIX-Steigung und das Volumen zur Unterstützung der Signalstärke dienen. Die Suche nach Kursausbrüchen auf einem Chart, insbesondere mit Hilfe von Schlüsselindikatoren wie MA, kann mit einbezogen werden. Dieses Muster gilt nur für Märkte, die sich im Trend befinden, denn bei volatilen Märkten kann es zu einigen Fehlsignalen kommen. Die Implementierung von MQL5 sieht folgendermaßen aus:

//+------------------------------------------------------------------+
//| Check for Pattern 4.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_4(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && 0.0 < TRX(X()) && 0.0 >  TRX(X() + 1) && TRX(X()) == TRX_MAX(X()) && WPR(X()) > -50.0 && WPR(X()) < -20.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL &&  0.0 < TRX(X() + 1) && 0.0 >  TRX(X()) && TRX(X()) == TRX_MIN(X()) && WPR(X()) > -80.0 && WPR(X()) < -50.0)
   {  return(true);
   }
   return(false);
}

Das Abwärtssignal ist der Durchbruch des TRIX unter die Unterstützung, während sich der WPR im neutralen bis bärischen Bereich befindet. Sobald der TRIX eine „historische“ Unterstützung wie ein früheres Tief oder sogar die Nulllinie unterschreitet, kann dies auf eine Beschleunigung des Abwärtsmomentums hindeuten. Der WPR würde zwischen -50 und -80 liegen, was eine neutrale bis Abwärtszone darstellt und die Gültigkeit des Durchbruchs unterstützt. Die Neigung des TRIX am Durchbruchspunkt muss ebenfalls berücksichtigt werden, und der WPR sollte unter -50 liegen, aber nicht überverkauft sein, um ein optimales Timing zu erreichen. Eine zusätzliche Bestätigung kann durch Kursunterbrechungen im Chart, z. B. unterhalb eines MA, erfolgen. In unruhigen Märkten kommt dieses Muster nicht gut an. Die Testergebnisse für dieses Muster sind unten aufgeführt;

r4


TRIX-Umkehrung und WPR-Exit

Das Aufwärtssignal für dieses Muster besteht darin, dass der TRIX einen extremen Höchststand erreicht, der in der Regel deutlich über der Nulllinie liegt, und sich dann nach unten dreht, während der WPR unter -20 fällt. Dies deutet darauf hin, dass der Preis nicht mehr überkauft ist und daher ein gesunder Rücksetzer oder eine Trendfortsetzung bevorsteht. Bei diesem Muster ist es wichtig, dass der WPR in Richtung -50 fällt, aber nicht überverkauft wird. Man sollte auch darauf achten, ob der Preis wichtige Unterstützungsniveaus oder die Parität mit einem wichtigen gleitenden Durchschnitt hält.

Die Grenzen dieses Musters liegen darin, dass überkaufte Rücksetzer in scharfe Rücksetzer ausarten können; deshalb könnte die Verwendung von Fibonacci-Retracements bei diesem Muster helfen, dies zu bewältigen. Wir setzen dies in MQL5 wie folgt um:

//+------------------------------------------------------------------+
//| Check for Pattern 5.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_5(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && TRX(X() + 2) < TRX(X() + 1) && TRX(X() + 1) >  TRX(X()) && TRX(X() + 1) == TRX_MAX(X()) && WPR(X() + 1) > -20.0 && WPR(X()) < -20.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && TRX(X() + 2) > TRX(X() + 1) && TRX(X() + 1) <  TRX(X()) && TRX(X() + 1) == TRX_MIN(X()) && WPR(X()) > -80.0 && WPR(X() + 1) < -80.0)
   {  return(true);
   }
   return(false);
}

Das rückläufige Signal ist die Umkehrung des TRIX von einem überverkauften Niveau, wobei der WPR den überverkauften Bereich verlässt, was auf einen möglichen Rücksetzer zu einem Abwärtstrend hindeutet. Die Bodenbildung des TRIX bei einem extremen Tiefstand und die anschließende Umkehr nach oben deuten darauf hin, dass sich die überverkauften Bedingungen entspannen könnten. Der WPR müsste über -80 steigen, um zu bestätigen, dass der Kurs nicht mehr überverkauft ist und somit der vorherige Abwärtstrend wieder aufgenommen werden könnte. Ein steiler TRIX, der unter Null bleibt, kann ein gesunder zusätzlicher Bestätigungsfilter sein. Der WPR sollte in Richtung -50 ansteigen, aber diese Schlüsselmarke nicht überschreiten, da wir nicht überkauft sein wollen.

Ein weiteres nützliches Signal kann ein Kurs sein, der sich um ein Schlüsselniveau oder einen wichtigen MA bewegt. Einschränkungen gibt es bei diesem Muster in unruhigen Märkten, daher könnten Trendlinien ergänzt werden, um dies herauszufiltern. Unsere Tests für dieses Muster ergeben folgenden Bericht:

r5


TRIX-Fortsetzung und WPR im mittleren Bereich

Das Aufwärtssignal für dieses Muster besteht darin, dass der TRIX weiterhin über Null liegt, während der WPR im mittleren Bereich von -50 bis -20 angesiedelt ist. Dies soll einen anhaltenden Aufwärtstrend signalisieren, der noch Raum für Wachstum bieten könnte. Die Erklärung hierfür ist, dass ein TRIX, der bei einer positiven Steigung über der Nulllinie bleibt, als Bestätigung für einen anhaltenden Aufwärtstrend dient. Ein komplementärer WPR im mittleren Bereich zeigt auch an, dass der Kurs weder überkauft noch überverkauft ist. Dies deutet darauf hin, dass der Trend möglicherweise weitergehen kann, ohne dass die Gefahr einer Umkehr unmittelbar besteht.

Bei der Verwendung dieses Musters muss sichergestellt werden, dass der TRIX einen konstanten Aufwärtstrend ohne scharfe Umkehrungen beibehält. Der WPR sollte ebenfalls zwischen -50 und -20 liegen, um eine optimale Trendfortsetzung zu gewährleisten. Die Bestätigung durch den Preis, indem er einer Trendlinie folgt oder über einem wichtigen MA bleibt, kann ergänzt werden. Die Grenzen dieses Musters liegen darin, dass Signale im mittleren Bereich bei geringer Volatilität schwächer werden können. Unsere Implementierung in MQL5 sieht dafür folgendermaßen aus:

//+------------------------------------------------------------------+
//| Check for Pattern 6.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_6(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && TRX(X() + 2) > TRX(X() + 1) && TRX(X() + 1) > TRX(X()) && TRX(X()) > 0.0 && WPR(X()) > -80.0 && WPR(X()) < -20.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && TRX(X() + 2) < TRX(X() + 1) && TRX(X() + 1) < TRX(X()) && TRX(X()) < 0.0 && WPR(X()) > -80.0 && WPR(X()) < -20.0)
   {  return(true);
   }
   return(false);
}

Das rückläufige Muster zeigt, dass der TRIX weiterhin unter der Nulllinie notiert und der WPR im mittleren Bereich liegt, was auf einen anhaltenden Abwärtstrend hindeutet. Der Grund für diese rückläufige Tendenz ist, dass ein TRIX, der unter Null bleibt und eine negative Steigung aufweist, tendenziell einen Abwärtstrend bestätigt. Ein WPR im mittleren Bereich von -50 bis -80 zeigt ebenfalls, dass der Kurs noch nicht überverkauft ist. Dies könnte bedeuten, dass der Abwärtstrend ohne unmittelbare Umkehr fortgesetzt werden kann. Bei der Anwendung dieses Abwärtsmusters ist, wie bereits bei den meisten der oben genannten Muster erwähnt, die TRIX-Neigung entscheidend. Sie sollte durchweg abwärts gerichtet sein.

Die WPR sollte ebenfalls überwacht werden, um sicherzustellen, dass sie innerhalb des Schlüsselbereichs von -50 bis -80 bleibt. Der Preis auf einem wichtigen MA- oder Unterstützungsniveau verleiht diesem Muster Glaubwürdigkeit, und seine Grenzen sind, wie bereits beim gespiegelten Aufwärtsmuster erwähnt, eine Signalschwäche im mittleren Bereich, die sich über längere Zeiträume hinziehen kann. Die Testergebnisse für dieses, unser siebtes Muster, finden Sie unten:

r6


TRIX Konsolidierung plus WPR in Zone

Das Aufwärtsmuster zeigt einen Ausbruch aus einer Konsolidierung des TRIX, wobei sich der WPR in einer steigenden Unterstützungszone befindet, was auf einen neuen Aufwärtstrend mit gesundem Momentum hindeutet. Dies gilt, weil eine Seitwärtsbewegung des TRIX oder eine Konsolidierung in der Nähe einer Nulllinie und ein anschließender Ausbruch nach oben auf einen neuen Aufwärtstrend hindeuten. Ein WPR von über -50 bestätigt das Aufwärtsmomentum, was darauf hindeutet, dass das Aufwärtsmomentum wahrscheinlich anhalten wird. Um dies umzusetzen, sollte idealerweise eine TRIX-Konsolidierung in einem möglichst engen Bereich nahe der Nullgrenze über mehrere Balken/Perioden hinweg ermittelt werden.

Es handelt sich also um ein sehr restriktives Signal, das auch bei großen Testzeiträumen kaum Signale erzeugen würde. Dieses und ähnliche Muster sind der Grund, warum wir uns für die sehr kurze Indikatorperiode von 3 entschieden haben, da längere Perioden nicht so empfindlich auf den Preis reagieren und daher nur sehr wenige Signale und somit auch nur sehr wenige Abschlüsse liefern. Für dieses Muster in der Tat Hangbestätigung obwohl wünschenswert, wie bei allen anderen Mustern, streng genommen ist ein Luxus, da es nicht so viele Einstiegspunkte zu beginnen. Wir setzen dies in MQL5 wie folgt um:

//+------------------------------------------------------------------+
//| Check for Pattern 7.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_7(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && fabs(Close(X()) - Close(X() + 1)) >= TRX_MAX(X() + 1) - TRX_MIN(X() + 1) && TRX_MAX(X() + 1) > 0.0 && TRX_MIN(X() + 1) < 0.0 && TRX_MAX(X() + 1) < TRX(X()) && WPR(X()) >= -20.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && fabs(Close(X()) - Close(X() + 1)) >= TRX_MAX(X() + 1) - TRX_MIN(X() + 1) && TRX_MAX(X() + 1) > 0.0 && TRX_MIN(X() + 1) < 0.0 && TRX_MIN(X() + 1) > TRX(X()) && WPR(X()) <= -80.0)
   {  return(true);
   }
   return(false);
}

Das rückläufige Muster zeigt, dass der TRIX aus der Konsolidierung ausbricht und der WPR sich in einer rückläufigen Zone befindet, was auf einen neuen Abwärtstrend mit einem gewissen Momentum hindeutet. Der Grund für den Abwärtstrend ist ähnlich wie bei dem Aufwärtstrend. Eine Konsolidierung an der unbestimmten Nullmarke über einen längeren Zeitraum, gefolgt von einem Durchbruch nach unten, markiert oft nicht nur einen Abwärtstrend, sondern die Entstehung eines solchen. Die Positionierung von WPR unter -50 untermauert diese Abwärtsthese nur noch weiter.

Bei der Anwendung umfassender Kontrollen für eine enge TRIX-Konsolidierung muss ein Gleichgewicht mit einer gesunden Anzahl von Handelsgeschäften gefunden werden. Der WPR sollte unter -50 liegen, aber nicht überverkauft sein, um ein optimales Timing zu erreichen. Falsche Zusammenbrüche in unruhigen Märkten bleiben ein Hauptrisiko für dieses Muster. Unsere Testergebnisse für Muster-7 lauten wie folgt:

r7


TRIX-Umkehr an der Nulllinie mit extremem WPR

Unser vorletztes Muster hat sein Aufwärtssignal durch den TRIX, der an der Nulllinie nach oben dreht, während der WPR überverkauft ist. Dies ist eine starke Aufwärtsumkehr eines neutralen Trends. Der Grund, warum diese Muster steigen könnten, liegt darin, dass der TRIX an der Nulllinie eine Umkehr nach oben vollzieht, was einen Wechsel von einem neutralen zu einem Aufwärtsmomentum bedeutet. Ein WPR von unter -80 bestätigt ebenfalls die überverkauften Bedingungen. Dies deutet auf eine wahrscheinliche Trendwende hin, da der Kaufdruck zunimmt.

Die Verwendung dieses Musters erfordert eine ordnungsgemäße Bestätigung der TRIX-Umkehrung, was die Betrachtung von mehr als einem Balken erfordern kann. Auch das Warten darauf, dass der WPR bei mehr als einem Balken deutlich über -80 steigt, kann mehr Glaubwürdigkeit verleihen. Zusätzliche Unterstützungsfilter können Aufwärtsmuster der Kerzen Muster oder Kurse sein, die sich auf wichtigen Unterstützungsniveaus bewegen, wie bereits bei den anderen Mustern oben erläutert. Märkte mit einem Trend sind eine Einschränkung für dieses Muster. Wir setzen dies in MQL5 wie folgt um:

//+------------------------------------------------------------------+
//| Check for Pattern 8.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_8(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && TRX(X()) > TRX(X() + 1) && TRX(X() + 1) > 0.0 && TRX(X() + 2) > TRX(X() + 1) && WPR(X()) < -50.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && TRX(X() + 2) < TRX(X() + 1) && TRX(X() + 1) < 0.0 && TRX(X()) < TRX(X() + 1) && WPR(X()) > -50.0)
   {  return(true);
   }
   return(false);
}

Das Abwärtsmuster zeigt, dass der TRIX abwärts tendiert, wenn er sich dem Nullpunkt und dem WPR nähert, was darauf hindeutet, dass sich der Kurs im überkauften Bereich oder am Widerstandsniveau befindet. Der Grund dafür ist eine Umkehr des TRIX von den Nullmarken oder eine Verschiebung der Marktstimmung in eine Abwärtsrichtung. Der WPR-Wert von über -20 bestätigt ebenfalls überkaufte Bedingungen, was eine Umkehr mit hoher Wahrscheinlichkeit zur Folge hat, da der Verkaufsdruck zunimmt. Die Bestätigung der Umkehr des TRIX muss anhand der Steigung oder der Anzahl der Balken nach der Umkehrung eindeutig sein.

Das Abwarten eines überzeugenden Rückgangs des WPR unter -20 und das Ergänzen mit Abwärtsmustern der Kerzen oder Widerstandsniveaus kann ebenfalls zu glaubwürdigeren Mustern führen. Einschränkungen für dieses Muster, wie auch für das Aufwärtsmuster, gibt es in Märkten mit Trends. Die Testergebnisse für dieses Muster ergaben den folgenden Bericht. Wie bei allen in diesem Artikel getesteten Mustern wurde der Test vom 2023.01.01. bis zum 2025.01.01 nach dem Training/Optimierung vom 2023.01.01 bis zum 2024.01.01. durchgeführt. Das verwendete Symbol ist CHF JPY und der Zeitrahmen war die 4-Stunden-Periode.

r8


TRIX Double Bottom/Top und WPR überverkauft/überkauft

Das Aufwärtssignal unseres letzten Musters zeigt, dass der TRIX einen doppelten Boden bildet, während der WPR eine starke Aufwärtsumkehr signalisiert. Dieses Unterstützungsniveau soll bestätigen, dass ein Preisboden vorhanden ist. Die Erklärung für dieses Argument ist, dass ein doppelter Boden, d. h. zwei sich abwechselnde Punkte auf einem Unterstützungsniveau, das oft unter Null liegt, ähnlich wie eine Konsolidierung, eine potenzielle Trendwende von einem Abwärtstrend zu einem Aufwärtstrend anzeigt. Da der WPR die Unterstützung von -80 erreicht hat, bestätigt dies, dass die überverkauften Bedingungen bereits eingetreten sind und somit eine Veränderung bevorsteht. 

Zusätzliche Überlegungen für den Einsatz sind die Bestätigung, dass der doppelte Boden nahe der Nulllinie oder im negativen Bereich liegt. Diese Anforderung wird es sehr schwierig machen, Signale zu erhalten, da TRIX-Doppelböden nur selten über abwechselnde Balken auftreten. Wie bei den anderen Mustern können unterstützende Signale auch darin bestehen, dass der Preis einen doppelten Boden bildet oder über einen Widerstand ausbricht. Schwachpunkte für dieses Muster sind volatile, unruhige Märkte. So codieren wir die MQL5-Implementierung:

//+------------------------------------------------------------------+
//| Check for Pattern 9.                                             |
//+------------------------------------------------------------------+
bool CSignalTRX_WPR::IsPattern_9(ENUM_POSITION_TYPE T)
{  if(T == POSITION_TYPE_BUY && TRX(X()) >= 0.0 && TRX(X() + 1) <= 0.0 && TRX(X() + 2) >= 0.0 && TRX(X() + 3) <= 0.0 && TRX(X() + 4) >= 0.0 && WPR(X()) <= -50.0)
   {  return(true);
   }
   else if(T == POSITION_TYPE_SELL && TRX(X() + 4) <= 0.0 && TRX(X() + 3) >= 0.0 && TRX(X() + 2) <= 0.0 && TRX(X() + 1) >= 0.0 && TRX(X()) <= 0.0 && WPR(X()) >= -50.0)
   {  return(true);
   }
   return(false);
}

Das Abwärtsmuster zeigt ein Doppel-TRIX-Top, das wiederum an der Nullgrenze oder knapp darüber im positiven Bereich liegt. Dies ist häufig ein Zeichen für ein nachlassendes Aufwärtsmomentum. Der WPR-Wert von über -20 bestätigt die überkauften Bedingungen und unterstützt die Annahme einer Abwärtsumkehr. Die Verwendungshinweise decken die meisten der Argumente ab, die wir bereits für die anderen Muster oben erwähnt haben. Steigung, verzögerte Einträge und zusätzliche Indikatoren. Die Risiken werden hier in schwankenden Märkten genutzt. Die Testergebnisse für dieses endgültige Muster ergaben keine Abschlüsse, da das Einstiegsmuster zu restriktiv war. Und das trotz eines sehr kurzen Indikatorzeitraums!


Schlussfolgerung

Wir haben Muster und Signale untersucht, die sich aus der Kombination der Indikatoren Triple Exponential Moving Average Oscillator und Williams Percent Range Oszillator ergeben. Für unsere Testzwecke haben wir zu kurze Indikatorzeiträume verwendet, um eine ausreichende Anzahl von Handelsgeschäften für unser kleines Testfenster von einem Jahr zu erreichen. Daran können Sie erkennen, dass dieses Indikatorpaar nicht so empfindlich oder stark frequentiert ist wie andere Paare, die wir in der Vergangenheit betrachtet haben. Daher ist bei diesem Indikatorpaar eine zweite Prüfung durch den Leser zwingend erforderlich, bevor man feststellen kann, was sich bewährt. Nach unseren obigen Tests sind nur die Muster 1, 4 und 5 in der Lage, vorwärts zu gehen.


Name Beschreibung
wz-67.mq5 Wizard Assembled Expert Adviser, dessen Header die verwendeten Dateien skizziert
SignalWZ_67.mqh Nutzerdefinierte Signalklassendatei, die mit Hilfe des Assistenten erstellt wurde.

Eine Anleitung zur Verwendung dieser nutzerdefinierten Signalklassendatei zur Zusammenstellung eines Expert Advisors durch den MQL5-Assistenten finden Sie hier für neue Leser.

Übersetzt aus dem Englischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/en/articles/18251

Beigefügte Dateien |
SignalWZ_67.mqh (19.78 KB)
wz-67.mq5 (7.82 KB)
Die Übertragung der Trading-Signale in einem universalen Expert Advisor. Die Übertragung der Trading-Signale in einem universalen Expert Advisor.
In diesem Artikel wurden die verschiedenen Möglichkeiten beschrieben, um die Trading-Signale von einem Signalmodul des universalen EAs zum Steuermodul der Positionen und Orders zu übertragen. Es wurden die seriellen und parallelen Interfaces betrachtet.
Vom Neuling zum Experten: Autogeometrisches Analysesystem Vom Neuling zum Experten: Autogeometrisches Analysesystem
Geometrische Muster bieten Händlern eine prägnante Methode zur Interpretation von Kursbewegungen. Viele Analysten zeichnen Trendlinien, Rechtecke und andere Formen mit der Hand und treffen ihre Handelsentscheidungen dann auf der Grundlage der von ihnen gesehenen Formationen. In diesem Artikel untersuchen wir eine automatisierte Alternative: die Nutzung von MQL5 zur Erkennung und Analyse der gängigsten geometrischen Muster. Wir schlüsseln die Methodik auf, erörtern Details der Implementierung und zeigen auf, wie die automatische Mustererkennung die Markteinblicke eines Händlers schärfen kann.
Eine alternative Log-datei mit der Verwendung der HTML und CSS Eine alternative Log-datei mit der Verwendung der HTML und CSS
In diesem Artikel werden wir eine sehr einfache, aber leistungsfähige Bibliothek zur Erstellung der HTML-Dateien schreiben, dabei lernen wir auch, wie man eine ihre Darstellung einstellen kann (nach seinem Geschmack) und sehen wir, wie man es leicht in seinem Expert Advisor oder Skript hinzufügen oder verwenden kann.
Automatisieren von Handelsstrategien in MQL5 (Teil 18): Envelopes Trend Bounce Scalping - Kerninfrastruktur und Signalgenerierung (Teil I) Automatisieren von Handelsstrategien in MQL5 (Teil 18): Envelopes Trend Bounce Scalping - Kerninfrastruktur und Signalgenerierung (Teil I)
In diesem Artikel bauen wir die Kerninfrastruktur für den Envelopes Trend Bounce Scalping Expert Advisor in MQL5. Wir initialisieren Envelopes und andere Indikatoren für die Signalerzeugung. Wir richten ein Backtest ein, um uns auf die Handelsausführung im nächsten Teil vorzubereiten.