Backtesting Crypto Trading Strategies with Python & C++ 2022
- Description
- Curriculum
- FAQ
- Reviews
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.
-
7What is an API and How to Use it?
-
8Create an Entry Point | Logger | Exchange Class
-
9Create the Binance Client Class
-
10Request the List of Symbols
-
11Request Historical Data From Binance
-
12Request Historical Data From Any Crypto Exchange
-
13Collect the Full Price History of a Symbol (Part 1)
-
14Collect the Full Price History of a Symbol (Part 2)
-
21Introduction to Backtesting With Python
-
22On-Balance Volume Trading Strategy
-
23Backtesting Interface
-
24On-Balance Volume Coding
-
25Ichimoku Trading Strategy
-
26Ichimoku Coding
-
27Support & Resistance Trading Strategy
-
28Support & Resistance Coding : Identify the Price Levels
-
29Support & Resistance Coding : Check the Breakouts
-
30Support & Resistance Coding : Open / Close Positions
-
31Dynamically Input Your Parameters
-
32Speed Up Your Backtest With Numpy Arrays
-
33Performance Indicator: the Maximum Drawdown
-
34Set Up the C++ Coding Environment (Windows users)
-
35Set Up the C++ Coding Environment (Mac OS users)
-
36Run Your First C++ Program
-
37Open and Close an HDF5 File With the C library
-
38Get the HDF5 Data
-
39Resample the 1-minute Candlesticks
-
40SMA Cross-over Strategy : Class
-
41SMA Cross-over Strategy : Execute the Backtest
-
42Parabolic SAR Trading Strategy
-
43Parabolic SAR Coding
-
44Load Your C++ Library Into Python