πŸ”¬ A curated list of awesome machine learning strategies & tools in financial market.

Overview

Awesome AI in Finance Awesome Community

There are millions of trades made in the global financial market every day. Data grows very quickly and people are hard to understand. With the power of the latest artificial intelligence research, people analyze & trade automatically and intelligently. This list contains the research, tools and code that people use to beat the market.

[中文衄源]

Contents

Papers

Courses & Books

Strategies & Research

Time Series Data

Price and Volume process with Technology Analysis Indices

  • 🌟 🌟 stockpredictionai - A complete process for predicting stock price movements.
  • 🌟 Personae - Implements and environment of Deep Reinforcement Learning & Supervised Learning for Quantitative Trading.
  • 🌟 Ensemble-Strategy - Deep Reinforcement Learning for Automated Stock Trading.
  • FinRL - A Deep Reinforcement Learning Library for Automated Stock Trading in Quantitative Finance.
  • AutomatedStockTrading-DeepQ-Learning - Build a Deep Q-learning reinforcement agent model as automated trading robot.
  • tf_deep_rl_trader - Trading environment(OpenAI Gym) + PPO(TensorForce).
  • trading-gym - Trading agent to train with episode of short term trading itself.
  • trading-rl - Deep Reinforcement Learning for Financial Trading using Price Trailing.
  • deep_rl_trader - Trading environment(OpenAI Gym) + DDQN (Keras-RL).
  • Quantitative-Trading - Papers and code implementing Quantitative-Trading.
  • gym-trading - Environment for reinforcement-learning algorithmic trading models.
  • zenbrain - A framework for machine-learning bots.
  • DeepLearningNotes - Machine learning in quant analysis.
  • stock_market_reinforcement_learning - Stock market trading OpenAI Gym environment with Deep Reinforcement Learning using Keras.

Portfolio Management

  • Deep-Reinforcement-Stock-Trading - A light-weight deep reinforcement learning framework for portfolio management.
  • qtrader - Reinforcement Learning for portfolio management.
  • PGPortfolio - A Deep Reinforcement Learning framework for the financial portfolio management problem.
  • DeepDow - Portfolio optimization with deep learning.

High Frequency Trading

Event Drive

  • 🌟 🌟 stockpredictionai - Complete process for predicting stock price movements.
  • 🌟 trump2cash - A stock trading bot powered by Trump tweets.

Crypto Currencies Strategies

Technical Analysis

Lottery & Gamble

Arbitrage

  • ArbitrageBot - Arbitrage bot that currently works on bittrex & poloniex.
  • r2 - Automatic arbitrage trading system powered by Node.js + TypeScript.
  • cryptocurrency-arbitrage - A crypto currency arbitrage opportunity calculator. Over 800 currencies and 50 markets.
  • bitcoin-arbitrage - Bitcoin arbitrage opportunity detector.
  • blackbird - Long / short market-neutral strategy.

Data Sources

Traditional Markets

  • 🌟 Quandl - Get millions of financial and economic dataset from hundreds of publishers via a single free API.
  • yahoo-finance - Python module to get stock data from Yahoo! Finance.
  • Tushare - Crawling historical data of Chinese stocks.

Crypto Currencies

  • CryptoInscriber - A live crypto currency historical trade data blotter. Download live historical trade data from any crypto exchange.
  • Gekko-Datasets - Gekko trading bot dataset dumps. Download and use history files in SQLite format.

Research Tools

  • 🌟 🌟 TensorTrade - Trade efficiently with reinforcement learning.
  • JAQS - An open source quant strategies research platform.
  • pyfolio - Portfolio and risk analytics in Python.
  • alphalens - Performance analysis of predictive (alpha) stock factors.
  • empyrical - Common financial risk and performance metrics. Used by Zipline and pyfolio.
  • zvt - Zero vector trader.

Trading System

For Back Test & Live trading

Traditional Market

System

  • 🌟 🌟 zipline - A python algorithmic trading library.
  • 🌟 TradingView - Get real-time information and market insights.
  • rqalpha - A extendable, replaceable Python algorithmic backtest & trading framework.
  • backtrader - Python backtesting library for trading strategies.
  • kungfu - Kungfu Master trading system.
  • lean - Algorithmic trading engine built for easy strategy research, backtesting and live trading.

Combine & Rebuild

Crypto Currencies

  • zenbot - Command-line crypto currency trading bot using Node.js and MongoDB.
  • bot18 - High-frequency crypto currency trading bot developed by Zenbot.
  • magic8bot - Crypto currency trading bot using Node.js and MongoDB.
  • catalyst - An algorithmic trading library for Crypto-Assets in python.
  • QuantResearchDev - Quant Research dev & Traders open source project.
  • MACD - Zenbot MACD Auto-Trader.
  • abu - A quant trading system base on python.

Plugins

  • CoinMarketCapBacktesting - Tests bt and Quantopian Zipline as backtesting frameworks for coin trading strategy.
  • Gekko-BacktestTool - Batch backtest, import and strategy params optimalization for Gekko Trading Bot.

TA Lib

  • pandas_talib - A Python Pandas implementation of technical analysis indicators.
  • finta - Common financial technical indicators implemented in Python-Pandas (70+ indicators).
  • tulipnode - Official Node.js wrapper for Tulip Indicators. Provides over 100 technical analysis overlay and indicator functions.
  • techan.js - A visual, technical analysis and charting (Candlestick, OHLC, indicators) library built on D3.

Exchange API

Do it in real world!

  • IbPy - Python API for the Interactive Brokers on-line trading system.
  • HuobiFeeder - Connect HUOBIPRO exchange, get market/historical data for ABAT trading platform backtest analysis and live trading.
  • ctpwrapper - Shanghai future exchange CTP api.

