Vom Einsteiger zum Experten: Erstellung eines Liquiditätszonenindikators
Inhalt:
- Einführung
- Überprüfung des Konzepts
- Implementierung
- Test
- Schlussfolgerung
- Wichtige Erkenntnisse
- Anlagen
Einführung
In unserem vorangegangenen Artikel haben wir uns auf eine gründliche Recherche begeben, um die potenziellen Verhältnisse zwischen Liquiditätszonen und ihren nachfolgenden Ausbruchsbewegungen aufzudecken. Statistisch gesehen war das beständigste konzeptionelle Verhältnis 1:3 (Tiefe der Liquiditätszone zu Ausbruchs-/Impulsbereich).
Nachdem wir nun diesen Schlüsselwert identifiziert haben, ist der nächste logische Schritt klar: die Umwandlung von Erkenntnissen in handelbare Vorteile. Händler in aller Welt wollen wissen, wie genau dieses Verhältnis von 1:3 in der Praxis funktioniert. Die Antwort liegt in der Strategieentwicklung.
Heute konzentrieren wir uns auf die Entwicklung eines benutzerdefinierten Indikators, der diese Verhältnisse praktisch sichtbar macht und theoretische Beobachtungen in Echtzeit in praxisnahe Echtzeitsignale auf dem Chart umwandelt. Im Folgenden erläutere ich zunächst das Kernkonzept, bevor wir in die Implementierung einsteigen.
Überprüfung des Konzepts
Liquiditätszonen stellen Perioden der Marktkonsolidierung dar – abgegrenzte Bereiche, in denen der Preis im Laufe der Zeit zwischen zwei genau definierten Niveaus oszilliert. Der Klarheit halber wollen wir Preis A und Preis B als konzeptionelle Bezugspunkte für die Grenzen der Basis und nicht als feste oder absolute Preisniveaus verwenden. In einer typischen bullischen Konstellation stellt der Preis A das Tief der Basis dar, während der Preis B das Hoch der Basis markiert; der Preis schwankt während der Konsolidierungsphase zwischen diesen beiden Niveaus. In bärischen Szenarien wird diese Struktur einfach gespiegelt (mit dem Preis A als Hoch und dem Preis B als Tief der Basis). Obwohl der Markt während dieser Pausen ausgeglichen erscheint, bauen institutionelle Teilnehmer aktiv Positionen auf oder ab, wobei die Liquidität bewusst um die Extrempunkte der Spanne herum aufgebaut wird.
Schließlich verlässt der Preis dieses Gleichgewicht durch einen impulsiven Ausbruch. Unter bullischen Bedingungen erfolgt dieser Ausbruch über dem Preis B (dem Hoch der Basis), während er unter bärischen Bedingungen unter dem Preis A (dem Tief der Basis) erfolgt. Durch den Ausbruch wird ein neues Referenzniveau festgelegt, das wir als Preis C bezeichnen – das Hoch, das durch die impulsive Rallye im Fall eines Aufwärtstrends gebildet wurde, oder das Tief, das durch den impulsiven Ausverkauf in bärischen Szenarien gebildet wurde. Diese Bewegungen sind selten zufällig; sie werden in der Regel durch die Absorption ruhender Liquidität angetrieben, einschließlich Stop-Loss-Aufträgen, die jenseits der Spanne positioniert sind, Ausbruchsaufträgen von Privatanlegern und gefangenen Positionen auf der falschen Seite der Konsolidierung.
In Umgebungen mit hoher Wahrscheinlichkeit – ob Fortsetzungsszenarien nach einem Abgreifen von Liquidität oder Umkehrszenarien nach einer tieferen Manipulation – dehnt sich der Preis nicht einfach unbegrenzt nach dem Ausbruch aus. Stattdessen kehrt er häufig in die ursprüngliche Liquiditätszone zurück, die durch den A-B-Bereich definiert ist. Dieses Verhalten spiegelt die grundlegenden Marktmechanismen wider: Die impulsive Bewegung führt zu einer Verschiebung und Ineffizienz, die Liquidität wird auf einer Seite der Spanne abgeschöpft, und der Preis läuft in die Zone zurück, um den Markt wieder ins Gleichgewicht zu bringen, Ineffizienzen auszugleichen oder zusätzliche Liquidität für die nächste Richtungsphase anzuziehen. In der folgenden Abbildung (Abb. 1) wird das Konzept grafisch dargestellt.

