Backtest your trading ideas before implementing them in real conditions!
Backtesting is an essential step when elaborating a trading strategy. This course will explain how you can use programming to estimate the potential performance of your strategy and avoid unpleasant surprises in live trading.
By the end of the course, you will be able to build your own backtesting framework and comfortably use all its features.
Collect and store large amounts of market data
Before starting to backtest, you need to have a reliable system that collects, stores and organizes the data. You will learn how to fetch data from any cryptocurrency exchange (Binance, FTX…) and store candlestick data efficiently in a powerful file format: HDF5. Many developers do not yet know about this file format, so you will have the upper hand by learning it!
Get your coding skills to the next level with Python AND C++
Python serves as the ideal programming language for building the main features of your backtesting system. You will also use the Pandas library to calculate technical indicators from scratch and control the output of this calculation with precision.
But that’s not all: Do you want to perform backtesting on a large amount of data with many complex operations? This requires a lot of computing power, and this is where C++ coding can be incredibly useful. You will be surprised to discover that C++ is not as scary as it may seem.
Have a scientific approach to your backtesting: use an optimization algorithm!
This course is ambitious, and it addresses real-world problems: you’ll want to find parameters for your strategy that will maximize its performance. To help you with this task, you will learn how to write an optimization algorithm from the Genetic Algorithm family: NSGA-2. When it comes to backtesting, this approach is unique, and you won’t find it anywhere else.
Most of the content of this course can be applied to traditional markets like the stock market.
Disclaimer: This course is not investment advice. The trading strategies are presented as examples.
Who this course is for:
- Traders who wish to backtest their strategies efficiently
- Crypto exchange users who want to collect market data and store it
- Developers who want to combine Python & C++
- Anyone interested in multi-objective optimization with Genetic Algorithms
- Basic Python knowledge (know what a class/object is, dictionaries, lists, functions, loops, etc.)
- Basic knowledge about trading (what candlesticks are, Long/Short…)
Last Updated 9/2021