Spread bets and CFDs are complex instruments and come with a high risk of losing money rapidly due to leverage. 71% of retail investor accounts lose money when spread betting and/or trading CFDs with this provider. You should consider whether you understand how spread bets and CFDs work and whether you can afford to take the high risk of losing your money.

A guide to Expert Advisors on MT4

Discover our MT4 platform

Trade forex, indices, commodities and more, at home or on the move, with MT4.

CMC Markets - Handelsplattform

What is an Expert Advisor (EA)?

An Expert Advisor (EA) is a software program or script within the MetaTrader 4 (MT4) platform which automates your trading. Also known as a trading robot, an EA can generate and execute trading decisions on behalf of the trader based on predefined rules and parameters.

The primary purpose of an EA is to eliminate the need for manual trading and allow for continuous, systematic execution of trading strategies. EAs can analyse market conditions, generate buy and sell signals, manage trade entries and exits, apply risk-management techniques, and perform other trading-related tasks automatically.

Here are some of the key features and functionalities of EAs

  • Predefined trading rules: EAs are programmed with specific trading rules and parameters that dictate their decision-making process. These rules can be based on technical indicators, price patterns, mathematical algorithms, and many other criteria a trader would like to incorporate into the strategy.
  • Trade execution: EAs can automatically open, modify, and close trades on a trader's behalf. They monitor the market in real-time and execute trading orders when specific conditions or criteria are met. This allows for instantaneous and efficient trade execution, without manual intervention.
  • Backtesting and optimisation: EAs can be backtested using historical data to assess their performance over time. Traders can optimise the parameters of an EA to find the most favourable settings for a particular trading strategy. This helps to finetune the EA, with the aim of improving potential profitability.
  • Customisation and flexibility: EAs can be customised to meet specific trading requirements. Traders can modify the predefined rules, add additional indicators or filters, adjust risk-management settings, and incorporate their own strategies into the EA's programming code.
  • Technical indicators and signals: EAs can utilise a wide range of technical indicators and signals to generate trading decisions. They can analyse price charts, monitor moving averages, identify overbought or oversold conditions, and generate buy/sell signals based on the selected indicators.
  • Risk management: EAs can incorporate risk-management orders to control trade sizes, set stop-loss and take-profit levels, trailing stops, and manage positions based on predefined risk parameters. This helps in managing and limiting potential losses and protecting profits.

EA pros and cons

What are the benefits of using EAs?

There are several benefits to using EAs in your trading strategy:

  • Increased speed and accuracy in trade execution: EAs can analyse market data and execute trades much faster than humans, which could lead to better trade execution, and possibly improved results.
  • Avoiding emotional trading decisions: EAs remove the emotional element from trading decisions, which could lead to more disciplined trading and improved risk management.
  • Ability to backtest and optimise: As can be backtested and optimised to help fine-tune your trading strategies.
  • Access to a wide range of pre-built EAs: There are thousands of pre-built EAs available on the MT4 marketplace, which can be used to automate a variety of trading strategies and styles.

Are there any risks using EAs?

While there are many benefits to using EAs, there are also some risks that traders need to be aware of:

  • Testing and optimisation: As should be tested and optimised before they’re used in live trading. Not doing so could lead to a relatively poor performance, and potentially, trading losses.
  • Over-reliance on EAs: Some traders may rely too heavily on EAs, and spend less time monitoring their trading strategies and overall performance. This potential risk can be mitigated by ensuring appropriate risk-management measures, such as stop-loss orders, are in place, and by closely monitoring trading activity.
  • Lack of flexibility to adapt: utomated systems are based on predefined programmatic rules, and therefore unable to adapt to the current market situation. For example, if an EA was programmed to target a specific market condition, and this condition becomes redundant, it could lead to trading losses.

Where can I download MT4 EAs?

You can normally download EAs as an execution file. To apply it to your MT4 trading, you’ll need to have a MetaTrader account with a broker. MT4 traders with us have access to a broad range of free EAs, plus additional premium indicators. It’s also possible to access any EA offered within the MetaTrader universe.

When you choose CMC Markets as your MT4 broker, you will have access to numerous free EAs and additional premium indicators. Of course, you are free to choose and purchase any EA offered in the Metatrader universe.

Wherever you get your EAs from, we strongly recommend that you thoroughly review and test the EA, e.g. on an MT4 demo account before using it on a live account. (CMC Markets can provide you with up to 20 years of historical data for backtesting purposes). Especially if you are not familiar with the programming language, it is very important that you understand the functionality of the EA and are able to assess its performance.


EAs can be a powerful tool, removing emotional and psychological biases from trading decisions. They can operate 24/7, allowing for continuous monitoring of the markets, and the execution of trades even when the trader is not actively present. However, designing and programming a successful EA requires a deep understanding of trading strategies, market dynamics, and the MetaQuotes Language 4 (MQL4) programming language.

Before you start using an existing EA to trade on your behalf, it’s important to thoroughly test and validate it before deploying the EA in a live trading environment, to ensure its effectiveness and reliability. This will ensure you gain a good understanding of the EA, and help you to judge its performance and functionality, which is particularly important if you’re not familiar with MQL4.

An MT4 demo account offers an ideal opportunity for carrying out your testing, and at CMC Markets, we provide up to 20 years of historical data for your backtesting.

Disclaimer: CMC Markets is an execution-only service provider. The material (whether or not it states any opinions) is for general information purposes only, and does not take into account your personal circumstances or objectives. Nothing in this material is (or should be considered to be) financial, investment or other advice on which reliance should be placed. No opinion given in the material constitutes a recommendation by CMC Markets or the author that any particular investment, security, transaction or investment strategy is suitable for any specific person. The material has not been prepared in accordance with legal requirements designed to promote the independence of investment research. Although we are not specifically prevented from dealing before providing this material, we do not seek to take advantage of the material prior to its dissemination.

Before you go…

Try a demo of our Spread Betting or CFD trading accounts on our innovative platform. Free of charge and risk-free with virtual capital starting from €10,000.