Order Flow Indicator Suite
Assembly:
TraderJan.Indicators.dll
Indicators Included:Liquidity Battle.cs,Market Footprint.cs,Market Map.cs,Market Speed.cs,CandleVolumeAndDelta.cs
π’ Part 1: Layman & Trader Guide
1. What is Order Flow?
Most conventional trading indicators (Moving Averages, RSI, Stochastics) only look at Price over Time.
Order Flow looks inside each candle to see the real engine that moves price: the clash between Aggressive Market Orders (Flow) and Passive Limit Orders (Liquidity).
[ Market Buy Orders ] βββΊ Hitting βββΊ [ Limit Sell Orders (Ask) ] βββΊ Absorbed? βββΊ Reversal!
[ Market Sell Orders ] βββΊ Hitting βββΊ [ Limit Buy Orders (Bid) ] βββΊ Swept? βββΊ Breakout!
2. Guide to the Order Flow Tools
βοΈ Liquidity Battle (The Flagship)
- What it does: Treats the market like a real-time tug-of-war physics engine. It tracks whether aggressive market buyers are breaking through the order book or getting absorbed by passive limit orders.
- How to trade it:
- Absorption: Large aggressive buyers fire repeatedly into a price level, but price refuses to go higher. This indicates massive institutional limit orders absorbing them. Look for reversals.
- Exhaustion: Aggressive volume suddenly vanishes at a key level. The market loses momentum and rolls over.
πΊοΈ Market Map
- What it does: The "Big Picture" liquidity heatmap. While tools like Bookmap show you what traders intend to do (resting limit orders that can be pulled/spoofed), Market Map shows where institutional transactions actually executed.
- How to trade it: Follow the high-volume liquidity tracks to identify where institutions established massive positions.
π£ Market Footprint & Cluster Delta
- What it does: Displays Point of Control (POC), Value Area (VA), and Volume Delta directly on standard candles without needing to zoom into cluttered footprint numbers.
- How to trade it: When the POC of a candle shifts dramatically to the extreme wick while Delta is negative, buyers have been trapped at the highs.
π Market Speed (Tape Acceleration)
- What it does: Like a speedometer for transaction velocity. It measures how many trades occur per millisecond.
- How to trade it: Spot acceleration into key support/resistance zones before price turns around.
π» Part 2: Expert & Developer Specification
1. Market Data Ingestion & Microstructure Engine
The suite interfaces directly with ATAS market depth and cluster feeds:
* Subscribes to MarketDataFactory cluster aggregation: CumulativeDelta, VolumePerPrice, and BidAskDelta.
* Bypasses heap memory allocations by reusing pre-allocated circular structs (_clusterBuffers).
2. Physics Model: Flow vs. Liquidity Vectors (Liquidity Battle.cs)
Liquidity Battle models market action as kinetic energy vectors:
$$F_{\text{net}}(t) = \int_{t-\Delta t}^{t} \left( \Delta_{\text{market}}(\tau) \cdot v_{\text{speed}}(\tau) \right) d\tau - R_{\text{limit}}(p)$$
Where: * $\Delta_{\text{market}}$: Net market delta (Aggressive Buy Volume $-$ Aggressive Sell Volume). * $v_{\text{speed}}$: Execution velocity (Trades per second). * $R_{\text{limit}}(p)$: Resting limit order resistance at price level $p$.
3. Rendering Pipeline & Zero-Allocation UI Standards
Indicators in this suite redraw on every tick. To ensure 60+ FPS chart rendering without stuttering:
* GDI Native Marshaling: Colors are cached as CrossColor fields and converted via .ToGdiColor() during OnRender.
* String Measurement Memoization: Text layout is handled by CachedMeasureString backed by an LRU cache, preventing redundant GDI text size calculations.
* No LINQ in Render Loops: All array iterations use raw indexed for loops rather than foreach or LINQ iterators.