Algorithmic trading: what is it?
Information is not investment advice
Imagine, around one century ago there were no computers or digital devices. Traders made notes of their trades on paper and had to make phone calls to their brokers to open a position. Everything changed in the 1970-the 1980s, during the computerization era. Now, forty years later, we are not only able to execute trades in a matter of seconds, but we also can build a system operating instead of us. Today, we will introduce you to the complicated yet interesting world of algorithmic trading (also known as automated trading, quantitative trading, or algo trading). Since algo trading may seem a bit scary for a beginner, we are going to carefully guide you through the process of understanding what it is.
Introduction
In general, the term “algorithmic trading” stands for trading with a system that operates on a pre-programmed set of rules (algorithm). Let’s pretend you have bought a Japanese robot that does everything you ask him to. There is only one difficulty – you need to learn Japanese to give commands to this robot. In algo trading, everything works the same. You can make an algorithm that opens as many trades as you want to. However, you need to learn how to build this algorithm first.
Algo trading - trading with a system that operates on a pre-programmed set of rules (algorithm).
There are two types of algo trading. The first one, which is mostly used by big investment funds, is called high-frequency trading (HFT). Companies use super-powerful computers to execute a large number of orders within a second. There is a lot of criticism towards HFT, as it does not involve human decisions. High-frequency trading used by big institutional players is also a reason for huge, unexpected moves in the market.
The second type of algo trading is low-frequency trading. It is based on programming skills and experience in technical and fundamental analysis. As regular traders with the MetaTrader 5 software, who want to automatize their trades, we will focus on this type of algo trading.
Where did algo trading come from?
The history of algo trading began 50 years ago when the “designated order turnaround” system (DOT) was implemented in the New York Stock Exchange. It allowed sending electronic orders to the trading post. The infamous Bloomberg terminal computer invention at the beginning of the 1980s was another massive step towards algo trading's development.
However, the crucial point was the decimalization in the US which changed the minimum tick size to $0.01 per share. Therefore, smaller differences between the bid and ask prices were allowed. In 1998 the US Securities and Exchange Commission gave a green light to electronic exchanges. This is when high-frequency trading was born. As technologies have been rapidly developing, new, faster hardware allowed programmers to write algorithms that gave computers an ability to decide the pricing and the number of trades on a pre-identified set of rules. Now, you can even learn a programming language for financial data analysis.
Languages for algo trading
You can choose between different programming languages for algo trading purposes. Typically, algorithmic traders choose between Python, C++, Java, C#, or R. In Forex, however, there are special types of languages that exist in the MetaTrader environment. They are MQL4 for MetaTrader 4 and MQL5 for MetaTrader 5. Despite being known as a modified version of MQL4, MQL5 is more flexible. The reason for that lies in the language syntax that is very close to C++. It allows programmers to use more options for developing trading robots.
In our course, we will focus on the development of trading robots using the MQL5 language. Why?
Firstly, because MetaTrader 5 gives access to trading more instruments. That is, you can use trading robots on stocks, metals, currencies, etc.
Secondly, MQL5 is very close to C++. Learning MQL5 will give you a broader understanding of programming basics.
Thirdly, MQL5 has its integrated development environment MQL5 IDE, where all trading applications are developed. Thus, you don’t need to download another software to do that.
Finally, there is a big code base for MQL5 programmers to find robots and share ideas.
Remember that the documentation for this language is available on the official MQL5 website.
Why should you learn MQL5?
If you trade in MetaTrader 5, experience in the specialized integrated development environment (IDE) MQL5 will help you create your indicators, trading robots, and modifying existing ones. It will help you to automatize your trading decisions and boost their effectiveness.
This is the first lesson of our algo trading guide. Stay tuned and find out more about how to create a trading robot in the next lessons!
Other articles in this section
- Structure of a Trading Robot
- Building a Trading Robot without Programming
- How to Launch Trading Robots in MetaTrader 5?
- Algo trading with MQL5
- Advanced techniques of position sizing
- What does ‘truncation’ mean?
- Ichimoku
- How to trade gaps
- Leading diagonal pattern
- Wolfe waves pattern
- Three drives pattern
- Shark
- Butterfly
- Crab
- Bat
- Gartley
- ABCD
- Harmonic patterns
- Intoduction to Elliott Wave analysis
- How to trade breakouts
- Trading Forex news
- How to place a Take Profit order?
- Risk management
- How to place a Stop Loss order?
- Technical indicators: trading divergences