今天分享一篇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设计风险平价投资组合
-
mlfinlab[48] - 《金融机器学习应用》一书的实现
-
pyqstrat[49] - 快速地回测交易策略
-
pinkfish[50] - 证券分析
-
aat[51] - 异步算法交易引擎
-
Backtesting.py[52] - 回溯检验框架
-
catalyst[53] - 回溯检验框架,专门用于数字货币市场
-
quantstats[54] - 投资组合分析
-
qtpylib[55] - 回溯检验框架,支持实盘交易
-
freqtrade[56] - 开源数字货币交易机器人
-
algorithmic-trading-with-python[57] - 《Python算法交易》一书的源码和数据
-
DeepDow[58] - 用深度学习优化投资组合
风险分析
-
pyfolio[59] - 计算投资组合和交易策略的业绩指标
-
empyrical[60] - 计算常用的风险和业绩指标
-
fecon235[61] - 金融计量经济工具包,包括leptokurtotic风险高斯混合模型,自适应Boltzmann投资组合
-
finance[62] - 计算金融风险
-
qfrm[63] - 定量金融风险管理
-
visualize-wealth[64] - 构建投资组合和定量分析
-
VisualPortfolio[65] - 可视化投资组合表现
因子分析
- alphalens[66] - 分析预测性因子的表现
时间序列
-
ARCH[67] - Python实现ARCH模型
-
statsmodels[68] - 计量经济模型库,用于创建回归模型,统计检验,时序模型
-
dynts[69] - 操纵和分析时间序列
-
PyFlux[70] - 时间序列模型和因果推断
-
tsfresh[71] - 从时间序列中提取有意义的特征
-
hasura/quandl-metabase[72] - 可视化Quandl的时间序列数据集
日历
-
trading_calendars[73] - 股票交易所财经日历
-
bizdays[74] - 工作日计算和效用工具
-
pandas_market_calendars[75] - 拓展Pandas,股票交易所财经日历
数据源
-
findatapy[76] - 获取彭博终端,Quandl和雅虎财经的数据
-
googlefinance[77] - 从谷歌财经获取实时股票价格
-
yahoo-finance[78] - 从雅虎财经下载股票报价,历史价格,产品信息和财务报表
-
pandas-datareader[79] - 从多个数据源获取经济/金融时间序列,包括谷歌财经,雅虎财经,圣路易斯联储(FRED),OECD, Fama/French,世界银行,欧元区统计局等,是Pandas生态系统的重要组成
-
pandas-finance[80] - 提供高级接口下载和分析金融时间序列
-
pyhoofinance[81] - 从雅虎财经批量获取股票数据
-
yfinanceapi[82] - 从雅虎财经获取数据
-
yql-finance[83] - 从雅虎财经获取数据
-
ystockquote[84] - 从雅虎财经获取实时报价
-
wallstreet[85] - 实时股票和期权报价
-
stock_extractor[86] - 从网络上爬取股票信息
-
Stockex[87] - 从雅虎财经获取数据
-
finsymbols[88] - 获取全美证券交易所,纽约证券交易所和纳斯达克上市公司的详细数据
-
inquisitor[89] - 从Econdb获取经济数据,Econdb是全球经济指标聚合器
-
chinesestockapi[90] - 获取A股数据
-
exchange[91] - 获取最新的汇率报价
-
ticks[92] - 命令行程序,获取股票报价
-
pybbg[93] - 彭博终端COM的Python接口
-
ccy[94] - 获取外汇数据
-
tushare[95] - 获取中国股票,基金,债券和期货市场的历史数据
-
jsm[96] - 获取日本股票市场的历史数据
-
cn_stock_src[97] - 从不同数据源获取中国的股票数据
-
coinmarketcap[98] - 从coinmarketcap获取数字货币数据
-
after-hours[99] - 获取美股盘前和盘后的市场价格
-
bronto-python[100] - 整合Bronto API接
-
pytdx[101] - 获取中国国内股票的实时报价
-
pdblp[102] - 整合Pandas和彭博终端的公共接口
-
tiingo[103] - 从Tiingo平台获取股票日K线和实时报价/新闻流
-
IEX[104] - 从IEX交易所获取股票的实时报价和历史数据
-
alpaca-trade-api[105] - 从Alpaca平台获取股票实时报价和历史数据,并提供交易接口交易美股
-
metatrader5[106] - 集成Python和MQL5交易平台,适合外汇交易
-
akshare[107] - 获取中国股票,基金,债券和宏观经济数据
-
yahooquery[108] - 从雅虎财经获取数据
-
investpy[109] - 从英为财经(Investing.com)获取数据
-
yliveticker[110] - 从雅虎财经通过Websocket获取实时报价
Excel集成
-
xlwings[111] - 深度整合Python和Excel
-
openpyxl[112] - 读取/写入Excel 2007 xlsx/xlsm文件
-
xlrd[113] - 从Excel电子表格提取数据
-
xlsxwriter[114] - 将数据写入Excel电子表格
-
xlwt[115] - 创建跨平台和向后兼容的电子表格
-
DataNitro[116] - 深度整合Python和Excel,可免费试用,商业付费软件
-
xlloop[117] - 创建Excel用户自定义函数
-
expy[118] - Excel插件,允许用户从电子表格中执行Python代码和定义自定义函数
-
pyxll[119] - Excel插件,从Excel中执行Python代码
可视化
-
Matplotlib[120] - Python数据可视化的基础包,从二维图表到三维图表
-
Seaborn[121] - 基于Matplotlib,快速创建美观的统计图表
-
Plotly[122] - 创建动态和交互式的图表
-
Altair[123] - 统计可视化工具,同时支持静态和交互式图表
-
D-Tale[124] - 可视化Pandas数据结构
学习资源推荐
除了上述分享,如果你也喜欢编程,想通过学习Python获取更高薪资,这里给大家分享一份Python学习资料。
😝朋友们如果有需要的话,可以点击下方链接免费领取或者V扫描下方二维码免费领取🆓
学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!
