MT4 Version: Local Trade Copier Pro MT4
MT5 Version: Local Trade Copier Pro MT5
Complete User Documentation — MT4 & MT5
1. OVERVIEW
The Local Trade Copier Pro is a utility that monitors a source MetaTrader account and replicates every trade — openings, modifications, and closures — to one or more destination accounts in real time. It uses a polling mechanism to detect changes on the source, then fires off matching orders on the destination terminals using the standard Trade.mqh library. This solves the headache of manually duplicating trades across multiple accounts, whether you're running a small signal service, managing prop firm challenges, or just want your personal accounts to mirror each other without lag.
Who Should Use It: Retail traders juggling several accounts — maybe a main trading account and a few funded prop firm accounts — who need reliable, low-latency trade replication without paying monthly subscription fees.
Main Benefit: Eliminates manual entry errors and saves hours per week by automating trade copying across any number of MT4/MT5 accounts on the same computer or local network.
2. INPUT PARAMETERS & SETTINGS
This product shares a common set of general input settings with all Utility products in this series. The following sections are covered in the common guide: Position Sizing, Alert Settings (popup, push notification, email), Trade Time Settings (session-based time filters), Trade Days Settings (per-day enable/disable with broker start and end times, covering Monday through Sunday), and Day-wise Time Filter Settings (close trades if outside valid trading time). For full details refer to the Common General Input Settings Guide. The sections below cover only the product-specific inputs unique to this product.
General Settings
These are the core connection and filtering parameters that tell the copier which account to watch, where to send trades, and what rules to apply before copying.
| Setting Name | Type | Default Value | Description | Example |
|---|---|---|---|---|
| Source Account Number | long | 4186230 | The account whose trades you want to replicate. Change this to point at your main trading account. If you run multiple strategies on different accounts, you'll need a separate copier instance for each source. | 12345678 — Use your live trading account number here, not the demo one. |
| Destination Account Numbers | string | 20962310,54196337 | Comma-separated list of accounts that will receive copies of the source trades. You can list as many as you want — just make sure each destination terminal has the copier running and the account logged in. | 20962310,54196337,99887766 — Add all your prop firm challenge accounts here. |
| Ignore Trades older than X seconds | int | 10 | Prevents copying of trades that were opened more than X seconds ago. Useful when you restart the copier — you don't want it to flood destinations with old positions. Set higher if you deliberately want to catch up after a restart. | 30 — Good for catching up after a brief disconnection without grabbing stale trades. |
| Delay in Seconds(For Prop Firm) | int | 0 | Adds a fixed delay before copying each trade. Many prop firms require a minimum delay (e.g., 5 seconds) to prevent copy-trading detection. Set to 0 for instant copying when no such rule exists. | 5 — Use this for FTMO or MFF challenges that mandate a 5-second delay. |
| Only Filter Source magic numbers | string | — | If your source account runs multiple EAs, each with its own magic number, enter those numbers here to copy only trades from specific EAs. Leave blank to copy everything from the source. | 12345,67890 — Copy only trades from your Grid EA and Scalper EA, ignoring manual trades. |
| Only Allow Source magic numbers | string | — | Works like a whitelist — only trades with these magic numbers on the source will be copied. This gives you finer control than the filter setting above; use it when you want to exclude everything except a few specific strategies. | 67890 — Only copy trades from your Martingale EA, ignore everything else. |
| Multiply Destination Trades [0:disable] | double | 0 | Multiplies the lot size of every copied trade by this factor. For example, 2.0 doubles the risk on destinations. Set to 0 to use the source lot size as-is. Handy when destination accounts have different equity sizes. | 0.5 — Halve the lot size on a smaller account to keep risk proportional. |
| Number Of Orders [0: disable] | int | 5 | Limits the total number of open orders (market + pending) on each destination account. Once the limit is hit, no new trades are copied until some are closed. Set to 0 for no limit. Useful for prop firms with max position rules. | 3 — Keep max 3 open positions on a challenge account to stay within their rules. |
| Copy Source SL and TP | bool | true | When enabled, stop loss and take profit levels from the source trade are copied exactly to the destination. Disable this if you want to manage exits independently on each account — for example, letting a destination run without a hard stop. | false — Use when you want destination accounts to trail stops manually without interference. |
| Copy Reverse | bool | false | Flips the trade direction: a buy on the source becomes a sell on the destination, and vice versa. This is useful for hedging — if you want one account to profit when another loses, or for running a mirror strategy with opposite bias. | true — Hedge your main account by copying reversed trades to a separate hedging account. |
| Destination suffix | string | — | Appends this text to the symbol name on destination accounts. For example, if the source trades EURUSD and you set suffix "_m", the destination will trade EURUSD_m. Needed when a broker uses different symbol suffixes. | .m — Use for brokers like ICMarkets that add ".m" to forex pairs. |
| Source suffix | string | — | Same as destination suffix, but for the source account. If your source broker uses a suffix like ".fx", enter it here so the copier can match symbols correctly. Leave blank if no suffix is used. | .fx — For brokers like OANDA that append ".fx" to symbol names. |
| Copy modify of trades | bool | true | When enabled, any modification to an open trade on the source — like moving a stop loss or take profit — is mirrored on the destination. Disable this if you want destination trades to remain static after opening. | false — Keep destination stops fixed even if the source adjusts them dynamically. |
| Drawdown % to start[0 to disable] | int | 0 | The copier will only start replicating trades once the source account's drawdown exceeds this percentage. Set to 0 to start immediately. Useful for strategies that only kick in during drawdown, like a recovery system. | 10 — Only copy trades after a 10% drawdown, ignoring normal market conditions. |
Safeguard Settings
These risk controls help you cap exposure on destination accounts by limiting pending orders and scaling lot sizes based on account equity.
| Setting Name | Type | Default Value | Description | Example |
|---|---|---|---|---|
| Maximum Long Pending Orders [0: disable] | int | 0 | Limits how many buy-stop or buy-limit orders can be active on a destination at once. Prevents overloading an account with too many pending longs, which can tie up margin unnecessarily. Set to 0 for no limit. | 3 — Cap long pending orders at 3 to avoid margin lock on a small account. |
| Maximum Short Pending Orders [0: disable] | int | 0 | Same as the long limit, but for sell-stop and sell-limit orders. Use this to balance directional exposure. If your source fires many pending shorts, this keeps the destination from getting too heavy on the short side. | 2 — Keep short pending orders to a maximum of 2 to manage risk. |
| Scale lots by equity ratio | bool | false | When enabled, the copier adjusts lot sizes on each destination based on the ratio of destination equity to source equity. This keeps risk proportional across accounts of different sizes. Disable to use fixed lot sizes. | true — Use when copying from a $10,000 account to a $2,000 account so lot sizes are 1/5th. |
| Equity lot scale multiplier | double | 1.0 | Multiplies the equity-based lot size calculated by the scaling feature. For example, 2.0 doubles the scaled lot. Only active when "Scale lots by equity ratio" is true. Fine-tune risk without changing the ratio logic. | 1.5 — Increase scaled lots by 50% for a more aggressive copy on a well-funded destination. |
3. HOW IT WORKS
Core Calculation & Logic
The Local Trade Copier Pro doesn't calculate market conditions or identify trading signals — it's a relay system. Its core job is to monitor the source account for any trade events (open, close, modify) and replicate those exact actions on one or more destination accounts. The logic is event-driven: it hooks into the terminal's trade notifications and processes each one through a series of filters — magic number, trade age, drawdown limits — before sending the corresponding order to each destination. There's no price prediction or indicator math here; it's pure state synchronization.
Technically, the utility uses the CTrade and CPositionInfo classes from the MQL5 Standard Library to poll position changes at each tick. When it detects a new position on the source, it reads the symbol, volume, stop loss, take profit, and comment, then submits a matching order to each destination account via the m_trade.PositionOpen() or m_trade.OrderSend() methods. The delay parameter ( COPY_DELAY ) inserts a Sleep() between detection and execution, which is handy for prop firm compliance where you need a few seconds between the source trade and the copy.
How It Operates
Once attached to a chart on the source account, the utility runs a continuous loop. On every tick, it compares the current list of open positions against a stored snapshot. If a new position appears, it checks the IGNORE_TRADES_BEFORE filter — if the trade is older than that many seconds, it skips it. Then it checks the FILTER_SOURCE_MAGICS and ALLOW_SOURCE_MAGICS strings: if either is set, only trades with matching magic numbers are copied. After passing those gates, it applies the lot multiplier ( LOT_MULTIPLIER ) or fixed lot size ( LOTS ), adjusts SL/TP if you've set STOPLOSS or TAKEPROFIT in pips, and sends the order to each destination account listed in DESTINATION_ACCOUNTS .
If a position is modified on the source (SL/TP change), the utility detects the delta and calls m_trade.PositionModify() on the destination side — but only if Copy modify of trades is true. When a source position closes, it closes the corresponding destination position by matching the ticket or magic number. The NUMBER_OF_ORDERS limit caps how many simultaneous copies are allowed per symbol; once that number is hit, new copies are blocked until one closes. The Drawdown % to start setting pauses all copying until the destination account's drawdown falls below the threshold — a nice safety net for risk-averse setups.
Key Features in Detail
What sets this apart from basic copy-paste tools is the granular control over trade selection. You can filter by source magic numbers, set a delay for prop firm rules, and multiply or fix lot sizes independently per destination. The drawdown gate and transaction limits give you risk management that most free copiers lack. And the Copy Reverse toggle lets you hedge by flipping buy/sell direction — useful if you're running a mirror strategy across two accounts. The suffix fields ( Destination suffix , Source suffix ) help you label trades so you can tell at a glance which account originated them.
Step-by-Step Workflow
Step 1: Attach to Source Chart — Drag the EA onto any chart on the source account. It doesn't matter which symbol you pick; the utility reads all open positions regardless of chart pair.
Step 2: Configure Source & Destinations — In the inputs tab, set SOURCE_ACCOUNT to the account number you're copying from. Then list one or more destination account numbers in DESTINATION_ACCOUNTS , separated by commas — e.g., 20962310,54196337 .
Step 3: Set Trade Filters — If you only want to copy trades from a specific EA or strategy, enter its magic number in FILTER_SOURCE_MAGICS or ALLOW_SOURCE_MAGICS . Leave blank to copy everything.
Step 4: Adjust Lot Sizing — Decide whether to use a fixed lot size ( LOTS ) or a multiplier ( LOT_MULTIPLIER ). If both are 0, the source lot size is copied as-is. For example, set LOT_MULTIPLIER to 2 to double every trade on destinations.
Step 5: Set Risk Limits — Enter a value in NUMBER_OF_ORDERS to cap how many simultaneous copies are allowed per symbol. Use Drawdown % to start to pause copying if the destination account hits a drawdown threshold — say, 10%.
Step 6: Enable Logging (Optional) — Set SHOW_LOGS to true if you want to see detailed copy actions in the Experts tab. Helpful for debugging, but can clutter the log on busy accounts.
Step 7: Start the EA — Click OK. The utility will immediately begin monitoring the source account. Open a trade on the source, and within seconds (or after your configured delay) it should appear on each destination. Check the Journal tab for any errors — common ones include wrong account numbers or insufficient permissions.
4. KEY FEATURES & CAPABILITIES
The Local Trade Copier Pro packs several features that give you fine-grained control over how trades are replicated. Here's what each one does in practice:
| Feature | Description |
|---|---|
| Multi-Account Copying | Copy trades from one source to multiple destination accounts simultaneously. Just comma-separate the account numbers in DESTINATION_ACCOUNTS . Each destination gets its own copy with independent lot sizing if you want. |
| Magic Number Filtering | Use FILTER_SOURCE_MAGICS or ALLOW_SOURCE_MAGICS to copy only trades from specific EAs or scripts. Leave blank to copy everything. This is how you keep a scalping EA's trades separate from a swing trader's. |
| Lot Sizing Control | Three modes: copy source lot size as-is ( LOTS=0, LOT_MULTIPLIER=0 ), apply a multiplier ( LOT_MULTIPLIER=2 doubles volume), or use a fixed lot size ( LOTS=0.1 overrides source). Handy when destinations have different risk tolerances. |
| Prop Firm Delay | Set COPY_DELAY to any number of seconds to introduce a pause between source trade detection and destination execution. Many prop firms require a minimum delay to prevent copy-cat strategies. 5 seconds is a common value. |
| Drawdown Gate | Set Drawdown % to start to a percentage — say 10. The utility will pause all copying until the destination account's drawdown drops below that level. A simple but effective circuit breaker for risk management. |
Quick Start Guide
Follow these steps to get started in under 5 minutes:
- Install the EA: Place the Local Trade Copier Pro.ex5 file in your MQL5/Experts folder (or MQL4/Experts for MT4). Restart MetaTrader or refresh the Navigator panel.
- Open the source account: Log into the account you want to copy trades from. This can be a live or demo account — the utility doesn't care.
- Attach to any chart: Drag the EA onto any chart on the source account. The symbol doesn't matter; it monitors all open positions across all symbols.
- Set source and destinations: In the inputs tab, enter your source account number in SOURCE_ACCOUNT . Then list destination account numbers in DESTINATION_ACCOUNTS , separated by commas — e.g., 12345678,87654321 .
- Configure basic filters: If you only want to copy trades from a specific EA, enter its magic number in FILTER_SOURCE_MAGICS . Otherwise leave blank to copy all trades.
- Set lot sizing: Leave LOTS and LOT_MULTIPLIER at 0 to copy source lot sizes exactly. Or set LOT_MULTIPLIER to 1.5 for a 50% volume increase on destinations.
- Enable logging (optional): Set SHOW_LOGS to true to see copy actions in the Experts tab. Helpful for first-time setup to confirm trades are flowing.
- Start the EA: Click OK. Open a trade on the source account — within seconds it should appear on each destination. Check the Journal tab for any errors like "Invalid account" or "No connection."
Installation Guide for MQL Products | Updating Purchased MQL Products on MT4/MT5 | General Troubleshooting Guide | Indicator Settings / Guide
Check all my products: https://www.mql5.com/en/users/biswait50/seller
Contact me for support: https://www.mql5.com/en/users/biswait50


