Comprehensive List of Python Libraries for Quantitative Finance
This article compiles a categorized collection of Python packages for quantitative finance, covering scientific computation, pricing, technical indicators, backtesting, risk analysis, data sources, Excel integration, and visualization, with brief descriptions and reference links for each tool.
The article presents a curated collection of Python libraries useful for quantitative finance, emphasizing the principle of reusing existing, well‑tested packages such as NumPy, Pandas, and backtrader instead of reinventing the wheel.
Source: Github project "Awesome Quant" by Wilson Freitas.
Scientific Computation and Data Structures
numpy – Core package for numerical operations and matrix calculations.
scipy – Scientific computing ecosystem for mathematics, physics, and engineering.
pandas – High‑performance data structures and analysis tools.
quantdsl – Domain‑specific language for quantitative analysis in finance.
statistics – Basic statistical functions.
sympy – Symbolic mathematics.
pymc3 – Probabilistic programming and Bayesian modeling using Theano.
Financial Tools and Pricing
PyQL – Python interface to QuantLib.
pyfin – Option pricing utilities.
vollib – Computes option prices, implied volatilities, and Greeks.
QuantPy – General quantitative finance analysis.
Finance-Python – Quantitative finance analysis toolkit.
ffn – Extends Pandas with functions for basic quantitative analysis.
pynance – Data acquisition, analysis, and visualization for stocks and derivatives.
hasura/base-python-dash – Quick‑start Dash applications (Flask + Plotly + React).
hasura/base-python-bokeh – Bokeh‑based data visualizations.
pysabr – Implementation of the SABR model.
Technical Indicators
pandas_talib – Combines Pandas with TA‑Lib for technical indicators.
finta – Calculates common technical indicators using Pandas.
Tulipy – Python bindings for the tulipindicators library.
Quant Trading / Backtesting
TA‑Lib – Technical analysis library tightly integrated with NumPy.
trade – Basic package for developing financial applications.
zipline – Powerful backtesting engine used by many platforms (Quantopian, JoinQuant, etc.).
QuantSoftware Toolkit – Portfolio creation and management.
quantitative – Core tools for quantitative finance backtesting.
analyzer – Real‑time quote handling and backtesting.
bt – Flexible backtesting framework, more adaptable than Zipline.
backtrader – Popular backtesting framework supporting live trading.
pythalesians , pybacktest , pyalgotrade , tradingWithPython , Pandas TA , ta , algobroker , pysentosa , finmarketpy , binary‑martingale , fooltrader , zvt , pylivetrader , pipeline‑live , zipline‑extensions , moonshot – Various backtesting and algorithmic trading engines.
PyPortfolioOpt – Portfolio optimization and efficient frontier construction.
riskparity.py – Risk‑parity portfolio design using TensorFlow.
mlfinlab – Implementations from the book “Advances in Financial Machine Learning”.
pyqstrat , pinkfish , aat , Backtesting.py , catalyst , quantstats , qtpylib , freqtrade , algorithmic‑trading‑with‑python , DeepDow – Additional tools for strategy development, analysis, and crypto‑trading.
Risk Analysis
pyfolio – Portfolio and strategy performance metrics.
empyrical – Common risk and performance indicators.
fecon235 – Econometric tools, including leptokurtic risk models.
finance , qfrm , visualize‑wealth , VisualPortfolio – Financial risk calculation and visualization utilities.
Factor Analysis
alphalens – Evaluates predictive factor performance.
Time Series
ARCH – ARCH/GARCH models implementation.
statsmodels – Econometric modeling, regression, statistical tests, and time‑series analysis.
dynts – Manipulation and analysis of time series.
PyFlux – Time‑series models and causal inference.
tsfresh – Automatic extraction of meaningful time‑series features.
hasura/quandl‑metabase – Visualization of Quandl time‑series datasets.
Calendars
trading_calendars – Stock exchange financial calendars.
bizdays – Business‑day calculations.
pandas_market_calendars – Extended Pandas calendars for exchanges.
Data Sources
findatapy – Access to Bloomberg, Quandl, Yahoo Finance data.
googlefinance , yahoo‑finance , pandas‑datareader , pandas‑finance , pyhoofinance , yfinanceapi , yql‑finance , ystockquote , wallstreet , stock_extractor , Stockex , finsymbols , inquisitor , chinesestockapi , exchange , ticks , pybbg , ccy , tushare , jsm , cn_stock_src , coinmarketcap , after‑hours , bronto‑python , pytdx , pdblp , tiingo , IEX , alpaca‑trade‑api , metatrader5 , akshare , yahooquery , investpy , yliveticker – Various APIs and packages for retrieving market, economic, and financial data from global sources.
Excel Integration
xlwings – Deep integration of Python with Excel.
openpyxl – Read/write Excel 2007+ files.
xlrd – Extract data from Excel spreadsheets.
xlsxwriter – Write Excel files.
xlwt – Create cross‑platform Excel files.
DataNitro , xlloop , expy , pyxll – Additional Excel‑Python integration tools.
Visualization
Matplotlib – Fundamental 2D/3D plotting library.
Seaborn – Statistical visualizations built on Matplotlib.
Plotly – Interactive, dynamic charts.
Altair – Declarative statistical visualizations.
D‑Tale – Interactive Pandas data visualizer.
*Disclaimer: This article is compiled from online sources; copyright belongs to the original authors. Contact us for removal or licensing requests.
Python Programming Learning Circle
A global community of Chinese Python developers offering technical articles, columns, original video tutorials, and problem sets. Topics include web full‑stack development, web scraping, data analysis, natural language processing, image processing, machine learning, automated testing, DevOps automation, and big data.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.