Exp COPYLOT CLIENT for MT4
Trade copier for MetaTrader 4. It copies forex trades, positions, orders from any accounts.
It is one of the best trade copiers MT4→MT4, MT5→MT4 for the COPYLOT MT4 version (or MT4→MT5 MT5→MT5 for the COPYLOT MT5 version).
Copier version for MetaTrader 5 terminal (МТ5→МТ5, МТ4→МТ5)- Copylot Client MT5
: The unique copying algorithm exactly copies all trades from the master account to your client account.
: The product is also noted for its high operation speed Tough error handling.
: A powerful set of features.
: The program can be run on multiple terminal bindings.
: Use it as a synchronizer of your trades on various accounts trading on one account, - COPYLOT will copy your trades to other terminals.
: Copy from the closed account opened on Invest password;
: Partial close only from mt4 to mt4
: Copy from DEMO account to real account;
: Copy from multiple terminals to one;
: Copy from one terminal to several others;
: Copy from any different brokers to any different brokers;
1. COPYLOT CLIENT (Slave) Install the Expert Advisor in the terminal where you want to copy trades.
2. Specify any text label name as pathRead, for example, "COPY". This should match the master terminal PathWrite (to bind the two terminals).
3. By default, our program will copy all positions and orders from one account to another!
4. Open the terminal on which Positions will be copied and set COPYLOT CLIENT to one chart
5. Open the terminal where you will copy and install COPYLOT Master MT4 on one graph
- The EA needs to be set to 1 Chart! Our adviser copies all positions and orders from your account!
- Attention! COPYLOT does not work on MetaQuotes VPS
- Attention: COPYLOT does not copy via the Internet! Copy between terminals on one computer!
- Attention! Partial closing works only between MT4 terminals!
Main Parameters (Attention: The list of settings is in our blog !)
# ChangingNamesSymbols - Parameter for changing the names of characters from the master and the client;
# LotRiskFromMaster - Copying lots against the risk on the wizard. Autolot!
# PreFixSymbol - additional symbol(s) in the name of the client's currency pair.
# Lot - the lot for opening. If 0, it opens deals with the current master lot. Otherwise, the lot to be used for trade copying is specified.
# KoefLot - if 0, it is disabled. If there is a coefficient, then positions will be opened with this coefficient in the client's terminal.
# TakeProfitCopy /StopLossCopy - copying take profit / stop loss from the master account.
# ReverseCopy - revert trades (take profit and stop loss are also inverted).
# PricePointSlip - price deviation during copying.
# OnlyProfitPips - minimum profit value of a trade in points. Copy only profitable positions.
# OnlyLossPips - loss value in points. Copy only losing positions.
# NewTradeONLY - copy only new trades.
# TP_adjust / SL_adjust - addition (if "-" sign, the subtraction) of a specified number of points for TakeProfit / Stoploss.
# My_STOPLOSS / My_TAKEPROFIT - setting your stop loss /take profit from the current open price.
# VirtualStopLossTakeProfit - virtual stop loss and take profit from the master.
# TrailingStopUSE - use trailing stop for open positions.
#tags copy trades copy trade copier fast copy kopir Expforex, Vladon,
Updating information on the chart when redrawing data has been improved.
The table of deals is updated along with the panel update (The data update time is still configurable in the panel settings!)
Attention! For the program to work, you need to install the Copylot Client EA on 1 chart!
It is forbidden to install Copylot Client on 2 charts or more!
- Client: Added new parameter
- AdditionalLot: An additional lot that will be added to the main lot.
Allows you to increase or decrease the lot.
Note: You can set both +0.01 values and -0.01 values.
Note: You can use this parameter together with KoefLot, RiskLot.
Master lot = 1, AdditionalLot = 0.01, Client lot = 1.01;
Master lot = 1, AdditionalLot = -0.01, Client lot = 0.99;
- Client: When using OIP_Order_Instead_Position and ReverseCopy, the type of pending orders will also be reversed: Buy> SELLSTOP / SELLLIMIT, Sell> BUYSTOP / BUYLIMIT
Checking trading sessions of the copied symbol before sending a request to the server!
The Expert Advisor checks whether it is possible to trade on this symbol at the current time and trading session.
If it is currently prohibited to trade on the symbol being copied, COPYLOT will not send a request to the server.
Attention! Some brokers may have multiple trading sessions!
If you find that the EA does not copy the Traded Symbol and writes the No Session Time error, you can disable this function!
- For the convenience of filling in the SymbolToCopy and SymbolNOtToCopy parameters in COPYLOT MASTER, restrictions on the strict case of letters (Small and Large) have been removed.
Now these parameters can be specified in any form, for example: EURUSD, eurusd, EURusd ......
Attention! 2 functions can work at the same time!
Those deals are copied that have fulfilled 1 of 2 conditions (Profitable / Unprofitable)
-- PreFixSymbol function updated for some Symbols.
-- Added function Delay_Seconds_General - Delay in seconds between all adviser requests to the server.
In other words: Each request to the server (opening, closing, modification) will be executed with a delay between each other.
For brokers who are forbidden too frequent requests to the server (a very rare event).
If Delay_Seconds_General = 0, then this function does not work.
Attention! For advanced users only.
Therefore, the adviser cannot copy the position!
Therefore, I added the output of the error message to the screen:
Alert ("Error number 2 [Common error] was detected in your terminal, Please restart your terminal!");
Alert ("Error number 2 [Common error] has been detected in your terminal. Please restart your terminal!");
This unit sets the delay between the opening positions in seconds/points!
Delay_Seconds_ALL = 0; - Delay in seconds between the opening position, take into account all positions (Currency and the direction is not taken into account). 0 - disabled.
Delay_Seconds_Symbols = 0; - Delay in seconds between the open position of one currency is accounted for position 1 Currency (the direction is not taken into account). 0 - disabled.
Delay_Seconds_Type = 0; - Delay in seconds between the open position of one currency and every BUY / SELL positions, position 1 is taken into account currencies. 0 - disabled.
Delay_Points_Symbols= 0; - Delay in points between the open position of one currency is accounted for position 1 Currency (the direction is not taken into account). 0 - disabled.
Delay_Points_Type = 0; - Delay in points between the open position of one currency and every BUY / SELL positions, position 1 is taken into account currencies. 0 - disabled.
Warning: Delay in points can be equal to or greater than the opening price of the previous positions! The value in points - This is the minimum value of the distance from the nearest positions!
Warning: Delay in points is calculated on both sides of the opening price of the position!
Delay_Seconds_Type = 10; Delay opening of positions 1 and symbol in different directions 10 seconds!
Copylot Master EURUSD SELL 0.1 10:01:10 (opening time) Copylot Client EURUSD SELL 0.1 10:01:10 (opening time)
Copylot Master EURUSD SELL 0.1 10:01:11 (opening time) Copylot Client EURUSD SELL 0.1 10:01 20 (opening time)
Copylot Master EURUSD BUY 0.1 10:01:12 (opening time) Copylot Client EURUSD BUY 0.1 10:01:12 (opening time)
Copylot Master EURUSD BUY 0.1 10:01:14 (opening time) Copylot ClientEURUSD BUY 0.1 10:01:22 (opening time)
Copylot Master USDJPY SELL 0.1 10:01:15 (opening time) Copylot Client USDJPY SELL 0.1 10:01:15 (opening time)
Delay_Points_Type = 10; Delay opening of positions 1 and symbol in different directions 10 points!
Copylot Master EURUSD SELL 0.1 1.10800 (opening price) Copylot Client EURUSD SELL 0.1 1.10800 (opening price)
Copylot Master EURUSD SELL 0.1 1.10801 (opening price) Copylot Client EURUSD SELL 0.1 1.10810 (opening price)
Copylot Master EURUSD BUY 0.1 1.10810 (opening price) Copylot Client EURUSD BUY 0.1 1.10810 (opening price)
Copylot Master EURUSD BUY 0.1 1.10808 (opening price) Copylot Client EURUSD BUY 0.1 1.10820 (opening price)
Copylot Master USDJPY SELL 0.1 109.500 (opening price) Copylot Client USDJPY SELL 0.1 109.500 (opening price)
When you set your parameter values My_STOPLOSS My_TAKEPROFIT, these parameters will modify the positions as they are:
My_STOPLOSS applies to stop loss. (Regardless of the function of the ReverseSLTP function)
My_TAKEPROFIT applied to take profit. (Regardless of the function of the ReverseSLTP function)
e.g. with ChangingNamesSymbols = "US30 = GER30;"
When you open positions on the US30 master, GER30 will be copied to the client;
When you open positions on the GER30 master, GER30 will be copied to the client;
After closing positions on the MASTER, the general trailing stop function for positions on the client terminal will be enabled.
Add parameters of the number of attempts to close and open positions:
NumberTryClose - The number of attempts to close position.
NumberTryOpen - The number of attempts to open position.
When an error is received from the server, the adviser tries to open / close the set number of times.
It is necessary with frequent requotes.
1. If Trailingstop or breakeven has not yet been activated (the position has no profit), then the stop loss and take profit from the master account are copied.!
2. If Trailingstop or Breakeven has already been activated and the stop loss of the position has been modified to a profitable zone, then copying the stop loss and take profit of this position is disabled and the COPYLOT continues the Trailing stop operation.
Fixed ReverseCopy work when used with MY_TakeProfit or MY_STOPLOSS
- CLIENT MT4 Added an additional check on global variables, if an object with information on an open position has been removed from the chart!
Attention! Do not install additional indicators on the chart where the copier is installed.
Attention! Check your other advisors so that they do not delete other charts and global variables.
- MASTER MT4 If the position on the master was closed after partial closing, while the client terminal was turned off, it will be closed on the CLIENT.
Maximum number of pending orders per symbol to be copied. 0 - unlimited.
For example: You want the client to copy only 2 orders for 1 currency pair of 10 open orders on the master.
Then, when setting the parameter to 2, only the first two pending orders of each pair will be copied from the master.
Serves to reduce the load on the deposit. If the order is activated or deleted, then the next order is copied from the master.
- Additional languages added to the panel: Spanish, Portuguese (Brazil), German, Chinese, Japanese;
The translation was made using the GOOGLE Translator + MQL + Terminal site!
if you find an error in your language, please report it in messages. Thank!
- Increase the speed of the panel;
Added hints in external variables.
The algorithm is optimized to increase the speed of copying positions.
The function of copying risk from the master to the client is added:
copy formula: lottoclient = (AccountBalance () / BalanceFromMaster) * lotfrommaster * LotExp;
Added the ability to copy the Position Comment from the Copylot MASTER. Attention: In this mode, Global variables will be used! Check that your
Expert Advisors or indicators do not delete global variables.
Added EAPADPRO 2.0 panel
The copyist's GUI has been completely replaced, a EAPADPRO panel has been added with information on the settings, current copy value (account
number, master balance, number of open / closed Master / Client positions), current profits and lots of open positions, StopLoss and TakeProfit
goals, client balance status .
The table of the copied positions from the master is added.
Warning: The data in the table is updated 10 seconds by default to improve the copy speed (you can change the update time in the panel settings)
Added copy control buttons:
StopTrading - stop copying and the work of the Expert Advisor completely!
ModifyOnly - Allow the Expert Advisor to modify and delete items, without the possibility of copying / opening new positions
The function of partial close from the COPYLOT MASTER is completely changed. Now the function works with a different type of lot setting (Direct
lot from the master, Lot factor, autolot, fixed lot). Also work with pending orders is added.
Fixed the error of reopening of positions, when closing, the comment (Some brokers) was deleted or replaced with the comment [tp] [sl] - checking
via Global variables. Attention: In this mode, Global variables will be used! Check that your Expert Advisors or indicators do not delete global
When the copier is de-initialized, the data files are deleted to exclude the situation when the "old" positions are opened.
Added new parameter RiskRate - ratio of your currency relative to USD.
Default is RiskRate = 0, which means that the EA will try to find the right conversion rate in the Market Watch.
In order to provide proper operation of the Autolot function with all currencies, you should enable All currency pairs in the Market Watch.
If the timer cannot be started, the tickwise operation starts.
Otherwise, the timer is used.
Warning: If the EA fails to start by timer, the copying speed is lower due to the OnTick function features.
Fixed stop loss modification error in cases when stop loss is in the breakeven zone.
In case the terminal generates an error of setting the timer for milliseconds - the EA automatically sets the nearest second timer.
For example, if Sleeping = 300 ms, and the terminal generates an error, the EA will automatically set the timer to 1s.
Limiting loss per day\month\week
Limiting LimitFor - limit type day\week\month
LimitForLosses - profit based limit
LimitForProfits- loss based limit
LimitType - limit type on dollars, points, percent of deposit
ClosebyLIMITING - close EA;s trades when exceeding the limit
UseCurrentProfit - when calculating the limit, take into account current loss/profit
This feature can disable the EA operation, if it reaches a certain profit\loss in the deposit currency during one day\month\week. The EA will resume working on the next day/week/month
Example: LimitFor=DAY LimitForProfits=1 Close at a total profit of $10
You can also set LimitType for calculations. In dollars, points, percentage of the account balance.
If you need to close and delete all trades of the Expert Advisor once the limit is exceeded, you can set ClosebyLIMITING = true
UseCurrentProfit enables/disables the inclusion of current floating profit/loss into limit calculation
In some cases the StringLen command incorrectly determines the comment length
BUYSTOP and SELLIMIT are shifted by plus PendingPrice_adjust points.
SELLSTOP and BUYLIMIT are shifted by minus PendingPrice_adjust points.
the master has a pending BUYSTOP order at the price of 1,12400 and a SELLSTOP at the price of 1,12300
PendingPrice_adjust = 200
the client will open pending orders - BUYSTOP at the price of 1,12600 and SELLSTOP at the price of 1,12100
ReverseSLTP - reverse Stop loss and Take profit when reversing deals:
When copying and reversing deals from the master, the stop loss/take profit is reversed on the client
on master: SELL with stop loss=100 points, take profit = 300 points. The client copies: BUY with stop loss of 300 points and take profit = 100 points.
When copying and reversing deals from the master, the stop loss/take profit is not reversed on the client, but set according to the stop orders on the master.
on master: SELL with stop loss=100 points, take profit = 300 points. The client copies: BUY with stop loss of 100 points and take profit = 300 points.
Without rounding - place stop orders without rounding
To 1 digit - rounding to 1 digit. For example, if Stoploss= 1.23456, the trade will be opened with a stop loss of 1.23450
To 2 digits - rounding by 2 digits. For example, if Stoploss= 1.23456, the trade will be opened with a stop loss of 1.23400
Added the AutoRoundingGOLDSILVER parameter
For brokers, which allow to open positions on gold and silver only at prices rounded to 1 decimal place.
Added the CorrectSLTPbyMaster parameter:
Adjusts the stop loss and take profit distances if the opening prices are different on master and client:
opening price on master: 1,2000; Stop loss: 1,3000; Take profit: 1,1000;
opening price on client: 1,2500; Stop loss: 1,3500; Take profit: 1,1500;
The difference in the opening prices is 0,0500 points, the distances to Stop loss and Take profit are adjusted.
Added the RiskLotTypetype parameter:
Risk calculation type based on:
Balance - calculates the lot based on the current balance in respect to RiskLot percents
Free Margin - calculates the lot based on the free margin in respect to RiskLot percents
Stop loss - calculates the lot based on the stop loss of a trade in respect to RiskLot percents, if stop loss = 0, the trade will be opened with the lot of the master
Fixed the error of copying the GOLD symbol to the broker Fi**
If it's tunred on, all files are stored in the commen folder of the terminalю
If the PreFixSymbol="Auto" is specified:
If the currency name on the client terminal has a suffix, i.e. EURUSD.m, then the trades will be copied with the suffix ".m"
Added the OnTimer event handler which increases the stability and copying speed.
Fixed changing of the EA settings on the fly. Now the EA settings can be changed on the chart, without the need to restart the EA.
ReopenPosAfterClose - reopening a position that was closed in the client terminal, but us stoll open on the master.
Only for professional users!!!
It allows to re-open a position that was closed on the client by a trailing stop and is still open on the master.
FilterLotMin - minimum lot to copy
FilterLotMax - maximum lot to copy
A current profit/loss for the copier is now displayed on a chart allowing you to limit profits or losses on a clent account (the account deals are copied to).
Suppose that you want to copy deals to a client account with closed deals not exceeding the loss of $100 per week:
LimitForLosses = -100
As soon as the total loss (caused by copied deals) on a client account exceeds $100, copying is stopped. The next copying is conducted only the next week.
1. ChangingNamesSymbols - changes symbol names in the master and client terminals.
If symbol names differ in the master and client terminals, and PreFixSymbol doesn't help, you can add a list of new names.
Your master terminal has a symbol named
ES - USA500b (SP500)
the client terminal has
You can specify this correspondence in ChangingNamesSymbols like: mastersymbol=clientsymbol;
E.g.: ES - USA500b=FDAX-GER30b;
This is a required template: Master symbol name=Client symbol name;
LIFEHACK: You can also substitute symbols, e.g. a trade for EURUSD in the maste terminal can be copied as a trade for GBPUSD in the client terminal
2. PROFITLOSS_EXTRASETS4 - limiting profit and loss in the deposit currency.
If you want to limit losses for the current client magic, use this new block.
Example: you use multiple copiers with different magic numbers. And you want to restrict trade opening after a loss of -100 USD for 1 day (week, month)
Use the following parameters:
Once the loss for this magic reaches -100 USD for one day, no more new trades will be opened on this copier. All other functions will keep working.
The next day this parameter is reset to 0.
Adjustable parameter LimitFor= DAY;WEEK;MONTH;ALLTIME;
Modified functions when operating a large amount of trades. If a trade is not changed, the EA will skip it in analysis.
Added automated inversion of currency names (USDRUB USDRUR EURRUBEURRUR)
Variables of the int type are replaced by variables of the long type
If PositionsCopy is set to true, positions are copied.
At that all other functions work as usual (trailing, modification, etc.).
If VirtualStopLossTakeProfit is set to true, you can adjust your virtual stop loss, take profit and trailing stop:
- My_STOPLOSS - your stop loss in points (master's stop loss is not copied).
- My_TAKEPROFIT - your take profit in points (master's take profit is not copied).
- TrailingStopUSE - your trailing stop.
- IfProfTrail - profit trades only.
- TrailingStop - trailing stop distance.
- TrailingStep - trailing stop step.
rounding Open prices for pending orders;
rounding stop loss;
rounding take profit;
Without rounding - copy without rounding
To 1 digit - round 1 digit. For example, the Open price BUYSTOP = 1.23456, the transaction will be copied with the price 1.23450
To 2 digits - round 2 signs. For example, the Open price BUYSTOP = 1.23456, the transaction will be copied with the price 1.23400
If FilterLot = 0, all lots are copied.
If FilterLot = 0.1, all lots greater than or equal to 0.1 are copied.
If FilterLot = 1, all lots greater than or equal to 1 are copied.
When set to true, the EA places a take profit after a deal is closed on the master account only in the positive zone. If a deal is in loss after it is closed on the master account, take profit won't be placed until the trade enters profit area.
If set to false, the EA places take profit in any case, even if the position is losing.
After a deal is closed on the master, it is now possible to set a take profit for the deal on the client account based on the deal closing price on the master account, while leaving the deal open on the client account.
DeleteOrderbyMaster - a separate function for deleting pending orders by master
-------------OIP EXTRA SETS Pos to STOP or LIMIT orders--------------
OIP_Order_Instead_Position; - True False
OIP_TypeOrders; - order type (pending STOP or limit LIMIT)
OIP_DistanceOIP; - order distance
When opening a trade on a Master account, you can turn it into a pending order in the client terminal with the amount of points set in the EA settings.
Added ability to select Stop or Limit orders. Order reversal now occurs together with trade reversal.
Fixed operation of the functions:
MaxPosBySymbol - maximum amount of trades per one symbol
MaxSymboll - maximum amount of open trades
NumberPosbeforeCopy - minimum value of positions per one symbol of one direction on the master to be copied to the client.
When the block is on: If a position is closed on a master account, the appropriate position will not be closed on the client account. Instead, trailing stop or breakeven will be enabled on the client account.
That is, instead of closing the position on the client account, you have the opportunity to activate the trailing stop and maintain the position on.
Trailing settings are individual in this case. And it is only activated when the position is closed on the master account.
Warning: This function when turned on, automatically cancels the ClosePosbyMaster function
TPWCM_TralPosWhenCloseMaster = false;
TPWCM_TrailingStopUSE = false;
TPWCM_IfProfTrail = false;
TPWCM_TrailingStop = 0;
TPWCM_TrailingStep = 1;
TPWCM_BeZubitok = false;
TPWCM_LevelWLoss = 0;
TPWCM_LevelProfit = 0.