Abb. 1. Konzeptionelle Darstellung der Liquiditätsnachfrage
Unsere frühere Forschung hat sich diesem Verhalten eher quantitativ als visuell genähert. Bei wiederholten, qualitativ hochwertigen Setups auf mehreren Instrumenten und Zeitrahmen haben wir die Beziehung zwischen der Tiefe der Liquiditätszone (dem Abstand zwischen den Preisen A und B) und dem Ausmaß des Ausbruchsimpulses (von der Bereichsgrenze zum Preis C) gemessen. Aus den Daten ergab sich durchweg eine wiederkehrende proportionale Beziehung – meist in einem Verhältnis von etwa 1:3 (Tiefe der Liquiditätszone zu Ausbruch/Impulsstärke) –, die die statistische Grundlage für das in dieser Studie implementierte und getestete Modell bildete.
Dieses beobachtete Verhältnis dient als praktisches Beispiel dafür, dass institutionelles Liquiditäts-Engineering nach Konsolidierungsphasen häufig zu asymmetrischen Expansionen führt. In vielen realen Marktsituationen gehen engere Liquiditätszonen (z. B. Bereiche von 20-40 Pips auf niedrigeren Zeitebenen) deutlich größeren Verschiebungen voraus (oft 60-120+ Pips oder mehr), bei denen sich der Ausbruchsschenkel etwa dreimal (oder mehr) so weit wie die vorherige Bereichstiefe erstreckt, bevor ein sinnvoller Rückzug oder ein Retest erfolgt. Solche Muster stimmen eng mit den üblichen Beobachtungen von Smart Money Concepts (SMC) und Inner Circle Trader (ICT) überein, bei denen Liquiditätsabgriffe starke impulsive Fortsetzungen oder Umkehrungen ermöglichen, indem sie gebündelte Orders abschöpfen und die anschließende Richtungsphase anheizen.
Allerdings ist diese proportionale Beziehung keine universelle Konstante für alle Währungspaare, Marktbedingungen, Zeitrahmen oder Volatilitätsregime. So können Paare, die während wichtiger Nachrichtenereignisse stark im Trend liegen, Expansionen aufweisen, die näher bei 1:4 oder 1:5 liegen, während unruhige oder schwankende Sitzungen (wie die asiatische Konsolidierung von Indizes) oft kleinere Multiplikatoren ergeben (z. B. 1:1,5-1:2,5). Die Unterschiede zwischen den Anlageklassen – Devisen gegenüber Indizes, Kryptowährungen oder Rohstoffen – führen aufgrund unterschiedlicher Liquiditätspools, Teilnehmerdynamik und durchschnittlicher True-Range-Eigenschaften zu weiteren Schwankungen.
Die von uns ermittelte statistische Tendenz ist daher eher eine Richtlinie mit hoher Wahrscheinlichkeit als eine starre Regel. Diese inhärente Variabilität unterstreicht die Bedeutung der Anpassungsfähigkeit: Durch die Aufnahme eines anpassbaren Eingabeparameters (z. B. „RatioMultiplier“) in den Indikator können Händler den Schwellenwert empirisch testen und fein abstimmen, um ihn optimal an bestimmte Symbole, Zeitrahmen oder Handelsstile anzupassen. Eine Einstellung von „3ד könnte für den XAUUSD M15 optimal sein, während „2,5ד für den GBPJPY M15 geeignet ist und „4ד in Zeiten hoher Volatilität, wie z. B. bei NFP-Veröffentlichungen, besser passt.
Letztlich liegt der eigentliche Nutzen dieser Untersuchung nicht in der Ermittlung einer unveränderlichen Konstante, sondern im Nachweis einer messbaren, wiederkehrenden Beziehung zwischen dem Ausmaß der konstruierten Liquiditätszonen und dem darauffolgenden Ausbruchsimpuls. Vor diesem quantitativen Ansatz wurden solche Zonen oft nur subjektiv anhand visueller Anhaltspunkte wie „Enge“ oder Docht-Cluster bewertet. Durch die Quantifizierung dieser Variable können wir einen objektiven Vorteil aufdecken, indem wir Setups identifizieren, bei denen der Markt in der Vergangenheit ein asymmetrisches Ertragspotenzial nach Liquiditätsabgriffen geboten hat. Diese Einsicht ist der Hauptgrund für den hier entwickelten Indikator: die Umwandlung eines wiederholbaren institutionellen Verhaltensmusters in ein anpassbares Echtzeit-Tool, das es Händlern ermöglicht, sich systematischer am Smart-Money-Orderflow auszurichten.
Die konsistenteste Beobachtung unserer Analyse war ein ungefähres Verhältnis von 1:3 – die Impulsbewegung misst häufig etwa das Dreifache (oder mehr) der Tiefe der vorangegangenen Liquiditätszone. Dies wird nicht als starre, allgemeingültige Regel dargestellt, sondern als ein Leitfaden mit hoher Wahrscheinlichkeit, der sich eng an die etablierten Marktmodelle Smart Money Concepts (SMC) und Inner Circle Trader (ICT) anlehnt. In der Praxis gehen kleineren, klar definierten Konsolidierungszonen oft größere, explosivere Verschiebungen voraus, sobald die inaktive Liquidität ausgeschöpft ist und die Marktstruktur aufbricht.
Mit dieser nun klar definierten Dynamik – Liquiditätszone → impulsiver Ausbruch (oft ~1:3) → hochwahrscheinlicher Retest – verfügen wir über einen robusten, wiederholbaren Rahmen, der den institutionellen Zyklus von Manipulation, Verschiebung und Rücksetzer im Herzen der liquiditätsgetriebenen Preisaktion erfasst.
Dieser Rahmen dient als Grundlage für die nächste Phase des Projekts: die Umsetzung der theoretischen Erkenntnisse in ein praktisches, visuelles Handelsinstrument. Der benutzerdefinierte Indikator, den wir entwickeln werden, ist darauf ausgelegt:
- Automatische Erkennung und Hervorhebung gültiger Liquiditätszonen auf der Grundlage objektiver Konsolidierungskriterien.
- Die Tiefe jeder identifizierten Zone zu messen und zu verfolgen.
- Qualifizierte Ausbrüche zu erkennen und die entstehende Impulsreichweite in Echtzeit zu berechnen.
- Die beobachtete 1:3-Beziehung (mit voller, vom Benutzer einstellbarer Flexibilität des Verhältnisses) direkt auf dem Chart zu visualisieren.
- Hervorhebung und optionale Warnung von potenziellen Retest-Zonen, wenn der Preis nach einem qualifizierten Ausbruch in die ursprünglichen Liquiditätsgrenzen zurückkehrt
Indem wir diese Logik in MQL5 kodieren, gehen wir von der konzeptionellen Beobachtung zu einem ausführbaren, in das Chart integrierten Modell über. Das Ergebnis ist ein objektives Tool, das die Subjektivität reduziert, Rauschen herausfiltert und es Händlern ermöglicht, ihre Einstiege besser am institutionellen Orderflow auszurichten – und so das Timing, das Risiko-Ertrags-Verhältnis und das allgemeine Vertrauen in Fortsetzungs- und Umkehr-Setups zu verbessern.
Im folgenden Abschnitt gehen wir zur praktischen Umsetzung über und erläutern die MQL5-Logik, die Schlüsselvariablen, die Regeln zur Zonenerkennung, die Ausbruchsvalidierungsbedingungen und die erforderlichen Visualisierungstechniken, um dieses Marktmodell auf dem Chart zum Leben zu erwecken.
Implementierung
Indikatorerklärung und Eingaben
Am Anfang des Indikators definieren wir den Umfang, den Zweck und die Konfigurierbarkeit des Werkzeugs. Der Indikator ist so konzipiert, dass er direkt im Chart-Fenster läuft und eine Reihe von Eingaben ermöglicht, die sowohl die Logik als auch die Visualisierung steuern. Parameter wie LookbackBars und RatioMultiplier bestimmen, wie weit zurück der Algorithmus nach gültigen Liquiditätsbasen sucht und wie stark eine impulsive Bewegung relativ zu ihrer Basis sein muss. Visuelle Eingaben – einschließlich Farben, Deckkraft, Pufferstile und Verlängerungslänge – ermöglichen es dem Händler, die Darstellung anzupassen, ohne die zugrunde liegende Logik zu verändern. Diese Trennung gewährleistet, dass das analytische Modell stabil bleibt, während die visuellen Präferenzen flexibel bleiben.
#property indicator_chart_window #property indicator_buffers 8 #property indicator_plots 4 input int LookbackBars = 500; input double RatioMultiplier = 3.0; input int ZoneExtendBars = 50; input color DemandColor = clrLimeGreen; input color SupplyColor = clrTomato; input int ZoneOpacity = 40;
Globale Arrays und Indikatorpuffer
Als Nächstes deklarieren wir globale Arrays für Preisdaten und Indikatorpuffer. Anstatt uns ausschließlich auf die eingehenden OnCalculate-Arrays zu verlassen, kopieren und verwalten wir ausdrücklich unsere eigenen OHLC- und Zeit-Arrays. Dieser Ansatz gibt uns die volle Kontrolle über die Indizierung, gewährleistet Konsistenz bei der Erweiterung von Zonen in der Zukunft und vermeidet Mehrdeutigkeit bei der Zuordnung von Bars zu Objekten. Die acht Indikatorpuffer haben unterschiedliche Funktionen: Sie speichern Zonengrenzen, signalisieren das Vorhandensein von Zonen und bewahren Zeitinformationen für das Lebenszyklusmanagement auf. Diese Struktur ermöglicht es dem Indikator, sowohl visuell als auch programmatisch zu funktionieren, wenn er später von einem EA oder einem anderen Indikator verwendet wird.
double OpenArr[], HighArr[], LowArr[], CloseArr[]; datetime TimeArr[]; // Buffers double DemandHigh[], DemandLow[], SupplyHigh[], SupplyLow[]; double ZoneSignal[], ZoneStartTime[], ZoneEndTime[], ZoneType[];
Initialisierungslogik (OnInit)
Während der Initialisierung normalisieren wir die Punktwerte, um sowohl Standard- als auch Bruchteilspreise korrekt zu behandeln. Anschließend konfigurieren wir Indikator-Metadaten, binden Puffer und initialisieren alle Puffer explizit mit EMPTY_VALUE, um Rendering-Artefakte zu vermeiden. Jedes Plot wird unabhängig konfiguriert, sodass Nachfrage- und Angebotszonen visuell voneinander unterschieden werden können, während ein einheitlicher Darstellungsstil beibehalten wird. Schließlich werden alle zuvor gezeichneten Bereiche gelöscht, um sicherzustellen, dass das Chart in einem sauberen, deterministischen Zustand beginnt. Damit ist gewährleistet, dass jeder Indikator nur aktuelle Berechnungen widerspiegelt.
int OnInit() { IndicatorSetString(INDICATOR_SHORTNAME, "Liquidity Zone 1:3 Model"); SetIndexBuffer(0, DemandHigh, INDICATOR_DATA); SetIndexBuffer(1, DemandLow, INDICATOR_DATA); SetIndexBuffer(2, SupplyHigh, INDICATOR_DATA); SetIndexBuffer(3, SupplyLow, INDICATOR_DATA); SetIndexBuffer(4, ZoneSignal, INDICATOR_CALCULATIONS); SetIndexBuffer(5, ZoneStartTime, INDICATOR_CALCULATIONS); SetIndexBuffer(6, ZoneEndTime, INDICATOR_CALCULATIONS); SetIndexBuffer(7, ZoneType, INDICATOR_CALCULATIONS); ArrayInitialize(DemandHigh, EMPTY_VALUE); ArrayInitialize(SupplyHigh, EMPTY_VALUE); DeleteAllZones(); return INIT_SUCCEEDED; }
Bereinigung und Objektverwaltung (OnDeinit und DeleteAllZones)
Eine ordnungsgemäße Bereinigung ist für objektbasierte Indikatoren von entscheidender Bedeutung. Wenn der Indikator entfernt oder neu berechnet wird, löschen wir systematisch alle von diesem Tool erstellten Chart-Objekte unter Verwendung einer strengen Namenskonvention. Dies verhindert die Ansammlung von Objekten, ein unübersichtliches Chart und Leistungseinbußen. Durch die Zentralisierung der Löschlogik in einer speziellen Funktion wird ein konsistentes Verhalten bei der Neuinitialisierung, bei Änderungen des Zeitrahmens oder beim manuellen Löschen sichergestellt.
void OnDeinit(const int reason) { DeleteAllZones(); } void DeleteAllZones() { for(int i = ObjectsTotal(0) - 1; i >= 0; i--) { string name = ObjectName(0, i); if(StringFind(name, "LQ_ZONE_") == 0) ObjectDelete(0, name); } }
Nützliche Funktionen: Kerzenbereich und Zeitzuordnung
Um die Kernlogik lesbar und wiederverwendbar zu halten, isolieren wir allgemeine Operationen in Hilfsfunktionen. CandleRange() abstrahiert die Berechnung des Hoch-Tief-Bereichs eines Balkens und sorgt so für mehr Klarheit beim Vergleich von Basis- und Impulskerzen. GetTimeForBar() gewährleistet eine genaue Zeitzuordnung, selbst wenn die Zonen über die verfügbaren historischen Bars hinausgehen. Dies ist besonders wichtig für die Projektion von Zonen in die Zukunft, für die es noch keine direkten Zeitstempel gibt.
double CandleRange(int index) { return HighArr[index] - LowArr[index]; } datetime GetTimeForBar(int index) { if(index < ArraySize(TimeArr)) return TimeArr[index]; int delta = index - ArraySize(TimeArr) + 1; return TimeArr[ArraySize(TimeArr) - 1] + PeriodSeconds() * delta; }
Logik der Zonenrenderung (DrawZone)
Die Funktion DrawZone() ist dafür zuständig, eine erkannte Liquiditätsbasis in ein sichtbares Chart-Objekt zu übersetzen. Anhand der Zeit- und Preisextreme der Basiskerze konstruieren wir ein Rechteck, das sich um eine benutzerdefinierte Anzahl von Bars nach vorn erstreckt. Die Funktion verarbeitet sowohl historische als auch Vorwärtsprojektionsszenarien, wendet eine geeignete Farbgebung und Deckkraft an und stellt sicher, dass Objekte nicht interaktiv sind und im Hintergrund gerendert werden. So bleiben die Zonen informativ, ohne die manuelle Analyse oder den Handel zu beeinträchtigen.
void DrawZone(string name, datetime t1, datetime t2, double high, double low, color clr) { ObjectCreate(0, name, OBJ_RECTANGLE, 0, t1, high, t2, low); ObjectSetInteger(0, name, OBJPROP_COLOR, clr); ObjectSetInteger(0, name, OBJPROP_BACK, true); ObjectSetInteger(0, name, OBJPROP_TRANSPARENCY, ZoneOpacity); }
Pufferpopulation für Zonen (FillZoneBuffers)
Während Rechtecke für visuelle Klarheit sorgen, ermöglichen Puffer eine datengesteuerte Darstellung von Zonen. Diese Funktion synchronisiert die Pufferwerte mit der Lebensdauer des Rechtecks und füllt die Zonengrenzen und die Signalmarker in allen von der Zone abgedeckten Bars. Durch die Speicherung von Anfangs- und Endzeiten in speziellen Puffern behalten wir das volle zeitliche Bewusstsein für jede Zone. Diese doppelte Darstellung – Objekte für die Visualisierung und Puffer für die Logik – macht den Indikator erweiterbar und EA-fähig.
void FillZoneBuffers(int start, int end, double high, double low, bool isDemand) { for(int i = start; i <= end; i++) { if(isDemand) { DemandHigh[i] = high; DemandLow[i] = low; ZoneType[i] = 1; } else { SupplyHigh[i] = high; SupplyLow[i] = low; ZoneType[i] = -1; } ZoneSignal[i] = 1; } }
Pufferpflege (ClearOldBuffers)
Die Märkte entwickeln sich weiter, und die Zonen laufen schließlich aus. Diese Funktion stellt sicher, dass die Pufferwerte gelöscht werden, sobald die geplante Lebensdauer einer Zone abgelaufen ist. Anstatt die Puffer blind zu löschen, überprüfen wir die zeitliche Gültigkeit, um ein vorzeitiges Entfernen aktiver Zonen zu vermeiden. Dieser Ansatz hält den Speicher sauber, verhindert falsche Signale und stellt sicher, dass nur relevante Strukturen sichtbar und zugänglich bleiben.
void ClearOldBuffers(int index) { if(ZoneEndTime[index] < TimeCurrent()) { DemandHigh[index] = EMPTY_VALUE; SupplyHigh[index] = EMPTY_VALUE; ZoneSignal[index] = EMPTY_VALUE; } }
Kernberechnungsschleife (OnCalculate)
Das Herzstück des Indikators befindet sich in OnCalculate. Hier werden die erforderlichen Kursdaten kopiert, die Serienindexierung erzwungen und die Anzahl der zu verarbeitenden Bars auf der Grundlage benutzerdefinierter Grenzen festgelegt. Der Algorithmus durchsucht historische Bars auf der Suche nach einem einfachen, aber wirkungsvollen Muster: einer Konsolidierungsbasis, gefolgt von einer impulsiven Kerze in derselben Richtung, deren Spanne den vordefinierten Schwellenwert für das Verhältnis erreicht oder überschreitet. Wenn eine solche Bedingung erfüllt ist, wird die Basiskerze als gültige Liquiditätszone eingestuft und an die Zeichen- und Pufferroutinen weitergeleitet. Diese Logik setzt das in unserer Forschung identifizierte Verhältnis von 1:3 zwischen Liquidität und Impulsen direkt um und verwandelt eine statistische Erkenntnis in ein umsetzbares chartbasiertes Signal.
int OnCalculate(const int rates_total, const int prev_calculated, const datetime &time[], const double &open[], const double &high[], const double &low[], const double &close[]) { ArraySetAsSeries(time, true); ArraySetAsSeries(high, true); ArraySetAsSeries(low, true); CopyTime(_Symbol, _Period, 0, LookbackBars, TimeArr); CopyHigh(_Symbol, _Period, 0, LookbackBars, HighArr); CopyLow (_Symbol, _Period, 0, LookbackBars, LowArr); for(int i = LookbackBars - 2; i >= 1; i--) { double baseRange = CandleRange(i); double impulseRange = CandleRange(i - 1); if(impulseRange >= baseRange * RatioMultiplier) { bool bullish = CloseArr[i - 1] > OpenArr[i - 1]; string name = "LQ_ZONE_" + IntegerToString(i); datetime t1 = TimeArr[i]; datetime t2 = GetTimeForBar(i + ZoneExtendBars); DrawZone(name, t1, t2, HighArr[i], LowArr[i], bullish ? DemandColor : SupplyColor); FillZoneBuffers(i, i + ZoneExtendBars, HighArr[i], LowArr[i], bullish); } } return rates_total; }
Abschließende Überlegungen zur Umsetzung
Bei dieser Umsetzung wird bewusst auf Klarheit und strukturelle Disziplin statt auf übermäßige Optimierung gesetzt. Jeder Abschnitt der Logik spiegelt einen konzeptionellen Schritt des Marktmodells wider: Identifizierung, Validierung, Projektion und Lebenszyklusmanagement. Wenn man den Code auf diese Weise durchgeht, kann der Leser klar erkennen, wie institutionelles Verhalten – Konsolidierung, Verschiebung und Rücksetzer – in deterministische Regeln umgesetzt wird. Noch wichtiger ist, dass der Indikator anpassungsfähig bleibt: Verhältnisse können angepasst, Filter hinzugefügt und die Visualisierung verfeinert werden, ohne dass das Kerngerüst beeinträchtigt wird.
Da die Logik nun vollständig definiert und implementiert ist, besteht der nächste Schritt darin, von der Theorie und Struktur zur Validierung durch Tests überzugehen. Mit dem Tool auf dem Chart können wir die 1:3-Basis-Impuls-Beziehung unter realen Marktbedingungen, über verschiedene Symbole, Sitzungen und Volatilitätsregime hinweg beobachten. Indem wir den Indikator auf mehrere Paare und Zeitrahmen anwenden, können wir beurteilen, wie konsistent das Verhältnis ist, wo es am besten funktioniert und wo der Marktkontext zu Abweichungen führt. In dieser Testphase geht es nicht darum, das Modell zu zwingen, auf jedes Szenario zu passen, sondern darum, praktische Beweise zu sammeln, die Schwellenwerte zu verfeinern und zu bestätigen, dass sich die statistischen Erkenntnisse in wiederholbares, handelsrelevantes Verhalten umsetzen lassen, sobald sie unter realen Marktbedingungen überprüft werden.
Tests
Nach erfolgreicher und fehlerfreier Kompilierung haben wir den Indikator zur Echtzeit-Validierung an einen Live-Chart angehängt. Im folgenden Screencast demonstrieren wir seine Leistung am XAUUSD (Gold/USD), einem hochliquiden Instrument, bei dem liquiditätsgetriebene Strukturen aufgrund der institutionellen Beteiligung besonders ausgeprägt sind.

