Version 1.1.0 · NinjaTrader 8 Context first. Pressure second. Execution last. Trade less. Trade better. Trade with clarity.
© 2026 TTW Trading Systems PTE. LTD. · Flow.42 Analytics · Alle Rechte vorbehalten.
Über dieses Handbuch
Dieses Handbuch erklärt, was Flow.42 AbsorptionMap auf dem Chart anzeigt, welche Idee dahintersteht und jede Einstellung, die sich ändern lässt. Es ist für Trader geschrieben, nicht für Programmierer: Man muss nichts über die Interna wissen, um das Werkzeug gut zu nutzen.
AbsorptionMap ist ein Kontext- und Visualisierungswerkzeug. Es markiert Preisbereiche, in denen aggressives Kaufen oder Verkaufen absorbiert wurde, statt den Preis zu bewegen. Es ist kein automatisches Handelssignal und sagt nicht, wann zu kaufen oder zu verkaufen ist. Nutze es als einen Baustein im eigenen Vorgehen.
1. Was AbsorptionMap macht
AbsorptionMap findet und markiert die Preisniveaus, an denen aggressive Marktteilnahme von verstecktem Gegenfluss absorbiert wurde: die Momente, in denen Käufer drückten und drückten, der Preis aber nicht stieg, oder in denen Verkäufer nach unten hämmerten, ohne neue Tiefs zu erzeugen.
Das Werkzeug liest den Markt in drei Schichten:
- Imbalances finden die Preisniveaus innerhalb jeder Bar, an denen eine Seite des Order Flows klar dominierte.
- Cluster fassen wiederholte Imbalances an nahe beieinanderliegenden Preisen zu einer einzigen Absorptions-Zone zusammen.
- Absorptions-Logik beobachtet dann jede Zone und stellt die entscheidende Frage: Hat sich der aggressive Fluss durchgesetzt, oder wurde er absorbiert?
Eine optionale DOM-Defense-Schicht liest das Live-Orderbuch (Level 2 / Market Depth) und prüft, ob die absorbierende Seite auch als ungewöhnlich starke ruhende Liquidität sichtbar ist, die das Niveau verteidigt.
AbsorptionMap ist kein eigenständiger Einstiegs-Trigger. Es zeigt, wo ein Niveau wahrscheinlich verteidigt wurde, wo sich eine Drehung bilden könnte und wo der Respekt vor einem Preis aussagekräftig ist.
2. Was auf dem Chart zu sehen ist
AbsorptionMap kann fünf Dinge zeichnen:
1. Diamant-Marker sitzen auf dem Absorptions-Preisniveau. Form und Füllung zeigen, wie reif und wie stark die Einschätzung ist:
- Nur ein Ring, kein Diamant: früheste Stufe (Live Warning)
- Hohler Diamant: Candidate (früh, noch nicht bestätigt)
- Verblasster gefüllter Diamant: Provisional (wird wahrscheinlich bald bestätigt)
- Voll gefüllter Diamant: bestätigte Absorption
- Voll gefüllter Diamant mit äußerem Ring: starke bestätigte Absorption
2. Cluster-Hintergrundfärbung färbt die darunterliegende Zone in einer verblassten Absorptionsfarbe, damit das Niveau auf dem Chart verankert bleibt, während sich der Preis entfernt.
3. Kompaktes ABS-/DOM-Label neben dem Diamanten zeigt auf einen Blick die absorbierte Aggression (ABS) und, falls vorhanden, die DOM-Defense (DOM).
4. DOM-Defense-Label erscheint über der Zone, wenn das Orderbuch das Niveau mit deutlich überdurchschnittlicher Liquidität verteidigt hat.
5. Hover-Tooltip erscheint, wenn sich die Maus einem Marker nähert. Es zeigt die Stufe, den bullischen oder bärischen Kontext, das Absorptionsniveau und die Zonengrenzen, die absorbierte Aggression in Kontrakten und den Peak Signal Score.
Farblogik
- Bärische Absorption → OrangeRed. Aggressives Kaufen wurde von versteckten Verkäufern absorbiert. Die Käufer haben sich an einer Wand erschöpft. Erwartung: Abwärtsdruck.
- Bullische Absorption → LimeGreen. Aggressives Verkaufen wurde von versteckten Käufern absorbiert. Die Verkäufer haben sich an einer Wand erschöpft. Erwartung: Aufwärtsdruck.
Die Farbe richtet sich nach der Seite des absorbierten Aggressors, nicht nach der Seite der erwarteten Bewegung: dieselbe Konvention, die Volume Profile und Footprint-Werkzeuge verwenden. Die Richtungseinschätzung folgt automatisch: absorbierte Käufer bedeuten einen bärischen Kontext, absorbierte Verkäufer einen bullischen.
3. Kernkonzepte
3.1 Was ist Absorption?
Stell dir den Markt als große Auktion mit zwei Seiten an jedem Preis vor: Käufer, die heben wollen, und Verkäufer, die treffen wollen.
Meistens bewegt sich der Preis, wenn eine Seite aggressiv wird. Aggressive Käufer fressen die Offers, und der Preis tickt hoch. Aggressive Verkäufer fressen die Bids, und der Preis tickt runter. Normales Verhalten.
Doch manchmal drückt die aggressive Seite und drückt, und der Preis weigert sich, sich zu bewegen. Denk an ein Kind, das versucht, eine schwere Tür aufzudrücken. Es drückt einmal, zweimal, dreimal, und die Tür bewegt sich nicht, weil jemand auf der anderen Seite sie zuhält.
Dieser Jemand ist die absorbierende Partei:
- Aggressive Käufer heben das Offer immer wieder und fressen Kontrakte, doch eine Wand aus versteckten Verkäufern füllt das Offer so schnell nach, wie die Käufer es wegfressen. Die Aggression wird absorbiert. Wenn den Käufern die Überzeugung ausgeht, fällt der Preis: Es sind keine Käufer mehr da und reichlich Verkäufer.
- Aggressive Verkäufer werfen immer wieder in das Bid, doch versteckte Käufer füllen das Bid ebenso schnell nach. Die Aggression wird absorbiert. Wenn sich die Verkäufer erschöpfen, steigt der Preis: Das Bid hielt wie eine Festung.
Die Aufgabe von AbsorptionMap ist es, diese Momente zu erkennen, bevor die Drehung offensichtlich wird, indem es drei Anzeichen kombiniert: einen Imbalance-Footprint (aggressives Volumen auf einer Seite gestapelt), ein Scheitern des Ausbruchs (der Preis bewegte sich nach dem Druck nicht über die Zone hinaus) und optional DOM-Defense (das ruhende Buch ist auf der absorbierenden Seite stärker als normal). Wenn alle drei zusammenkommen, entsteht ein Marker mit hoher Konfidenz. Kommen nur einige zusammen, entsteht eine frühere, weniger sichere Einschätzung. Deshalb arbeitet AbsorptionMap mit fortschreitenden Stufen.
3.2 Imbalances: die Bausteine
Für jede abgeschlossene Bar vergleicht AbsorptionMap Kaufvolumen und Verkaufsvolumen diagonal zwischen benachbarten Preisniveaus.
Eine Bid-Imbalance ist Käuferdominanz: Das Kaufvolumen an einem Preis ist überwältigend größer als das Verkaufsvolumen ein Niveau darunter. Eine Ask-Imbalance ist das Spiegelbild: Verkaufsvolumen an einem Preis überwältigend größer als das Kaufvolumen ein Niveau darüber.
Was als „überwältigend" gilt, legt Imbalance Ratio fest (Standard 3.0: Eine Seite muss mindestens dreimal so groß sein wie die diagonale Gegenseite).
Einzelne Imbalances sind verrauscht. Index-Futures erzeugen Dutzende pro Bar. Nützlich werden sie erst, wenn sie clustern.
3.3 Cluster: die Absorptions-Zonen
Ein Cluster ist eine Gruppe von Imbalances, die im Preis nah beieinanderliegen (innerhalb Cluster Price Tolerance Ticks), in einem kurzen Fenster auftreten (innerhalb Cluster Window (Bars)) und zusammen eine Mindestanzahl (Min Imbalances in Cluster) und ein Mindestvolumen (Min Cluster Volume) erreichen.
Ein Cluster steht für anhaltenden einseitigen Druck an einer Zone: der Moment, in dem „das Kind gegen die Tür drückt". Die Frage, die folgt, lautet: Hielt die Tür (Absorption) oder öffnete sie sich (Fortsetzung)?
Jeder Cluster behält eine stabile Identität, während er von Bar zu Bar neu bewertet wird, sodass ein Niveau über die Zeit verfolgt werden kann, ohne seine Historie zu verlieren.
3.4 Die fortschreitenden Stufen
AbsorptionMap wartet nicht auf die volle Bestätigung, bevor es etwas anzeigt. Es macht ein Niveau sichtbar, während es sich entwickelt, sodass man die Bildung in Echtzeit verfolgen kann.
- Live Warning: frühestes Anzeichen. Die Einschätzung hat die Warnschwelle überschritten. Die Zone ist frisch, die Verteidigung ist teilweise, eine Drehung ist noch nicht sichtbar. Bedeutung: „dieses Niveau beobachten". Gezeichnet als reiner Ring.
- Candidate: stärkere Belege liegen vor: ein gescheiterter Ausbruch, eine kleine Gegenreaktion, DOM-Defense oder ein Reclaim. Bedeutung: „dieses Niveau ist aktiv". Gezeichnet als hohler Diamant.
- Provisional: die Wartezeit ist verstrichen und die Absorptionsprüfung hat ausgelöst, die volle Bestätigung steht aber noch aus. Bedeutung: „handelbar mit Bestätigung". Gezeichnet als verblasster gefüllter Diamant.
- Confirmed: die Prüfungen haben bestanden: ein gescheiterter Ausbruch plus eine Preisreaktion oder ein Follow-through. Bedeutung: „Absorption belegt". Gezeichnet als voll gefüllter Diamant.
Stufen bewegen sich nur vorwärts, nie zurück. Sobald ein Marker bestätigt ist, werden seine Details eingefroren, damit das Bild bei späteren Ticks nicht flackert. Live Warning ist die einzige Stufe, die bewusst live bleibt und sich weiter verfeinert, bis sie entweder aufsteigt oder verfällt. Ein separates, verborgenes Ergebnis („disconfirmed") deckt Niveaus ab, an denen der Preis klar durchbrach. Diese werden gar nicht gezeichnet.
3.5 Starke vs. schwache Absorption
Zwei Schwellen, beide in Points gemessen, legen die Stärkestufe fest:
- Weak Threshold ist, wie weit der Preis hätte laufen müssen, um die Zone zu durchbrechen. Blieb der Preis innerhalb oder verließ er sie nur knapp, ist die Absorption mindestens schwach: Etwas hat gehalten.
- Strong Threshold ist, wie weit der Preis nach der Absorption in die Gegenrichtung gedreht ist. Drehte der Preis über diese Distanz von der Zone, ist die Absorption stark: Etwas hat gehalten und ist dann abgeprallt.
Eine starke Absorption ist das Lehrbuch-Muster „Wand hielt plus Abpraller". Eine schwache Absorption ist „Wand hielt, Preis flach", nützlich als Zonenkontext, aber weniger handlungsrelevant für Einstiege.
Wichtig bei Nicht-Index-Instrumenten: In NinjaTrader entspricht ein Point einer vollen Preiseinheit. Bei ES sind das 4 Ticks; bei CL sind es 100 Ticks. Die Standardschwellen (2.0 / 3.0 Points) sind auf ES abgestimmt. CL braucht weit kleinere Werte. Vom CL Template ausgehen, siehe Abschnitt 8.
3.6 DOM-Defense
DOM-Defense liest das Live-Orderbuch und fragt: Zeigt die absorbierende Seite gerade ungewöhnlich starke ruhende Liquidität?
Das Werkzeug lernt über DOM Baseline Seconds (Standard 300 = fünf Minuten) eine rollierende Basislinie der normalen Orderbuch-Liquidität. Übersteigt die aktuelle Liquidität auf der relevanten Seite diese Basislinie um DOM Defense Multiplier (Standard 2,5×) und bleibt sie für DOM Persistence Samples aufeinanderfolgende Snapshots dort, wird die Zone als DOM-verteidigt markiert.
DOM-Defense erhöht den Peak Signal Score, kann vor einem Candidate verlangt werden (wenn Require DOM Defense For Candidate an ist) und löst ein eigenes DOM-Defense-Label über der Zone aus.
DOM-Defense ist per Design session-gebunden, auch wenn der Rest des Indikators rund um die Uhr läuft. Wer DOM-Marker außerhalb der konfigurierten Session-Fenster sehen möchte, aktiviert Ignore Session Filter.
3.7 Peak Signal Score
Jede Absorptions-Einschätzung trägt einen Score von 0 bis 100, der widerspiegelt, wie viele bestätigende Belege vorliegen. Der Score steigt mit: DOM-Defense auf der absorbierenden Seite, einer kleinen Gegenreaktion direkt nach dem Cluster, dem Anteil der Zone, den der Preis zurückerobert, einem gescheiterten Ausbruch in der ursprünglichen Richtung und der Größe des absorbierten aggressiven Volumens.
Der Peak Signal Score ist der höchste Score, den die Einschätzung je erreicht hat. Er ist klebrig: Er sinkt nie. Über Min Signal Score To Show lassen sich die sichtbaren Marker danach filtern: Auf 50 gesetzt, blendet er die lautesten Live Warnings aus und behält jeden Candidate und höher.
4. Adaptive Scaling (optional)
Volumen ist über den Tag nicht konstant. Die Eröffnung ist laut, die Mittagszeit ruhig, der Schluss zieht wieder an. Ein festes Min Volume, das zur Eröffnung passt, ist mittags viel zu streng; ein Wert, der mittags passt, ist zur Eröffnung viel zu locker.
Adaptive Scaling löst das, indem es Min Volume und Min Cluster Volume automatisch entlang der typischen Intraday-Volumenkurve skaliert. Die gesetzten Werte dienen als Anker für die aktivste Phase der Session; in ruhigeren Phasen sinken die wirksamen Schwellen in Richtung ihrer Untergrenzen. Lade mindestens fünf Tage Chart-Historie, damit die Kurve gut ausgebildet ist.
- Min Volume Floor und Min Cluster Volume Floor setzen die Untergrenzen. Empfohlene Startwerte: etwa 50 % von Min Volume und etwa 75 % von Min Cluster Volume.
- Use Day Factor passt die Schwellen zusätzlich an das Gesamttempo des aktuellen Tages an: Es vergleicht das heutige kumulierte Volumen mit dem typischen kumulierten Volumen zur selben Tageszeit. Das hilft an ungewöhnlich ruhigen Tagen und in halben Sessions und hebt die Schwellen nie über die Ankerwerte.
- Adaptive Label zeigt eine kleine, ziehbare Statusbox mit dem aktuellen Adaptiv-Faktor und den wirksamen Schwellen. Die meisten Nutzer brauchen das nicht.
Wer eine feste, vorhersehbare Schwelle bevorzugt, lässt Adaptive Scaling aus (Standard).
5. Sessions und Automatisierungs-Ausgaben
Der Session-Filter begrenzt, wann Absorptions-Einschätzungen auftreten können. Zwei Fenster lassen sich konfigurieren: ein Pre-Market-Fenster und ein RTH-Fenster (Regular Trading Hours).
So wirken die Regeln zusammen:
- Ist Ignore Session Filter an, werden alle Session-Zeiten umgangen: Einschätzungen können rund um die Uhr auftreten.
- Ist er aus und mindestens ein Fenster aktiviert, werden nur Einschätzungen innerhalb eines aktiven Fensters behalten.
- Ist er aus und beide Fenster deaktiviert, erscheinen keine DOM-Marker (DOM ist strikt session-gebunden). Absorptions-Marker können dennoch erscheinen, weil die Absorptions-Logik ohne konfiguriertes Fenster keine Begrenzung anwendet.
Für 24/5-Instrumente wie CL entweder Ignore Session Filter aktivieren oder ein langes RTH-Fenster setzen, das die eigenen Handelszeiten abdeckt.
Zeitformat. Session-Zeiten akzeptieren mehrere Formate (15:00, 3:00 PM, 15:00:00) und werden in der lokalen Zeitzone des Systems gelesen. Lässt sich ein Wert nicht lesen, erscheint beim Chart-Laden eine Warnung im NinjaTrader-Output-Fenster.
Die werkseitigen Session-Zeiten sind generische Platzhalter in lokaler Zeit. Setze sie immer passend zum tatsächlich gehandelten Instrument und zur Zeitzone. Die in Abschnitt 8 beschriebenen Templates enthalten Beispiel-Fenster in mitteleuropäischer Zeit.
Automatisierungs-Ausgaben
AbsorptionMap stellt drei Ausgaben bereit, die BloodHound und ähnliche Automatisierungs-Tools lesen können. Die Namen der Ausgaben tragen aus historischen Gründen das Präfix BloodHound; jedes Tool, das sich an einen Indikator-Plot binden kann, liest sie genauso:
| Ausgabe | Wert |
|---|---|
| BloodHound Absorption Long Signal | +1 bei einer Long-Lesung |
| BloodHound Absorption Short Signal | −1 bei einer Short-Lesung |
| BloodHound Absorption Signal | +1 oder −1, beide Richtungen in einer Ausgabe |
Die Ausgaben werden transparent geplottet und zeichnen deshalb nichts auf deinen Chart.
Lies die Richtung genau. Die Ausgabe nennt dir die Handelsrichtung, nicht die Buchseite, auf der die Imbalance lag. Absorbiertes Verkaufen ergibt eine Long-Ausgabe, weil die Verkäufer den Kurs nicht bewegen konnten. Absorbiertes Kaufen ergibt eine Short-Ausgabe, weil die Käufer gescheitert sind. Das ist das Gegenteil dessen, was die Begriffe Bid und Ask nahelegen, und es ist auch das Gegenteil der VolImbalance-Ausgaben, wo eine Bid-Imbalance bullisch ist. Wenn du ein Automatisierungs-Template mit beiden Indikatoren baust, verdrahte jeden über seinen eigenen Ausgabenamen und setze nicht voraus, dass die beiden zusammenpassen.
Nur bestätigte Lesungen feuern. Eine vorläufige Lesung kann wieder wegfallen und erzeugt deshalb nie eine Ausgabe. Das ist Absicht. Ein Signal, das im Nachhinein verschwindet, ist im Backtest schlimmer als ein Signal, das spät kommt.
Rechne mit einer Verzögerung. Die Ausgabe erscheint Wait Bars Bars nach dem Cluster, per Default fünf. So lange braucht AbsorptionMap, um zu sehen, ob sich der Kurs von der Zone wegbewegt hat oder nicht.
Nach einem Reload. Bestätigte Lesungen, die aus dem dauerhaften Marker-Cache zurückkommen, werden wieder auf ihre eigenen Bars geschrieben. Die Ausgaben sehen nach einem Chart-Reload also genauso aus wie live.
Historie braucht Tick Replay. AbsorptionMap liest Trades, keine Bars. Auf historischen Bars sind die Trades nur verfügbar, wenn Tick Replay für die Data Series eingeschaltet ist (Rechtsklick auf den Chart, Data Series, Tick Replay). Ist es an, wird die geladene Historie wie eine Live-Session ausgewertet, und die Ausgaben sind auf jedem historischen Bar gefüllt. Ist es aus, tragen historische Bars keine Footprints, es können sich also keine neuen Lesungen auf ihnen bilden: Die einzige Historie, die du siehst, sind die bestätigten Lesungen aus dem dauerhaften Marker-Cache, und genau die tragen die Ausgaben. Ist Tick Replay aus und der Cache hält nichts für die geladene Historie, zeigt AbsorptionMap einen Hinweiskasten auf dem Chart und schreibt eine Zeile ins Control Center Log. Der Kasten wird mit VolImbalance auf demselben Chart geteilt, er erscheint also einmal pro Chart. In das NinjaScript-Output-Fenster wird nie etwas geschrieben.
Die gesamte Historie ist lesbar. Die Ausgaben behalten ihre Werte auf jedem geladenen Bar (der Look-back ist seit dem Build vom September 2026 unbegrenzt). Ein Automationswerkzeug kann also einen Bar von früher in der Session oder vom Vortag lesen, und ein NinjaScript kann weit zurück indizieren, ohne einen Fehler auszulösen.
Weitere Werte werden für andere Flow.42-Module bereitgestellt. Sie haben keinen Plot und lassen sich in BloodHound oder einem ähnlichen Tool nicht auswählen.
6. Praktischer Einsatz
Konservativer Einstiegskontext: nur voll ausgebildete Einschätzungen zeigen. Show Provisional Marker aus, Show Weak Absorption aus, Min Signal Score To Show auf 60, Require DOM Defense For Candidate an. Es erscheinen weniger Marker, aber die sichtbaren sind hochwertigere Drehniveaus.
Echtzeit-Scalping-Aufmerksamkeit: Einschätzungen so früh wie möglich sehen, im Bewusstsein, dass manche nicht aufgehen. Show Provisional Marker an, Show Weak Absorption an, Min Signal Score To Show auf 0, Live Warning Score senken (zum Beispiel auf 30). Die Live-Warning-Ringe feuern früh. Als Hinweis zum Beobachten nutzen, nicht als Einstieg.
Begleiter zu Volume Profile / Footprint: nur Zonen mit ernsthaft absorbiertem Volumen hervorheben. Min Absorbed Aggression auf einen instrumentengerechten Wert anheben, Min Cluster Volume anheben und Min Signal Score To Show auf 50. Das filtert Mikro-Cluster und zeigt nur die großen Absorptionswände.
Multi-Instrument-Routine: vom Chart Template des Instruments ausgehen, siehe Abschnitt 8. Am empfindlichsten reagieren Min Volume, Min Cluster Volume und die Threshold-Points; diese zuerst abstimmen.
7. Vollständige Parameter-Referenz
Jede für Nutzer sichtbare Einstellung ist unten aufgeführt, gruppiert nach den Abschnitten im NinjaTrader-Eigenschaften-Panel. „Standard" ist der Wert, mit dem der Indikator ausgeliefert wird.
01 Imbalance Filter
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Min Volume | 50 | Niedrigstes Handelsvolumen an einem Preisniveau, bevor eine Imbalance verwendet werden kann. |
| Max Volume | -1 | Höchstes erlaubtes Handelsvolumen an einem Preisniveau. -1 für keine Obergrenze. |
| Imbalance Ratio | 3.0 | Wie viel größer das Volumen einer Seite gegenüber der diagonalen Gegenseite sein muss, um als Imbalance zu zählen. 3.0 bedeutet mindestens drei zu eins. Bereich 1,0 bis 10,0. |
| Zero Opposing = Extreme Imbalance | An | Behandelt null diagonales Gegenvolumen als extreme Imbalance, damit die Erkennung auch an Preisextremen funktioniert, wo eine Seite gar nicht gedruckt hat. |
01a Adaptive Scaling
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Adaptive Scaling | Aus | Skaliert Min Volume und Min Cluster Volume automatisch mit der typischen Intraday-Volumenkurve. Die gesetzten Werte verankern die aktivste Phase. Mindestens fünf Tage Historie laden. |
| Min Volume Floor | 25 | Untergrenze für das skalierte Min Volume. Empfohlen etwa 50 % von Min Volume. |
| Min Cluster Volume Floor | 300 | Untergrenze für das skalierte Min Cluster Volume. Empfohlen etwa 75 % von Min Cluster Volume. |
| Use Day Factor | Aus | Passt Schwellen zusätzlich an das Tempo des aktuellen Tages gegenüber einem typischen Tag an. Hilft an ruhigen Tagen und in halben Sessions. Hebt Schwellen nie über die Anker. |
| Adaptive Label | Aus | Zeigt eine kleine ziehbare Statusbox mit dem aktuellen Adaptiv-Faktor und den wirksamen Schwellen. Die meisten Nutzer brauchen das nicht. |
02 Cluster Detection
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Cluster Price Tolerance (Ticks) | 3 | Maximaler Preisabstand in Ticks, damit zwei Imbalances zum selben Cluster gehören. |
| Min Imbalances in Cluster | 3 | Kleinste Anzahl an Imbalances, um ein gültiges Cluster zu bilden. Bereich 2 bis 20. |
| Min Cluster Volume | 400 | Kleinstes Gesamt-Cluster-Volumen (Summe der Volumina seiner Imbalances), bevor das Cluster qualifiziert. |
| Cluster Lookback Bars | 200 | Wie viele jüngste Bars beim Neuaufbau der Cluster durchsucht werden. Größere Werte halten ältere Cluster länger am Leben. Bereich 50 bis 500. |
| Cluster Window (Bars) | 8 | Maximaler Bar-Abstand zwischen der ersten und letzten Imbalance in einem Cluster. Bereich 1 bis 100. |
03 Absorption Detection
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Enable Absorption Detection | An | Aktiviert die bestätigte Absorptionsprüfung, die nach der Wartezeit auslöst. |
| Wait Bars | 5 | Bars, die nach der Cluster-Bildung gewartet wird, bevor die finale Absorptions-Klassifizierung läuft. Bereich 2 bis 20. |
| Weak Threshold (Points) | 2.0 | Erwartete Bewegungsgröße in Points. Lief der Preis nicht so weit über die Zone hinaus, kann die Absorption als schwach gelten. Ein Point = eine volle Preiseinheit (ES = 4 Ticks, CL = 100 Ticks). |
| Strong Threshold (Points) | 3.0 | Gegenbewegung (Drehung) in Points. Dreht der Preis nach dem Cluster über diese Distanz, gilt die Absorption als stark. Gleiche Points-Konvention. |
| Show Provisional Marker | An | Zeigt den frühen verblassten Marker vor der finalen Bestätigung. Für eine Nur-Bestätigt-Anzeige ausschalten. |
| Min Absorbed Aggression | 0 | Blendet Marker aus, deren absorbiertes aggressives Volumen unter diesem Wert liegt. 0 schaltet den Filter aus. |
| Show Weak Absorption | An | Zeigt schwache Candidate-, Provisional- und Confirmed-Marker. Live-Warning-Ringe bleiben in jedem Fall sichtbar. |
04 Early Absorption
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Enable Early Absorption | An | Aktiviert die Live-Warning- und Candidate-Schichten, den frühen Teil des fortschreitenden Lebenszyklus. |
| Early Window Seconds | 6 | Wie viele Sekunden nach einem Cluster der frühe Bewerter aktiv bleibt. Danach kann nur noch die Wait-Bars-Bestätigung auslösen. Bereich 1 bis 30. |
| Min Follow Through Ticks | 3 | Erwartete Fortsetzungsbewegung in Ticks. Lief der Preis nicht so weit in die ursprüngliche aggressive Richtung, erhöht die Failed-Break-Prüfung den frühen Score. Bereich 1 bis 20. |
| Reclaim Threshold Percent | 50 | Anteil der Zonenhöhe, den der Preis zurückerobern muss, um einen Reclaim-Punkt zu erhalten. 50 = die Mitte der Zone. Bereich 0 bis 100. |
| Min Opposite Response Ticks | 2 | Kleinste Bewegung gegen die Cluster-Richtung, um einen Reaktionspunkt zu zählen. Bereich 1 bis 10. |
| Live Warning Score | 35 | Score, bei dem der Live-Warning-Ring erscheint. Bereich 0 bis 100. |
| Candidate Score | 60 | Score, bei dem eine Live Warning zu einem Candidate-Diamanten aufsteigt. Bereich 0 bis 100. |
| Min Signal Score To Show | 0 | Blendet alle Marker aus, deren Peak Signal Score unter diesem Wert liegt. 0 schaltet den Filter aus. |
05 DOM Confluence
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Enable DOM Confluence | An | Nutzt Live-Orderbuch-Liquidität als zusätzlichen Kontext für aktive Cluster. Erfordert ein aktives Session-Fenster oder Ignore Session Filter = an; sonst erscheinen keine DOM-Marker. |
| DOM Levels | 5 | Anzahl der Bid- und Ask-Niveaus (Top-N), die für die Liquiditätszählung summiert werden. Bereich 1 bis 20. |
| DOM Sample Interval (ms) | 500 | Millisekunden zwischen Orderbuch-Snapshots. Niedriger ist reaktiver, braucht aber mehr CPU. Bereich 100 bis 5000. |
| DOM Baseline Seconds | 300 | Sekunden, über die normale Orderbuch-Liquidität gelernt wird. Der aktuelle Snapshot wird mit dem Durchschnitt dieses Fensters verglichen. Bereich 30 bis 3600. |
| DOM Defense Multiplier | 2.5 | Wie viel stärker die aktuelle Liquidität gegenüber der Basislinie sein muss, um als Verteidigung zu zählen. 2,5 = 250 % des Normalen. Bereich 1,0 bis 20,0. |
| DOM Min Samples | 60 | Mindestanzahl an Snapshots, bevor die Basislinie als gültig gilt. Etwa 30 Sekunden beim Standardintervall. |
| DOM Persistence Samples | 3 | Aufeinanderfolgende qualifizierende Snapshots, bevor DOM-Defense markiert wird. Filtert einzelne Tick-Spitzen. Bereich 1 bis 20. |
| Show DOM Defense Label | Aus | Zeigt das separate DOM-Label neben dem Marker. Erfordert Show Marker Details = an und eine aktive Session (oder Ignore Session Filter). DOM-Scoring funktioniert auch bei ausgeblendetem Label. |
| Require DOM Defense For Candidate | Aus | Ein Aufstiegs-Gate: Eine Einschätzung kann erst zum Candidate werden, wenn DOM-Defense vorliegt. Beeinflusst die Sichtbarkeit von Live Warning, Provisional oder Confirmed nicht. |
| Hide Clusters Without DOM Defense | Aus | Ein vollständiger Sichtbarkeitsfilter: Cluster, die nie DOM-Defense erreicht haben, werden komplett ausgeblendet: kein Diamant, Ring, keine Färbung, kein Label. Stärker als das Gate darüber. |
06 Visualization
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Show Diamond Markers | An | Hauptschalter für alle cluster-gebundenen Visuals. Aus heißt: keine Diamanten, Ringe oder gefärbten Zonen (die Hintergrundfärbung wird unabhängig von ihrer eigenen Einstellung unterdrückt). DOM-Labels werden separat gesteuert. |
| Recolor Cluster Background | An | Färbt die Cluster-Zone in der Absorptionsfarbe. Das ist das visuell aufwendigste Einzelmerkmal. |
| Diamond Size (Pixels) | 12 | Größe des Diamant-Markers in Pixeln. Bereich 5 bis 30. |
| Marker Opacity % | 80 | Deckkraft der Marker-Füllung, 10 bis 100. |
| Bearish Absorption Color | OrangeRed | Farbe, wenn aggressives Kaufen absorbiert wurde (bärischer Kontext). |
| Bullish Absorption Color | LimeGreen | Farbe, wenn aggressives Verkaufen absorbiert wurde (bullischer Kontext). |
| Marker Background Color | Black | Hintergrundfarbe hinter dem kompakten Absorbed-Aggression-Label. |
| Marker Font Color | White | Textfarbe für das kompakte Absorbed-Aggression-Label. |
07 Marker Details
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Show Marker Details | An | Zeigt den kompakten Absorbed-Aggression-Wert neben jedem Marker. |
| Show Detail Tooltip | An | Zeigt beim Hovern in Marker-Nähe das vollständige mehrzeilige Tooltip (Niveau, Zone, absorbierte Aggression, Peak Score). |
08 Persistent Cache
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Enable 5-Day Marker Cache | An | Speichert berechnete Absorptions- und DOM-Ereignisse, damit sie nach einem Chart-Reload wieder erscheinen. |
| Marker Cache Days | 5 | Anzahl der Kalendertage, für die gespeicherte Ereignisse behalten werden. Ältere werden entfernt. Bereich 1 bis 5. |
09 Session Settings
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Ignore Session Filter | Aus | An heißt: keine Session-Begrenzung. Einschätzungen können jederzeit auftreten. Auch der einfachste Weg, DOM-Marker ohne konfiguriertes Fenster anzuzeigen. |
| Use Pre-Market | An | Aktiviert das Pre-Market-Session-Fenster. |
| Pre Market Start (HH:mm) | 09:00 | Pre-Market-Startzeit, in lokaler Zeit. |
| Pre Market End (HH:mm) | 13:00 | Pre-Market-Endzeit, in lokaler Zeit. |
| Use RTH | An | Aktiviert das Regular-Trading-Hours-Fenster. |
| RTH Start (HH:mm) | 15:00 | RTH-Startzeit, in lokaler Zeit. |
| RTH End (HH:mm) | 22:00 | RTH-Endzeit, in lokaler Zeit. |
10 Auction Engine
Diese beiden Einstellungen wirken nur, wenn Flow.42 AuctionEngine auf demselben Chart liegt. Ohne Engine haben sie keine Wirkung und der Indikator verhält sich exakt wie zuvor.
| Einstellung | Standard | Was sie bewirkt |
|---|---|---|
| Auction Modulation | Subtle | Steuert, wie der AuctionEngine-Kontext die AbsorptionMap-Marker beeinflusst. Mit der Auktions-Einschätzung übereinstimmende Marker (Continuation) bleiben voll deckend; gegenläufige Marker werden gedimmt: leicht, solange die Location die Einschätzung noch stützt, stark, sobald die Location sie bedroht. Off = kein Dimmen. Optionen: Off, Subtle, Strong. |
| Auction Context | Live | Welche Auktions-Einschätzung das Dimmen steuert. Live = die aktuelle Einschätzung der Engine, auf alle Marker angewandt (entspricht Live-Trading). Historical = jeder Marker wird von der Auktion beurteilt, wie sie an seiner eigenen Bar war, sodass sich vergangenes Verhalten studieren lässt, auch bei geschlossenem Markt. Historical dimmt Bars, die älter als das Historienfenster der Engine sind, nicht. |
8. Startpunkte je Instrument
Kopiere keine Einstellungen aus einem Dokument. Jedes Flow.42 Release bringt Chart Templates und Indicator Templates für die Instrumente mit, die wir selbst handeln: ES, MES, NQ, MNQ, CL, GC und BTCUSD. Diese Templates sind die Referenz für die AbsorptionMap Einstellungen. Sie tragen das aktuelle Tuning und werden mit jedem Release aktualisiert. Deshalb veralten sie nicht so wie eine Tabelle in einem Handbuch.
Das Chart Template ist die aktive Version. Es lädt den kompletten Flow.42 Chart für das Instrument, AbsorptionMap eingeschlossen, mit den Einstellungen, die zu diesem Instrument passen. Rechtsklick auf den Chart, Templates wählen, dann Load, und das Flow.42 Template für dein Instrument auswählen.
Das Indicator Template lädt AbsorptionMap allein. Öffne die AbsorptionMap Eigenschaften, klicke unten im Dialog auf Template, dann auf Load. Der Dateiname sagt dir, für welchen Bar Typ die Einstellungen gemacht wurden, zum Beispiel NQ 1min oder GC 5min. Bei einem langsameren Chart Typ die Volumenschwellen hochskalieren. Bei einem feineren Tick Chart herunterskalieren.
Die Werksstandards in Abschnitt 7 sind auf ES abgestimmt. Bei jedem anderen Instrument vom Template ausgehen, nicht von den Standardwerten. Am empfindlichsten auf das Instrument reagieren Min Volume, Min Cluster Volume und die beiden Threshold Points. Wer von Hand nachstimmt, sollte mit diesen anfangen. Die Threshold Points folgen der Points Konvention aus Abschnitt 3.5: Ein Point ist eine volle Preiseinheit. Bei ES sind das 4 Ticks, bei CL 100 Ticks. Darum braucht CL weit kleinere Threshold Werte als die Index Futures.
Die Templates sind Startpunkte, keine backgetesteten Optima. Die Session Fenster in den Templates sind Beispiele in mitteleuropäischer Zeit. Passe sie an deine Zeitzone an und validiere im eigenen Setup, bevor du Kapital einsetzt.
Eine Validierungsroutine für jedes Instrument
Nach dem Laden eines Templates ein bis zwei Wochen einen Plausibilitätscheck laufen lassen.
- Marker-Anzahl je RTH-Session. Als grobe Orientierung zeigt ES tendenziell 5 bis 20 Ereignisse, NQ 8 bis 25, CL 3 bis 15. Deutlich mehr heißt zu empfindlich; deutlich weniger heißt zu streng.
- Verhältnis stark zu schwach. Eine gesunde Mischung ist etwa ein starkes pro drei bis fünf schwache. Ist alles stark, Strong Threshold anheben; ist nichts stark, senken.
- Historie stichprobenartig prüfen. Ein paar Marker von gestern herausgreifen und ehrlich fragen: „Hätte ich das gehandelt?" Von dort aus abstimmen.
9. Fehlerbehebung
Ich sehe gar keine Marker. Min Volume und Min Cluster Volume senken, um zu prüfen, ob die Engine überhaupt etwas erzeugt. Imbalance Ratio leicht senken (etwa 3.0 auf 2.5). Min Signal Score To Show auf 0 setzen, damit kein Qualitätsfilter alles ausblendet. Prüfen, ob man innerhalb eines konfigurierten Session-Fensters ist, oder Ignore Session Filter aktivieren. Das Output-Fenster auf Warnungen prüfen.
Diamanten erscheinen, DOM-Labels nie. DOM ist session-gebunden: Sind Pre-Market und RTH beide aus und Ignore Session Filter aus, können DOM-Labels nicht erscheinen. Ein Fenster aktivieren oder Ignore Session Filter einschalten. Der Datenfeed muss Level 2 / Market Depth liefern; manche Retail-Feeds tun das nicht. Die DOM-Basislinie braucht zudem ihre Mindest-Snapshots, bevor Verteidigung auslösen kann, also nach dem Verbinden etwa eine Minute warten.
Ein Marker erscheint live, verschwindet aber beim Reload. Prüfen, ob Enable 5-Day Marker Cache an ist. Nach einem Upgrade ist ein einmaliger Cache-Neuaufbau normal: Neue Marker bauen sich aus Live-Daten auf. Prüfen, ob Marker Cache Days groß genug für das eigene Reload-Muster ist.
Historische Bars zeigen gar keine Lesungen, nur Live-Bars bekommen Marker. Tick Replay ist auf der Data Series aus, und der dauerhafte Marker-Cache hält nichts für die geladene Historie (ein neues Instrument, eine frische Installation oder mehr Tage als Marker Cache Days). Schalte Tick Replay ein, um die Historie berechnen zu lassen, oder akzeptiere, dass Lesungen mit den Live-Daten beginnen. Der einmalige Hinweiskasten auf dem Chart sagt dir, welcher Fall vorliegt; am Indikator ist nichts kaputt (Abschnitt 5).
Im NinjaScript-Output-Fenster erscheint nichts mehr. Absicht seit dem Build vom September 2026: AbsorptionMap schreibt dort nichts. Echte Fehler erreichen das Control Center Log, einmal pro Quelle und Session.
Zu viele Live-Warning-Ringe, wenige steigen zum Candidate auf. Live Warning Score anheben (etwa 35 auf 40). Require DOM Defense For Candidate aktivieren, um schwache Warnungen am Aufstieg zu hindern. Bei Instrumenten mit dünnem Buch DOM Defense Multiplier senken (Richtung 2,0), damit Verteidigung öfter auslöst, oder die Anforderung aus lassen.
Alle Ereignisse sind schwach, keines stark. Strong Threshold (Points) senken. Bei CL ist der ES-Standard viel zu groß, siehe Abschnitt 8. Außerdem prüfen, ob die Bars unter dem Cluster tatsächlich Handelsvolumen tragen; ohne Trades gibt es nichts, was drehen könnte.
Der Chart ist bei volumenstarken Instrumenten langsam. DOM Sample Interval anheben (500 auf 750 oder 1000), um die Orderbuch-Last zu senken. Min Volume und Min Cluster Volume anheben, um weniger Imbalances zu verfolgen. Recolor Cluster Background ausschalten: Die gefärbte Zone ist das aufwendigste Einzel-Visual. Wer keine Intra-Bar-Updates braucht, kann den OnBarClose-Berechnungsmodus erwägen.
10. Performance-Hinweise
OnBarClose ist der leichteste Berechnungsmodus; nutze ihn, wenn keine Intra-Bar-Updates nötig sind. OnPriceChange ist die empfohlene Balance fürs Live-Trading: Es aktualisiert bei jedem Tick, hält das Rendering aber effizient. Min Volume anzuheben filtert kleine Prints früh und ist der günstigste Weg, Last zu reduzieren. Das Rendering ist der größte Kostenpunkt pro Frame, und Recolor Cluster Background ist das aufwendigste Einzelmerkmal. DOM-Updates werden durch DOM Sample Interval gedrosselt. Bei einem unruhigen Feed anheben. Der persistente Cache schreibt selten, Festplattenaktivität ist also vernachlässigbar. Viele Charts gleichzeitig sind kein Problem; es gibt keinen gemeinsamen Pro-Chart-Zustand, der kollidieren könnte.
11. Glossar
- Absorption: aggressives Handelsvolumen, das den Preis nicht bewegt hat, weil versteckte ruhende Liquidität oder Gegenfluss es absorbiert hat.
- Bid-Imbalance: Käuferdominanz: Kaufvolumen an einem Preis weit größer als das Verkaufsvolumen ein Niveau darunter.
- Ask-Imbalance: Verkäuferdominanz: Verkaufsvolumen an einem Preis weit größer als das Kaufvolumen ein Niveau darüber.
- Cluster: eine Gruppe von Imbalances, die im Preis und in der Zeit nah beieinanderliegen und zusammen eine Absorptions-Zone bilden.
- Live Warning: früheste Stufe; nur ein Ring. Die Einschätzung hat die Warnschwelle überschritten, aber noch keine weitere Anforderung.
- Candidate: zweite Stufe; ein hohler Diamant. Stärkere Belege liegen vor und, falls verlangt, ist DOM-Defense vorhanden.
- Provisional: dritte Stufe; ein verblasster gefüllter Diamant. Die Wartezeit ist verstrichen und die Absorptionsprüfung hat ausgelöst, die volle Bestätigung steht aber aus.
- Confirmed: vierte Stufe; ein voll gefüllter Diamant. Die finale Prüfung hat ausgelöst und die Details sind eingefroren.
- Starke Absorption: eine bestätigte Einschätzung, bei der der Preis mindestens den Strong Threshold über die Zone hinaus gedreht ist.
- Schwache Absorption: eine bestätigte Einschätzung, bei der der Preis innerhalb der Zone hielt oder sie nur knapp verließ, ohne starke Drehung.
- DOM (Depth of Market): ruhende Liquidität im Orderbuch über mehrere Niveaus.
- DOM-Defense: aktuelle Orderbuch-Liquidität auf der absorbierenden Seite, die ihre rollierende Basislinie um den DOM Defense Multiplier übersteigt.
- Peak Signal Score: der höchste Score, den eine Einschätzung in ihrer Lebensdauer erreicht hat. Klebrig; sinkt nie.
- Absorbierte Aggression: die aggressiven Kontrakte, die an der Zone absorbiert wurden; auf dem kompakten ABS-Label angezeigt.
12. Änderungsverlauf
Version 1.2.0 (Build September 2026)
- Einstellungen je Instrument kommen jetzt aus den Flow.42-Templates (Abschnitt 8).
- Abschnitt 5 erklärt Tick Replay und Historie. Ein Reload reproduziert die Live-Ausgaben.
- Unbegrenzter Look-back auf allen Ausgaben. Keine Meldungen im NinjaScript-Output-Fenster.
Version 1.1.0
- Automatisierungs-Ausgaben für BloodHound und ähnliche Systeme, dokumentiert in Abschnitt 5: eine Long-Ausgabe, eine Short-Ausgabe und eine kombinierte.
- Hinweis zum Lesen der Richtung, die die Handelsrichtung meint und nicht die rohe Bid- oder Ask-Seite.
Version 1.0.0
Erste öffentliche Ausgabe des AbsorptionMap-Benutzerhandbuchs.
- Stabile Cluster-Identität, die über Erkennungszyklen nicht driftet.
- Fortschreitender Lebenszyklus: Live Warning, Candidate, Provisional, Confirmed, plus eine Strong-Stufe.
- Optionales Adaptive Scaling für Volumen nach Tageszeit und Tagestempo.
- DOM-Defense-Konfluenz mit rollierender Basislinie und Persistenz-Filterung.
- Persistenter Marker-Cache, damit Einschätzungen einen Chart-Reload überdauern.
- Optionale Flow.42-AuctionEngine-Integration, die gegenläufige Marker dimmt.
- Empfohlene Startwerte für ES, NQ und CL.
Flow.42 AbsorptionMap: cluster-basierte Order-Flow-Absorptionserkennung mit optionaler DOM-Defense-Konfluenz und einem persistenten Marker-Cache.
© 2026 TTW Trading Systems PTE. LTD. · Flow.42 Analytics · Alle Rechte vorbehalten.