The HUD — our custom heads-up display
When we say 'the HUD,' we mean our custom NinjaTrader 8 indicator that draws every active model's target, probability, and TTL directly on the chart.
updated 2026-04-23What the HUD is
HUD is short for heads-up display — think of a fighter pilot’s overlay that puts all the important readings right in front of the pilot without them having to look away. Ours does the same thing for a trader: instead of mentally tracking 20+ levels across multiple models, the chart tells you where they are, which direction they point, what probability we assign them, and when they expire.
Concretely, “the HUD” on this site refers to a pair of custom NinjaTrader 8 indicators we built:
PredictionModel— the main chart overlay. Draws horizontal lines at each model’s target price, labels them with the model name + probability, and fades them out as their time-to-live (TTL) counts down.PredictionModelWeb— a mirrored version that publishes the same data to a JSON feed (what the live page will eventually read from).
Behind them sits a Python analysis engine (smc_analysis.py) that runs on a schedule, pulls 1-minute NQ data from a local DB, computes every signal described on this site, and writes the result to hud_data.txt. The NT8 indicator reads that file, filters it for the active window, and paints the lines.
Reading the HUD
Every line on the chart tells you five things at a glance:
| Element | What it means |
|---|---|
| Line position | The target price — where the model expects price to touch, close, or extend to. |
| Line label | The model name — e.g. AMD BULL, PRELON IB, SB CONT BULL. Each model page explains what that label means. |
| Probability (%) | Confidence score on the line. Higher = more historical reliability. |
| Direction | Bullish lines draw above current price (green); bearish below (red). |
| TTL | Time-to-live in minutes. A line for a London-window signal might be 180 min; a full-RTH signal might be 390 min. Lines disappear when TTL expires. |
Some lines are magnets — they predict a touch, not necessarily a close past. Others are directional — they predict the session or sub-session will close in that direction. Each model page says which type it is.
Tiers on the HUD
Not all lines carry equal weight. We classify every model into one of three tiers:
- Tier 1 — highest-confidence signals with large backtest samples (e.g. SB CONTINUATION, HCS REVERSAL, AMD, PRELON IB).
- Tier 2 — real but smaller edge, or narrower sample (R1617 FADE, LON BOTH BULL, LON MOMENTUM BULL).
- Tier 3 — informational / magnet-only.
The HUD weights higher-tier lines more heavily in the aggregated forecast displayed at the top of the chart (a combined “what’s the day probably going to do” summary).
Kill-switches on the HUD
Some conditions tell us the day is structurally chop and directional signals will underperform. When that happens — e.g. lon_both_swept=True when both sides of Asia got taken out during London — the HUD applies a probability penalty to all directional lines in that window. Lines below a floor drop off the chart entirely.
Kill-switches are documented on the model pages that use them.
On this site
- /live/ — once the live API is wired up, this page will mirror the HUD state for all contracts (not just what you can see on a local chart).
/contracts/<symbol>/live/(e.g. /contracts/nq/live/) — per-contract HUD mirror with full detail.- Model pages — everything we draw on the HUD has a page under /contracts/ explaining the rules, backtest, and gotchas.
Why we built it
Trading 20+ patterns manually doesn’t scale. The HUD lets us:
- See everything active at once, weighted by historical confidence.
- Remove bias — the line is drawn whether we “feel” good about the trade or not.
- Audit ourselves — every line logged to disk, so months later we can compare projected vs actual outcomes and retire models that stop working.
You’ll see references to “the HUD” across the site. It always means these two indicators + the Python engine that feeds them.