Abb. 2. Testen des Liquiditätszonenindikators auf XAUUSDmicro
Die ermittelten Liquiditätszonen stimmten bemerkenswert gut mit dem tatsächlichen Kursgeschehen überein:
- Die Zonen wurden genau in den vorherigen Konsolidierungsbereichen platziert.
- Ausbrüche aus diesen Zonen führten durchweg zu impulsiven Bewegungen, die das Standardverhältnis von 1:3 (Zonentiefe zu Ausbruchsgröße) einhielten (oder übertrafen), was die statistische Grundlage unserer früheren Untersuchungen bestätigte.
Besonders ermutigend ist, dass die Standardeinstellung des Verhältnisses (3,0) beim XAUUSD von Anfang an gut funktionierte und qualifizierte Setups saubere Zonen mit hoher Wahrscheinlichkeit auslösten, die gut zum beobachteten institutionellen Verhalten passten. Es waren keine unmittelbaren Anpassungen erforderlich, was bestätigt, dass sich das Modell gut von der Forschung in die praktische Anwendung auf diesem Symbol übertragen lässt.
Eine weitere bemerkenswerte Beobachtung ist die relative Seltenheit von Setups, die die Kriterien erfüllen. Die strengen Kriterien (bullish/bearish Kerzenfolge + Ausbruchsbewegung ≥ 3 × Basisbereich) filtern natürlich marginale oder verrauschte Konsolidierungen heraus. Diese Knappheit kann ein bewusster Vorteil für Händler sein, die den Überhandel reduzieren wollen: Der Indikator hebt nur die überzeugenderen, durch Liquiditätsmechanik geprägten Strukturen hervor, und ermutigt so zu Geduld und selektiven Einstiegen, die stärker mit institutioneller Marktlogik übereinstimmen.
Ich bin noch einen Schritt weiter gegangen und habe den Indikator an hochvolatilen Instrumenten getestet – vor allem am Volatilitätsindex (75er). Bei dem von der Forschung abgeleiteten „RatioMultiplier“-Wert von 3,0 erzeugt der Indikator nur sehr wenige Signale. Erst nach einer Reduzierung des Verhältnisses auf 2,0 konnte eine aussagekräftige Zone erkannt werden, obwohl die Kurse die ermittelten Niveaus durch deutliche Kursreaktionen weiterhin respektierten.
Ein ähnliches Verhalten habe ich bei EURUSD beobachtet, wo nur eine begrenzte Anzahl von Zonen mit dem Standardverhältnis erkannt wurde, bis der Multiplikator nach unten angepasst wurde. Diese Beobachtungen bekräftigen eine wichtige Schlussfolgerung: Das Verhältnis 1:3 bietet zwar eine statistisch solide Grundlage, aber eine optimale Leistung erfordert Anpassungsfähigkeit. Verschiedene Instrumente reagieren auf unterschiedliche Impuls-zu-Basis-Verhältnisse, die durch ihre inhärente Volatilität und Marktstruktur beeinflusst werden.
Dieses Ergebnis bestätigt die Entscheidung, das Verhältnis als konfigurierbare Eingabe zu verwenden. Es ermöglicht Händlern und Forschern, den Schwellenwert zu variieren, alternative Verhältnisse zu untersuchen und das Modell auf bestimmte Instrumente zu kalibrieren, anstatt eine einzige statische Regel zu erzwingen. Die nachstehenden Abbildungen 3 und 4 veranschaulichen diese vergleichenden Ergebnisse der verschiedenen Instrumente.

