What are Expert Advisors
Expert Advisors (experts) are programs in the terminal that have been developed in MetaQuotes Language 4 (MQL4) and used for automation of analytical and trading processes. They allow to perform prompt technical analysis of price data and manage trading activities on basis of signals received. The entire routine work of technical analysis and trading can be given to experts. An expert can perform analytical and trading operations for any symbols or periods independent on whether the corresponding chart was opened or not.
Working with experts means:
Creation of an Expert - We have already completed this part for you!
To create and compile an expert, one has to use the built-in "MetaEditor". It is a constituent of the client terminal and represents a convenient development environment of MQL4 programs.
Launch of an Expert
To launch an expert, one has to impose it into the chart. As soon as a new tick incomes, the expert will start executing.
An expert advisor is shut down after it has been removed from the chart.
How do Expert Advisors work?
EAs work by enabling you to set the parameters by which opportunities are found, and positions are opened and closed – essentially using a set of yes/no rules to trigger trading decisions. You can either build an EA for yourself, or import one that someone else has built.
By combining lots of yes/no rules into a complex mathematical model, EAs can execute sophisticated trading strategies, using computational power to make decisions – and act on them – almost instantly.
Expert Advisor example:
A simple EA could monitor one or two markets, notifying you about potential trades when set conditions are fulfilled.
Let’s suppose that you wanted an EA to spot any mean reversion opportunities on GBP/USD using the 20-day simple moving average (SMA) indicator. You could import one that someone else has built, or you could build one yourself using a programming language called MQL4.
You’d program your EA to monitor GBP/USD constantly and notify you if the pair breaks out of its 20-day SMA. You could also program your EA to act upon the opportunity instead of just notifying you, for example, by using 2% of your total available balance as the size of the position. From there, how complicated your EA gets is entirely up to you.
Why are Expert Advisors popular?
A correctly-programmed EA can monitor hundreds of markets, meaning you don’t have to watch price movements 24 hours a day in order to find new opportunities. With an EA in place, you can decide how much time you want to dedicate to the markets - you could use an EA for trading alerts but open and close positions yourself, or allow it to open positions on your behalf and merely keep an eye on your running profit or loss.
Emotion can affect your bottom line. It might encourage you to hold on to a losing trade for longer than you should because you don’t want to realize the loss, or dive into a reckless trade too quickly, riding high off a big win. Automating your trading helps take the emotion out of your decision-making because an algorithm only views the markets in black and white.
Your EA can run on any market that you can trade using MT4, taking lots of information into account including price movements, economic announcements, technical indicators or even your current available balance. The ability to build hugely sophisticated algorithms that track many different markets makes EAs a powerful tool to support your trading.
Building a strategy is just the beginning as trusting it to take care of your capital is a big step to take. That’s why most traders will backtest their EA before letting it loose on live markets. Backtesting involves running your strategy against a chunk of real historical data and seeing how it performed, helping you to iron out any issues before they end up losing you real money.
However, it’s important to note that backtesting isn’t completely foolproof. For example, slippage can’t affect your trades when backtesting, but it can be an issue once you start using your EA on the live markets.
While they are all undoubtedly major benefits, in truth the above four points apply to any automated trading system – not just EAs. However, while building a trading algorithm from scratch can be complicated, importing an EA just means choosing a program and tailoring it to your needs. The easy accessibility of EAs is probably the biggest reason for their popularity as an automated trading tool.
But while a well-coded, fully backtested and properly monitored EA can be hugely beneficial to your trading, there are some major pitfalls to avoid.
What to watch for with Expert Advisors
Lack of human interaction
No matter how sophisticated your EA is, it’s no match for the human brain. As such, it is important to remember that while taking some of the emotion out of your decision making is often useful, removing it entirely can bring new problems. It is always important to keep track of how an EA is performing and assessing whether it is in line with your trading logic.
Not always online
Unlike a web trading platform, to run MT4, you have to install it. This means that you can only access it from the device you install it on, and your EAs can only run when that computer is switched on, with MT4 up and running and connected to the internet.
If you want your EA to run round the clock, you’ll need a virtual private server (VPS).
What is a virtual private server (VPS)?
A VPS is an online version of your MT4 that is hosted on an external server, enabling your EAs to operate even when your computer is switched off. It solves the problem of needing your computer or mobile device to be running MT4 in order for your EA to function, by hosting an instance of your MT4 on an external server that is always on.
You can backtest an EA on MT4 using the strategy tester, which you’ll find by clicking ‘view’ in the top navigation bar. In the tester, select the EA you want to run, as well as the market and timeframe you want to run it against. Backtesting an EA is important to ensure that it is working currently.
Attaching An Expert Advisor to your Account.
This YouTube video shows very easily how to do that: