All Courses

Backtesting Crypto Trading Strategies with Python & C++ 2021

Backtesting Crypto Trading Strategies with Python & C++ 2021

Use Python and the Power of C++ for High-Performance Backtesting and Optimization of your Trading Strategies

What you’ll learn

Backtesting Crypto Trading Strategies with Python & C++ 2021

  • Collect Data from Cryptocurrency Exchanges through their REST API

  • Store Data using the HDF5 format

  • Use the Pandas library to calculate Technical Indicators

  • Backtest various types of strategies and prepare to backtest your own

  • Link a Python and C++ Program

  • Use C++ to perform heavy calculations

  • Use Visual Studio Code and CMake to Create a C++ Library

  • Avoid common mistakes when backtesting

  • Optimize your backtesting results with a Genetic Algorithm

  • Implement the NSGA-2 Algorithm


  • Basic Python knowledge (know what a class/object is, dictionaries, lists, functions, loops, etc.)

  • Basic knowledge about trading (what candlesticks are, Long/Short…)


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:


. 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:


. 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
  • Last updated 9/2021

If the links does not work, contact us we will fix them

Content from: