Multi Currency Template Expert Advisor For MT4
WE IMPROVED THIS EXPERT ADVISOR FOR YOU!!!
PLEASE NOTE: This expert advisor was publicly available for free usage on other websites and is not programmed by us. We explain the functionality and possible improvements of the EA. Furthermore, we are convinced that fully automatic Expert Advisors will fail in the long run. On the other hand, our semi-automatic approach with detecting the best setups and then activating our Expert Advisors (e.g. V-Power EA, EdgeZone EA) produced many successful traders and some of them even got prop traders at prop trading firms. Therefore, we added a similar semi-automatic trading feature (to allow only buy or only sell trades) to the free Expert Advisors. You can download the modified version here and enjoy!
Table Of Contents:
- Multi Currency Template Expert Advisor For MT4
- The Multi Currency Template Expert Advisor For MT4 – Entry Criteria
- The Multi Currency Template Expert Advisor For MT4 – Exit Criteria
- The Multi Currency Template Expert Advisor For MT4 – Room for Improvement
The Multi Currency Template Expert Advisor For MT4 trades multiple symbols at the same time. These symbols are the six major pairs containing the USD currency (i.e., AUDUSD, USDCAD, USDCHF, EURUSD, GBPUSD, and USDJPY). Right after applying the expert advisor to any chart, it will immediately cycle through each of these symbols to look for trade entry. Therefore, it is possible to have six trades open in six different symbols at the same time, and this is true even if the expert advisor is dropped on another symbol not included in the six symbols just mentioned.
As the name suggests, this expert advisor is intended to be a template for multi-currency trading systems. Said another way, it can be considered an open-source code for programmers looking to develop a program that can trade multiple symbols at the same time using just one instance of the program. Indeed, creating such an expert advisor is a breakthrough in MQL4 coding and one that is routinely done by advanced robot developers. The user must be aware that the robot under discussion supports trading in accounts connected to five-digit or four-digit brokers.
The Multi Currency Template Expert Advisor For MT4 – Entry Criteria

On every tick, the Multi Currency Template Expert Advisor checks each of the six symbols in turn to find a trade entry. However, it takes only one trade per symbol at one time. If there is already a trade in a given symbol, the expert advisor will inspect the trade if it winning and determine if it is time to adjust the stop loss. If not, it moves on to the next symbol in line.
This trading system comes with a few variables that the user can adjust in Inputs. Below is a list of these external variables together with the default settings and some explanation.
- Lots = 0.01 – This is the trade lot size used throughout trading.
- StopLoss = 50 – Every trade taken by the robot has a stop loss of 50 pips.
- TakeProfit = 100 – Each trade executed by the expert advisor has a take profit of 100 pips.
- TrailingStop = 15 – The stop loss of winning trades should be adjusted to lock in profits when at least 15 pips are gained. In reality, stop trailing is not performed by the robot.
- TrailingStep = 5 – Stop trailing will take place every time a trade gains five pips.
- Magic = 1 – This number is assigned to the trades take by the robot to be used later in trade management such as trade closure and trade modification.
- Slippage = 100 – This amount is in points, not pips, and is used during trade execution. It specifies how much price change in points beyond the requested entry price a trader is willing to accept when executing a trade. By the default value, the trader accepts to have a trade executed at a price not more than 10 pips from the requested price.
When looking for a trade entry, the expert advisor refers to only one technical indicator for signal. This indicator and its settings, as well as the method of coming up with a trade signal, are discussed in the following:
- Ichimoku kinko hyo (9, 26, 52, mode chikou span) – As a versatile technical trading tool, the ichimoku can provide various types of trading signals. It can be used to measure momentum and define potential support and resistance areas. In this trading system, the ichimoku is used in the latter case. The value needed for trade identification is obtained from the 10th candle of the current period and symbol for the chikou span line. If the chikou span value is greater than the close of the 10th candle for the current timeframe and symbol, a buy signal is generated. If the chikou span is less than the close of the 10th bar for the active timeframe and symbol, a sell signal is provided.
When the robot finds a trade opportunity based on the ichimoku cloud for the currently selected symbol, a buy or sell trade request will be sent to the trade server with a lot size of 0.01 lot as defined in Inputs. If the trade request is successful, the trade is modified to set the stop loss and take profit. While the stop loss is placed 50 pips from the open price, the take profit is set 100 pips from trade entry price. This relationship of take profit and stop loss results in a risk-reward ratio of two, which is favorable to the trader.
The Multi Currency Template Expert Advisor For MT4 – Exit Criteria
The Multi Currency Template Expert Advisor attempts to trail the stop loss of each trade on every tick judging from the command flow in the code. However, stop loss adjustment was not seen in the strategy tester after stop loss placement. As a result, all trades are closed when price hits the stop loss or the take profit. The consolation comes in knowing that the balance between risk and reward is not disturbed.
The Multi Currency Template Expert Advisor For MT4 – Room for Improvement
The Multi Currency Template Expert Advisor was run in the strategy tester over a period of seven months of historical data and applied to the EURUSD 15-minute period. The robot executed 73 trades in total and got a profit factor of 0.57, meaning the trading system lost money. Maximum drawdown was 1.28 percent, which is very acceptable, and the win rate was 22 percent, which is fairly low. This testing result shows that it is not a good idea to use this trading system in live trading right now.
The robot managed to generate trade results in testing because the symbol being used is among the six symbols in the list of traded symbols. When testing was run in EURNZD, no trading activity occurred. During testing, it was found that the trading system took sell trades only the whole time, but this is not how it was designed by the creator. Therefore, this part of the code must be reviewed to correct possible errors.
It is a good idea to give the trader some control on how the trading system operates. This includes being able to set the mode of the ichimoku cloud to be used in generating a trade signal and the number of periods to be utilized when comparing the values of the indicator and the candle. This is useful not only in testing the program in demo trading, but more especially when doing testing using the advanced optimization function. This can only be done when some important parameters in trading operations are set as external variables.
Another thing to improve is the amount of maximum slippage set by default. A slippage of 10 pips is not common in actual practice unless the user trades exotic pairs. Also, as observed in testing, trades were only modified once, that is, immediately after trade execution. Trade modification was not performed in another instance thereafter. This will make one suspicious that the trailing stop function might not be working. This should not be the case since trailing stop and trailing step variables are provided in Inputs.
One importance change that can be done is making the traded pairs available as a variable in expert settings. At this moment, only someone knowledgeable of MQL4 coding can define which symbols in the forex market should be traded by the expert advisor. This is done by directly editing the code and hard-coding the names of symbols. If this option becomes available in Inputs, every user would highly benefit from it.