AutoTrianglePatterns
- Indikatoren
-
Shi Yuan Wang
Ich entwickle benutzerdefinierte Indikatoren, Expert Advisors (EAs), Skripte und Trading-Tools für MetaTrader 4 und MetaTrader 5 sowie Indikatoren für TradingView (Pine Script).
Was ich für Sie tun kann:
- Umwandlung einer klar beschriebenen Handelsregel in einen backtestbaren MQL4/MQL5 EA - Version: 1.10
Automatische Dreiecksmuster
Übersicht
„Auto Triangle Patterns“ ist ein Chartindikator für MetaTrader 5. Er durchsucht den Kursverlauf des aktuellen Charts und sucht nach drei klassischen Dreiecksformationen: aufsteigend, absteigend und symmetrisch. Wird eine Formation gefunden, zeichnet der Indikator ihre beiden Begrenzungslinien, füllt den Bereich dazwischen aus und fügt eine Textbeschriftung mit dem Namen der Formation hinzu. Das Muster bleibt auf dem Chart erhalten und wird mit jedem neuen Balken nach rechts erweitert.
Wenn der Kurs die Formation in eine beliebige Richtung verlässt oder wenn die Formation ihren Scheitelpunkt ohne Ausbruch erreicht, markiert der Indikator das Ergebnis und stellt die Aktualisierung dieses Musters ein. Abgeschlossene Muster bleiben im Chart erhalten, sodass vergangene Formationen überprüft werden können.
Der Indikator eröffnet oder verwaltet keine Positionen, platziert keine Orders und generiert keine Handelssignale. Er ist ein Werkzeug zur technischen Analyse und Chartvisualisierung. Alle Markierungen sind Interpretationen vergangener Kursdaten.
So funktioniert es
Die Suche erfolgt in mehreren Schritten.
Schwankungspunkte. Der Indikator ermittelt Schwankungshochs und Schwankungstiefs. Ein Schwankungshoch ist ein Balken, dessen Höchstwert nicht von den Höchstwerten der Balken links und rechts davon übertroffen wird; ein Schwankungstief wird auf dieselbe Weise ermittelt. Die Anzahl der auf jeder Seite überprüften Balken wird durch „InpPivotLeft“ und „InpPivotRight“ festgelegt. Da die Balken auf der rechten Seite zuerst schließen müssen, wird ein Schwingungspunkt erst bestätigt, nachdem die „InpPivotRight“-Balken danach erschienen sind.
Grenzenlinien. Die obere Linie wird durch die jüngsten InpTouches-Swing-Hochs gezogen, die untere Linie durch die jüngsten InpTouches-Swing-Tiefs. Jeder für eine Linie verwendete Swing-Punkt muss innerhalb eines Abstands von InpFitTol multipliziert mit der Average True Range (ATR) des Charts liegen, wobei die ATR-Periode durch InpAtrLen festgelegt wird. Diese Toleranz sorgt dafür, dass die Linien den tatsächlichen Kursberührungen folgen, anstatt einer exakten mathematischen Anpassung.
Klassifizierung. Die beiden Steigungen bestimmen die Bezeichnung der Formation. Eine Linie wird als horizontal behandelt, wenn die Gesamtänderung ihres Wertes über die Länge des Musters nicht mehr als InpFlatPct Prozent der Höhe des Musters beträgt. Eine obere horizontale Linie mit einer ansteigenden unteren Linie bildet ein aufsteigendes Dreieck. Eine fallende obere Linie mit einer horizontalen unteren Linie bildet ein absteigendes Dreieck. Wenn beide Linien zusammenlaufen und das Verhältnis zwischen der steileren und der flacheren Steigung nicht mehr als InpSymRatio beträgt, ist die Formation symmetrisch.
Validierung. Ein Kandidat wird nur akzeptiert, wenn mehrere Bedingungen gleichzeitig erfüllt sind. Die Schwankungspunkte der beiden Linien müssen sich zeitlich überlappen. Die Länge des Musters muss zwischen InpMinBars und InpMaxBars liegen. Der Punkt, an dem sich die beiden Linien treffen, muss rechts vom aktuellen Balken liegen. Die obere Linie muss über der unteren Linie bleiben. Schließlich muss jeder Balken zwischen dem Beginn des Musters und dem aktuellen Balken innerhalb des Kanals bleiben, wobei dieselbe ATR-basierte Toleranz gilt, die auch für die Linien verwendet wird.
Zeichnen und Aktualisieren. Eine akzeptierte Formation wird vom Start-Bar bis zum aktuellen Bar gezeichnet. Die Linien der aktiven Formation werden mit jedem neuen Bar nach rechts verlängert, sodass die Formation stets den aktuellen Kurs widerspiegelt.
Ergebnis eines Musters. Es gibt drei mögliche Ergebnisse. Ein Ausbruch über die obere Linie markiert einen bullischen Ausbruch; ein Durchbruch unter die untere Linie markiert einen bärischen Einbruch. In beiden Fällen wird ein Pfeil auf dem Balken platziert und die Linien behalten ihren durchgezogenen Stil. Erreicht der Kurs den Scheitelpunkt der Formation oder wird die Formation länger als „InpMaxBars“, wird das Muster ohne Ausbruch geschlossen und mit gestrichelten Linien sowie dem Vermerk „abgelaufen“ dargestellt. Beginnt eine neue Formation, während die vorherige noch aktiv ist, wird die vorherige im gleichen gestrichelten Stil mit dem Vermerk „kein Ausbruch“ geschlossen.
Es ist jeweils nur eine Formation aktiv. Bereits aufgelöste Formationen verbleiben als statische Objekte im Chart und werden nicht mehr verändert.
Anwendung
Fügen Sie den Indikator einem beliebigen Chart hinzu. Er funktioniert bei jedem Symbol und jedem Zeitrahmen, und die Standardeinstellungen sind für die meisten Charts ein sinnvoller Ausgangspunkt.
Passen Sie zunächst die Schwankungsstärke an. Das Paar „InpPivotLeft“ und „InpPivotRight“ legt fest, wie groß eine Schwankung sein muss, bevor sie gezählt wird. Kleinere Werte erzeugen mehr Schwankungspunkte und mehr Muster; größere Werte erzeugen weniger, dafür aber größere Muster. Geeignete Werte hängen vom Symbol und von den persönlichen Gewohnheiten bei der Chartanalyse ab.
Empfohlene Startwerte für die Schwankungsstärke:
M5 bis M15: InpPivotLeft 3, InpPivotRight 3
M30 bis H1: InpPivotLeft 5, InpPivotRight 5
H4 bis D1: InpPivotLeft 7, InpPivotRight 7
Die Anzahl der Berührungen pro Seite ist der zweite wichtige Regler. Bei einem Wert von 2 für „InpTouches“ werden Muster früher und häufiger erkannt. Werte von 3 oder 4 erfordern mehr bestätigte Berührungen an jeder Linie, sodass weniger Muster gefunden werden, die gefundenen Muster jedoch auf einer solideren Kursgrundlage beruhen.
Die Toleranz „InpFitTol“ wird in ATR-Einheiten gemessen und legt fest, wie streng die Schwankungspunkte und der Kurs innerhalb des Musters den beiden Linien folgen müssen. Ein Wert zwischen 0,3 und 0,8 eignet sich für die meisten Charts. Niedrigere Werte ergeben engere, selektivere Muster; höhere Werte lassen lockerere Muster zu.
Der Breakout-Modus wird durch „InpUseClose“ gesteuert. Bei dem Standardwert „true“ wird ein Breakout nur gezählt, wenn ein Balken jenseits einer Begrenzungslinie schließt; ein Docht, der eine Linie durchbricht, ohne jenseits davon zu schließen, wird also nicht markiert. Bei dem Wert „false“ werden stattdessen das Hoch und das Tief des Balkens herangezogen.
Das Terminal zeigt Benachrichtigungen an, wenn eine neue Formation erkannt wird und wenn ein Ausbruch oder ein Durchbruch auftritt. Benachrichtigungen werden nur bei geschlossenen Balken ausgegeben. Während der Indikator bei seiner ersten Berechnung den historischen Verlauf durchsucht, werden keine Benachrichtigungen ausgegeben.
Laden Sie ausreichend Chart-Historiendaten, bevor Sie Schlussfolgerungen ziehen. Der Indikator scannt beim Laden bis zu „InpHistoryBars“ Balken der Historie; ein Chart mit mehr geladenen Balken liefert ein vollständigeres Bild.
Eingabeparameter
Mustererkennung
InpPivotLeft. Anzahl der Balken links von einem Schwenkpunkt, die diesen nicht überschreiten dürfen. Standardwert 5.
InpPivotRight. Anzahl der Balken rechts von einem Schwankungspunkt, die diesen nicht überschreiten dürfen. Standardwert: 5.
InpTouches. Anzahl der Swing-Punkte, die an jeder Begrenzungslinie erforderlich sind. Werte von 2 bis 4. Standardwert 2.
InpFlatPct. Maximale Änderung einer Begrenzungslinie über die Länge des Musters, ausgedrückt als Prozentsatz der Musterhöhe, damit die Linie als horizontal behandelt wird. Standardwert 25,0.
InpSymRatio. Maximales Verhältnis zwischen den beiden Steigungen bei einem symmetrischen Dreieck. Standardwert 3,0.
InpFitTol. Toleranz für die Schwankungspunkte und für den Kurs innerhalb des Musters, in ATR-Einheiten. Standardwert 0,5.
InpAtrLen. Periode der Average True Range, die zur Umrechnung der Toleranz in Kurseinheiten verwendet wird. Standardwert 14.
Mustergröße und Historie
InpMinBars. Mindestlänge eines Musters in Bars. Standardwert 15.
InpMaxBars. Maximale Länge eines Musters in Balken, gezählt vom Beginn des Musters bis zu seinem Scheitelpunkt. Standardwert 200.
InpHistoryBars. Anzahl der historischen Balken, die beim Laden des Indikators gescannt werden. Der Wert 0 scannt den gesamten verfügbaren Verlauf. Standardwert: 3000.
Mustertypen
InpShowAsc. Aktiviert die Suche nach aufsteigenden Dreiecken. Standardwert: true.
InpShowDesc. Aktiviert die Suche nach absteigenden Dreiecken. Standard: true.
InpShowSym. Aktiviert die Suche nach symmetrischen Dreiecken. Standard: „true“.
Darstellung
InpColAsc. Linienfarbe für aufsteigende Dreiecke. Standardwert: clrTeal.
InpColDesc. Linienfarbe für absteigende Dreiecke. Standardwert: clrRed.
InpColSym. Linienfarbe für symmetrische Dreiecke. Standardwert: clrBlue.
InpLineWidth. Breite der Begrenzungslinien. Standardwert: 2.
InpShowFill. Den Bereich zwischen den beiden Begrenzungslinien ausfüllen. Standardwert: true.
Ausbrüche und Warnmeldungen
InpUseClose. Es muss eine Kerze über einer Begrenzungslinie schließen, bevor ein Ausbruch gezählt wird. Bei dem Wert „false“ werden das Hoch und das Tief der Kerze verwendet. Standardwert: „true“.
InpShowBreakout. Zeichnet einen Pfeil auf die Kerze eines Ausbruchs oder Einbruchs. Standardwert: true.
InpColBull. Farbe des Pfeils bei einem Ausbruch über die obere Linie. Standardwert: clrGreen.
InpColBear. Farbe des Pfeils bei einem Durchbruch unterhalb der unteren Linie. Standardwert: clrRed.
Hinweise und Einschränkungen
Swing-Punkte werden erst bestätigt, nachdem sich InpPivotRight-Balken auf der rechten Seite eines Swings geschlossen haben. Diese Verzögerung ist Teil der Swing-Erkennung und stellt keinen Fehler dar. Bestätigte Swing-Punkte verschieben sich danach nicht und verschwinden auch nicht.
Die aktive Formation wird angepasst, sobald neue Swing-Punkte erscheinen, sodass sich ihre Linien, ihre Länge und ihre Beschriftung ändern können, bis die Formation aufgelöst ist. Aufgelöste Formationen werden danach nicht mehr verändert.
Ausbrüche werden anhand geschlossener Kerzen bewertet. Bei aktivierter Option „InpUseClose“ wird ein Docht, der eine Begrenzungslinie durchbricht, ohne jenseits davon zu schließen, nicht als Ausbruch markiert.
Die Linien der aktiven Formation werden bis zum aktuellen Kerzenstab gezeichnet, einschließlich des Kerzenstabs, der sich noch bildet. Die Ausbruchbewertung selbst verwendet ausschließlich geschlossene Kerzenstäbe.
Es ist jeweils nur eine Formation aktiv. Frühere Formationen verbleiben als statische Objekte im Chart.
Alle Markierungen sind Chart-Objekte. Sie gehören zum Chart-Fenster und werden zusammen mit dem Indikator entfernt.
Der Indikator verwendet keine Indikatorpuffer. Er zeigt im Datenfenster nichts an, und seine Werte können von anderen Programmen nicht gelesen werden.
Der Indikator benötigt eine ausreichende Historie im Chart und einen gefüllten ATR-Puffer, bevor er mit dem Zeichnen beginnt.
Verfügbarkeit
Der Indikator wird derzeit kostenlos über den MQL5-Marktplatz vertrieben. Sobald die Anzahl der Downloads 100 übersteigt, wird er in ein kostenpflichtiges Abonnementprodukt umgewandelt. Nutzer, die die kostenlose Version vor der Umstellung erhalten haben, können die erhaltene Kopie gemäß den Regeln des MQL5-Marktplatzes weiterhin nutzen.
Demoversion
Gemäß den Regeln des MQL5-Marktes kann die Demoversion eines Indikators nicht auf einem Live-Chart ausgeführt werden. Sein Verhalten lässt sich im visuellen Testmodus des im Client-Terminal integrierten Strategietesters beobachten.
Risikohinweis
Dieser Indikator ist ein Werkzeug zur technischen Analyse und Chartvisualisierung. Er liefert keine Handelssignale, eröffnet oder verwaltet keine Positionen und garantiert oder verspricht keinerlei Gewinn. Dreiecksformationen und Ausbruchmarkierungen sind lediglich Interpretationen vergangener Kursdaten. Der Handel an den Finanzmärkten ist mit erheblichen Risiken verbunden. Jede Nutzung dieses Indikators sowie jede mit oder ohne ihn getroffene Handelsentscheidung liegt in der alleinigen Verantwortung des Nutzers.
Support
Support wird über den Kommentarbereich der Produktseite und über das Nachrichtensystem von MQL5.com bereitgestellt.
