大家好,我是安果!
今天分享一篇 Python 量化金融最全汇总,推荐大家收藏!
本文汇总了定量金融的大量三方库,按功能进行分类,覆盖数值运算,衍生品定价,回溯检验,风险管理,数据爬取,可视化等多个子领域,供每个Python程序员参考。
不要重复造轮子,明确要解决的问题,然后寻找相应的工具。很多著名的包如 Numpy,Pandas,Seaborn,backtrader 等已经被证明高度有效,即便没有找到符合应用场景的包,类似的工具也能够为创建自己的解决方案提供参考。
内容来源于Github项目《Awesome Quant》,由Wilson Freitas创作
项目链接:Awesome Quant[1]
科学运算和数据结构
numpy[2]- 进行数值运算的基础包,scipy和numpy令Python进行有效的矩阵运算成为可能
scipy[3]- 科学计算生态系统,广泛应用于数学,物理学和工程学等自然科学领域
pandas[4]- 提供了高性能的数据结构和数据分析工具
quantdsl[5]- 金融/交易领域进行定量分析的领域特定语言
statistics[6]- 进行基础统计运算
sympy[7]- 专门用于符号数学
pymc3[8]- 用Python实现概率编程,贝叶斯建模,用Theano实现概率机器学习
金融工具和定价
PyQL[9]- Quantlib的Python接口
pyfin[10]- 期权定价
vollib[11]- 计算期权价格,隐含波动率和希腊值
QuantPy[12]- 定量金融分析
Finance-Python[13]- 定量金融分析
ffn[14]- 拓展Pandas,提供一系列函数进行基础的量化分析
pynance[15]- 获取股票和衍生品市场的数据,分析和可视化
hasura/base-python-dash[16]- 快速入门部署Dash应用,Dash基于Flask,Plotly.js和React.js,允许用户用纯Python快速搭建强大的数据科学网页App
hasura/base-python-bokeh[17]- 如何用Bokeh实现数据可视化
pysabr[18]- 用Python实现SABR模型
技术指标
pandas_talib[19]- 整合Pandas和Talib,用pandas计算技术指标
finta[20]- 用Pandas计算常见的技术指标
Tulipy[21]- 技术指标库(tulipindicators的Python绑定)
量化交易/回溯检验
TA-Lib[22]- 计算技术指标,跟Numpy深度整合
trade[23]- 用于开发金融应用的基础包
zipline[24]- 强大的回溯检验框架,被很多量化交易平台作为底层技术,包括Qauntopian, 聚宽等
QuantSoftware Toolkit[25]- 创建和管理投资组合
quantitative[26]- 定量金融的基础工具,回溯检验
analyzer[27]- 接收实时报价并回溯检验
bt[28]- 回溯检验框架,比Zipline更灵活
backtrader[29]- 回溯检验框架,支持实盘交易,过去几年快速崛起,已成为最流行的量化工具之一
pythalesians[30]- 回溯检验框架
pybacktest[31]- 向量化回溯检验框架,向量化允许进行快速的回溯,但检验精度不高
pyalgotrade[32]- 回溯检验框架
tradingWithPython[33]- 提供一系列函数和自定义类来管理量化交易
Pandas TA[34]- 拓展Pandas,包含115种技术指标,快速创建交易策略
ta[35]- 用Pandas计算技术指标
algobroker[36]- 算法交易的部署引擎
pysentosa[37]- sentosa交易系统的Python接口
finmarketpy[38]- 分析市场数据,支持简单回溯检验
binary-martingale[39]- 自动化交易程序,用马丁格尔策略交易二元期权
fooltrader[40]- 利用大数据技术进行量化分析,包含回溯检验
zvt[41]- 提供统一和灵活的方式来获取数据,计算因子,选股,回溯检验和实盘交易
pylivetrader[42]- 兼容zipline的实时交易库
pipeline-live[43]- zipline扩展库,用于实盘交易
zipline-extensions[44]- Zipline扩展,适配QuantRocket
moonshot[45]- 向量化回溯检验和交易引擎
PyPortfolioOpt[46]- 金融投资组合优化,包括创建有效边界和其它高级算法
riskparity.py[47]- 用TensorFlow设计风险平价