Here we have listed some commonly asked questions on algorithmic trading:
What Is Algorithmic Trading?
Algorithmic trading is a trading form where you provide the computer with algorithms that are used to know when to enter a trade, when to exit, and how much to buy/sell short. The computer will then execute these trades for you. These algorithms are also called “trading strategies”, and may consist of the simplest conditions. A trading strategy, for example, could be to buy once the market has performed two consecutive lower closes, and sell once it makes two consecutive higher closes. The trading strategy is the core of every algorithmic trader’s business.
Due to the fact algorithmic trading is automated, algorithmic traders may run several hundreds of strategies at the same time, trading many different markets and timeframes. This enables risk spreading that is hard to accomplish for typical, discretionary traders, who will struggle to keep track of more than a few strategies, at most.
How Does Algorithmic Trading Work?
Algorithmic trading works by letting a computer take care of the trading for you. You give the computer your strategy code, and let it execute the trades for you. Then, at least in theory, the computer should run your trading for you. However, in reality, there will be issues from time to time regardless of what algorithmic trading software you use. That’s why you need to monitor your algorithmic trading regularly.
To find the trading strategies that you will trade, you will need to backtest your ideas and employ robustness testing to find out what is worth trading and not.
How to Write Code for Algorithmic Trading
What type of code you will write depends on what trading platform you will use to backtest and trade your strategies. There are a variety of options, and below we list a couple:
To write code for algorithmic trading, the best start you can get is to learn a coding language that’s used with one of the above platforms. While there exist programs and add-ons that create code for you, you will gain a lot of flexibility from knowing a coding language for algorithmic trading.
Tradestation and Multicharts use a very beginner-friendly, yet powerful coding language called “easylanguage” or “powerlanguage”. Other platforms may use other tailormade coding languages, or common languages such as C++, as in the case of Ninjatrader. Python is another coding language that’s up and coming in the field of trading.
However, what needs to be considered when choosing a coding language, is that speed is a major concern. A coding language that is easy will help you to test more ideas quickly, and in the long run, come up with more trading strategies.
How to Do Algorithmic Trading
To do algorithmic trading, you first need to choose trading software. There are many different alternatives on the market, and we recommend you to choose software that’s widely used and has a coding language that enables rapid testing of ideas. Two examples of software that meet these requirements are Multicharts and Tradestation. Both use a coding language called easy language or power language which’s simplicity makes strategy and idea testing a breeze and saves you valuable time.
Once you have your trading platform ready, you need to start testing strategy ideas and employ robustness testing to come up with viable trading strategies. It’s these strategies that you will be trading and it’s paramount that they hold up in live trading. Therefore, you need to have good robustness testing procedures to separate the wheat from the chaff. Most trading strategies will fail once ran on live data and the only thing keeping you from not trading them is your robustness testing.
Once you have your strategies ready, you need to put them into a portfolio. Doing so, will smoothen your portfolio equity graph and provide a better return at a lower risk.
Now you just have to monitor your strategies and make sure that they run smoothly. You also have to be ready to replace failing strategies with new ones. No strategy lasts forever and it is realistic to expect that around 20 to 25% of your strategies will fail every year.
How to Build an Algorithmic Trading System
To build an algorithmic trading system you first need to come up with a trading idea. It could be that you should buy once the market has performed two lower closes and sell two days later. Trading ideas don’t need to be complicated to work well. Actually, it is the most simple ideas that tend to work best. With more complicated ideas the risk of curve fitting generally increases.
So, you’ve coded your idea into the trading platform, and found something that you think is working well. Now you may try to add filters to further enhance what you have found. However, after that, it is time to test your idea for robustness. in our article on curve fitting we go into a couple of different robustness testing methods.
Once the strategy passes the robustness testing it is ready to trade. Still, it’s good to be vigilant and start trading slowly with fewer contracts, and size up as the strategy continues to make money.
How to Get Into Algorithmic Trading
The best way of getting into algorithmic trading is to find reliable sources of information on the Internet as well as books that cover the topic nicely. However, doing that is harder said than done. There are many sources that make more harm than good, and spurious information is plentiful on the internet and hard to see through for beginners.
To get into algorithmic trading, you may read our articles here at the Robust Trader or have a look at some of the articles below to find good sources:
The best algorithmic trading books
20 trading forums
Trading tips for new traders
Even if there is a lot of good information on the Internet, you will find that it is hard to compile all the information and make something good out of it. That is why we recommend aspiring traders to enroll in a trading course. Doing so will fast-track the learning process and save you a lot of valuable time that would otherwise be spent making expensive mistakes.
What Types of Return Can You Get on Algorithmic Trading?
What type of return you will get on algorithmic trading varies greatly. It is dependent on how good your strategies are, how many strategies and markets you trade, and how correlated your strategies are. A general rule of thumb is that the more strategies and markets you trade, the more money you can make.
It’s important to remember that you will never make as much money as the backtest tells you. Going forward, your strategies will fail at some point and performance will also most likely degrade for those strategies that still work.
A general rule of thumb is that you can get around 50% of the returns that the backtest shows. That is if your strategies are robust to begin with.
What Is The Best Book About Algorithmic Trading?
There are many great books on algorithmic trading. One of those is Kevin Davey’s book “Building Winning Algorithmic Trading Systems”.
Here you have our list of the best algorithmic trading books.
How Algorithmic Trading Works
Algorithmic trading works by letting a computer run trading strategies defined as code, and execute the trading signals. The strategies that you trade you will either create yourself, or buy from a trustworthy trading vendor. There are many false trading vendors on the Internet, so we urge you to be vigilant!
As to trading platforms for algorithmic trading, there are many different to choose from. At the Robust Trader we mostly use TradeStation, Multicharts or Amibroker. The former two platforms use a coding language that is beginner friendly and enable us to quickly jot down ideas into code. In that way, we can quickly see if it holds any merit or not.
Algorithmic Trading What is Backtesting?
In algorithmic trading, backtesting is the process of defining your idea and testing it against historical data. Doing so, you will immediately see if there was any merit in your idea, or not.
With good backtesting software and coding language such as TradeStation, backtesting is very easy as soon as you’ve understood the basics of the coding language and trading platform. Still, backtesting is not as simple as testing the idea, and then start trading.
Many of the ideas you’re going to test will simply fail with no warning. That is why robustness testing is paramount in trading. In our article on curve fitting, we go through this in greater detail.
Is Learning Algorithmic Trading Hard?
Learning algorithmic trading is hard but far from impossible. There are many steps that must be mastered, and it takes time. Actually, what hinders most people, like other forms of trading, is their lack of discipline and patience. Trading takes time not only to learn, but also to maintain. The strategies you build degrade and you need to replace them. That is why you constantly need to work on your trading, and cannot leave it believing that what you have accomplished so far will generate profits for the rest of your trading career.
As is with most things, the first period is the hardest to overcome. You’re starting from scratch with nothing or very little to trade, and want quick solutions. Instead, you will find that building a portfolio of different strategies to trade will take up to a few years. Those who manage to withstand the psychological pressure and angst during this period, will be able to reap the benefits later, in the form of profits that are attainable close to nowhere else.
Even if algorithmic trading is hard, keep in mind that other forms of trading are hard too. It’s just that they are more commonplace, and more people believe they master those forms of trading. In reality, very few do.
What Is Algorithmic Trading Software?
Algorithmic trading software is software that is used to either backtest a strategy or carry out the trades. Many trading software, such as TradeStation, Multicharts or Amibroker will do both. Here is a list of different software algorithmic traders can use:
Backtesting is when you test your idea on historical data to see if it holds any merit or not. Doing so, the risk of trading strategies that do hot work decreases. However, backtesting comes with its own dangers, such as curve fitting.
How Much Trading Is Algorithmic?
Depending on how you define “algorithmic” the number will vary. We define algorithmic trading as trading carried out completely by a computer, with a human checking in on the systems regularly, to ensure that everything runs smoothly. This type of trading is not very common among retail traders, but more so with hedge funds and other large market players.
However, you could expect the share of retail traders resorting to algorithmic trading to increase the coming years. Markets are becoming tougher and tougher with more competition, and soon the discretionary approach will not simply work anymore for most individuals.
How to Invest in Algorithmic Trading
The best way of investing in your own algorithmic trading, is to take a course. You may buy powerful computers, sophisticated software, and even functioning trading strategies, but without the correct knowledge, you will never stand on your own feet. Trading strategies stop working eventually, and if you don’t know how to build your own, your trading career might come to an abrupt end as your vendor disappears.
Taking a course will also fast-track you learning, and save you valuable time.