AMMDocumentationWebsite ↗
how to · 5 min read

Practise discretionary decisions in Replay

Prepare a historical session, advance every participant on one causal clock and trade a shared simulated ledger.

Reviewed 2026-10-24 · Windows & macOS

On this page

Prepare a historical practice session#

Open Replay from the rail, or add New Manual Forward. Replay combines symbols or strategies, charts, screeners and a shared manual account on one historical clock. Strategy observers can produce signals and maintain their own internal state; their automated orders are not copied into your discretionary practice account.

  1. In Session setup, enter the run name, UTC dates, warmup and playback settings.
  2. Choose Add symbol for a manual-only instrument, or Add strategy for an algorithm that should produce its normal signals. An entry can retain the complete Backtest configuration.
  3. Review the exact symbol/feed/account, timeframe, simulated execution contract and costs. Strategies in one session share the same single execution-account definition and reporting currency.
  4. Add charts and screeners under Participants. A screener row must bind to a matching strategy timeline; unresolved rows fail preparation.
  5. Leave Play automatically when ready clear if you want to begin paused.
  6. Resolve the readiness checklist, then Prepare manual test or ⌘/Ctrl+Enter.

Preparation resolves history and initializes indicators. Play, Step and Next signal stay disabled until it is ready. The replay range overrides individual strategy dates. Historical currency-conversion routes and conversion-only instruments are unsupported in this host.

Advance the shared clock#

Playback is the transport surface. It shows status, replay time, progress and account figures. Use Play/Pause, Step, Next signal, speed or Jump to…. Space toggles play/pause, → steps while paused, N advances to the next signal, brackets change speed and G opens Jump to when focus is inside Replay and outside a text field.

A step processes the next timestamp slice. Every strategy, bound screener and manual-account protection receives the intermediate observations. Next signal does not skip execution directly to a future alert. Multiple signals at the same timestamp are delivered together.

Speed means slices per second, not a fixed multiplier of market hours. Mixed timeframes still process their globally ordered slices. Jumping is forward-only. To revisit earlier history, prepare a new session; clicking behind the cursor explains that restriction.

Use charts and signals#

Each chart selects a strategy and exact instrument. Display timeframes can be the replay timeframe or a supported coarser one. Changing a chart view does not reduce its saved strategy request to a symbol or change the shared clock.

The toolbar provides Indicators, Follow cursor, Trades, Signals and strategy information where relevant. Chart indicators are retained per chart in the draft/configuration. A signal detail can offer Use stop in ticket when the alert supplies a valid suggested stop. A suggestion is strategy metadata, not a guaranteed fill or loss bound.

Panning away disables automatic following. Returning to the edge, starting a new session or changing display timeframe restores the appropriate follow behaviour. Screener row Enter/double-click opens its chart inside this session. Opening a closed trade scrolls the chart; it never rewinds the cursor.

Trade the practice account#

The separate Order ticket follows the chart clicked or focused last. The REPLAY stripe and ledger ID identify the account. Market entries, close and protection changes affect this simulated ledger immediately. Review quantity and SL/TP distances for the followed chart.

The ordinary Replay ticket offers Market; its Limit/Stop choices are disabled with a reason. The recorded-depth ladder provides its own supported limit-order workflow. The Positions, Orders, Trades and Signals blotter tabs show the shared session ledger. Close, cancel, and Edit/Clear protection act on the exact selected instrument.

Ordinary fills and protection are evaluated from replay bars, rather than every historical bid/ask tick. A market entry fills at the cursor bar close under the replay model. This makes Replay suitable for structured discretionary practice, while it remains distinct from tick-execution backtests and broker execution.

Recorded depth has a separate model#

For a supported symbol with actual recordings, open Market depth to add the Depth panel. The playback lane identifies recorded books or gaps and offers Jump to next book.

Book-aware limits are checked against later recorded books. They fill at the limit price using available qualifying displayed size, can fill partially across books and do not assume queue position. A trade print alone does not fill them. Orders placed before opening the recording keep bar fills. Trade prints, order flow, market-by-order replay and book-driven stop orders are not covered by this replay model.

Save configuration and export outcomes#

Use Save, Save as…, Load and the JSON menu's Import/Copy/Export actions. The portable document preserves strategy requests, replay settings, chart bindings/timeframes/indicators, screeners and supported arrangement. Import validates schema, references and completeness; missing accounts or invalid contracts must be resolved.

Saved configuration is not a session checkpoint. Running sessions and account outcomes are memory-only and do not survive an API restart. Saving does not preserve the current cursor or ledger as a resumable run. Export what you need before restarting the service.

When stopped or completed, Summary provides KPIs, equity, per-strategy information, Copy summary and Export trades CSV. Stop session confirms open positions and working-order counts. Closing the workspace item alone leaves its server session running.

Recover preparation failures#

The error identifies missing history, incompatible resolution, unresolved screener binding or API availability. Review exact provider/account and dates; do not substitute a similarly named instrument to hide a gap. Prepare new manual test starts a fresh session after correction. While preparing, playing or paused, setup/load/import and screener editing lock to protect the active session's contract.

Application screenshotOpen original ↗