Table of Contents

Multi-Market (mm.js)

The Multi-Market script mm.js revalidates a collection of strategies across multiple markets. It combines two core capabilities:

If you are new to ExGen workflows, begin with Quick Start before configuring Multi-Market runs.

How it works

Multi-Market runs this pipeline:

Requirements

Quick start

Validate a collection against 8 test markets and export strategies that pass at least 5 tests.

Command:

  express-generator> node ./bin/mm.js --server Premium --symbol EURUSD --period M30 --test-symbols auto --test-period M30 --test-server Premium --count-of-tests 8 --min-passed-tests 5

Run with a custom settings file and CLI override:

  express-generator> node ./bin/mm.js --settings mm.ini --symbol GBPUSD

Output fetch:

..:: Express Generator Multi Market v2.xx ::..
 
    Fetched: Premium Data EURUSD M30, From: 2018-02-13 20:30, To: 2026-02-20 22:00, Bars: 100000
    Fetched: Premium Data GBPUSD M30, From: 2018-02-13 07:00, To: 2026-02-20 22:00, Bars: 100000
    Fetched: Premium Data AUDUSD M30, From: 2018-02-13 17:00, To: 2026-02-20 22:00, Bars: 100000
    Fetched: Premium Data NZDUSD M30, From: 2018-02-13 07:00, To: 2026-02-20 22:00, Bars: 100000
    Fetched: Premium Data EURGBP M30, From: 2018-02-13 17:00, To: 2026-02-20 22:00, Bars: 100000
    Fetched: Premium Data EURAUD M30, From: 2018-02-13 08:00, To: 2026-02-20 22:00, Bars: 100000
    Fetched: Premium Data EURCHF M30, From: 2018-02-13 07:30, To: 2026-02-20 22:00, Bars: 100000
    Fetched: Premium Data EURJPY M30, From: 2018-02-13 14:30, To: 2026-02-20 22:00, Bars: 100000

Output validation:

    ...
    Market : Premium Data NZDUSD M30
    From   : 2018-02-13 07:00, To: 2026-02-20 22:00, Bars: 100000
    Spread : 10, Swap long: -4.16, Swap short: -4.16, Commission: 6 USD
    Account: 10000 USD, Leverage: 100, Entry: 0.01 lots
 
     - Passed: 12, Calculated: 100 of 100
 
    Market : Premium Data EURGBP M30
    From   : 2018-02-13 17:00, To: 2026-02-20 22:00, Bars: 100000
    Spread : 10, Swap long: -15.22, Swap short: 5.52, Commission: 6 USD
    Account: 10000 USD, Leverage: 100, Entry: 0.01 lots
    ...

Output stats and collection:

Multi-Market validator ready!
 
34 of 100 strategies passed  1 of 8 tests
43 of 100 strategies passed  2 of 8 tests
15 of 100 strategies passed  3 of 8 tests
 3 of 100 strategies passed  4 of 8 tests
 5 of 100 strategies passed  5 of 8 tests
 
Count of strategies: 5
Collection exported: collections/Coll_Premium_Data_EURUSD_M30_MM.json

Settings and priority

Multi-Market reads settings in this order (lowest to highest priority):

Settings keys can be in snake case, camel case, or pascal case.

When several files are passed with –settings, each next file overrides keys from the previous one.

Common aliases are accepted:

Settings topics

Dedicated Multi-Market pages:

Shared settings pages used by Multi-Market: