Skip to content

TradeMaster is an open-source platform for quantitative trading empowered by reinforcement learning ๐Ÿ”ฅ โšก ๐ŸŒˆ

License

Notifications You must be signed in to change notification settings

prashiyn/TradeMaster

ย 
ย 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

TradeMaster: An RL Platform for Trading

ย 

Python 3.9 Platform License Document GitHub stars


TradeMaster is a first-of-its kind, best-in-class open-source platform for quantitative trading (QT) empowered by reinforcement learning (RL), which covers the full pipeline for the design, implementation, evaluation and deployment of RL-based algorithms.

โญ What's NEW! โฐ

Update Status
Update TradeMaster Website (Market Simualtor) ๐Ÿ”จ Updated on 21 Sep 2023
Update TradeMaster Website (Market Dynamics Modeling Tool) ๐Ÿ”ง Updated on 7 July 2023
Support automatic feature generation and selection ๐Ÿ”จ Update tutorial on 11 May 2023
Release TradeMaster Python package ๐Ÿณ Updated on 11 May 2023
Build TradeMaster website ๐Ÿณ Available at here on 23 April
Write TradeMaster software documentation ๐Ÿ’ฌ Updated on 11 April 2023
Release Colab version ๐Ÿ’ฌ Updated on 29 March 2023
Incldue HK Stock and Future datasets ๐Ÿงญ Updated #131 #132 on 27 March 2023
Support Alpha158 ๐Ÿ”จ Updated #123 #124 on 20 March 2023
Release TradeMaster 1.0.0 :octocat: Released v1.0.0 on 5 March 2023

Outline

Overview


TradeMaster is composed of 6 key modules: 1) multi-modality market data of different financial assets at multiple granularity; 2) whole data preprocessing pipeline; 3) a series of high-fidelity data-driven market simulators for mainstream QT tasks; 4) efficient implementations of over 13 novel RL-based trading algorithms; 5) systematic evaluation toolkits with 6 axes and 17 measures; 6) different interfaces for interdisciplinary users.

Installation

Here are the installation tutorials for different operating systems and docker:

Tutorial

We provide tutorials covering core features of TradeMaster for users to get start with.

Algorithm Dataset Market Task Code Link
EIIE DJ 30 US Stock Portfolio Management tutorial
DeepScalper BTC Crypto Intraday Trading tutorial
SARL DJ 30 US Stock Portfolio Management tutorial
PPO SSE 50 China Stock Portfolio Management tutorial
ETEO Bitcoin Crypto Order Execution tutorial
Double DQN Bitcoin Crypto High Frequency Trading tutorial

We also provide a colab version of these tutorials that can be run directly. (colab tutorial)

Useful Script

TradeMaster Sandbox

Dataset

Dataset Data Source Type Range and Frequency Raw Data Datasheet
S&P500 Yahoo US Stock 2000/01/01-2022/01/01, 1day OHLCV SP500
DJ30 Yahoo US Stock 2012/01/01-2021/12/31, 1day OHLCV DJ30
BTC Kaggle Foreign Exchange 2000/01/01-2019/12/31, 1day OHLCV FX
Crypto Kaggle Crypto 2013/04/29-2021/07/06, 1day OHLCV Crypto
SSE50 Yahoo China Stock 2009/01/02-2021/01/01, 1day OHLCV SSE50
Bitcoin Binance Crypto 2021/04/07-2021/04/19, 1min LOB Binance
Future AKshare Future 2023/03/07-2023/03/28, 5min OHLCV Future
HS30 AKShare HK Stock 1988/12/30-2023/03/27, 1day OHLCV HS30

Dates are in YY/MM/DD format.

OHLCV: open, high, low, and close prices; volume: corresponding trading volume; LOB: Limit order book.

Users can download data of the above datasets from Google Drive or Baidu Cloud (extraction code:x24b)

Model Zoo

TradeMaster provides efficient implementations of the following algorithms:

DeepScalper based on Pytorch (Shuo Sun et al, CIKM 22)

OPD based on Pytorch (Fang et al, AAAI 21)

DeepTrader based on Pytorch (Wang et al, AAAI 21)

SARL based on Pytorch (Yunan Ye et al, AAAI 20)

ETEO based on Pytorch (Lin et al, 20)

Investor-Imitator based on Pytorch (Yi Ding et al, KDD 18)

EIIE based on Pytorch (Jiang et al, 17)

