Supply Demand Zones Base Impulse ATR
- Indikatoren
-
Kazuma Uezono
MQL5 / MQL4 / Pine Script v6 developer and active trader.
Seller on the MQL5 Market (indicators for MT4/MT5).
Services:
- TradingView Pine Script to MT5/MT4 conversion (bar-by-bar matching, with tester report)
- MT4 to MT5 migration - Version: 1.1
Supply & Demand Zones markiert Angebots- und Nachfragezonen auf einem MetaTrader 5 Chart nach einer einzigen festen, vollständig veröffentlichten Regel: ein starker Balken (Körper mindestens X x ATR), vor dem eine kurze "Basis" aus Balken mit kleinem Körper liegt. Die Basis wird zur Nachfragezone, wenn der starke Balken bullisch ist und darüber schließt, oder zur Angebotszone, wenn der starke Balken bärisch ist und darunter schließt. Jede Zone zeigt ihren Zustand: unberührt (fresh), berührt mit Anzahl (touched) oder durchbrochen (broken).
Der Indikator richtet sich an Trader, die diese Zonen von Hand zeichnen und sie jedes Mal auf dieselbe Weise gezeichnet haben möchten. Er ist ein reines Anzeigewerkzeug: Er gibt keine Kauf- oder Verkaufssignale und platziert keine Orders. Eine Zone ist ein aus vergangenen Balken abgeleiteter Bereich, keine Prognose, dass der Kurs dort stoppt oder dreht.
Funktionen
- Nachfrage- und Angebotszonen nach der obigen Regel, ausschließlich anhand geschlossener Balken bestimmt. Sobald eine Zone erstellt ist, verschieben sich ihre Oberkante, Unterkante und ihr Beginn nicht mehr.
- Beschriftung an jeder Zone: "Demand fresh" (Nachfragezone, unberührt), "Supply touched 2" (Angebotszone, 2 Berührungen), "Demand broken" (Nachfragezone, durchbrochen). Wenn Sie mit der Maus über eine Zone fahren, sehen Sie ihre Preise, die Anzahl der Basisbalken und die Zeit des ersten Basisbalkens.
- Farben nach Zustand: unberührt, berührt, durchbrochen (graue Umrandung). Durchbrochene Zonen sind standardmäßig ausgeblendet und können eingeblendet werden.
- Nicht durchbrochene Zonen werden einige Balken über den aktuellen Balken hinaus nach rechts verlängert; eine durchbrochene Zone endet an dem Balken, der sie durchbrochen hat.
- Überlappende Zonen: Die ältere wird gefüllt, die neuere als Umrandung gezeichnet, damit die Farben lesbar bleiben.
- Ein optionaler höherer Zeitrahmen (standardmäßig aus). Seine Zonen verwenden dieselbe Regel und werden als dickere Umrandungen mit dem Zeitrahmen in der Beschriftung gezeichnet, zum Beispiel "H4 Supply fresh".
- Ein optionaler Alarm (standardmäßig aus): Der Kurs tritt von außen in eine unberührte Zone ein. Pop-up, Ton und Push-Benachrichtigung.
- Die Beschriftungsfarbe passt sich automatisch an den Charthintergrund an (oder Sie wählen eine Farbe). Charttexte und Alarme auf Englisch oder Japanisch (Auto folgt der Terminalsprache).
- Sechs versteckte Puffer für EAs (siehe unten).
Berechnung
- True Range eines Balkens = der höhere Wert von (High, vorheriger Close) minus der niedrigere Wert von (Low, vorheriger Close).
- ATR = einfacher Durchschnitt der True Range der N Balken vor dem starken Balken (der starke Balken selbst ist nicht enthalten).
- Starker Balken: absoluter Körper |close - open| >= X x ATR.
- Basis: vom Balken unmittelbar vor dem starken Balken rückwärts gezählt die aufeinanderfolgenden Balken, deren Körper <= Y x ATR ist, bis zur maximalen Anzahl. Ist der Balken unmittelbar vor dem starken Balken nicht klein genug, entsteht keine Zone.
- Ober- und Unterkante der Zone = höchstes High und tiefstes Low der Basisbalken (oder höchster und tiefster Open/Close-Wert, wenn "Bodies only" (nur Körper) gewählt ist).
- Nachfrage: Der starke Balken ist bullisch und schließt über der Oberkante der Zone. Angebot: Der starke Balken ist bärisch und schließt unter der Unterkante der Zone.
- Zustand, ab dem Balken nach dem starken Balken: Eine Nachfragezone ist durchbrochen, wenn ein Balken unter ihrer Unterkante schließt, und berührt, wenn das Low eines Balkens ihre Oberkante erreicht. Eine Angebotszone ist durchbrochen, wenn ein Balken über ihrer Oberkante schließt, und berührt, wenn das High eines Balkens ihre Unterkante erreicht.
- Anzahl der Berührungen = Anzahl der Balken, die in die Zone eingetreten sind, nachdem der vorherige Balken außerhalb lag. "Fresh" = noch keine Berührung.
- Es werden nur die Balken innerhalb von "Bars to scan" (zu scannende Balken) verwendet. Zonen, die älter als "Remove zones older than N bars" (Zonen älter als N Balken entfernen) sind, werden entfernt.
Wichtige Eingaben
- Zonenregeln: ATR-Periode (14), X für den starken Balken (1.5), Y für Basisbalken (0.5, muss kleiner als X sein), maximale Basisbalken (3, 1-10), Zonenränder (Dochte oder nur Körper), zu scannende Balken (5000, 300-100000).
- Anzeige: angezeigte nicht durchbrochene Zonen pro Seite (5), Zonen älter als N Balken entfernen (1000, 0 = nie), durchbrochene Zonen (ausblenden oder als graue Umrandung anzeigen), angezeigte durchbrochene Zonen pro Seite (3), Verlängerung nach rechts (10 Balken), Beschriftungen ein/aus, Schriftgröße (8), fünf Zonenfarben, Beschriftungsfarbe (None = automatisch).
- Zonen des höheren Zeitrahmens: Zeitrahmen (aktuell = aus), angezeigte Zonen pro Seite (3).
- Alarme: Eintritt in eine unberührte Zone (aus), Pop-up, Ton, Push, Sprache.
Liegt eine Eingabe außerhalb des zulässigen Bereichs, wird der Indikator nicht geladen und schreibt den Grund in das Experten-Protokoll.
Für EA- und iCustom-Nutzer
- Puffer: 0 = Oberkante der Nachfragezone, 1 = Unterkante der Nachfragezone, 2 = Berührungen der Nachfragezone, 3 = Oberkante der Angebotszone, 4 = Unterkante der Angebotszone, 5 = Berührungen der Angebotszone. Jeder Balken enthält die neueste nicht durchbrochene Zone jeder Seite, wie sie beim Schluss dieses Balkens bekannt war; der sich bildende Balken wiederholt den letzten geschlossenen Balken. EMPTY_VALUE, wenn es keine Zone gibt (oder die neueste älter als "Remove zones older than N bars" ist).
- Die Puffer enthalten nur Zonen des Chart-Zeitrahmens. Zonen des höheren Zeitrahmens sind nicht in den Puffern.
- iCustom-Parameter: Übergeben Sie nach dem Indikatornamen 30 Werte in dieser Reihenfolge, einschließlich der 4 leeren Strings für die Eingabegruppen:
"", ATR-Periode, X, Y, maximale Basisbalken, Zonenränder (0 Dochte, 1 Körper), zu scannende Balken,
"", nicht durchbrochene Zonen pro Seite, älter als N Balken entfernen, durchbrochene Zonen (0 ausblenden, 1 anzeigen), durchbrochene Zonen pro Seite, Verlängerungsbalken, Beschriftungen anzeigen, Schriftgröße, Farbe Nachfrage unberührt, Farbe Nachfrage berührt, Farbe Angebot unberührt, Farbe Angebot berührt, Farbe durchbrochen, Beschriftungsfarbe,
"", höherer Zeitrahmen, Zonen des höheren Zeitrahmens pro Seite,
"", Alarm bei Eintritt, Pop-up, Ton, Push, Sprache (0 auto, 1 Englisch, 2 Japanisch).
- Über iCustom aufgerufen, füllt der Indikator nur die Puffer: Es wird nichts gezeichnet und es werden keine Alarme ausgelöst.
- Wenn ein EA oder Skript ihn mit ChartIndicatorAdd() zu einem Chart hinzufügt, schränkt MetaTrader 5 seine Möglichkeiten ein: Die gezeichneten Zonen können auf dem Chart bleiben, solange dieses Programm das Handle noch hält, und auf einem anderen Chart als dem, auf dem das Programm läuft, werden keine Zonen gezeichnet (die Puffer funktionieren weiterhin).
Hinweise und Grenzen
- Zonen werden nur beim Schließen eines Balkens erstellt. Der sich bildende Balken erstellt nie eine Zone und ändert keinen Zustand; eine Beschriftung bleibt "fresh", bis der Balken, der in die Zone eingetreten ist, geschlossen hat.
- Der Alarm wird bei jedem Tick gegen die Zonen geprüft, wie sie beim letzten geschlossenen Balken waren; er kann daher kommen, während die Beschriftung noch "fresh" zeigt. Jede Zone löst einmal einen Alarm aus. Direkt nach dem Laden wird der erste Preis nur gespeichert.
- Nach einem Neuladen (neue Historie, erneute Verbindung, Änderung von "Bars to scan") beginnt die Berechnung erneut beim ersten Balken im Bereich, daher können Zonen im ältesten Teil des Charts abweichen. Aktuelle Zonen sind nicht betroffen.
- Die Ergebnisse hängen von den Eingaben und den Kursdaten Ihres Brokers ab: Andere Werte oder ein anderer Broker können andere Zonen ergeben.
- In ruhigen Seitwärtsmärkten können viele kleine Zonen entstehen; in starken Trends werden viele Zonen kurz nach ihrer Entstehung durchbrochen. Die Anzahl der Berührungen und der Zustand unberührt beschreiben nur die Vergangenheit und sind keine Wahrscheinlichkeit für irgendein Ergebnis.
- Die zweite und jede weitere Kopie auf demselben Chart zeichnen nur Umrandungen, damit ihre Zonen die Füllung der ersten Kopie nicht löschen.
- Im visuellen Modus des Strategietesters werden die Zonen wie auf einem Chart gezeichnet. Im Tester werden keine Alarme ausgelöst.
- Ist ein höherer Zeitrahmen eingestellt, zeigt das Tester-Protokoll Zeilen mit "history cache". Sie werden vom Terminal beim Laden dieses Zeitrahmens geschrieben und sind keine Fehler des Indikators.
- Große Anzeigeeinstellungen (zum Beispiel 50 Zonen pro Seite, angezeigte durchbrochene Zonen und 100000 Balken auf M1) verlangsamen Testerläufe spürbar. Die Standardeinstellungen sind leicht.
- Objekte, deren Namen mit "SDZ#" beginnen, gehören zu diesem Indikator und werden mit ihm entfernt. Temporäre globale Variablen, die mit "SDZ_" beginnen, dienen dazu, Kopien auseinanderzuhalten. Charteinstellungen werden nicht geändert.
Kompatibilität und Support
- MetaTrader 5, jedes Symbol und jeder Zeitrahmen. Die MT4-Version ist ein separates kostenloses Produkt.
- Mehrere Kopien auf einem Chart (zum Beispiel mit unterschiedlichen X/Y-Werten). Funktioniert mit Vorlagen und nach einem Neustart des Terminals.
- Keine DLLs, kein Internetzugriff, es werden keine Dateien geschrieben.
- Support über MQL5-Nachrichten für Installation, Einstellungen und Fehlermeldungen. Fragen zur Marktrichtung oder zu einzelnen Trades können nicht beantwortet werden.
- Nur zur Chartanalyse. Der Indikator handelt nicht und garantiert kein Handelsergebnis. Vergangene Charts garantieren keine zukünftigen Ergebnisse.
