Note:
When you are using the utility as Master Mode, you just need to setup Common and Master Section, ignore Slave
Section.
When you are using the utility as Slave Mode, you just need to setup Common and Slave Section, ignore Master section
Or Simple drag the utility over, one select as Master, one default as Slave and keep the rest not changed for most basic usage in the same VPS/PC.
Section 1: Common Settings
These are the global parameters that apply to both Master and Slave terminals. They control display settings, processing frequency, and symbol handling behavior.
Parameters
- Mode (Mode = Slave)
Defines the role of the terminal: - Master – Sends trades.
- Slave – Receives trades.
Example: Set Master on the lead trading account and Slave on all follower accounts. - Fix Type (FixType = AutoFix)
Handles symbol mismatches between brokers. - AutoFix – Automatically resolves common suffixes/prefixes (e.g., XAUUSD.i → XAUUSD).
- ManualFix – Requires manual configuration via Prefix_ and Suffix_.
- Operation Speed (Speed = StableSpeed)
Determines the rate of data scanning and synchronization: - NormalSpeed, FastSpeed, TurboSpeed, StableSpeed
StableSpeed is suitable for all broker account type and this is the default, you should choose. Turbo is the fastest and it may not be suitabe for slow execution brokers which is most CPU intensive. - Stabilising Delay (Stablizing = 2000)
Delay in milliseconds to slow the processing loop during StableSpeed.
Example: A value of 2000 means the EA waits 2 seconds between checks. - Trade List Display Count (LineDisplay = 15)
Sets how many trades are shown on the chart trade list. - Chart Font Size (TextSize = 11)
Font size used in all on-chart labels (e.g., trade display, role indicator). - Chart Font Color (TextColor = clrYellow)
Color of the text displayed on the chart.
Example: Use clrYellow for visibility against a dark chart background. - Load All Symbols (LoadAllSymbol = false)
When true, all broker symbols are added to Market Watch automatically.
Useful when trades are skipped due to missing symbols on the Slave.
Section 2: Master Settings
Settings specific to the Master (trade sender).
- Master ID (MasterID = "CopyCat")
Unique identifier for this Master instance. - Master Symbol Prefix (MPrefix_)
Used when Fix Type (FixType = ManualFix)
If Master broker symbols is xEURUSD, it has a prefix of x
If Master broker symbols is .EURUSD, it has a prefix of .
If Master broker symbols is EURUSD, it has a prefix of (blank) - Master Symbol Suffix (MSuffix_)
Used when Fix Type (FixType = ManualFix)
If Master broker symbols is XAUUSD.i, it has a suffix of .i
If Master broker symbols is EURUSD., it has a prefix of .
If Master broker symbols is GBPUSDx, it has a prefix of x
If Master broker symbols is GBPUSD, it has a prefix of (blank) - Master Chart Color (MasterChartColor = C'32,32,32')
Chart background color to help visually identify Master terminals.
Section 3: Slave Settings
Settings specific to Slave terminals (trade receivers).
- Slave ID (SlaveID = "CopyCat")
Identifier for the slave terminal. Multiple terminals can share the same ID. - Mapped Symbols (CustomSymbolString)
Custom symbol mapping format: SlaveSymbol=MasterSymbol
Example: Gold=XAUUSD, WS30=US30.i, GBPUSDx=GPBUSD, GPBUSD=GPBUSD.x
Mapped Symbols has first priority over Prefix and Suffix
Support up to 16 pairs (each pair is separated by commas) for More Edition.
Support 1 pairs (each pair is separated by commas) for Free Edition.
- Slave Symbol Prefix (SPrefix_)
Used when Fix Type (FixType = ManualFix)
If Slave broker symbols is xEURUSD, it has a prefix of x
If Slave broker symbols is .EURUSD, it has a prefix of .
If Slave broker symbols is EURUSD, it has a prefix of (blank) - Slave Symbol Suffix (SSuffix_)
Used when Fix Type (FixType = ManualFix)
If Slave broker symbols is XAUUSD.i, it has a suffix of .i
If Slave broker symbols is US30., it has a prefix of .
If Slave broker symbols is GBPUSDx, it has a prefix of x
If Slave broker symbols is GBPUSD, it has a prefix of (blank)
Section 5: Buy/Sell Filter
This section allows you to control which trade directions are copied from the Master to the Slave terminal.
- BuyOrSell
- Buy and Sell (BuyOrSellAll) – Default mode, all trades are copied.
- Buy Only (BuyOnly) – Only BUY trades from the Master are copied.
- Sell Only (SellOnly) – Only SELL trades are copied.
- Disable Copying (BuyOrSellOff) – No trades are copied regardless of type.
Example: Set to SellOnly to copy only SELL trades and ignore BUY trades.
Section 6: Lot Size
Controls how the Slave calculates trade lot sizes. Multiple methods are available, from fixed sizes to equity or risk-based formulas.
Lot Size Mode (LotSizeMode)
Determines which group of sizing rules applies:
-
Group B (LotSizeGroupB) – Uses fixed/factor/account-ratio methods.
-
Group A (LotSizeGroupA) – Uses stop-loss/risk% methods. If SL not provided, can fall back to Group B.
Note: If Group A setting is selected and a copied trades has no SL, it will fallback to use Group B setting.
Lot Rounding (RoundMode)
Specifies how calculated lots are adjusted to match broker’s lot step:
-
Truncate (ROUND_TRUNC) – Round down to nearest step.
-
Round Up (ROUND_UP) – Always round upward.
-
Round Down (ROUND_DOWN) – Always round downward.
6.1 Lot Size Group B
Defines methods that do not require a stop loss. Suitable for fixed or account-ratio-based sizing.
Lot Type Without SL (LotTypeWOSL)
Options:
-
Fixed (LotFixed) – Use a constant lot size.
-
Factor (LotFactor) – Multiply Master lot size by a factor.
-
Equity Ratio (LotEquityRatio) – Scale based on equity ratio.
-
Balance Ratio (LotBalanceRatio) – Scale based on balance ratio.
-
Free Margin Ratio (LotFreeMarginRatio) – Scale based on available free margin.
-
Equity × Leverage (LotEquityLeverageRatio) – Scale using equity × leverage value.
-
Slave Equity per 0.01 lot (LotSlaveEquitySize) (More version only) – Define equity required per 0.01 lot.
-
Slave Balance per 0.01 lot (LotSlaveBalanceSize) (More version only) – Define balance required per 0.01 lot.
Parameters
-
LotFixedSet = 0.1 – Fixed lot size.
Example: Every trade copies as 0.1 lot. -
LotFactorSet = 1.0 – Factor applied to Master’s lot size.
Example: Master = 2 lots, Factor = 0.5 → Slave = 1 lot. -
LotEquityRatioSet = 0.75 – Ratio applied to Slave’s equity.
-
LotBalanceRatioSet = 1.5 – Ratio applied to Slave’s balance.
-
LotFreeMarginRatioSet = 0.5 – Ratio applied to free margin.
-
LotSlaveEquitySizeSet = 500 – Equity per 0.01 lot (More version only).
Example: $500 equity → 0.01 lot. $5,000 equity → 0.10 lot. -
LotSlaveBalanceSizeSet = 500 – Balance per 0.01 lot (More version only).
-
LotEquityLeverageRatioSet = 1.0 – Ratio based on equity × leverage.
6.2 Lot Size Group A
Defines methods that require a stop loss. Lot size is derived from risk per trade relative to account size or drawdown thresholds.
Lot Type With SL (Lot_TYPESL)
Options:
-
% of Initial Deposit (LotPercentageInitialDepositLoss) – Risk based on initial deposit.
-
% of Balance (LotPercentageBalanceLoss) – Risk based on current balance.
-
% of Equity (LotPercentageEquityLoss) – Risk based on current equity.
-
% of Free Margin (LotPercentageFreeMarginLoss) – Risk based on available free margin.
-
% of Daily Open Balance (LotPercentageDailyBalanceLoss) – Risk relative to balance at start of day.
-
% of Daily Open Equity (LotPercentageDailyEquityLoss) – Risk relative to equity at start of day.
-
Fixed Dollar Loss (LotDollarLoss) – Risk based on a set USD amount.
Example: With LotPercentageBalanceLoss = 2%, SL = 100 pips, and balance = $10,000 → lot size is calculated so maximum loss = $200.
Section 7: Lot Size Fixing
Restricts calculated lot sizes within specified minimum and maximum values.
- Force Broker Minimum (SymbolMinLotAdjust = true/false)
If enabled, lots smaller than broker’s minimum allowed lot size are automatically adjusted upward. - Enable Lot Size Fixing (LotSizeFixing = true/false)
If true, the system will enforce min/max constraints. - Minimum Lot Size (MinLotFixing = 0.11)
Lowest volume allowed for a copied trade. - Maximum Lot Size (MaxLotFixing = 1.2)
Highest volume allowed regardless of calculated result. - Broker Minimum Enforcement (SymbolMinLotAdjust = true/false)
If enabled, any lot size below the broker-defined minimum will be adjusted upward.
Section 8: Tolerance Settings
Sets how much deviation is tolerated in price, slippage, and timing between Master and Slave.
- Price Deviation Tolerance (PriceTolerance = e.g. 10000)
Maximum allowed points between Master’s price and Slave’s current price.
Example: On high volatility pairs like BTCUSD, use a high value such as 20000 points. - Slippage on Open (Slippage = 100)
Acceptable slippage when opening a trade (in points). - Slippage on Close (CloseSlippage = 100)
Acceptable slippage when closing a trade (in points). - Trade Delay Tolerance (DelayTolerance = 30)
Maximum age (in seconds) of a master trade allowed for copying.
Example: If set to 30, any trade older than 30 seconds will be skipped.
Slave account broker will rejects trades if out of slippage, Copy Cat will attempt to copy within Trade Delay Tolerance
Section 10: First Deposit
This section controls how the EA determines the initial deposit value, which may be used in lot size calculations and risk-based logic.
- InitialBalanceDetect (true/false)
Enables automatic detection of the account's first deposit from the account history.
Example: Set to true to let the EA scan account history and use the first deposit as reference. - InitialBalanceSet (e.g. 25000)
Manually defines the fallback first deposit value if auto-detection fails or is disabled.
Example: Set to 25000 if you want the EA to assume $25,000 as the initial deposit.
These setting are useful for prop firm account.
Section 11: Indicator Settings
Controls the parameters used in ATR- and ADR-based calculations for SL, TP, and Better Price Logic and other functions
- ATR Timeframe (ATRTimeFrame = PERIOD_H1)
Timeframe used for the Average True Range (ATR) indicator. - ATR Period (ATRPeriod = 7)
Number of candles over which ATR is averaged. - ADR Period (ADRPeriod = 7)
Number of days used for calculating the Average Daily Range (ADR).
Section 20: SL and TP Settings
Defines how Stop Loss and Take Profit are set on the slave side.
- Stop Loss Type (SLType)
Selects how SL is determined: - Follow Master (SLFollowMasterType)
- No SL (SLNoneType)
- SL by Point (SLByPointType)
- ATR-Based (SLATRType)
- Static SL in Points (SLByPoint = 300)
Sets a fixed SL value in points.
Example: 300 means a 300-point stop loss. - ATR SL Factor (ATRSLFactor = 1.5)
Multiplies ATR value to derive SL.
Example: ATR = 20, Factor = 1.5 → SL = 30 points. - Take Profit Type (TPType)
Selects how TP is calculated: - Follow Master (TPFollowMasterType)
- No TP (TPNoneType)
- TP by Point (TPByPointType)
- Multiplier of SL (TPFactorType)
- Static TP in Points (TPByPoint = 500)
Sets a fixed TP value in points.
Example: 500 = 500-point take profit. - TP Multiplier (TPFactor = 2)
TP is computed as a multiple of SL.
Example: SL = 100, TPFactor = 2 → TP = 200.
Section 30: Allow Filters
Allows only specified trades to be copied based on symbol, magic number, or comment.
- Allowed Symbols (AllowSyms)
Comma-separated list of permitted symbols (partial match supported, can be part of suffix).
Example: XAU, US30, EURUSD, .r, USD - Allowed Magic Numbers (AllowMNs)
Comma-separated list of permitted EA IDs.
Example: 123, 456, 0
0 is used to represent manual trade - Allowed Comments (AllowComms)
Comma-separated list of allowed comment strings (partial match supported).
Example: Red Folder, My EA, or "" for blank comments.
Support Partial Match
CopyCat More supports up to 16 symbols, magic numbers, and comments in allow filters, separated by commas.
Section 31: Disallow Filters
Blocks trades from being copied based on matching symbol, magic number, or comment.
- Disallowed Symbols (DisallowSyms)
Comma-separated list of blocked instruments (partial match supported, can be suffix).
Example: NAS100, BTCUSD, XAUUSD.i, GPB, .x - Disallowed Magic Numbers (DisallowMNs)
Comma-separated list of EA IDs to exclude.
Example: 0, 123, 9999 - Disallowed Comments (DisallowComms)
Comma-separated list of blocked trade comments (partial match supported).
Example: Bad Strategy, Test, or "" to block blank comment trades.
Support Partial Match
CopyCat More supports up to 16 symbols, magic numbers, and comments in disallow filters, separated by commas.
Section 32: Copy Reverse
Enables or disables reversal of trade direction between Master and Slave terminals.
- Copy Reverse (CopyReverse = true/false)
If enabled: - Master BUY → Slave SELL
- Master SELL LIMIT → Slave BUY STOP
- Master SELL STOP → Slave BUY LIMIT
Example: Use CopyReverse = true to flip trades in the opposite direction
Copy Reverse automatic flip SL and TP values. If you do not want such setup, you can set Ignore Position Exit=true, which means no master TP and SL is copied.
Section 33: Ignore Exits
Provides finer control over whether exits (position close or order deletion) are mirrored from the Master.
- Ignore Position Exit (DisableCopyPositionExit = true/false)
Prevents closing of slave-side positions when the master closes its trade.
Example: Set to true to keep trades open for discretionary or strategy-based exit. - Ignore Order Exit (DisableCopyOrderExit = true/false)
Prevents deletion of pending orders even when canceled on the master side.
Example: Keeps your pending entries intact even if the Master removes theirs.
Section 34: Pending Orders
Controls whether pending orders on the Master (e.g., Buy/Sell Limit, Stop) are copied to the Slave.
- Copy Pending Trades (CopyPendingTrades = true/false)
- If true, pending orders from Master are mirrored.
- If false, only market positions are copied.
Example: Enable this for strategies that rely on pre-positioned orders rather than market entries.
Section 35: Partial Close
Parital close is supported as Master and Slave in MT4/MT5 version
Section 36: Close By
Close By is supported
Continue to Part 2: https://www.mql5.com/en/blogs/post/763629 <------------------- read
Support and Contact Information
If you need help, have questions you can contact me at:
- Email: silane32@gmail.com
- Developer Profile:
https://www.mql5.com/en/users/rodeong/seller