How the Superpowers are built
Every formula, every threshold and every requirement, written down. Read it before you buy, not after.
Why they stay light
Heavy commercial indicators reprocess thousands of historical volumetric bars and eat your RAM doing it. The Trade Control AI Superpowers read OnMarketData straight from NinjaTrader and compute tick by tick, as the ticks arrive.
The 48-hour rule. The indicators only draw the last 2 days of data. It is a deliberate limit: drawing weeks of history is what turns a chart into a slideshow, and nobody trades off a chart that stutters.
VPOC (current bar)
The Volume Point of Control marks the exact price where the most contracts changed hands inside the bar that is still forming.
The maths
- A
Dictionary<double, long>maps price against volume in memory. - Every tick received (
MarketDataType.Last) adds its volume to the matching price level. - The new total is compared against the bar’s
MaxVolume. If it beats it, that price becomes the new POC. - When the bar closes the dictionary is emptied completely, so memory does not creep.
Requires Tick Replay
To reproduce this calculation over the recent past (2 days), enable the "Tick Replay" checkbox on the data series when you set the chart up. Without it the indicator still works perfectly going forward, in real time — it just cannot paint the bars that already closed.
VP Fixed (native tool)
The Volume Profile Fixed Range is not a heavyweight indicator: it is a native drawing tool, like the Fibonacci. You pick point A and point B on the chart and it shows you where the volume actually went in.
Mechanics and cost
- It plugs into NinjaTrader’s
pencilmenu, so it draws through Direct2D like any native tool. - It only pulls the bars inside the selected range, via
GetAttachedToChartBars(). Nothing outside the range is read or computed. - The histogram grows from the left towards the right, with a 70% value area, so it does not sit on top of the price action.
DeltaBar
Order flow Delta measures aggression: the difference between buyers who crossed the spread to hit the Ask and sellers who hit the Bid.
The maths
- The order book (Bid/Ask) and the crossed trades (Last) are watched at the same time.
- If
Trade Price >= Current Ask→ aggressive buy → added to Delta. - If
Trade Price <= Current Bid→ aggressive sell → subtracted from Delta.
What you see
A green/red histogram at the bottom of the chart, plus a floating label (Draw.TextFixed) in the top right corner with the live value — for example Delta: +450 — so you can read it without looking away from the candles.
Big Trade
The Big Trade detector scans the tape in real time for the large orders crossing it, and marks where they went through.
1. Classifying the aggressor (modified Lee-Ready)
To decide which side an order came from, a decision tree is applied against the liquidity available at that instant:
- If
P >= Ask⇒ aggressive buy. - If
P <= Bid⇒ aggressive sell. - If
Bid < P < Ask⇒ whichever side it sits closer to:|P - Ask| < |P - Bid|⇒ buy, and the other way round for a sell.
2. Rebuilding the tape
Large orders usually break up as they hit several resting limit orders (split fills). Two models put them back together, and you choose which one runs:
A. VWAP sweeps
Groups consecutive fills in the same direction inside a very narrow window (Δt ≤ 50 ms), and computes the volume-weighted average price of every liquidity layer the sweep consumed.
B. Strict block trades
Same 50 ms window, but it also demands the price be identical. That isolates the collision against one large resting order or an Iceberg at a single level.
3. The three modes, switchable live
From the capsule menu on the chart (the gear icon) you can change engine without reloading anything:
- Classic (tick by tick):
Group sweeps (50ms)off. Every trade is judged on its own, with no time window. One tick that reaches the minimum volume draws the bubble. - VWAP sweeps:
Group sweeps (50ms)on andUse VWAPon. This is the default. Groups the fragmented orders that sweep several price levels within 50 ms. - Strict block trades:
Group sweeps (50ms)on,Use VWAPoff. Groups within 50 ms but demands the same price, to catch the collision against massive limit orders.
Absorption
The absorption map finds the levels where limit orders are soaking up the aggression — price is being hit hard and refuses to move.
How it is detected
- The volume of aggressive trades (Delta) is compared against what price actually did.
- Heavy aggression — large market sells, say — with no fall in price means someone is holding a wall of limit orders there.
- That zone is painted on the bar itself, so you can see the level is being defended.
What it does not tell you
Absorption says a level is being defended. It does not say price will turn there, and it is not an entry signal. What you do with it is your call.
Chart ergonomics
Every Superpower carries the Trade Control Ergonomics core, which fixes how stiff a NinjaTrader chart feels to move around.
What it changes
- Free panning: hold
Ctrland drag anywhere on the chart to move it, the way TradingView works. - Auto-scale on double click: double click the chart background and both axes rescale to current price. No need to aim at the right-hand axis.
- No event collisions: however many Superpowers you stack on one chart, each keyboard and mouse event is handled once, not once per indicator.
SuperCopier
The SuperCopier replicates your orders across accounts. It runs on your own machine, inside NinjaTrader, instead of routing through an external server.
Why local matters
- It hooks the leader account’s
OnExecutionUpdateandOnOrderUpdateevents. - It applies your contract multiplier and submits
SubmitOrderAsyncto the follower accounts. - Because the routing goes straight to Rithmic/Tradovate, a third-party copier service going down cannot stop your replication.
What it does not do
It does not decide when to enter or exit. It replicates what you do. If your own machine or NinjaTrader is closed, nothing is copied.
Trade journal
The journal records your trades as they happen and syncs them to the cloud, so the numbers are there without you keeping a spreadsheet.
What it captures
- PnL, commissions, how long the trade lasted, and Maximum Adverse / Favourable Excursion (MAE / MFE).
- Tiltmeter: it measures how fast you are trading and warns you when the pace looks like overtrading. It is a count, not a diagnosis.
- Data travels as JSON over
HttpClienton a background thread, so the NinjaTrader interface never freezes while it sends.