Framework

  • tf-quant-finance - High-performance TensorFlow library for quantitative finance.

Visualizing

  • playground - Play with neural networks.
  • netron - Visualizer for deep learning and machine learning models.

GYM Environment

  • 🌟 TradingGym - Trading and Backtesting environment for training reinforcement learning agent.
  • TradzQAI - Trading environment for RL agents, backtesting and training.
  • btgym - Scalable, event-driven, deep-learning-friendly backtesting library.

Articles

Others

Other Resource

  • 🌟 🌟 🌟 Stock-Prediction-Models - Stock-Prediction-Models, Gathers machine learning and deep learning models for Stock forecasting, included trading bots and simulations.
  • 🌟 🌟 Financial Machine Learning - A curated list of practical financial machine learning (FinML) tools and applications. This collection is primarily in Python.
  • 🌟 Awesome-Quant-Machine-Learning-Trading - Quant / Algorithm trading resources with an emphasis on Machine Learning.
  • awesome-quant - A curated list of insanely awesome libraries, packages and resources for Quants (Quantitative Finance).
distfit - Probability density fitting

Python package for probability density function fitting of univariate distributions of non-censored data

Erdogan Taskesen 187 Dec 30, 2022
A Multipurpose Library for Synthetic Time Series Generation in Python

TimeSynth Multipurpose Library for Synthetic Time Series Please cite as: J. R. Maat, A. Malali, and P. Protopapas, β€œTimeSynth: A Multipurpose Library

278 Dec 26, 2022
Mortality risk prediction for COVID-19 patients using XGBoost models

Mortality risk prediction for COVID-19 patients using XGBoost models Using demographic and lab test data received from the HM Hospitales in Spain, I b

1 Jan 19, 2022
A fast, distributed, high performance gradient boosting (GBT, GBDT, GBRT, GBM or MART) framework based on decision tree algorithms, used for ranking, classification and many other machine learning tasks.

Light Gradient Boosting Machine LightGBM is a gradient boosting framework that uses tree based learning algorithms. It is designed to be distributed a

Microsoft 14.5k Jan 07, 2023
This repository contains full machine learning pipeline of the Zillow Houses competition on Kaggle platform.

Zillow-Houses This repository contains full machine learning pipeline of the Zillow Houses competition on Kaggle platform. Pipeline is consists of 10

2 Jan 09, 2022
A simple guide to MLOps through ZenML and its various integrations.

ZenBytes Join our Slack Community and become part of the ZenML family Give the main ZenML repo a GitHub star to show your love ZenBytes is a series of

ZenML 127 Dec 27, 2022
ML Optimizers from scratch using JAX

Toy implementations of some popular ML optimizers using Python/JAX

Shreyansh Singh 38 Jul 29, 2022
Nixtla is an open-source time series forecasting library.

Nixtla Nixtla is an open-source time series forecasting library. We are helping data scientists and developers to have access to open source state-of-

Nixtla 401 Jan 08, 2023
Python 3.6+ toolbox for submitting jobs to Slurm

Submit it! What is submitit? Submitit is a lightweight tool for submitting Python functions for computation within a Slurm cluster. It basically wraps

Facebook Incubator 768 Jan 03, 2023
Combines Bayesian analyses from many datasets.

PosteriorStacker Combines Bayesian analyses from many datasets. Introduction Method Tutorial Output plot and files Introduction Fitting a model to a d

Johannes Buchner 19 Feb 13, 2022
A pure-python implementation of the UpSet suite of visualisation methods by Lex, Gehlenborg et al.

pyUpSet A pure-python implementation of the UpSet suite of visualisation methods by Lex, Gehlenborg et al. Contents Purpose How to install How it work

288 Jan 04, 2023
This is a Cricket Score Predictor that predicts the first innings score of a T20 Cricket match using Machine Learning

This is a Cricket Score Predictor that predicts the first innings score of a T20 Cricket match using Machine Learning. It is a Web Application.

Developer Junaid 3 Aug 04, 2022
Kalman filter library

The kalman filter framework described here is an incredibly powerful tool for any optimization problem, but particularly for visual odometry, sensor fusion localization or SLAM.

comma.ai 276 Jan 01, 2023
This repository contains the code to predict house price using Linear Regression Method

House-Price-Prediction-Using-Linear-Regression The dataset I used for this personal project is from Kaggle uploaded by aariyan panchal. Link of Datase

0 Jan 28, 2022
ELI5 is a Python package which helps to debug machine learning classifiers and explain their predictions

A library for debugging/inspecting machine learning classifiers and explaining their predictions

154 Dec 17, 2022
Python Extreme Learning Machine (ELM) is a machine learning technique used for classification/regression tasks.

Python Extreme Learning Machine (ELM) Python Extreme Learning Machine (ELM) is a machine learning technique used for classification/regression tasks.

Augusto Almeida 84 Nov 25, 2022
Merlion: A Machine Learning Framework for Time Series Intelligence

Merlion is a Python library for time series intelligence. It provides an end-to-end machine learning framework that includes loading and transforming data, building and training models, post-processi

Salesforce 2.8k Jan 05, 2023
Tools for diffing and merging of Jupyter notebooks.

nbdime provides tools for diffing and merging of Jupyter Notebooks.

Project Jupyter 2.3k Jan 03, 2023
πŸ’€mummify: a version control tool for machine learning

mummify is a version control tool for machine learning. It's simple, fast, and designed for model prototyping.

Max Humber 43 Jul 09, 2022
PyPOTS - A Python Toolbox for Data Mining on Partially-Observed Time Series

A python toolbox/library for data mining on partially-observed time series, supporting tasks of forecasting/imputation/classification/clustering on incomplete multivariate time series with missing va

Wenjie Du 179 Dec 31, 2022