Multi Account Local Trade Copier MT5
- Utilities
-
Sergio Marquez Uroz
I'm an algorithmic trader and MQL5 developer. I build the tools I wanted for my own trading and the trading bots I run myself. If you have a question before or after buying, send me a private message: you'll get an answer from the developer, not from a bot. - Version: 1.0
- Activations: 5
Multi Account Local Trade Copier is a fast local trade copier for MetaTrader: copy trades between MT4/MT5 terminals running on the same Windows PC or VPS, from one master account to multiple receiver accounts — your own real, demo and prop firm accounts, at the same broker or at different ones. It is event-driven: the master publishes every trade the instant it happens, and the receiver measures and logs the real copy latency of every single trade — typically 50-150 ms. No DLLs, no internet bridge, no configuration files.
One EA, two modes
Attach it as MASTER on the source terminal and as RECEIVER on every destination terminal. With Master ID = AUTO the receiver finds the active master by itself: drag, drop, done. One master can feed unlimited receivers, one terminal can run several receivers, and a terminal can even be master and receiver at the same time. Each receiver has its own independent settings: one can copy with risk %, another with balance ratio, another reversed — money management always lives on the receiver side. Works together with Multi Account Local Trade Copier MT4 to cover all four combinations: MT5>MT5, MT4>MT5, MT5>MT4, MT4>MT4. Perfect for copy trading between your own accounts — real, demo or prop firm — on any broker.
What it copies
- Market positions from any source: manual trading, EAs, mobile
- Pending orders (limit/stop), with entry price sync and pending-to-market transition when they trigger
- Synchronized closes, correct proportional partial closes, SL/TP modification sync
- Real and demo accounts, any broker, any combination
- The ticket map is persisted to disk: terminal restarts never duplicate or lose trades
Monitoring
- On-chart control panel: live status, last and average copy latency, pause/resume and close-all buttons
- CSV copy journal: every open, close, partial and transition with its measured latency
Copy trading across your own accounts
One master can feed every account you run on the same machine, and each receiver keeps its own money management: the same master trade can land as a fixed 0.50 lots on one account, as 1% risk on another and reversed on a third.
For prop firm and funded accounts the receiver carries its own protection, independent from the master. Max receiver drawdown % pauses copying — and optionally closes every copy — when the floating drawdown crosses your limit. Daily max loss % stops copying for the rest of the day. The schedule keeps new copies out of the days and hours you exclude. And because everything runs locally, there is no DLL, no external bridge and nothing installed beyond the terminal itself.
1-minute setup
- Source terminal: attach Multi Account Local Trade Copier, set Mode = MASTER.
- Each destination terminal: attach Multi Account Local Trade Copier, set Mode = RECEIVER, enable AutoTrading.
- Done. With Master ID = AUTO they find each other automatically.
Inputs explained
1. Mode
Mode (enum, default: Master) — MASTER publishes its trades; RECEIVER copies them.
Master ID (string, default: AUTO) — the name that links a master with its receivers. With AUTO the master generates it from its account number and the receiver connects to the active master automatically. Set the same custom ID on both sides to link them manually.
Update interval, ms (int, default: 100) — how often data is written/read. The master also publishes instantly on every trade event, so this mainly sets the receiver polling rate.
2. Receiver: connection
Max snapshot age, sec (int, default: 10) — if the master data is older than this (master offline or frozen), the receiver pauses instead of acting on stale data.
3. Receiver: lots
Lot mode (enum, default: Multiplier) — how the copy size is calculated. Multiplier = master lot x multiplier. Fixed lot = always the same size. Balance ratio / Equity ratio = master lot scaled by the balance/equity ratio between both accounts, with automatic currency conversion (master with 10,000 opens 1.00 lot, receiver with 5,000 opens 0.50). Risk % = lot computed so the master SL distance risks that % of your balance. Lots per balance = X lots per Y of balance, ignoring the master lot.
Lot multiplier (double, default: 1.0) — factor for Multiplier mode; also the fallback for Risk % when the trade has no SL.
Fixed lot (double, default: 0.10) — size used by Fixed lot mode.
Risk % per trade (double, default: 1.0) — risk used by Risk % mode.
Lots per amount (double, default: 0.10) and Per balance amount (double, default: 1000) — together they define Lots per balance mode: 0.10 per 1000 means a 5,000 account opens 0.50 lots.
Min lot / Max lot (double, default: 0 = broker limits) — floor and cap for the final size.
Skip if lot out of range (bool, default: false) — skip the trade instead of clamping the size to the limit.
Split lots above (double, default: 0 = off) — market orders bigger than this are split into parts: with 0.50, a 1.20-lot trade opens as 0.50 + 0.50 + 0.20.
4. Receiver: copy options
Reverse copy (bool, default: false) — opens the opposite direction (BUY<>SELL); pending types are transformed accordingly (buy limit becomes sell stop, etc.) and SL/TP are swapped.
Stop Loss mode / Take Profit mode (enum, default: Copy) — Copy = mirror the master. Fixed points = use your own fixed distance. Off = do not manage it.
Fixed SL, points / Fixed TP, points (int, default: 0) — the distance used by Fixed mode.
Sync SL/TP changes (bool, default: true) — keep mirroring later SL/TP modifications made on the master.
Copy closes (bool, default: true) — replicate full and partial closes.
Copy pending orders (bool, default: true) — place the master pendings too. If disabled, the trade is copied only when the pending triggers on the master.
Copy existing on start (bool, default: false) — also copy positions that were already open when the receiver started.
Reopen closed copies (bool, default: false) — if a copy gets closed on the receiver (SL hit, manual close) while the master trade is still open, copy it again.
Max price deviation, points (int, default: 0 = off) — do not open if the current price has moved further than this from the master entry; the receiver waits for the price to come back.
5. Receiver: breakeven / trailing
Breakeven trigger, points (int, default: 0 = off) — after this profit, the SL is moved to the entry price.
Breakeven offset, points (int, default: 0) — extra distance added to the breakeven SL.
Trailing distance, points (int, default: 0 = off) — classic trailing stop on the copies.
Trailing start, points (int, default: 0) — profit required before trailing begins.
Trailing step, points (int, default: 5) — minimum improvement before the SL is moved again.
With breakeven or trailing active, the SL only tightens — the master sync can never loosen it.
6. Receiver: filters
Magic filter / Symbol filter / Comment filter (string, default: empty = copy everything) — CSV lists; copy only master trades matching these. Example: Magic filter 123,456 copies only those two EAs.
Direction filter (enum, default: All) — all trades, buys only, or sells only.
Min/Max master lot (double, default: 0 = off) — copy only master trades within this size range.
Max spread, points (int, default: 0 = off) — do not open while the spread is above this.
7. Receiver: schedule
Monday...Sunday (bool, default: all enabled) and Start/End time (string, default: 00:00-23:59) — outside the allowed days/hours no new copies are opened. Overnight windows like 22:00-06:00 are supported. Closes and SL/TP management keep working at all times.
8. Receiver: protection
Max receiver drawdown % (double, default: 0 = off) — pause copying when the receiver floating drawdown exceeds this.
Close all on drawdown (bool, default: false) — additionally close every copied trade when that happens (emergency stop).
Max master drawdown % (double, default: 0 = off) — do not copy while the master account is in deep drawdown.
Daily max loss % / Daily max profit % (double, default: 0 = off) — stop copying for the rest of the day after hitting either limit.
9. Receiver: symbols
Symbol prefix / Symbol suffix (string, default: empty) — added to the master symbol on this broker (e.g. suffix .pro turns EURUSD into EURUSD.pro).
Symbol map (string, default: empty) — manual pairs with the highest priority, e.g. XAUUSD=GOLD;US30=DJ30.
Auto-detect symbols (bool, default: true) — when a symbol does not exist with the same name, the receiver finds the broker variant automatically and remembers it.
10. Receiver: execution
Magic number (long, default: 770001) — identifies the copied trades; use a different one for each receiver instance running on the same terminal.
Slippage, points (int, default: 30) — maximum allowed deviation when executing.
Extra comment (string, default: empty) — your own text appended to the comment of every copy.
11. Panel + journal
Show panel (bool, default: true) — on-chart status panel with the Pause and Close all buttons.
Write CSV journal (bool, default: true) — log every action with its measured latency to a CSV file in the Files folder.
Verbose log (bool, default: false) — extra detail in the Experts log.
Requirements
- Windows PC or VPS with all terminals running on the same machine (local copier, no network bridge)
- MT5 receiver accounts must be hedging accounts
- AutoTrading enabled on the receiver terminal
- To copy from or to MT4 terminals you also need Multi Account Local Trade Copier MT4
FAQ
Do I need a VPS? No. A VPS only matters if you want your terminals running 24/5 without leaving your own PC on. What the copier does require is that every terminal runs on the same Windows machine, PC or VPS.
How fast is the copy? Typically 50-150 ms. You do not have to take that number on trust: the receiver measures the latency of every single copy and writes it to the on-chart panel and to the CSV journal.
Does it need DLLs? No. No DLL imports, no internet bridge and no configuration files to edit.
Can it copy between different brokers? Yes, as long as both terminals run on the same machine. Symbol prefixes and suffixes are detected automatically, and Symbol map covers the rest, for example XAUUSD=GOLD.
Can one master feed several accounts? Yes, with no limit on the number of receivers, and each receiver with its own lot mode, filters and protection.
Can I copy between MT4 and MT5? Yes, in all four combinations. Copying from or to an MT4 terminal also needs Multi Account Local Trade Copier MT4.
Notes
- In the Strategy Tester the EA performs one minimal validation trade; its real function requires two live terminals.
local trade copier, trade copier, copy trades, copy trading, multi account copier, multiple accounts, account copier, master receiver, local copier, prop firm copier, MT5 copier, MT4 copier, MT4 to MT5, MT5 to MT4
