und werden Sie Mitglied unserer Fangruppe
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Bewerten Sie es im Terminal MetaTrader 5
- Ansichten:
- 10
- Rating:
- Veröffentlicht:
-
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance
Blockdetektor
Die Idee dahinter
Vor einer starken impulsiven Kursbewegung gibt es in der Regel eine letzte Kerze, die in die „falsche“ Richtung zeigt – die letzte Verkaufs-Kerze, bevor der Kurs nach oben schießt, oder die letzte Kauf-Kerze, bevor der Kurs einbricht. Diese Kerze wird als Abdruck des Orderflusses interpretiert, der die Bewegung angeheizt hat: Der Bereich, den sie einnimmt, ist der Ort, an dem vor dem Ausbruch wahrscheinlich eine große Position aufgebaut wurde. Dieser Indikator formalisiert die Erkennung in drei Schritten: Bestätigen Sie echte fraktale Schwankungspunkte, achten Sie auf einen Schlusskurs, der mit einer Impuls-Kerze mit echtem Körper (kein schwacher Doji-Schub) einen dieser Punkte entscheidend durchbricht, und suchen Sie dann von diesem Durchbruch aus rückwärts nach der letzten entgegengesetzten Kerze – die Spanne dieser Kerze wird zum Orderblock.
Wie die Gap- und Liquiditäts-Sweep-Detektoren in dieser Serie ist auch hier eine Zone wirklich „lebendig“: Solange sie nicht durchbrochen wird, erstreckt sie sich weiter bis zum aktuellen Balken, und sobald der Kurs wieder in sie hineinrückt, friert der Bereich genau an diesem Balken ein und wird (standardmäßig) grau – so können Sie auf einen Blick erkennen, welche Zonen noch „ungetestet“ sind und welche bereits erneut durchlaufen wurden.
So interpretieren Sie es
- Bullischer Orderblock (standardmäßig grün/weiß) – die letzte Kerze mit Kursrückgang vor einem impulsiven Schlusskurs über einem jüngsten Swing-Hoch. Ungetestetes Angebot, das zur Nachfrage wurde; wird oft als potenzielle Unterstützung bei einem Rückzug beobachtet.
- Bärischer Orderblock (standardmäßig rot) – die letzte Kerze mit Aufwärtsschluss vor einem impulsiven Schlusskurs unterhalb eines jüngsten Swing-Tiefs. Ungetestete Nachfrage, die zu Angebot geworden ist; wird oft als potenzieller Widerstand bei einer Erholung beobachtet.
- Eine sich ausdehnende (farbige) Zone – noch nicht abgeschwächt; ihr rechter Rand verschiebt sich in Echtzeit weiter nach vorne, wenn „InpExtendUntilMitigated“ aktiviert ist (Standard), oder stoppt nach einer festgelegten Anzahl von „InpExtendBars“- Balken, falls deaktiviert.
- Eine eingefrorene, graue Zone – der Kurs ist wieder in sie zurückgekehrt – der Block ist abgeschwächt, und seine Box endete genau bei diesem Bar. Setzen Sie „InpHideMitigatedOBs“, um abgeschwächte Zonen zu löschen, anstatt sie auszublenden.
- „Break“-Kerze im Vergleich zum Orderblock selbst – der Orderblock ist die entgegengesetzte Kerze, nicht die impulsive; die impulsive Kerze dient lediglich zur Bestätigung des Strukturbruchs und wird niemals selbst als Zone gezeichnet.
Externe Variablen (Eingaben)
| Eingabe | Standard | Zweck |
|---|---|---|
| InpSwingLookback | 5 | Anzahl der erforderlichen Kerzen auf jeder Seite einer Kandidatenkerze, damit diese als Swing-Hoch bzw. -Tief bestätigt wird. |
| InpMinBreakPoints | 30 | Mindestabstand in Punkten, um den ein Schlusskurs ein Swing-Niveau überschreiten muss, damit dies als echter Strukturbruch gilt. |
| InpMinImpulseBodyPercent | 50,0 | Mindestprozentsatz des Kerzenkörpers im Verhältnis zur Spanne, den die durchbrechende Kerze aufweisen muss – filtert schwache, „dochtlastige“ „Durchbrüche“ heraus. |
| InpMaxSearchBarsForOB | 10 | Anzahl der Balken, die von der Durchbruchskerze zurückverfolgt werden, um nach der entgegengesetzten Order-Block-Kerze zu suchen. |
| InpUseBodyOnly | false | Verwendet für die Zone nur den Körper der Order-Block-Kerze anstelle ihres gesamten Hoch-Tief-Bereichs der Dochte. |
| InpMinZoneSizePoints | 30 | Mindestgröße der Zone in Punkten, ab der ein erkannter Order-Block gezeichnet wird. |
| InpMaxOBsToTrack | 30 | Maximale Anzahl von Orderblöcken, die gleichzeitig im Chart angezeigt werden; der älteste verfolgte Block wird entfernt, sobald ein neuer diese Obergrenze überschreitet. |
| InpExtendUntilMitigated | true | Bei „true“ wird die Zone eines nicht gemilderten Blocks in Echtzeit bis zum aktuellen Balken erweitert; bei „false“ endet die Erweiterung nach einer festgelegten Anzahl von Balken. |
| InpExtendBars | 40 | Feste Ausdehnungslänge (in Takten), wird nur verwendet, wenn „InpExtendUntilMitigated“ auf „false“ gesetzt ist. |
| InpRequireFullCloseForMitigation | false | Wenn „true“, muss eine Kerze innerhalb der Zone schließen, um sie zu mildern; wenn „false“, reicht es aus, wenn ein Docht die Zone berührt. |
| InpHideMitigatedOBs | false | Wenn „true“, wird die Zone eines Blocks sofort gelöscht, sobald er gemildert ist, anstatt ausgegraut und beibehalten zu werden. |
| InpBullishOBColor / InpBearishOBColor | Limettengrün / Rot | Farben für nicht gemilderte bullische und bärische Order-Block-Zonen. |
| InpMitigatedColor | Dunkelgrau | Farbe, die eine Zone annimmt, sobald sie abgeschwächt ist (sofern sie nicht ausgeblendet ist). |
| InpFillBox | true | Legt fest, ob Order-Block-Zonen ausgefüllt oder nur als Umrisse gezeichnet werden. |
| InpBoxStyle / InpBoxWidth | Solid / 1 | Rahmenstil und -breite jedes Bereichs. |
| InpShowLabels | true | Zeigt neben jedem Bestellblock eine Textbeschriftung mit dem Preis der Zone an. |
Empfohlene Verwendung
Funktioniert bei jedem Symbol und jedem Zeitrahmen; die Konzepte von Strukturbruch und Orderblock basieren jedoch auf reiner Kursentwicklung ohne symbolspezifische Annahmen – wie jede Fraktal-Pivot-Methode wägt InpSwingLookback die Bedeutung eines Niveaus gegen die Erkennungshäufigkeit ab, genau wie beim „Liquidity Sweep Detector“ aus dieser Serie. Strukturbrüche und deren Abmilderung werden konzeptionell ausschließlich an vollständig geschlossenen Kerzen bewertet, sodass ein Block nicht mitten in einer Kerze erscheint oder verschwindet, solange sich Hoch, Tief und Schlusskurs der aktuellen Kerze noch ändern.
InpMinImpulseBodyPercent dient speziell dazu, zu vermeiden, dass ein kaum wahrnehmbarer Schlusskurs als „Durchbruch“ markiert wird – eine Kerze, die mit einem großen Docht und einem kleinen Körper nur knapp über ein Swing-Niveau hinausragt, wird ausgeschlossen, da dies eher Rauschen als eine echte Verschiebung darstellt. Bei sehr langen Chartverläufen begrenzt „InpMaxOBsToTrack“ die Anzahl der Objekte, anstatt zuzulassen, dass sich jeder historische Orderblock unbegrenzt ansammelt. Dieser Indikator liest lediglich Kursdaten und platziert, ändert oder schließt niemals Orders; daher kann er sicher auf jedem Kontotyp ausgeführt werden.
Alle Chart-Objekte werden unter einem einzigen internen Namenspräfix erstellt und bei der Trennung des Indikators über „ObjectsDeleteAll()“ in „OnDeinit()“ vollständig entfernt, sodass keine Spuren im Chart zurückbleiben.

Abb. 1. Ein bullischer Orderblock, bestätigt durch die impulsive Ausbruchskerze, der später abgeschwächt wurde, auf XAUUSD M15. Dargestellt in Schwarz-Weiß gemäß den Bildrichtlinien der Code Base (750×500 px).
Übersetzt aus dem Englischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/en/code/76878
Broker-Profiler
Gibt die Symboleigenschaften aus, die dazu führen, dass sich derselbe EA bei einem anderen Broker anders verhält: Handelszeiten, Kontraktgröße, Tick-Wert, Spread-Statistiken, Swap-Kosten und Abdeckung der Echtzeit-Sitzungen. Nur-Lese-Modus, führt keine Handelsgeschäfte durch.
Market Structure Swing Map MT5
Ein übersichtlicher MT5-Indikator zur Marktstruktur, der bestätigte HH-, HL-, LH- und LL-Schwankungen direkt im Chart markiert.
Accumulation/Distribution
Der Accumulation/Distribution Indikator wird aus Änderung von Preis und Volumen bestimmt.
Accelerator Oszillator (AC)
Der Acceleration/Deceleration Indikator (AC) misst die Beschleunigung und Verlangsamung des aktuellen Marktimpulses, der Kraft der Kursbewegung.