October 24

How to Optimize an Expert Advisor with the MT4 Platform


MetaTrader 4, often abbreviated as MT4, is a trading platform that’s popular with retail traders and Forex brokers alike. It was published over 20 years ago, and has gained considerable traction amongst the trading community through its support for trading robots. These robots, called Expert Advisors (EA), can buy and sell instruments traded on the financial markets, based on rules that you define upfront.

In this article, we’ll explain how you can optimize an Expert Advisor to generate a 10% return on investment when tested against historical data.

How to customize your MT4 EA

Expert Advisors are computer programmes that run inside the MetaTrader 4 trading platform. In this article, we’ll consider the MT4 Moving Average EA that’s built into the platform. For example, this Expert Advisor will buy a stock that’s trading over its moving average, and sell it as soon as it falls below its moving average. This EA is set up in such a way that it calculates the moving average of prices over the last 12 chart intervals.

You can change any of your Expert Advisor’s parameters by going into the EA’s source code and re-compiling the programme. This is perhaps best suited for those who are confident with computer code.

Alternatively, you can set parameters directly through the EA’s dialog window. In this example, we’ll change the chart interval from 12 to 50 periods, as it’s common practice to calculate moving averages over 50 days.

How to optimize your MT4 EA

It’s unlikely that your EA will yield the very best results on your first attempt. That’s why it’s important to run it through rounds and rounds of testing against historical data, in order to find the combination of parameters that delivers the best performance. This is also called backtesting.

For example, we could test the Moving Average EA against the 20-day, rather than the 50-day, moving average. A moving average with a shorter lookback window can lead to better trading decisions, because it’s quicker to reflect changes in current market conditions.

To change your EA’s parameters, click the “Inputs” tab in the lower panel and set the Moving Average Period parameter to 20, instead of 50. Then click the “Start” button again and wait for your results. MetaTrader will run your EA against historical data in a mere 10 seconds.

These settings return significantly better results: this strategy generated a 10% net return on investment, up from 2% with the prior settings. Gross profits were $1,370 and net losses just $346 off an imaginary $10,000 initial investment. It’s apparent that this Expert Advisor has a much improved risk-reward profile when run against a 20-day moving average.

So far, we’ve focussed on adjusting the value of a single input parameter. However, it’s also possible to run combinations of parameters through MetaTrader’s Strategy Builder. These combinations could easily extend into the hundreds or even thousands. You could also look into testing other parameters, such as the chart’s interval, your account’s leverage and the instrument itself, as some trading strategies won’t be suitable for all asset classes.


Trading platforms have come a long way in recent years, and retail traders like you have more ways than ever before to create and test automated strategies that were previously the preserve of Wall Street. However, no matter how encouraging these results are, it’s important to remember that past performance is no guarantee of future results. Markets may change in such a way that past relationships and correlations break down. That’s why it’s important to focus on risk management and capital preservation, above all, no matter how keen you may be to start trading with your chosen MT4 broker.


Conclusion, How to customize your MT4 EA, how to optimize an expert advisor with the, how to optimize an expert advisor with the mt4 platform, How to optimize your MT4 EA

You may also like

{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}

Subscribe to our newsletter now!