Take a strategy from research to operation
Use explicit checkpoints between backtesting, parameter search, validation and automated execution.
Reviewed 2026-10-24 · Windows & macOS
On this page
Keep the stages explicit#
A backtest, an optimization result, a saved live portfolio and a running trading session are separate objects. Moving through this workflow requires deliberate configuration and review at each stage. Historical profits do not authorize orders or prove future profitability.
Choose an installed algorithm you understand, for example a moving-average crossover, and read its actual parameters and entry-protection behavior. A sample algorithm can deliberately use unprotected entries; never assume a chart indicator or attractive backtest adds stop-loss logic.
1. Establish one reproducible backtest#
In Backtest, select the algorithm, exact instrument routes, dates and history. Review the account currency, initial capital, costs, fill model, session hours and any declared instruments. Hold trade size fixed.
Run once, wait for a terminal status and inspect the report. Check trades, orders, equity, drawdown and runtime instrument provenance. Inspect losing trades as well as winners. Retain the run identity and settings. A completed status means the engine finished, not that the assumptions are economically valid.
View full-size screenshot ↗2. Search genuine strategy parameters#
Open Optimize with a matching research setup. Define ranges for strategy inputs such as FastPeriod and SlowPeriod. Exclude lots, units, risk percentage, leverage, allocation and other sizing/execution parameters from single-strategy optimization.
Choose Brute Force, Grid Search or Genetic Algorithm according to the search space. Review combination estimates, target metric and resource limits. Inspect more than the top row: trades, drawdown, neighboring parameter behavior and result stability matter. Search methods can overfit the same data in different ways.
View full-size screenshot ↗Export or preserve selected parameter values with the source run. A row's rank is conditional on the metric, dates, data, costs and constraints used in that job.
3. Validate on later data#
Use Walk-forward or an explicit later out-of-sample period. Review fold boundaries, in-sample selection and subsequent unseen test ranges. Keep the same exact instrument/account graph and execution basis where comparison requires them. Inspect failures and missing coverage rather than dropping inconvenient folds.
Use Replay to inspect decisions on a causal historical clock when useful. Replay practice and automated historical validation are complementary, not substitutes for broker execution checks.
If comparing against cTrader, use only the supported comparison path, exact producer/cBot identity and matched parameters/data. A difference is evidence to investigate. Do not label all AMM algorithms cTrader-equivalent.
4. Create an explicit strategy instance#
Open Strategies, choose or create the saved portfolio/configuration and add a strategy instance. Set the selected algorithm and parameters. Review every execution account, live feed, historical feed and symbol route. Strategy identity, broker symbol, live-data symbol and historical symbol may differ; AMM does not silently convert equivalent-looking markets.
Choose session hours, recovery policy, risk limits and entry protection supported by the algorithm/host. For a multi-instrument algorithm, review every declared or runtime instrument and account, not only a primary symbol.
A portfolio-research candidate can be exported through a separate per-sleeve route-review dialog. This saves a live portfolio configuration. It does not start trading, and its daily-close blended model is not a joint intraday execution backtest.
5. Start in Simulation or demo#
Start the saved configuration in Simulation or an explicitly identified demo/paper account first. Verify warmup, quotes, subscriptions, session state and actual orders. Inspect logs and Audit. Test a planned stop/restart/reconciliation path and a rejected-order path.
A live strategy requires its server and feeds to keep running. Switching tabs, hiding a panel or closing the UI is not equivalent to pausing its server-owned execution. See automated operations for ownership and recovery.
6. Review any LIVE start#
Use the actual start/preflight review. Read every LIVE account and route and complete the required confirmation. REST, MCP and a saved export preserve this admission boundary. Do not reuse a demo symbol mapping without checking the live account's catalogue, contract size, margin, permissions and market-data entitlements.
After starting, watch the actual admitted session, broker state and protection. Establish independent monitoring and a understood manual-override/flatten procedure. Fleet stops and session stops have different scope, and a stop acknowledgement is not proof that every broker order has been canceled or every position closed.
Keep a research record#
Retain algorithm/plugin version, exact parameter map, run IDs, date ranges, execution assumptions, data provenance, validation results and the selected saved configuration. Revalidate when code, route, account, costs, data policy or risk settings change. The backup guide describes the separate objects to preserve.