Abb. 3. Tests an Volatilitätsindizes

Abb. 4. Test auf EURUSD
Schlussfolgerung
Wir haben das Konzept des Basis-Impuls-Verhältnisses erfolgreich in einen funktionalen Liquiditätszonenindikator umgesetzt. Die Ergebnisse bestätigen eine klare strukturelle Beziehung zwischen der Konsolidierungsbasis – ob Angebot oder Nachfrage – und dem nachfolgenden Ausbruchsimpuls. Während sich das Verhältnis 1:3 in unseren früheren Untersuchungen als starker Durchschnitt herausstellte, zeigen weitere Tests, dass dieses Verhältnis nicht universell ist. Das optimale Verhältnis variiert je nach Instrument und Marktbedingungen, was bedeutet, dass feste Einstellungen nicht in allen Szenarien gleich gut funktionieren.
Ich hoffe, dieser Artikel hat Ihnen praktische Einsichten vermittelt. Unsere zukünftige Arbeit wird sich darauf konzentrieren, diese Konzepte in ein vollautomatisches Handelssystem zu übertragen und die Ideen durch systematische Tests und Echtzeitausführung weiter zu validieren. Die wichtigsten Erkenntnisse und die dazugehörigen Anhänge sind im Folgenden als Referenz aufgeführt.
Wichtige Lektion
| Wichtige Lektion | Beschreibung: |
|---|---|
| Das Verhältnis zwischen Liquiditätszone und Ausbruchsimpuls ist ein echtes, messbares Muster. | Untersuchungen haben immer wieder gezeigt, dass zwischen der Tiefe der Konsolidierungs-/Liquiditätszonen und dem Ausmaß des anschließenden impulsiven Ausbruchs eine Beziehung besteht, die bei vielen qualitativ hochwertigen Setups im Durchschnitt etwa 1:3 beträgt. |
| Das Verhältnis ist ein Richtwert mit hoher Wahrscheinlichkeit, keine universelle Konstante. | Während sich 1:3 bei mehreren Instrumenten (z. B. XAUUSD) als Ausgangspunkt bewährt hat, variiert es je nach Paar, Anlageklasse, Zeitrahmen und Marktbedingungen erheblich und muss angepasst werden (z. B. 2,0 für den Volatility 75 Index oder unruhige Sitzungen), um gültige, beachtete Zonen zu erfassen, ohne Chancen zu verpassen oder Rauschen hinzuzufügen. |
| Flexibilität durch Benutzereingaben ist der Schlüssel zur praktischen Anwendung. | Da der „RatioMultiplier“ einstellbar ist, kann der Indikator an jedes Symbol und jeden Handelsstil angepasst werden. Händler können den Wert pro Instrument empirisch testen und optimieren, indem sie eine statistische Beobachtung in einen personalisierten, objektiven Vorteil verwandeln, der mit dem institutionellen Liquiditätsverhalten auf verschiedenen Märkten übereinstimmt. |
| Die Struktur mit einem höheren Zeitrahmen verbessert die Zuverlässigkeit der Liquiditätszonen. | Die Verwendung höherer Zeitrahmen zur Definition von Liquiditätsgrundlagen und Impulsgrößen führt zu saubereren Strukturen und stabileren Verhältnissen. Diese Zonen werden in der Regel beibehalten, wenn der Markt später in niedrigeren Zeitrahmen analysiert wird, was den Top-down-Charakter des liquiditätsgetriebenen Marktverhaltens unterstreicht. |
| Die Quantifizierung verwandelt subjektive Konzepte in wiederholbare Logik. | Durch die Umwandlung visueller Angebots- und Nachfrage-Interpretationen in messbare Regeln – Basisbereich, Impulsausmaß und Verhältnisschwellen – beseitigen wir Mehrdeutigkeiten und ermöglichen eine konsistente Erkennung, Backtesting, Automatisierung und weitere statistische Verfeinerung. |
Anlagen
| Name der Quelldatei | Beschreibung |
|---|---|
| Liquidity_Zone_Indicator.mq5 | Benutzerdefinierter MetaTrader 5-Indikator, der Liquiditätszonen (Angebot und Nachfrage) auf der Grundlage einer quantifizierten Basis-Impuls-Beziehung erkennt und visualisiert. Der Indikator identifiziert Konsolidierungsgrundlagen, validiert Ausbruchsimpulse mithilfe eines konfigurierbaren, aus statistischen Untersuchungen abgeleiteten Multiplikators, projiziert Zonen auf dem Chart nach vorne und hebt Bereiche mit hoher Wahrscheinlichkeit für einen Retest hervor. Der Indikator ist so ausgelegt, dass er an verschiedene Instrumente und Zeitrahmen angepasst werden kann, mit vollständig einstellbaren Parametern für Prüfung, Kalibrierung und weitere Automatisierung. |
Übersetzt aus dem Englischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/en/articles/20986
Warnung: Alle Rechte sind von MetaQuotes Ltd. vorbehalten. Kopieren oder Vervielfältigen untersagt.
Dieser Artikel wurde von einem Nutzer der Website verfasst und gibt dessen persönliche Meinung wieder. MetaQuotes Ltd übernimmt keine Verantwortung für die Richtigkeit der dargestellten Informationen oder für Folgen, die sich aus der Anwendung der beschriebenen Lösungen, Strategien oder Empfehlungen ergeben.
Graphentheorie: Einsatz von Breadth-First Search (BFS) im Trading
Automatisierung von Handelsstrategien in MQL5 (Teil 47): Nick Rypock Trailing Reverse (NRTR) mit Hedging-Funktionen
Eine alternative Log-datei mit der Verwendung der HTML und CSS
Entwicklung eines dynamischen Multi-Pair-EA (Teil 6): Adaptive Spread-Sensitivität für hochfrequente Symbolwechsel
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn der Preis nicht auf diese Limit-Order eingeht, kommt der Handel nicht zustande, richtig? Wenn aber ein Handel notwendig ist, müssen Sie ihn mit einem Marktauftrag eröffnen, um sicherzustellen, dass er zustande kommt. Sie können dies überall tun, aber das Ergebnis wird je nach Ort sehr unterschiedlich ausfallen.
Macht es einen Unterschied, bedingte 1000 Kontrakte im Bereich von 5 Punkten zu kaufen oder mit einem riesigen Slippage im Bereich von 50 Punkten? Natürlich gibt es einen, im zweiten Fall kaufen Sie teurer und weniger profitabel. Jeder Narr wird auf diese Weise kaufen, es ist nicht professionell. Deshalb muss ein großer Marktteilnehmer überlegen, an welcher Stelle die richtigen Bedingungen für die Eröffnung eines großen Geschäfts gegeben sind und an welcher nicht.
Auftragsarten und deren Abstimmung sind die Grundlagen, danke, aber alles ist ein bisschen komplizierter.
Der Fehler ist, dass Sie ein falsches Dilemma konstruiert haben. Sie unterstellen das Szenario des Marktauftrags, als sei es eine unvermeidliche Realität für große Teilnehmer, und die Folgen dieses Marktauftrags für den Slippage, um das Konzept der Liquiditätszonen zu rechtfertigen. Das ist ein Zirkelschluss, denn Sie sind nur deshalb zu dem Schluss gekommen, dass Sie einen "guten Platz" für die Ausführung benötigen, weil Sie zunächst davon ausgegangen sind, dass Sie einen Marktauftrag verwenden.
Die Antwort auf Ihre eigene hypothetische Frage ist einfach:Verwenden Sie keine Marktorder. Wenn der Handel "notwendig" ist, geben Sie trotzdem ein Limit zu dem von Ihnen gewünschten Preis ein und warten. Wenn der Auftrag nicht erfüllt wird, passen Sie entweder Ihren Preis an oder der Handel kommt nicht zustande. Es gibt kein Szenario, in dem ein professionelles Institut sagt: "Wir müssen jetzt zu jedem Preis handeln", und dann eine Chart-Zone mit gebündeltenStopps auswählt. Große Marktteilnehmer handeln nicht mit (hoher) Hebelwirkung, sie haben es nie eilig.
Sie haben im Wesentlichen ein Problem geschaffen - Slippage bei Marktaufträgen (verbraucht Liquidität) -, das die Limit-Order (stellt Liquidität zur Verfügung) bereits löst, und verwenden dieses erfundene Problem, um die Theorie der Liquiditätszonen zu bestätigen.
In Anbetracht der Verwendung einer Limit-Order, d.h. der Bereitstellung von Liquidität für den Markt, gibt es keinen Grund, Liquidität zu "jagen" oder zu "schnappen", sie stellen sie vielmehr selbst zur Verfügung und warten auf diejenigen, die es eilig haben, ihre Order zu erfüllen. So einfach ist das, es gibt keinen Grund, etwas zu kompliziert zu machen.
Der Fehler ist, dass Sie ein falsches Dilemma geschaffen haben. Sie gehen von einem Marktauftragsszenario aus, als ob dies eine unvermeidliche Realität für große Teilnehmer wäre, und von den Folgen eines Ausrutschens dieses Marktauftrags, um das Konzept der Liquiditätszonen zu rechtfertigen. Das ist ein Zirkelschluss: Sie sind zu dem Schluss gekommen, dass ein "guter Ort" für die Ausführung erforderlich ist, nur weil Sie zunächst von einem Marktauftrag ausgingen.
Die Antwort auf Ihre eigene hypothetische Frage ist einfach: Verwenden Sie keine Marktorder. Wenn der Handel "notwendig" ist, platzieren Sie eine Limit-Order zu dem von Ihnen gewünschten Preis und warten ab. Wenn der Auftrag nicht ausgeführt wird, passen Sie entweder Ihren Preis an oder der Handel kommt nicht zustande. Es gibt kein Szenario, in dem eine professionelle Organisation sagt: "Wir müssen jetzt zu jedem Preis handeln" und dann das Problem löst, indem sie einen Bereich auf dem Chart mit gebündelten Stopps sucht. Große Marktteilnehmer handeln nicht mit einer (hohen) Hebelwirkung, sie sind nie in Eile.
In der Tat haben Sie ein Problem geschaffen - Slippage eines Marktauftrags (der Liquidität verbraucht) - das bereits durch einen Limitauftrag (der Liquidität liefert) gelöst wird, und Sie verwenden dieses erfundene Problem, um die Theorie der Liquiditätszone zu bestätigen.Angenommen, Sie verwenden überhaupt keine Marktaufträge, sondern handeln nur mit Limitaufträgen. Eines Tages geraten Sie in eine Situation, in der Sie Ihre Limit-Order hochziehen müssen, um dem ausbrechenden Kurs zu folgen, und kaufen immer höher und höher. Das Ergebnis ist dasselbe: Sie haben im Bereich von 50 Punkten zu einem ungünstigen Durchschnittspreis gekauft.
Und im Leben kann alles passieren, und dringende Notwendigkeit aus irgendeinem Grund gehört zu den Faktoren, die Sie zwingen, jetzt zu handeln, anstatt auf das Wetter zu warten. Ein flinkerer Konkurrent wird Ihnen die nötige Liquidität vor der Nase wegschnappen, und der Markt wird ohne Sie weitergehen - das können Sie sich nicht leisten, wenn Sie sicher sind, dass der Preis steigen wird.
Im Grunde stehen alle vor der gleichen Wahl: heute etwas ungünstiger kaufen oder auf einen besseren Preis warten, aber dann besteht die Gefahr, dass man morgen teurer kaufen muss.
Deshalb ist es wichtig zu wissen, an welcher Stelle ein Liquiditätsschub eintreten wird, um ein Geschäft im notwendigen großen Umfang abzuschließen, und nicht willkürlich und blind zu handeln. Der Preisraum ist nicht homogen, er ist ein unwegsames Gelände mit unterschiedlicher Dichte des "Bodens unter den Füßen" an verschiedenen Stellen.
Deshalb ist es wichtig zu wissen, an welcher Stelle es einen Liquiditätsschub geben wird, um ein Geschäft in dem erforderlichen großen Volumen abzuschließen, und nicht willkürlich und blind zu handeln. Der Preisraum ist nicht homogen, er ist ein unwegsames Gelände mit einer unterschiedlichen Dichte des "Bodens unter den Füßen" an verschiedenen Stellen.
Woher wissen Sie das? Was ist der eigentliche Mechanismus, mit dem ein großer Marktteilnehmer erkennt, wo der nächste Liquiditätsschub stattfinden wird?
Chartmuster sind eine abgeleitete, verzögerte Darstellung dessen, was bereits im Auftragsbuch passiert ist. Die eigentliche Information darüber, wo sich die ruhende Liquidität gerade befindet, liegt in den Daten der Stufe 2, dem tatsächlichen Auftragsbuch, der Zeit und den Verkäufen, und nicht in den Kerzenformationen.
Institutionen, die mit großen Volumina handeln, haben direkten Zugang zu diesen echten Mikrostrukturdaten. Sie haben Beziehungen zu erstklassigen Brokern, sie sehen die tatsächlichen Handelsströme, sie nutzen algorithmische Ausführungssysteme, die auf der Analyse des realen Auftragsbuchs basieren. Das Diagramm ist eine Cartoon-Version dieser Informationen, und zwar eine verzögerte.
Wir sind also wieder am Anfang. Imaginäre Niveaus auf einem Diagramm, dem das echte Geld überhaupt keine Beachtung schenkt.
Wie können Sie das wissen? Nach welchem Mechanismus bestimmt ein wichtiger Teilnehmer, wo der nächste Liquiditätsschub stattfinden wird?
Diagramme sind eine abgeleitete, verzögerte Darstellung dessen, was im Auftragsbuch bereits geschehen ist. Die eigentliche Information darüber, wo sich die Liquidität gerade befindet, ist in den Daten der Stufe 2 enthalten - dem tatsächlichen Auftragsbuch, der Zeit und den Verkäufen - und nicht in den Candlestick-Formationen.
Institute mit hohem Handelsvolumen haben direkten Zugang zu diesen echten Mikrostrukturdaten. Sie haben Beziehungen zu Prime Brokern, sehen die realen Handelsströme und nutzen algorithmische Ausführungssysteme, die auf Analysen des tatsächlichen Auftragsbuchs basieren. Das Diagramm ist eine Cartoon-Version dieser Informationen, und zwar mit einer Verzögerung.
Wir sind also wieder am Anfang. Imaginäre Niveaus auf einem Diagramm, denen das echte Geld überhaupt keine Beachtung schenkt.
Der Chart ist eine Geschichte, ja, aber:
1) es gibt dort immer noch Positionen, die reagieren werden, wenn sich der Preis auf sie zu oder von ihnen wegbewegt
2) der Chart selbst dient als Signal für weitere Aktionen, und zwar nicht in der Vergangenheit, sondern gerade jetzt schauen die Marktteilnehmer auf den Preischart und treffen Entscheidungen
Außerdem sagen Sie jetzt selbst, dass irgendwo Liquidität ist. Es ist also immer noch ein Bereich, weil es anderswo nicht genug Liquidität gibt, richtig? Und das sind wertvolle Informationen, zu denen normale Menschen, die zu Hause mit ihren Laptops und Handelsterminals sitzen, keinen Zugang haben. Die besser informierten Marktteilnehmer sind hinter dem Geld der weniger informierten her. Das ist genau die Jagd, denn der Markt schafft kein Geld, sondern verteilt es nur von einem zum anderen.
Jetzt sind wir wirklich wieder am Anfang, wenn Sie selbst die These vertreten, gegen die Sie ursprünglich argumentiert haben.
Möchten Sie mehr über die Schaffung von Liquidität erfahren? Lesen Sie über Livermore, der vor 100 Jahren Aktien in die Höhe trieb, um sie dann aufgrund des entstandenen Hypes zu verkaufen. Genau darum geht es bei der Schaffung von Liquidität: Massen von Marktteilnehmern dazu zu bringen, dort zu kaufen, wo sie verkaufen sollten, und andersherum. Seitdem hat sich nichts geändert. Um etwas zu verkaufen, brauchen Sie jemanden, der es von Ihnen kauft, und um ihn dazu zu bringen, dies zu dem von Ihnen gewünschten Preis zu tun, müssen Sie ihn davon überzeugen, dass er ein gutes Geschäft macht.
Wenn Sie nicht G.P. Morgan heißen und Zugang zu den von Ihnen beschriebenen nicht-öffentlichen Informationen haben, müssen Sie nur den Chart analysieren und eine logische Vermutung darüber anstellen, was dahinter steckt.
Das berühmteste Beispiel sind Stop-Orders hinter Preistiefs. Dies ist ein offensichtlicher Ort, um Ihre Limit-Order genau dort zu platzieren und ein großes Volumen auf die Stopps anderer Leute zu bekommen. Es gibt aber auch andere, weniger offensichtliche Stellen.
Die Grafik ist eine Geschichte, ja, aber:
1) es gibt dort immer noch Positionen, die reagieren werden, wenn sich der Preis auf sie zu oder von ihnen weg bewegt
2) der Chart selbst dient als Signal für weitere Aktionen, und das nicht in der Vergangenheit, sondern gerade jetzt schauen die Marktteilnehmer auf den Preischart und treffen Entscheidungen
. Außerdem sagen Sie jetzt selbst, dass irgendwo Liquidität ist. Es ist also immer noch ein Bereich, weil es anderswo nicht genug Liquidität gibt, richtig? Und das sind wertvolle Informationen, zu denen normale Menschen, die zu Hause mit Laptops und Terminals für den Einzelhandel sitzen, keinen Zugang haben. Die besser informierten Marktteilnehmer sind hinter dem Geld der weniger informierten her. Das ist genau die Jagd, denn der Markt schafft kein Geld, sondern verteilt es nur von einem zum anderen.
Jetzt sind wir wirklich wieder am Anfang, wenn Sie selbst die These behaupten, die Sie ursprünglich vertraten.
Wollen Sie mehr über die Schaffung von Liquidität erfahren? Lesen Sie über Livermore, der vor 100 Jahren Aktien hochgejubelt hat, um sie dann aufgrund des entstandenen Hypes zu verkaufen. Genau darum geht es bei der Schaffung von Liquidität: Massen von Marktteilnehmern dazu zu bringen, dort zu kaufen, wo sie verkaufen sollten, und andersherum. Seitdem hat sich nichts geändert. Um etwas zu verkaufen, brauchen Sie jemanden, der es Ihnen abkauft, und um ihn dazu zu bringen, dies zu dem von Ihnen gewünschten Preis zu tun, müssen Sie ihn davon überzeugen, dass er ein gutes Geschäft macht.
Wenn Sie nicht gerade G.P. Morgan heißen und Zugang zu den von Ihnen beschriebenen nicht-öffentlichen Informationen haben, müssen Sie nur den Chart analysieren und eine logische Vermutung darüber anstellen, was dahinter steckt.
Die Menschen sehen sich wirklich dieselben Charts an und reagieren auf dieselben Niveaus, wodurch eine sich selbst erfüllende Dynamik entsteht. Das ist real. Aber es beweist etwas viel Schwächeres: Es bedeutet, dass Preisniveaus Aktivitäten anziehen können, weil die Teilnehmer dies erwarten, und nicht, weil ein großer Marktteilnehmer dies herbeigeführt hat oder weil sich dort tatsächlich strukturelle Liquidität im Sinne des Orderbuchs befindet.
Auch hier sind es Limitaufträge, die für Liquidität auf dem Markt sorgen, nicht Marktaufträge. Damit ein großer Marktteilnehmer dort eine Limit-Order platzieren und die Stopps anderer Marktteilnehmer ausnutzen kann, muss der Preis zunächst dieses Extrem erreichen. Entweder erreicht der Markt diesen Wert auf natürliche Weise, in diesem Fall hat niemand etwas manipuliert, oder jemand treibt ihn absichtlich dorthin, was eine Manipulation wie aus dem Lehrbuch ist und auf regulierten Märkten illegal.
Die Tatsache, dass es zwar echte Liquiditätsinformationen gibt, diese aber für Kleinhändler unzugänglich sind, macht die Chartanalyse nicht zu einem gültigen Ersatz. Die Tatsache, dass es kein besseres Instrument gibt, rechtfertigt kein minderwertiges. Das ist so, als würde man sagen, dass man die Raumtemperatur messen kann, indem man den Heizkörper berührt, nur weil man sich kein Thermometer leisten kann.
Der erste Schritt zum Erfolg besteht darin, die Selbsttäuschung zu beseitigen. Aber wenn Sie darauf bestehen, können Sie sich ruhig selbst täuschen, mich betrifft das in keiner Weise.