AutomaitcSR
- 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: 2.0
Automatische Unterstützungs- und Widerstandsniveaus mit Breakout-Tracking
Hinweis zum Produktnamen: Der Dateiname und der Kurzname des Indikators im Quellcode lauten „AutomaitcSR“. Vor der Einreichung wird die korrekte Schreibweise „AutomaticSR“ empfohlen. Verwenden Sie für die Datei, den Kurznamen und den Markttitel des Produkts jeweils denselben Namen.
Kurzbeschreibung (für die Produktkarte im Market)
Automatische Unterstützungs- und Widerstandsniveaus, die auf bestätigten Swing-Pivots basieren, mit ATR-basierter Filterung, optionalen Niveauzonen, Ausbruchmarkierungen und einem kompakten Dashboard direkt im Chart.
Übersicht
AutomaticSR ist ein Chartindikator für MetaTrader 5. Er erkennt Swing-Hochs und Swing-Tiefs für das aktuelle Symbol und den aktuellen Zeitrahmen, wandelt die bestätigten Werte in horizontale Unterstützungs- und Widerstandsniveaus um, hält die Niveaus bei neuen Kerzen aktuell und markiert den Moment, in dem ein Niveau durchbrochen wird.
Der Indikator ist ein visuelles Analysewerkzeug. Er zeichnet Informationen auf dem Chart ein; er platziert, ändert oder schließt keine Orders und generiert keine Handelssignale. Alle Entscheidungen liegen weiterhin beim Nutzer.
Wichtigste Eigenschaften:
- Die Niveaus werden aus bestätigten Swing-Pivots abgeleitet, sodass ein Niveau feststeht, sobald es erscheint.
- Abstände, Schwellenwerte, Zonenbreite und Breakout-Empfindlichkeit werden in ATR-Einheiten gemessen, sodass sich dieselben Einstellungen über alle Symbole und Kursskalen hinweg einheitlich verhalten.
- Die Anzahl der Chart-Objekte wird durch konfigurierbare Obergrenzen begrenzt, und alle Objekte werden entfernt, wenn der Indikator deaktiviert wird.
So funktioniert es (konzeptionell, keine Programmierung erforderlich)
- Swing-Erkennung. Der Indikator sucht nach Balken, deren Höchst- (oder Tiefst-)wert das Extrem unter einer Reihe benachbarter Balken auf beiden Seiten darstellt. Die Anzahl der benachbarten Balken wird durch die „Pivot-Länge“ festgelegt. Da beide Seiten berücksichtigt werden müssen, kann ein Pivot erst bestätigt werden, nachdem diese Anzahl an Balken geschlossen wurde; das Niveau erscheint daher mit einer kurzen, bekannten Verzögerung und verschiebt sich danach nicht mehr.
- Stärkenfilter. Ein potenzieller Pivot wird nur akzeptiert, wenn er sich von seinen unmittelbaren Nachbarn um mindestens „Min ATR Strength × ATR“ abhebt. Schwache, verrauschte Pivots werden ignoriert.
- Erstellung und Zusammenführung von Niveaus. Ein akzeptierter Pivot wird zu einem horizontalen Niveau. Ein neues Niveau wird übersprungen, wenn bereits ein anderes Niveau desselben Typs innerhalb von „Merge Threshold × ATR“ liegt, wodurch der Chart frei von doppelten Linien bleibt. Die Anzahl der gleichzeitig angezeigten Niveaus pro Seite wird durch „Max Active Levels Each Side“ begrenzt.
- Niveauzonen. Jedes Niveau kann als halbtransparentes Band um den entsprechenden Kurs herum eingezeichnet werden. Die Bandbreite wird in ATR-Einheiten festgelegt und an die Hintergrundfarbe des Charts angepasst.
- Alterung. Niveaus, die älter sind als „Max Level Age“ (Balken), werden automatisch entfernt, sodass das Diagramm die Struktur anzeigt, die noch relevant ist.
- Durchbrüche. Ein Niveau gilt als durchbrochen, wenn ein geschlossener Balken um mehr als „Break Sensitivity × ATR“ über das Niveau hinaus schließt. Das Niveau wechselt dann in den „durchbrochenen“ Stil (dünne gepunktete Linie, neutrale Farbe, keine weitere Verlängerung nach rechts), erhält optional die Beschriftung „< Break“ und wird in eine kurze Liste der kürzlich durchbrochenen Niveaus verschoben, deren Anzahl durch „Maximal angezeigte durchbrochene Niveaus“ begrenzt ist.
- Verlaufswiedergabe. Beim ersten Laden spielt der Indikator die letzten Balken vom ältesten zum neuesten ab, sodass die angezeigten Niveaus, Zonen und Ausbruchmarkierungen dieselben sind, die Balken für Balken aufgebaut worden wären. Danach werden nur noch neue Balken verarbeitet.
- Dashboard. Ein optionales Fenster zeigt den nächsten Widerstand oberhalb des Kurses, die nächste Unterstützung unterhalb des Kurses, die Richtung des jüngsten Ausbruchs sowie die Anzahl der derzeit aktiven Niveaus an.
Wichtigste Funktionen
- Automatische Unterstützungs- und Widerstandsniveaus aus bestätigten Swing-Pivots
- ATR-basierter Stärkefilter zur Unterdrückung unbedeutender Pivots
- Automatische Zusammenführung benachbarter Niveaus desselben Typs
- Optionale Kurszonen um jedes Niveau herum
- Automatische Alterung und Bereinigung der Niveaus
- Ausbruchserkennung basierend auf Schlusskursen, mit einstellbarer Empfindlichkeit in ATR-Einheiten
- Durchbrochene Niveaus bleiben aus Kontextgründen sichtbar, mit optionalen Ausbruchbeschriftungen
- Linienbreite, die mit dem Alter des Niveaus zunimmt, sodass langlebige Niveaus hervorstechen
- Optionale Kursbeschriftungen, die an den aktuellen Balken angehängt werden
- Dashboard direkt im Chart, verschiebbar an jede der vier Ecken des Charts
- Unabhängige Farbeinstellungen für Unterstützungs-, Widerstands- und durchbrochene Niveaus
- Zonenfarben, die sowohl bei hellen als auch bei dunklen Designs in den Chart-Hintergrund übergehen
- Funktioniert mit jedem Symbol und jedem Zeitrahmen; keine externen Dateien oder DLLs erforderlich
- Alle Chart-Objekte werden mit dem Indikator-Präfix erstellt und beim Beenden wieder entfernt
Eingabeparameter
Die Standardwerte entsprechen den mit dem Indikator gelieferten Werten. Alle ATR-Werte stammen aus einem 14-Perioden-ATR, der auf Basis des aktuellen Chart-Symbols und Zeitrahmens berechnet wird.
Swing-Erkennung
Parameter | Standard | Beschreibung |
|---|---|---|
Pivot-Länge (Takte pro Seite) | 5 | Anzahl der erforderlichen Balken auf jeder Seite eines Pivot-Balkens. Höhere Werte führen zu weniger, aber signifikanteren Niveaus und einer längeren Bestätigungsverzögerung. |
Min. ATR-Stärke | 0,1 | Mindestausprägung eines Pivot-Punkts im Verhältnis zu den beiden benachbarten Balken, ausgedrückt in ATR-Einheiten. Höhere Werte behalten nur ausgeprägte Schwankungen bei. |
Maximales Niveaualter (Bars) | 300 | Maximales Alter eines Niveaus in Balken. Ältere Niveaus werden automatisch gelöscht. |
Ebenen
Parameter | Standard | Beschreibung |
|---|---|---|
Unterstützungsstufen anzeigen | true | Aktiviert die Erkennung und Darstellung von Unterstützungsniveaus. |
Widerstandsniveaus anzeigen | true | Aktiviert die Erkennung und Darstellung von Widerstandsniveaus. |
Max. Anzahl aktiver Niveaus pro Seite | 5 | Maximale Anzahl gleichzeitig aktiver Unterstützungs- und Widerstandsniveaus. |
Zusammenführungsschwelle (ATR x) | 0,5 | Mindestabstand zwischen zwei Niveaus desselben Typs. Ein Kandidat, der näher als dieser Wert liegt, wird nicht hinzugefügt. |
Niveauzonen anzeigen | true | Zeichnet ein halbtransparentes Band um jede aktive Stufe. |
Zonenbreite (ATR x) | 0,25 | Gesamtbreite des Bandes, zentriert auf den Level-Preis. |
Ausbrüche
Parameter | Standard | Beschreibung |
|---|---|---|
Gebrochene Niveaus anzeigen | true | Behält unterbrochene Niveaus im Chart im unterbrochenen Stil bei. Bei Deaktivierung werden unterbrochene Niveaus sofort entfernt. |
Durchbruchsensitivität (ATR x) | 0,1 | Um wie viel der Schlusskurs in ATR-Einheiten über ein Niveau hinausgehen muss, bevor das Niveau als durchbrochen gilt. |
Durchbruchbeschriftungen anzeigen | true | Fügt an der Ausbruchs-Kerze eine Textbeschriftung „< Break“ ein. |
Max. Anzahl angezeigter durchbrochener Niveaus | 4 | Anzahl der zuletzt durchbrochenen Niveaus, die im Chart angezeigt werden. Das älteste wird entfernt, wenn das Limit überschritten wird. |
Visuelle Darstellungen
Parameter | Standard | Beschreibung |
|---|---|---|
Unterstützte Farben | C'34,186,197' | Farbe der Unterstützungslinien, Zonen und Kursbeschriftungen. |
Farbe der Widerstandslinien | C'255,111,67' | Farbe der Widerstandslinien, -zonen und Kursbeschriftungen. |
Farbe für durchbrochene Niveaus | C'148,163,184' | Farbe, die einem Niveau zugewiesen wird, nachdem es durchbrochen wurde. |
Breite der Basislinie | 2 | Linienbreite, die für alle Ebenen verwendet wird, wenn die Langlebigkeitsbreite deaktiviert ist. |
Lebensdauerbreite aktivieren | true | Erhöht die Linienbreite mit zunehmendem Alter einer Ebene, sodass ältere Ebenen dicker dargestellt werden. |
Maximale Lebensdauerbreite | 7 | Obergrenze der durch die Skalierung der Lebensdauer erzeugten Breite. |
Dashboard anzeigen | true | Zeigt das Informationsfeld an. |
Preisanzeigen anzeigen | true | Zeigt den Preiswert jeder aktiven Stufe neben dem aktuellen Balken an. |
Dashboard
Parameter | Standard | Beschreibung |
|---|---|---|
Position des Dashboards | Unten rechts | Ecke des für das Panel verwendeten Diagramms: Oben rechts, unten rechts, oben links, unten links. |
Dashboard-Inhalt
Zeile | Bedeutung |
|---|---|
Widerstand | Kurs des nächsten aktiven Widerstandsniveaus oberhalb des aktuellen Schlusskurses. Zeigt „-“ an, wenn kein Widerstand vorhanden ist. |
Unterstützung | Kurs des nächsten aktiven Unterstützungsniveaus unterhalb des aktuellen Schlusskurses. Zeigt „-“ an, wenn kein Unterstützungsniveau vorhanden ist. |
Letzter Durchbruch | Richtung des letzten Ausbruchs: „Bullisch“ nach einem Aufwärtsdurchbruch eines Widerstandsniveaus, „Bärisch“ nach einem Abwärtsdurchbruch eines Unterstützungsniveaus. Zeigt „-“ vor dem ersten Ausbruch an. |
Aktive Niveaus | Anzahl der derzeit im Chart aktiven Niveaus. |
Anwendung
- Fügen Sie den Indikator in ein beliebiges Chart in MetaTrader 5 ein (Einfügen → Indikatoren → Benutzerdefiniert oder ziehen Sie ihn aus dem Navigator auf das Chart).
- Behalten Sie für einen ersten Überblick die Standardeinstellungen bei. Niveaus, Zonen und das Dashboard werden sofort angezeigt; die letzten Balken werden beim Laden nachgebildet, sodass die aktuelle Marktstruktur von Beginn an sichtbar ist.
- Passen Sie zunächst die „Pivot-Länge“ an. Dies ist die wichtigste Einstellmöglichkeit: Kleine Werte ergeben viele kurzfristige Niveaus, große Werte hingegen wenige strukturelle Niveaus.
- Passen Sie die „Min. ATR-Stärke“ an, wenn das Chart zu überladen oder zu leer wirkt. Dieser Filter ist unabhängig von der Pivot-Länge.
- Verwenden Sie „Merge Threshold“ und „Max Active Levels Each Side“, um zu steuern, wie viele Linien sichtbar bleiben.
- Verwenden Sie die „Break-Sensitivity“, um festzulegen, wie streng Ausbrüche gewertet werden. Ein höherer Wert ignoriert Schlusskurse, die geringfügig über oder unter einem Niveau liegen.
- Deaktivieren Sie „Show Level Zones“, „Show Price Labels“ oder „Show Dashboard“, wenn Sie ein minimalistisches Chart bevorzugen.
- Normalerweise ist pro Chart nur eine Instanz erforderlich. Der Indikator führt keine Handelsgeschäfte durch und erfordert keine zusätzlichen Einstellungen.
Empfohlene Ausgangspunkte
Stil | Zeitrahmen | Pivot-Länge | Min. ATR-Stärke | Maximales Alter | Empfindlichkeit gegenüber Durchbrüchen |
|---|---|---|---|---|---|
Kurzfristig | M5 – M15 | 3 – 5 | 0,10 – 0,20 | 150 – 300 | 0,10 |
Intraday | M30 – H1 | 5 – 7 | 0,15 – 0,25 | 300 – 500 | 0,10 – 0,15 |
Schwung | H4 – D1 | 5 – 10 | 0,20 – 0,30 | 300 – 600 | 0,15 – 0,25 |
Bei sehr volatilen Wertpapieren sollten Sie die Werte für „Min. ATR-Stärke“ und „Zusammenführungsschwelle“ erhöhen. Bei langsamen oder wenig volatilen Wertpapieren sollten Sie diese Werte verringern. Dies sind lediglich Ausgangswerte; die geeigneten Werte hängen vom jeweiligen Wertpapier und Ihren persönlichen Gewohnheiten bei der Chartanalyse ab.
Hinweise und Einschränkungen
- Niveaus werden erst bestätigt, nachdem sich die „Pivot Length“- Balken auf der rechten Seite eines Pivots geschlossen haben. Diese Verzögerung ist bei der Swing-Erkennung unvermeidbar und stellt keinen Fehler dar; bestätigte Niveaus verschieben sich danach nicht und verschwinden auch nicht, es sei denn, sie werden durchbrochen oder überschreiten das maximale Alter.
- Ausbrüche werden anhand des Schlusskurses eines geschlossenen Balkens bewertet. Intra-Bar-Dochtbewegungen, die ein Niveau durchbrechen, ohne darüber zu schließen, werden nicht als Ausbrüche markiert.
- Der Indikator benötigt eine Mindestanzahl an historischen Daten im Chart und einen gefüllten ATR-Puffer, bevor er mit der Darstellung beginnt. Das Laden weiterer historischer Daten liefert ein vollständigeres Bild.
- Breakout-Markierungen, Zonen und Beschriftungen sind Chart-Objekte. Sie sind an das Chartfenster gebunden und werden zusammen mit dem Indikator entfernt.
- Das Dashboard wird bei jedem Tick neu positioniert, sodass es der Chartgröße und der ausgewählten Ecke folgt.
Verfügbarkeit
Der Indikator wird derzeit kostenlos über den MQL5-Marktplatz vertrieben. Sobald die Anzahl der Downloads die vom Marktplatzdienst für kostenlose Produkte festgelegte Schwelle (100 Downloads) erreicht, wird er in ein kostenpflichtiges Abonnementprodukt umgewandelt. Nutzer, die die kostenlose Version vor der Umstellung erworben haben, behalten ihre Kopie, einschließlich der über den Marktplatz bereitgestellten Updates.
Demoversion
Gemäß den Regeln des MQL5-Marktes kann eine Demoversion eines Indikators nicht auf einem Online-Chart ausgeführt oder angezeigt 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 keine Gewinne. Unterstützungs- und Widerstandsniveaus sowie Ausbruchmarkierungen sind ausschließlich 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.