Classic RL based on Pytorch and Ray: PPO A2C Rainbow SAC DDPG DQN PG TD3

Visualization Toolkit

TradeMaster provides many visualization toolkits for a systematic evaluation of RL-based quantitative trading methods. Please check this paper and repository for details. Some examples are as follows:

PRIDE-Star is a star plot containing normalized score of 8 key financial measures such total return (TR) and Sharpe ratio (SR) to evaluate profitability,risk-control and diversity:



File Structure

| TradeMaster
| โ”œโ”€โ”€ configs
| โ”œโ”€โ”€ data
| โ”‚   โ”œโ”€โ”€ algorithmic_trading 
| โ”‚   โ”œโ”€โ”€ high_frequency_trading  
| โ”‚   โ”œโ”€โ”€ order_excution          
| โ”‚   โ””โ”€โ”€ porfolio_management
| โ”œโ”€โ”€ deploy
| โ”‚   โ”œโ”€โ”€ backend_client.py
| โ”‚   โ”œโ”€โ”€ backend_client_test.py 
| โ”‚   โ””โ”€โ”€ backend_service.py        
| โ”‚   โ”œโ”€โ”€ backend_service_test.py  
| โ”œโ”€โ”€ docs
| โ”œโ”€โ”€ figure
| โ”œโ”€โ”€ installation
| โ”‚   โ”œโ”€โ”€ docker.md
| โ”‚   โ”œโ”€โ”€ requirements.md
| โ”œโ”€โ”€ tools
| โ”‚   โ”œโ”€โ”€ algorithmic_trading          
| โ”‚   โ”œโ”€โ”€ data_preprocessor
| โ”‚   โ”œโ”€โ”€ high_frequency_trading
| โ”‚   โ”œโ”€โ”€ market_dynamics_labeling
| โ”‚   โ”œโ”€โ”€ missing_value_imputation  
| โ”‚   โ”œโ”€โ”€ order_excution  
| โ”‚   โ”œโ”€โ”€ porfolio_management  
| โ”‚   โ”œโ”€โ”€ __init__.py      
| โ”œโ”€โ”€ tradmaster       
| โ”‚   โ”œโ”€โ”€ agents   
| โ”‚   โ”œโ”€โ”€ datasets 
| โ”‚   โ”œโ”€โ”€ enviornments 
| โ”‚   โ”œโ”€โ”€ evaluation 
| โ”‚   โ”œโ”€โ”€ imputation 
| โ”‚   โ”œโ”€โ”€ losses
| โ”‚   โ”œโ”€โ”€ nets
| โ”‚   โ”œโ”€โ”€ preprocessor
| โ”‚   โ”œโ”€โ”€ optimizers
| โ”‚   โ”œโ”€โ”€ pretrained
| โ”‚   โ”œโ”€โ”€ trainers
| โ”‚   โ”œโ”€โ”€ transition
| โ”‚   โ”œโ”€โ”€ utils
| โ”‚   โ””โ”€โ”€ __init__.py     
| โ”œโ”€โ”€ unit_testing
| โ”œโ”€โ”€ Dockerfile
| โ”œโ”€โ”€ LICENSE
| โ”œโ”€โ”€ README.md
| โ”œโ”€โ”€ pyproject.toml
| โ””โ”€โ”€ requirements.txt

Publications

PRUDEX-Compass: Towards Systematic Evaluation of Reinforcement Learning in Financial Markets (Transactions on Machine learning Research 2023)

Reinforcement Learning for Quantitative Trading (Survey) (ACM Transactions on Intelligent Systems and Technology 2023)

Deep Reinforcement Learning for Quantitative Trading: Challenges and Opportunities (IEEE Intelligent Systems 2022)

DeepScalper: A Risk-Aware Reinforcement Learning Framework to Capture Fleeting Intraday Trading Opportunities (CIKM 2022)

Commission Fee is not Enough: A Hierarchical Reinforced Framework for Portfolio Management (AAAI 21)

News

Team

  • This repository is developed and maintained by AMI group at Nanyang Technological University.
  • We have positions for software engineer, research associate and postdoc. If you are interested in working at the intersection of RL and quantitative trading, feel free to send us an email with your CV.

Competition

TradeMaster Cup 2022

Contact Us

If you have any further questions of this project, please contact [email protected]

About

TradeMaster is an open-source platform for quantitative trading empowered by reinforcement learning ๐Ÿ”ฅ โšก ๐ŸŒˆ

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 90.9%
  • Python 9.1%