I need a Copy EA with a simple information panel for my martingale set up. A Copy EA for mt4 and mt5 that can be used as both transmitter and receiver. I have a martingale set up where I will use several transmitter accounts and one receiver account. The receiver needs to be able to scan and detect open trades/symbols in the receiver terminal, and avoid copying certain trades based on spesific parameters. I need the source code. A key challenge in this project is to ensure fast, reliable and accurate trade copying - including symbol and lot size mapping, risk management, and drawdown logic—across MT4 and MT5 platforms for both demo and real accounts. Please provide a clear plan in your own words (ChatGPT-style descriptions will be recognized and dismissed) for how key challenges will be addressed: inter-terminal communication, data consistency, risk control, trade filtering, and robustness against terminal restarts. Please suggest if you believe any of the parameters is not possible or useful. The copier must be stable even with many active accounts and trades. The developer must deliver a robust and thoroughly tested copier, meaning both code and test all parameters before the delivery. Specifications are attached. ---------------------------- Input parameters: ------- General ------- 1. Account Mode: (Transmitter/Receiver) 2. Account Number of Transmitter: (Default: the account where the EA is attached) 3. Close all trades in Transmitter if DD in this Transmitter account exceedes %: 4. Comment: (Parameters below is only relevant for the receiver EA) ------- Copy Filtering of Transmitter Trades ------- 5. Transmitter account number to copy trades from: 6. Copy only half size - If the receiver has already copied trades from any of the listed Transmitters, new trades from the transmitter will be copied at 50% of their original lot size (separate by comma): 7. Do not copy if trades have already been copied from any of these Transmitters (separate by comma): -------------- Copy Restrictions ---------------------- 8. Copy New Trades: true/false 9. Copy Current Trades: true/false 10. Copy long only: 11. Copy short only: 12. Copy only long/short if the receiver has copied long/short from this/these Transmitters: 13. Better Price in Points (0 is disabled): ----------- Lot Size Management ------- 14. Lot Size Type (Drop down): Fixed Lot/Multiplier/Proportional Multiplier by Equity 15. Fixed Lot size: 16. Multiplier: 17. Proportional Multiplier by Equity: --------------- Protection ------------------- 18. Split Copied Trades in Parts: 19. Copying from Symbol Trade/Order Number: 20. Close all trades copied from this Transmitter if DD in the receiver account exceedes %: 21. No Further Copying if Receiver Drawdown is bigger than %: 22. Copy Take Profit: 23. Copy Stop Loss: 24. Break Even in Points: (Only enabled if Copy Take Profit=false and Copy Stop Loss=false above.) ------- Alerts ------- 25. Alert when DD exceedes % : 26. Alert when DD exceedes %: 27. Alert when the receiver copy a trade: true/false --------------- Time Filter ------------------- Monday: hours:minutes Tuesday: Wednesday: Thursday: Friday: Saturday: Sunday: ----------------- Parameter #1: Account Mode: (Choose Transmitter or Receiver) This determines whether the EA is used as a transmitter or receiver. Parameter #2: Account Number of the Transmitter: When the EA is used as a transmitter, this is the account number. Parameter #3. Close all trades if DD in this Transmitter account exceedes %: Works only when the copier is in Transmitter mode (Parameter #1) Parameter #4: Comment: The comment the Receiver account will print in the terminal comments section, along with every copied trade. Parameter #5: Transmitter account numbers to copy Which Transmitter account (parameter #2) the receiver should copy trades from. Parameter #9: Copy Current Trades This is set to 'false' if I don't want to copy existing transmitter trades/orders to the receiver side during a initial transmitter-to-receiver setup, or if the receiver are enabled again after being disabled. Parameter #13 Better Price in Points (0 is disabled): Wait to copy until the trade is in loss at x points. If more trades open in a grid series, the Better Price apply to the first trade only. So disable this feature after the first trade is opened. Enable when grid series is closed. Parameter #15. Fixed Lot size: If Fixed Lot is selected in parameter 14, the copier will copy the transmitter trades onto the receiver account with a fixed lot size as per the value in this parameter. Parameter # 16. Multiplier: If Multiplier is selected in parameter 14, the copier will use the multiplier value here when copying transmitter trades onto the receiver account. If the value here=1, the receiver copies the same lot size as the transmitter. Parameter # 17. Proportional Multiplier by Equity: If Proportional by Equity is selected in parameter 14, the receiver copy the transmitter account trades onto the receiver account with a lot size proportional to the receiver account equity only. For example, if the transmitter equity is $2000 and the receiver equity is $4000, a 0.10 lot transmitter trade will be copied as a 0.20 lot trade to the receiver account. Parameter #19 Copying from Symbol Trade/Order Number: This setting enables you to specify from which point onwards trades/orders should be copied for all symbols. For example, if you input 2 into this setting, the receiver will skip copying the initial trade/order of each symbol from the transmitter account to the receiver account. Instead, it will start copying from the second trade/order onward. Parameter #20: Close all trades copied from the Transmitter if DD in the receiver account exceedes x% Use the Transmitter account number written in Parameter #5 of the receiver. Parameter #21 No Further Copying if Receiver Drawdown is bigger than % Copying disables when DD is bigger and enables when DD is lower, with a 10 minutes cooldown, meaning after copying is disabled it will not be enabled again before after 10 minutes. (prevents too many actions if DD crosses the DD value many times every second) Parameter #24: Break Even Profit in Points: For every copied trade by this receiver, in which the the receiver will move the Stop Loss level to Break Even. This setting is only applied if Copy Take Profit=false and Copy Stop Loss=false in parameter 22+23, meaning break-even only applies when I don’t mirror TPs/SLs Parameter #25-26: Alerts via mql5 ID, mobile. If the value here is set to 1 and DD becomes 1% or more, an alert is sent. But if the DD go down to 0.9% and then back to 1% do not send alert. Alerts is sent only once per a series of trades. DD is calculated on floating loss of balance. Parameter #27: Alerts via mql5 ID, mobile. Alert only when initial trades opens (and closes), not SL or TP modifications Time Filter: Trades may be copied only within the defined time intervals, except if trades are already open, in which case time filter is ignored until all trades are closed. ----------------------------- Information panel parameters: Account Mode: (Transmitter or Receiver) (parameter #1) Comment (parameter #4) Lot Size Type (parameter #14) Lot Size Value (parameter #15/16/17) Current DD --------------------- The EA must include a structured logging system that saves to .csv format, with one log file per day. Each log entry must include: Timestamp, Event Type, Account Number, EA Mode, Symbol, Trade Info, Result/Error Message Events to log: - Trade execution (open/modify/close) - Trade skip (with reason) - Terminal disconnection/reconnection - Drawdown triggers or trade filter activation - Symbol mismatches Logs must be saved to the /Files folder and be human-readable and compatible with Excel. The copier must support all kinds of trading accounts, hedge, netting++ The copier must support copying from Demo account to Real account, Real account to Demo account, Demo account to Demo account and Real account to Real account. The copier must support copying from mt4 to mt4, mt4 to mt5, mt5 to mt5 and mt5 to mt4. The copier must support all suffixes/prefixes/customizable symbol mapping to handle differences in broker symbols (e.g., EURUSD vs EURUSD.m, fx_US30 vs US30.i). The copier must support all digits. Auto detect digit quotes. Example (two digit to four and five-digit quotes.) The copier must support copying from an account where read-only/investor password is applied. One transmitter account must be able to send orders to several receiver accounts, and one receiver account can receive orders from several transmitter accounts. The copier must have a information panel with settings as described in the spesifications. The copier must operate reliably and maintain full data integrity even under adverse conditions, such as terminal restarts, network interruptions, or lost connections. It must not lose track of existing trades or settings, and should be able to resynchronize all open and pending positions automatically after any interruption. The solution must handle unexpected errors gracefully, provide clear error messages or logs, and prevent duplicate, missed, or “ghost” trades in any scenario. Robustness against a high volume of trades and connections is essential. The Developer must provide source code mq4, mq5 and the .exe files must pass validation for sale in the mql5 market. It must be possible to extend the logic (e.g. add trade modification, trailing stop, etc.) at a later stage. The copier must have an option in the code to lock the EA to an account name, account number and/or a spesific date; Error if wrong name/number/date expired: "This EA is not registered for you." The developer must verify, and demonstrate, that every parameter works as intended for both MT4 and MT5, and for all trade and account scenarios in the attached specification. The buyer needs time for checking before handover and payment, even when the developer have to test all parameters before the delivery.