Your strategy fires a buy on EURUSD, the copier relays it, and the second broker rejects it because on their platform the symbol is called EURUSD.r. One naming quirk, one missed copy, and the account that was supposed to mirror your edge just sat out the trade.
Why the same symbol has many names
There is no universal ticker. The instrument you think of as “euro-dollar” is, to a broker’s server, whatever string their liquidity provider and platform config decided on. The same underlying can appear as EURUSD, EUR/USD, EURUSD.r, EURUSDm, or EURUSD.pro depending entirely on the broker.
This matters the instant you copy across different brokers, because a copier matches orders by symbol string. If the master account’s symbol doesn’t exactly match a symbol the slave broker recognizes, the order has nowhere to land. On a single broker you never notice — everything speaks the same dialect. Fan a strategy out across MT5 and cTrader accounts at different firms and the dialects collide immediately.
Suffixes, prefixes, and CFD variants
The naming differences fall into a few predictable buckets, which is good news — it means a map can cover them.
- Suffixes mark account or feed type:
.r(raw spread),.m(mini/micro),.pro,.ecn,.i. Same instrument, different execution tier. - Prefixes occasionally tag a group or provider, e.g.
#EURUSDorx.EURUSD. - Separators differ:
EURUSDvsEUR/USDvsEUR-USD. - CFD variants are the real trap. A broker may list a cash/spot index and a dated future for what looks like the same market — US30 vs a dated Dow contract, or spot gold vs a gold future. These are not interchangeable; they have different specs and settlement.
The first three are cosmetic string differences. The last one is a genuinely different instrument wearing a similar name — mapping those together will copy trades onto the wrong product.
Contract-size differences that break sizing
Even when you’ve matched the right instrument, the map isn’t done, because matching the name is not matching the size. Two brokers can both call it EURUSD and define one lot completely differently — standard vs mini vs micro contracts, or different tick values on an index or metal.
If the master trades one lot and the slave’s “lot” is a tenth of the size, a name-only copy silently under-risks that account by 10x. Get it backwards and you over-risk by 10x, which on a tight prop-firm floor is how accounts breach. So every mapping needs two halves:
- The name translation — master string to slave string.
- The size ratio — how many slave units equal one master unit, given each broker’s contract spec.
A lot-size calculator is the right tool for pinning down the size ratio per instrument before you trust it in a live copy. This is also why blindly mirroring lots across brokers is dangerous even when the symbol map is perfect — the contract underneath the name may not be.
Building a symbol map once
Do the work once, deliberately, and store it. A symbol map is just a table linking each master symbol to its counterpart on each slave broker, plus the size ratio. Build it per broker pair, because the suffixes are broker-wide, not symbol-specific — once you know one broker uses .r, you know it for their whole feed.
| Master symbol | Slave broker A | Slave broker B | Size ratio |
|---|---|---|---|
| EURUSD | EURUSD.r | EUR/USD.pro | 1 : 1 |
| XAUUSD | GOLD.r | XAUUSD.m | verify per spec |
| US30 | US30.cash | DJ30 | confirm spot vs future |
Treat the map as living config. When a firm changes its symbol naming or you add a broker like one on FundingPips, you extend the map rather than rediscovering the mismatch mid-trade. A good copier handles this for you: Shibiki resolves each broker’s symbol and contract spec so a single directional signal lands correctly on every account, sized to each account’s real contract — and its hard risk limits enforced at the broker catch a size mistake before it can breach a floor.
Testing the map before you go live
Never let the first real trade be the test. A symbol mapping bug is invisible until an order fails, and a failed copy on a funded account is expensive. Validate on demo or the smallest possible size first:
- Fire one trade per mapped symbol from the master and confirm every slave account actually received and filled it.
- Check the filled size on each slave matches your intended risk — this is where a wrong contract-size ratio surfaces.
- Test the exit, not just the entry. A symbol that maps on the way in but not the way out leaves an account stuck in a position the copier can’t close.
- Watch for silent skips — the dangerous failure isn’t an error, it’s an account that quietly did nothing while the others traded.
Log every one of these checks. Shibiki auto-journals each fill per account, so a missed copy shows up as an obvious gap rather than a surprise you find at the next payout reconciliation. Build the map once, test it deliberately, and every account mirrors your edge instead of half of them sitting out because a .r didn’t line up. Confirm each broker’s exact symbol names and contract specs directly — they change without notice.
Related: MT5 integration · cTrader integration · Lot-size calculator