本文汇总了定量金融的大量三方库,按功能进行分类,覆盖数值运算,衍生品定价,回溯检验,风险管理,数据爬取,可视化等多个子领域,供每个Python程序员参考。
科学运算和数据结构
- numpy - 进行数值运算的基础包,scipy和numpy令Python进行有效的矩阵运算成为可能
- scipy - 科学计算生态系统,广泛应用于数学,物理学和工程学等自然科学领域
- pandas - 提供了高性能的数据结构和数据分析工具
- quantdsl - 金融/交易领域进行定量分析的领域特定语言
- tatistics - 进行基础统计运算
- sympy - 专门用于符号数学
- pymc3 - 用Python实现概率编程,贝叶斯建模,用Theano实现概率机器学习
金融工具和定价
- PyQL - Quantlib的Python接口
- pyfin - 期权定价
- vollib - 计算期权价格,隐含波动率和希腊值
- QuantPy - 定量金融分析
- Finance-Python - 定量金融分析
- ffn - 拓展Pandas,提供一系列函数进行基础的量化分析
- pynance - 获取股票和衍生品市场的数据,分析和可视化
- hasura/base-python-dash - 快速入门部署Dash应用,Dash基于Flask,Plotly.js和React.js,允许用户用纯Python快速搭建强大的数据科学网页App
- hasura/base-python-bokeh - 如何用Bokeh实现数据可视化
- pysabr - 用Python实现SABR模型
技术指标
- pandas_talib - 整合Pandas和Talib,用pandas计算技术指标
- finta - 用Pandas计算常见的技术指标
- Tulipy - 技术指标库(tulipindicators的Python绑定)
量化交易/回溯检验
- TA-Lib - 计算技术指标,跟Numpy深度整合
- trade - 用于开发金融应用的基础包
- zipline - 强大的回溯检验框架,被很多量化交易平台作为底层技术,包括Qauntopian
- QuantSoftware Toolkit - 创建和管理投资组合
- quantitative - 定量金融的基础工具,回溯检验
- analyzer - 接收实时报价并回溯检验
- bt - 回溯检验框架,比Zipline更灵活
- backtrader - 回溯检验框架,支持实盘交易,过去几年快速崛起,已成为最流行的量化工具之一
- pythalesians - 回溯检验框架
- pybacktest - 向量化回溯检验框架,向量化允许进行快速的回溯,但检验精度不高
- pyalgotrade - 回溯检验框架
- tradingWithPython - 提供一系列函数和自定义类来管理量化交易
- Pandas TA - 拓展Pandas,包含115种技术指标,快速创建交易策略
- ta - 用Pandas计算技术指标
- algobroker - 算法交易的部署引擎
- pysentosa - sentosa交易系统的Python接口
- finmarketpy - 分析市场数据,支持简单回溯检验
- binary-martingale - 自动化交易程序,用马丁格尔策略交易二元期权
- fooltrader - 利用大数据技术进行量化分析,包含回溯检验
- zvt - 提供统一和灵活的方式来获取数据,计算因子,选股,回溯检验和实盘交易
- pylivetrader - 兼容zipline的实时交易库
- pipeline-live - zipline扩展库,用于实盘交易
- zipline-extensions - Zipline扩展,适配QuantRocket
- moonshot - 向量化回溯检验和交易引擎
- PyPortfolioOpt - 金融投资组合优化,包括创建有效边界和其它高级算法
- riskparity.py - 用TensorFlow设计风险平价投资组合
- mlfinlab - 《金融机器学习应用》一书的实现
- pyqstrat - 快速地回测交易策略
- pinkfish - 证券分析
- aat - 异步算法交易引擎
- Backtesting.py - 回溯检验框架
- catalyst - 回溯检验框架,专门用于数字货币市场
- quantstats - 投资组合分析
- qtpylib - 回溯检验框架,支持实盘交易
- freqtrade - 开源数字货币交易机器人
- algorithmic-trading-with-python - 《Python算法交易》一书的源码和数据
- DeepDow - 用深度学习优化投资组合
风险分析
- pyfolio - 计算投资组合和交易策略的业绩指标
- empyrical - 计算常用的风险和业绩指标
- fecon235 - 金融计量经济工具包,包括leptokurtotic风险高斯混合模型,自适应Boltzmann投资组合
- finance - 计算金融风险
- qfrm - 定量金融风险管理
- visualize-wealth - 构建投资组合和定量分析
- VisualPortfolio - 可视化投资组合表现
因子分析
- alphalens - 分析预测性因子的表现
时间序列
- ARCH - Python实现ARCH模型
- statsmodels - 计量经济模型库,用于创建回归模型,统计检验,时序模型
- dynts - 操纵和分析时间序列
- PyFlux - 时间序列模型和因果推断
- tsfresh - 从时间序列中提取有意义的特征
- hasura/quandl-metabase - 可视化Quandl的时间序列数据集
日历
- trading_calendars - 股票交易所财经日历
- bizdays - 工作日计算和效用工具
- pandas_market_calendars - 拓展Pandas,股票交易所财经日历
数据源
- findatapy - 获取彭博终端,Quandl和雅虎财经的数据
- googlefinance - 从谷歌财经获取实时股票价格
- yahoo-finance - 从雅虎财经下载股票报价,历史价格,产品信息和财务报表
- pandas-datareader - 从多个数据源获取经济/金融时间序列,包括谷歌财经,雅虎财经,圣路易斯联储(FRED),OECD, Fama/French,世界银行,欧元区统计局等,是Pandas生态系统的重要组成
- pandas-finance - 提供高级接口下载和分析金融时间序列
- pyhoofinance - 从雅虎财经批量获取股票数据
- yfinanceapi - 从雅虎财经获取数据
- yql-finance - 从雅虎财经获取数据
- ystockquote - 从雅虎财经获取实时报价
- wallstreet - 实时股票和期权报价
- stock_extractor - 从网络上爬取股票信息
- Stockex - 从雅虎财经获取数据
- finsymbols - 获取全美证券交易所,纽约证券交易所和纳斯达克上市公司的详细数据
- inquisitor - 从Econdb获取经济数据,Econdb是全球经济指标聚合器
- chinesestockapi - 获取A股数据
- exchange - 获取最新的汇率报价
- ticks - 命令行程序,获取股票报价
- pybbg - 彭博终端COM的Python接口
- ccy - 获取外汇数据
- tushare - 获取中国股票,基金,债券和期货市场的历史数据
- jsm - 获取日本股票市场的历史数据
- cn_stock_src - 从不同数据源获取中国的股票数据
- coinmarketcap - 从coinmarketcap获取数字货币数据
- after-hours - 获取美股盘前和盘后的市场价格
- bronto-python - 整合Bronto API接
- pytdx - 获取中国国内股票的实时报价
- pdblp - 整合Pandas和彭博终端的公共接口
- tiingo - 从Tiingo平台获取股票日K线和实时报价/新闻流
- IEX - 从IEX交易所获取股票的实时报价和历史数据
- alpaca-trade-api - 从Alpaca平台获取股票实时报价和历史数据,并提供交易接口交易美股
- metatrader5 - 集成Python和MQL5交易平台,适合外汇交易
- akshare - 获取中国股票,基金,债券和宏观经济数据
- yahooquery - 从雅虎财经获取数据
- investpy - 从英为财经(Investing.com)获取数据
- yliveticker - 从雅虎财经通过Websocket获取实时报价
Excel集成
- xlwings - 深度整合Python和Excel
- openpyxl - 读取/写入Excel 2007 xlsx/xlsm文件
- xlrd - 从Excel电子表格提取数据
- xlsxwriter - 将数据写入Excel电子表格
- xlwt - 创建跨平台和向后兼容的电子表格
- DataNitro- 深度整合Python和Excel,可免费试用,商业付费软件
- xlloop - 创建Excel用户自定义函数
- expy - Excel插件,允许用户从电子表格中执行Python代码和定义自定义函数
- pyxll - Excel插件,从Excel中执行Python代码
可视化
- Matplotlib - Python数据可视化的基础包,从二维图表到三维图表
- Seaborn - 基于Matplotlib,快速创建美观的统计图表
- Plotly - 创建动态和交互式的图表
- Altair - 统计可视化工具,同时支持静态和交互式图表
- D-Tale - 可视化Pandas数据结构