AMMDocumentationWebsite ↗
how to · 5 min read

Coordinate batch optimisation and follow-up research

Manage independent strategy searches, distribute whole jobs and hand selected results to Walk-forward, cTrader comparison or saved trading configurations.

Reviewed 2026-10-24 · Windows & macOS

On this page
Inspect batch optimisation candidates in dark modeView full-size screenshot ↗
Inspect completed optimisation rows, winning and losing parameter candidates, and each search’s best backtest.

Build a plan of independent searches#

Add New Batch Optimization. Each REQUESTS row is one complete optimisation: algorithm, exact instrument/account contract, period, target, parameter ranges and fixed execution assumptions. The batch does not create symbol fan-out automatically. Distribution schedules whole optimisations rather than splitting one historical engine across machines.

Set a descriptive Name and Concurrent count. Start with a validated single-strategy backtest and optimisation on each asset class. An equity share, spot crypto base unit, futures contract and CFD stake need their own quantity, price and cost contracts.

Add and review requests#

  1. Choose Add to open Configure Optimization. Select the algorithm, symbol, period, search method, objective and ranges, then execution-account and instrument economics.
  2. Use the footer's error list to jump to invalid fields. Saving an incomplete row leaves it visibly marked for correction; it cannot silently join a valid batch.
  3. Use From group for a configured instrument group. Review the preview: it adds one row per member not already represented and can copy other settings from a template row. Verify every resulting contract and exact feed identity.
  4. Duplicate and edit variants deliberately. Selected rows support Set period…, Duplicate and Remove; removing can be undone. Alt+↑/↓ changes plan order.
  5. Check combination estimates and per-row validation before Start batch or ⌘/Ctrl+Enter.

Replacing an algorithm replaces its declared search ranges and asks before discarding edited ranges. Strategy searches keep size/risk/allocation outside the optimised dimensions.

Configure distribution#

Distributed enables a worker pool. Local includes the local executor; Sync data requests historical synchronization before start. Worker chips show reachability and a capacity preview estimates where whole optimisations can run.

The synchronization card offers Preflight and then Apply sync. Its inputs describe feed, source resolution, source type and warmup across the union of symbols and widest date range. Read the per-worker results. A worker being reachable does not prove its archive, plugin payload or native runtime is suitable.

While a batch runs, the run bar can stage changes to concurrency, worker pool, Distributed, Local and Sync. Apply sends them; Revert discards pending edits. These control scheduling. They do not retroactively change a completed candidate's strategy or economics.

The coordinator shows infrastructure/strategy failures, requeued and interrupted work, leader information and slot states such as busy, draining, quarantined or faulted. Investigate repeated infrastructure failures before raising concurrency.

Inspect three levels of result#

The Results panel stacks OPTIMISATIONS, OPTIMISATION BACKTESTS and TOP BACKTESTS. Select an optimisation in the first table to load its candidates in the second. The third contains each optimisation's best candidate, rather than every candidate from the entire batch.

Use Load next 100 for additional candidate pages. Open best opens the selected optimisation's best child. Row menus can open the ordinary optimisation view or a backtest inspection in this tab, and native desktop window actions are available on supported platforms.

The symbol link chip follows existing rows. Receiving a linked symbol changes selection; it does not start an optimisation or alter a request. Filters can hide other rows, so clear them when a linked or expected result appears absent.

Run follow-up checks#

Select top rows and choose Queue WFA… to open Queue Walk-Forward Batch. Review name, parent concurrency, attempts, purge gap, ranges and search settings. The source identities are optimisation ID plus backtest ID. The success toast offers Open Walk-Forward.

Compare in cTrader… and Start cTrader Compare… are available only when their contract checks pass. Selected rows must have compatible symbol and period. The comparison dialog validates exact cTrader feed/account, date boundary, costs and producer settings. Choose Run cTrader now with a supported producer or Use an existing report with its required manifest. A chart that looks similar is not a reproducible parity result.

The comparison strip can refresh, cancel or open retained results. Inspect trade pairs and metric deltas as well as status labels. Record the exact producer and data mode when reporting a comparison.

Export without starting trading#

Top-row actions include Export as Live Algo…, Export Selected as Live Portfolio… and JSON export. The dialog checks the name and contract; replacing an existing saved definition is explicit. A simulated execution account can map to an enabled broker only when its feed/account provides a supported route.

Export saves a trading configuration. It does not start its sessions. Open Strategies, review the account/feed/symbol routes and run the account review before any start. Historical size and allocation still need review against current broker quantity grids and account funds.

Recover without losing the plan#

Cancellation requires confirmation and reports the server's answer. Completed rows can remain even when the batch is partially completed; inspect failed counts rather than equating a terminal label with universal success.

If opening a batch fails, a Could not open… banner offers Retry while preserving the previous displayed batch. History supports older-page loading. Reconnecting reloads authoritative snapshots.

Closing the workspace item leaves server work running. Moving the whole item can lose unsubmitted rows, so preserve their requests first. For remote failures, inspect the worker, plugin/data synchronization and coordinator event before retrying; changing the strategy's logic is not a remedy for a transport failure.

If a completed batch reports invalid execution identity while opening, preserve the batch and child optimisation IDs and report the message. A saved plan can differ from server-resolved fill or simulated-account defaults even though its children completed. Inspect the child runs in Optimize while the contract mismatch is investigated; do not delete the run or repeatedly submit it to hide the error.

Application screenshotOpen original ↗