Skip to content

Kotlin Jupyter Notebook tutorials for the roboquant algo-trading platform

License

Notifications You must be signed in to change notification settings

neurallayer/roboquant-notebook

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Roboquant Notebook

Automated Build APL v2 Binder GitHub issues GitHub last commit Docker Image Size (latest by date) Docker Image Version (latest by date) Docker Pulls

This repository contains a number of Jupyter notebooks that demonstrate how to use roboquant. The focus of each notebook is on a specific task, like how to visualize results or create strategies based on technical indicators.

Jupyter Lab

This repository also contains the build script to create a Docker image that makes it easy to run the Jupyter Notebooks on your local machine. This Docker image is published on Docker Hub for both Intel and ARM architecture, so you actually don’t need to build the Docker Image yourself unless you want to make some changes.

You can find out much more about the roboquant at roboquant.org

Run Jupyter Notebooks

If you prefer, you can run the notebooks without installing anything on your local machine just by clicking the following link Binder

ℹ️
It might take some time before the MyBinder environment is set up, and you can run the notebooks. This is mainly due to the limited resources that these free environments have available and the fact that the Kotlin kernel isn’t included by default and needs to be build first.

Alternatively, you can run a Docker container on your local machine that has all the notebooks included and will automatically spin-up a Jupyter notebook environment:

docker run -p 8888:8888 roboquant/jupyter

See Docker README for more options and details.

Included Notebooks

If you don’t want to install anything on your local machine, you can try any of the included notebooks right now by clicking on one of the two following links:

  1. Jupyter Classic environment on MyBinder.org

  2. Jupyter Lab environment on MyBinder.org

These are the how-to notebooks that are included:

  • backtest.ipynb — How to run different types of back tests. This is also a good starting place if you are new to roboquant

  • charts.ipynb — Shows the charting capabilities of roboquant

  • alpaca.ipynb — Shows the integration with Alpaca broker

  • binance.ipynb — Shows the integration with Binance crypto exchange

  • crypto.ipynb — Shows the integration with many crypto exchanges using the XChange library

  • strategies.ipynb — How to develop your own strategies

  • policies.ipynb — How to develop a custom policy

  • discord.ipynb — How to develop a Discord bot

  • optimization.ipynb — How to perform advanced back tests with optimization via hyperparameter search

  • talib.ipynb — How to develop technical analysis strategies using the TaLib library

  • ta4j.ipynb — How to develop technical analysis strategies using teh Ta4j library

  • forex.ipynb — How to run back-tests for Forex trading

  • empty.ipynb — Empty notebook that just includes the %use statement

  • basic.ipynb — Notebook with a simple custom strategy that can serve as a starting point for developing your own strategy

  • dotenv — Not a notebook but an example environment file that can hold the keys and secrets which are often required to connect to third party data providers and brokers.

  • ibkr.ipynb — Shows how to integrate with Interactive Brokers

    ℹ️
    The ibkr notebook cannot be run on MyBinder.org since it requires access to a (local) running Trader Workstation or IB Gateway. You can, however, run it on a local installed Jupyter Notebook.

Build Docker Image

Check the instructions in the README in the bin directory on how to build a Docker image from source.

Contributions

Contributions are greatly appreciated. This can be a fix or enhancement to one of the existing notebooks or a completely new notebook. The best way to do so is to raise an issue on GitHub and afterwards a PR.

Before checking-in, make sure the notebooks don’t have any cell output, for example, by running the following command from the project root directory.

./bin/clean_notebooks.sh

About

Kotlin Jupyter Notebook tutorials for the roboquant algo-trading platform

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published