Replay & Backtest

Backtest like you actually trade.

Most backtesting shows you the answer before you commit: scroll right, see where price went, and every setup looks obvious. Here the market is paused at your cursor. You step forward one candle at a time, place the trade at the moment you would really have seen it, drag your stop and target on the chart, and find out what happened next — the same way you will live. Every trade is journaled, graded from evidence and fed to the same analytics as your real trades.

In the app: Replay & Backtest

What it is

Backtesting & Market Replay, concretely.

No lookahead

A replay that cannot cheat

The chart is a pure function of your replay cursor: the datafeed cannot return a candle past it on any timeframe. Switch from 5-minute to 4-hour mid-session and the higher timeframe still shows only what you would have known, including the candle still forming.

Intrabar truth

Fills resolve inside the bar

A stop or target is hit the moment price touches it inside the bar — judged on 1- to 5-minute data, not when a slow candle closes — and on the side of the book it trades on, at the spread quoted that minute. Gaps fill at the open, so a gapped stop loses more than 1R exactly as it would live.

A real platform

The full TradingView workspace

TradingView Advanced Charts with the market stopped: the complete drawing toolkit, 16 timeframes from 1 minute to 1 week, Trading Sessions boxes (Asian, London, New York, DST-correct), Fair Value Gap zones that trim as price fills them, and economic-release marks on the axis.

Measured

Every session is a book

A session is one idea on one instrument over one date range with one starting balance. Its trades, equity curve, analytics, R:R simulator, checklist adherence and tag intelligence stay together — and separate from your live journal.

Resumable

Your cursor is saved

Close the tab mid-session and come back weeks later. The clock, your drawings, indicators and open positions are exactly where you left them.

Rehearsal

Prop-challenge mode

Run a session under prop-firm rules — daily loss, static or trailing max loss, target, minimum trading days — on the replay clock. The session locks on a breach and issues a certificate on a pass, so you can rehearse a challenge before paying for one.

Execution

Realistic backtesting with historical bid & ask data

The candles on a chart are the bid, but no trade fills at the line: a buy pays the ask, a sell receives the bid, and the gap between them — the spread — moves through the day. A backtest that fills at the chart line, or charges one fixed spread for months of history, is optimistic in a lopsided way: the tighter the stop, the more it flatters the result.

Sage can use the spread that was actually quoted. For forex, gold, silver, oil and major indices, it stores the spread for every 1-minute candle of history and, in a session set to Real spread, charges that minute's figure: market buys fill at the ask, sells at the bid, a long's stop and target trigger on the bid, and a short's trigger on the ask, a spread above the drawn candle. Where no spread was stored for a minute, your fixed spread is charged instead and the workspace says so.

It makes historical execution more representative of the conditions in the data — the widening around the daily rollover and around news included. It does not make a backtest identical to live trading: slippage beyond the spread, commissions, latency and liquidity are not modelled, and the spread is the data provider's rather than your broker's. The full explanation, with a worked gold example and when it matters most, is on the realistic backtesting page.

How it works

How a trader actually uses it.

  1. 01

    Write the play first

    Rules for context, entry, stop, invalidation and exit, and the sentence "I would be wrong if…". Link the session to the play so its results accumulate against the idea.

  2. 02

    Replay, one candle at a time

    Step or play forward on the timeframe you trade, with the higher timeframe alongside — both respecting the cursor. Place orders with stops and targets you drag; they fill when price genuinely reaches them.

  3. 03

    Let it journal itself

    Entry, exit, R, session, tags and an automatic chart screenshot at the moment you close. Confirm your checklist before entering; the answers are recorded before the outcome exists.

  4. 04

    Ask the questions that matter

    Would a fixed 2R or 3R target have beaten how you managed it? Which sessions and tags carried the edge? The R:R simulator walks the real 1-minute path from each entry to answer the first; Edge Lab answers the second with sample sizes attached.

What it is, and isn't

Straight about the limits.

It does

  • ✓Manual, discretionary backtesting — you make every decision, in the moment
  • ✓Any instrument with candle data: forex, metals, indices, futures, crypto; XAUUSD ships with the deepest bundled history
  • ✓Intrabar fills priced on the historical bid/ask spread where it exists, or your fixed spread; automatic screenshots; evidence-based setup grades
  • ✓The same R:R simulator and Edge Lab metrics as your live trades, in a separate book

It doesn't

  • ✕Execute live trades or connect to a broker for order placement
  • ✕Sell signals, strategies, copy trading or managed accounts
  • ✕Promise that a backtested edge will repeat live
  • ✕Model slippage beyond the spread, commissions, latency or liquidity — the spread is the only execution cost in a replay

Backtesting & Market Replay, answered.

How do you stop me from seeing future candles?
The chart is a pure function of your replay cursor: the datafeed cannot return a candle past it on any timeframe. Switching from 5m to 4h mid-session still shows only what you would have known, including the partially formed candle.
Which instruments can I backtest?
Any instrument with candle data in your workspace — forex, metals, indices, futures or crypto. XAUUSD ships with the deepest bundled history, and higher timeframes are derived on demand from stored candles.
How accurate are stop and target fills?
Fills resolve inside the bar rather than at the close of the displayed candle — on 1-minute bars when you replay on 1 minute, and never coarser than 5 minutes for steps up to 4 hours — so a stop is hit the moment price touches it. Each level triggers on its own side of the book at the spread quoted that minute. Gaps fill at the candle open, meaning a gapped stop can lose more than 1R exactly as it would live. Slippage beyond the spread is not modelled.
Does it use real historical spreads?
Yes, where the data exists. For forex, gold, silver, oil and major indices, Sage stores the bid/ask spread for every 1-minute candle and a session set to Real spread charges that minute's figure, falling back to your fixed spread for any minute without one. Crypto sessions use a fixed spread. You can also enter your broker's spread instead.
Can it tell me whether a bigger target would have worked?
Yes — that is the R:R simulator. It re-walks each trade's real 1-minute path from your entry, racing a fixed target against the stop you had at fill, and is not truncated at where you actually exited. It reports win rate, average R, profit factor and drawdown for every target side by side.
Do my backtest trades mix with my live trades?
No. Backtest sessions are separate from your real trade journal, each with their own analytics. The R:R simulator and excursion analysis run on both.
Does it work on a phone?
Yes. The workspace has its own phone layout — a thumb bar upright, a rail on the right when the phone is on its side — with the drawing tools open and the chart taking the screen.
Is backtesting free?
Yes. The workspace, replay, sessions, indicators, Edge Lab and MetaTrader 5 auto-logging are all free, with no card required.

See every module on the features overview.

Try backtesting & market replay on your own trades.

Create your workspace in ten seconds. Everything on this page is free, with no card and no paid tier.

Free · no card · your data stays yours