Backtesting Software
You need software to backtest your data. Below we look briefly at the trading packages we have used ourselves:
Excel – spreadsheet
The easiest, most available, and most affordable is probably to use an old-fashioned spreadsheet. Unless you are backtesting a portfolio of stocks, any spreadsheet gets you a long way. We used Excel ourselves for both backtesting and algorithmic trading up until 2016 by using a simple VBA script!
The “code” needed in any spreadsheet is easy to learn and doesn’t take much time to learn, and additionally, you can find examples for free on the internet.
If you are backtesting one instrument/stock at a time, a spreadsheet is more than enough to get you going.
However, if you are backtesting baskets or portfolios we believe you better spend some time and money on learning another platform.
Amibroker
We use Amibroker and this website is full of code and screenshots from that trading platform.
Why do we use Amibroker? We use it because it’s cheap, reliable, fully customizable, and lightning-fast in backtesting:
- A lightning-fast optimization feature.
- Easy to test strategies on a portfolio level.
- Fully customizable in terms of backtesting and trading.
- Pretty cheap, about 450 USD for a lifetime license, albeit upgrades are only possible during the first 24 months after purchase. However, most traders only use a fraction of the possibilities, and one license should last for a decade or two.
- Amibroker can connect to different brokers via a plugin. We use Interactive Brokers. If you have programming skills, you can program a bridge yourself to your trading platform.
- A good Amibroker support forum where you find a lot of code for free.
The biggest drawback with Amibroker is that you need to take some additional steps if you want to take the leap from backtesting to going live with the strategies. For example, if you are using Interactive Brokers you need to write a script that sends orders and keeps track of your positions.
We have even made a very comprehensive Amibroker course to help you get started (both with backtesting and live trading).
Tradestation
Tradestation is both a trading platform and a broker.
We have also used Tradestation for many years. Many more traders use Tradestation/Easy Language than Amibroker and thus it has much more “help” from Youtube and articles on the internet. If you have no experience in programming, Tradestation is most likely more intuitive and easier to learn. EasyLanguage can easily be learned. The number of Tradestation users is in the hundred thousands.
Furthermore, it’s substantially easier to take the step from backtesting to live trading: you simply check a box. But at the same time, you are “locked” in their systems and can only use their feed and you can’t trade many European and Asian markets.
Another drawback with Tradestation is that it’s slow and sometimes crashes. Additionally, it’s difficult to backtest a portfolio of instruments or stocks.
You also need to have separate asset classes in separate accounts. For example, one account can be forex, another one futures, and another one stocks. It’s necessary to transfer money between these accounts.
Python
Python is open source and thus free. Unless you have programming and coding experience, we don’t think using Python is a smart idea. There already exist many trading platforms that has plenty of in-built functions, so why spend time developing your own? Time is money!
