A NinjaTrader backtest that shines and then behaves differently live is usually repainting — a signal that flickers intrabar under Calculate.OnEachTick. Paste your NinjaScript strategyand we flag it: intrabar repaint, future-bar access via CurrentBar + N, unsynced multi-series higher timeframes, Historical-vs-Realtime divergence, and missing stops — each with the exact fix. Correctness, not profitability.
Deterministic static analysis — runs on the server, code isn't stored. Correctness only, not profitability.
Calculate.OnEachTick entries with no IsFirstTickOfBar / bar-close guard — signals that fire and un-fire before the bar closes.
Absolute-index reads ahead of the current bar (Bars.GetClose(CurrentBar + N)) and negative barsAgo indices.
AddDataSeries higher-timeframe reads before the secondary bar has closed — NinjaScript's repainting request.security.
Trading logic that branches on State.Historical / State.Realtime, so the backtest path differs from live.
Entries with no SetStopLoss / ExitLong…Stop, and whether a profit target and position sizing are present.
Empty catch blocks that swallow exceptions and quietly corrupt a backtest.
Paste your NinjaTrader 8 strategy here. The validator statically scans for the patterns that make a backtest diverge from live: Calculate.OnEachTick entries without an IsFirstTickOfBar / bar-close guard (intrabar repaint), absolute future-bar access via Bars.GetClose(CurrentBar + N), unsynced multi-series higher-timeframe reads, and Historical-vs-Realtime branching. It's deterministic and doesn't run your code.
With OnEachTick, OnBarUpdate runs on every tick, so an entry condition built from the still-forming bar's High/Low/Close can become true and then false before the bar closes. The backtest sees only completed bar data, so it can't reproduce that intrabar flicker — the strategy behaves differently live. Gate entries with IsFirstTickOfBar, or use Calculate.OnBarClose.
No. The score measures code CORRECTNESS — whether the strategy could have known what it acts on and whether it has basic risk controls. It says nothing about profitability, and nothing here is a prediction or trading advice.
No. The analysis is deterministic static pattern-matching that runs on the server and returns the report — your code is not compiled, not executed, and not stored.