Awesome Quant
A curated list of insanely awesome libraries, packages and resources for Quants (Quantitative Finance).
Languages
- Python
- R
- Matlab
- Julia
- Java
- JavaScript
- Haskell
- Scala
- Ruby
- Elixir/Erlang
- Golang
- CPP
- CSharp
- Rust
- Frameworks
- Reproducing Works
Python
Numerical Libraries & Data Structures
- numpy - NumPy is the fundamental package for scientific computing with Python.
- scipy - SciPy (pronounced “Sigh Pie”) is a Python-based ecosystem of open-source software for mathematics, science, and engineering.
- pandas - pandas is an open source, BSD-licensed library providing high-performance, easy-to-use data structures and data analysis tools for the Python programming language.
- polars - Polars is a blazingly fast DataFrame library for manipulating structured data.
- quantdsl - Domain specific language for quantitative analytics in finance and trading.
- statistics - Builtin Python library for all basic statistical calculations.
- sympy - SymPy is a Python library for symbolic mathematics.
- pymc3 - Probabilistic Programming in Python: Bayesian Modeling and Probabilistic Machine Learning with Theano.
- modelx - Python reimagination of spreadsheets as formula-centric objects that are interoperable with pandas.
- ArcticDB - High performance datastore for time series and tick data.
Financial Instruments and Pricing
- OpenBB Terminal - Terminal for investment research for everyone.
- PyQL - QuantLib's Python port.
- pyfin - Basic options pricing in Python. ARCHIVED
- vollib - vollib is a python library for calculating option prices, implied volatility and greeks.
- QuantPy - A framework for quantitative finance In python.
- Finance-Python - Python tools for Finance.
- ffn - A financial function library for Python.
- pynance - Lightweight Python library for assembling and analyzing financial data.
- tia - Toolkit for integration and analysis.
- hasura/base-python-dash - Hasura quick start to deploy Dash framework. Written on top of Flask, Plotly.js, and React.js, Dash is ideal for building data visualization apps with highly custom user interfaces in pure Python.
- hasura/base-python-bokeh - Hasura quick start to visualize data with bokeh library.
- pysabr - SABR model Python implementation.
- FinancePy - A Python Finance Library that focuses on the pricing and risk-management of Financial Derivatives, including fixed-income, equity, FX and credit derivatives.
- gs-quant - Python toolkit for quantitative finance
- willowtree - Robust and flexible Python implementation of the willow tree lattice for derivatives pricing.
- financial-engineering - Applications of Monte Carlo methods to financial engineering projects, in Python.
- optlib - A library for financial options pricing written in Python.
- tf-quant-finance - High-performance TensorFlow library for quantitative finance.
- Q-Fin - A Python library for mathematical finance.
- Quantsbin - Tools for pricing and plotting of vanilla option prices, greeks and various other analysis around them.
- finoptions - Complete python implementation of R package fOptions with partial implementation of fExoticOptions for pricing various options.
- pypme - PME (Public Market Equivalent) calculation.
- AbsBox - A Python based library to model cashflow for structured product like Asset-backed securities (ABS) and Mortgage-backed securities (MBS).
- Intrinsic-Value-Calculator - A Python tool for quick calculations of a stock's fair value using Discounted Cash Flow analysis.
- Kelly-Criterion - Kelly Criterion implemented in Python to size portfolios based on J. L. Kelly Jr's formula.
- rateslib - A fixed income library for pricing bonds and bond futures, and derivatives such as IRS, cross-currency and FX swaps.
Indicators
- pandas_talib - A Python Pandas implementation of technical analysis indicators.
- finta - Common financial technical analysis indicators implemented in Pandas.
- Tulipy - Financial Technical Analysis Indicator Library (Python bindings for tulipindicators)
- lppls - A Python module for fitting the Log-Periodic Power Law Singularity (LPPLS) model.
- talipp - Incremental technical analysis library for Python.
- streaming_indicators - A python library for computing technical analysis indicators on streaming data.
Trading & Backtesting
- skfolio - Python library for portfolio optimization built on top of scikit-learn. It provides a unified interface and sklearn compatible tools to build, tune and cross-validate portfolio models.
- Investing algorithm framework - Framework for developing, backtesting, and deploying automated trading algorithms.
- QSTrader - QSTrader backtesting simulation engine.
- Blankly - Fully integrated backtesting, paper trading, and live deployment.
- TA-Lib - Python wrapper for TA-Lib (http://ta-lib.org/).
- zipline - Pythonic algorithmic trading library.
- QuantSoftware Toolkit - Python-based open source software framework designed to support portfolio construction and management.
- quantitative - Quantitative finance, and backtesting library.
- analyzer - Python framework for real-time financial and backtesting trading strategies.
- bt - Flexible Backtesting for Python.
- backtrader - Python Backtesting library for trading strategies.
- pythalesians - Python library to backtest trading strategies, plot charts, seamlessly download market data, analyze market patterns etc.
- pybacktest - Vectorized backtesting framework in Python / pandas, designed to make your backtesting easier.
- pyalgotrade - Python Algorithmic Trading Library.
- basana - A Python async and event driven framework for algorithmic trading, with a focus on crypto currencies.
- tradingWithPython - A collection of functions and classes for Quantitative trading.
- Pandas TA - Pandas TA is an easy to use Python 3 Pandas Extension with 115+ Indicators. Easily build Custom Strategies.
- ta - Technical Analysis Library using Pandas (Python)
- algobroker - This is an execution engine for algo trading.
- pysentosa - Python API for sentosa trading system.
- finmarketpy - Python library for backtesting trading strategies and analyzing financial markets.
- binary-martingale - Computer program to automatically trade binary options martingale style.
- fooltrader - the project using big-data technology to provide an uniform way to analyze the whole market.
- zvt - the project using sql, pandas to provide an uniform and extendable way to record data, computing factors, select securities, backtesting, realtime trading and it could show all of them in clearly charts in realtime.
- pylivetrader - zipline-compatible live trading library.
- pipeline-live - zipline's pipeline capability with IEX for live trading.
- zipline-extensions - Zipline extensions and adapters for QuantRocket.
- moonshot - Vectorized backtester and trading engine for QuantRocket based on Pandas.
- PyPortfolioOpt - Financial portfolio optimization in python, including classical efficient frontier and advanced methods.
- Eiten - Eiten is an open source toolkit by Tradytics that implements various statistical and algorithmic investing strategies such as Eigen Portfolios, Minimum Variance Portfolios, Maximum Sharpe Ratio Portfolios, and Genetic Algorithms based Portfolios.
- riskparity.py - fast and scalable design of risk parity portfolios with TensorFlow 2.0
- mlfinlab - Implementations regarding "Advances in Financial Machine Learning" by Marcos Lopez de Prado. (Feature Engineering, Financial Data Structures, Meta-Labeling)
- pyqstrat - A fast, extensible, transparent python library for backtesting quantitative strategies.
- NowTrade - Python library for backtesting technical/mechanical strategies in the stock and currency markets.
- pinkfish - A backtester and spreadsheet library for security analysis.
- aat - Async Algorithmic Trading Engine
- Backtesting.py - Backtest trading strategies in Python
- catalyst - An Algorithmic Trading Library for Crypto-Assets in Python
- quantstats - Portfolio analytics for quants, written in Python
- qtpylib - QTPyLib, Pythonic Algorithmic Trading http://qtpylib.io
- Quantdom - Python-based framework for backtesting trading strategies & analyzing financial markets [GUI :neckbeard:]
- freqtrade - Free, open source crypto trading bot
- algorithmic-trading-with-python - Free
pandas
andscikit-learn
resources for trading simulation, backtesting, and machine learning on financial data. - DeepDow - Portfolio optimization with deep learning
- Qlib - An AI-oriented Quantitative Investment Platform by Microsoft. Full ML pipeline of data processing, model training, back-testing; and covers the entire chain of quantitative investment: alpha seeking, risk modeling, portfolio optimization, and order execution.
- machine-learning-for-trading - Code and resources for Machine Learning for Algorithmic Trading
- AlphaPy - Automated Machine Learning [AutoML] with Python, scikit-learn, Keras, XGBoost, LightGBM, and CatBoost
- jesse - An advanced crypto trading bot written in Python
- rqalpha - A extendable, replaceable Python algorithmic backtest && trading framework supporting multiple securities.
- FinRL-Library - A Deep Reinforcement Learning Library for Automated Trading in Quantitative Finance. NeurIPS 2020.
- bulbea - Deep Learning based Python Library for Stock Market Prediction and Modelling.
- ib_nope - Automated trading system for NOPE strategy over IBKR TWS.
- OctoBot - Open source cryptocurrency trading bot for high frequency, arbitrage, TA and social trading with an advanced web interface.
- bta-lib - Technical Analysis library in pandas for backtesting algotrading and quantitative analysis.
- Stock-Prediction-Models - Gathers machine learning and deep learning models for Stock forecasting including trading bots and simulations.
- TuneTA - TuneTA optimizes technical indicators using a distance correlation measure to a user defined target feature such as next day return.
- AutoTrader - A Python-based development platform for automated trading systems - from backtesting to optimization to livetrading.
- fast-trade - A library built with backtest portability and performance in mind for backtest trading strategies.
- qf-lib - QF-Lib is a Python library that provides high quality tools for quantitative finance.
- tda-api - Gather data and trade equities, options, and ETFs via TDAmeritrade.
- vectorbt - Find your trading edge, using a powerful toolkit for backtesting, algorithmic trading, and research.
- Lean - Lean Algorithmic Trading Engine by QuantConnect (Python, C#).
- fast-trade - Low code backtesting library utilizing pandas and technical analysis indicators.
- pysystemtrade - pysystemtrade is the open source version of Robert Carver's backtesting and trading engine that implements systems according to the framework outlined in his book "Systematic Trading", which is further developed on his blog.
- pytrendseries - Detect trend in time series, drawdown, drawdown within a constant look-back window , maximum drawdown, time underwater.
- PyLOB - Fully functioning fast Limit Order Book