Configure accounts, feeds, instruments and FX routes
Build an explicit execution graph so multi-instrument algorithms use the intended accounts, exact provider symbols and currency conversions.
Reviewed 2026-10-24 · Windows & macOS
On this page
Separate the identities#
An algorithm's strategy symbol, its execution broker symbol, its live-price symbol and its historical-price symbol can differ. Each role has its own provider/account/environment. These choices form a graph of accounts, feeds, instruments and conversion routes.
For example, an algorithm might execute an exact dated futures contract through one supported broker and receive compatible prices through another configured source. Both symbols must be supplied and reviewed. Compatible tick metadata does not prove that the sources represent the same underlying market.
AMM performs no substring alias expansion, automatic price scaling, assumed stablecoin peg or implicit currency conversion. The execution broker retains its own quantity units, multiplier, lot grid and order restrictions.
Review the primary route#
In Strategies, choose Broker, then Data feeds → Change… for separate Live data and Historical data connections. Review the provider symbol for each role in the Route dialog.
Blank role symbols follow the unchanged strategy symbol independently. Filling only a historical alias does not make broker/live roles inherit that alias. Changing a role to another connection identity invalidates its old explicit alias; reselecting the same identity preserves it. Saved exact role options stay authoritative until deliberately replaced.
Use Check route. The checks table can compare Asset & venue, Price scale & tick, Quantity & lot, Quote currency, Trading hours and Trading permission. Not checked is absent evidence, not a pass. Editing the route while checking invalidates the old response. Start still performs a fresh preflight/account review.
Explicit role aliases for continuous futures are currently rejected until a roll-aware mapping is available. Choose exact dated contracts for those mappings. Unmapped continuous futures keep their existing supported roll path.
Add execution accounts and feed aliases#
Open Accounts, feeds and FX. The primary account uses alias primary. Add account selects a configured connection and a unique Account name in algorithm. Add accounts the algorithm may need later, even if it has no initial instrument on them. An optional display name can explain the purpose.
Adding an account also makes its connection available as a feed under that alias. Add data feed supplies a separate live/history connection without creating an execution account. A data-only connection does not acquire authority to trade.
Use aliases that agree with the algorithm's declared contract. A configured hedge account cannot be silently substituted for code expecting secondary. Connection identity includes provider, profile, account and environment, not just a friendly name.
Configure reporting and conversion#
Portfolio reporting currency starts from the primary account currency. Native account balances remain native: a USD account and a GBP account cannot be added into one meaningful cash figure without conversion.
Add FX route specifies a route name, source/target currencies, conversion symbol, approved feed, pair direction and maximum quote age. Choose Base → quote or Quote → base according to the actual currency pair. The default maximum age is 120 seconds, but use the supported freshness appropriate to the graph.
An inverse direction mistake changes valuation rather than merely formatting it. Verify the conversion source, its quote currency and time coverage. Historical research requires historical conversion observations; a current live quote is not a replacement for past FX.
Review every account before start#
Review & start… resolves the complete graph. The account review lists aliases, mode, currency, balance/equity, instance count and instruments. An account reserved for runtime additions is marked Available to runtime instruments.
Approve every required live account inline by typing LIVE. A Demo primary cannot approve a LIVE secondary. Old approvals in an imported/saved request are cleared; the review binds new approval to the normalized account identities. Cancelling the review prevents dispatch and keeps the configuration available to edit.
Algorithms can add instruments during operation only within their approved graph. A new instrument is not authority to trade an unapproved broker account. Automatic recovery can retain an unchanged approved graph; deliberately starting a session again uses the review flow.
Inspect the effective runtime graph#
After start, choose Details → Instruments. It shows configured, code-declared and added-during-run rows with their original UTC addition time. Data source and execution account are separate columns. Accounts reports cash, equity, used/available margin and connection/sync status per native account currency.
The Chart's Chart instrument selector uses exact instrument IDs. Bars, indicators and filtered trade/order levels follow that selection. Position and order rows carry account/instrument identity too, so equal numeric broker IDs on different accounts remain distinct targets.
Some child chart order/protection drags remain read-only until full child grid metadata is available. Use supported exact row actions. Borrowing the primary instrument's pip size for a child amendment would be unsafe.
Diagnose a graph failure#
Role-specific preflight errors identify missing symbols, incompatible known asset/currency metadata or absent execution grids. Verify the exact source/account/environment, price units and contract. A successful metadata check cannot prove universal underlying equivalence; that economic mapping remains an explicit user decision.
Missing runtime history or an invalid new declaration rejects the addition rather than making it trade with guessed defaults. Inspect Details, Output and the session error. For secondary-account problems, use that account's connection/sync row; a healthy primary does not establish health everywhere.
Simulation roles require compatible complete simulation contracts. Its current metadata has separate limitations for mixed quote/settlement currencies; preflight can reject a combination rather than inventing an override. Preserve the explicit graph in saved/exported configuration and correct the named missing evidence before retrying.