目前比較流行的Python量化開源框架匯總
註:點擊框架名稱通往Github
talib
talib的簡稱是Technical Analysis Library,主要功能是計算行情數據的技術分析指標
numpy
介紹:一個用python實現的科學計算包。包括:1、一個強大的N維數組對象Array;2、比較成熟的(廣播)函數庫;3、用於整合C/C++和Fortran代碼的工具包;4、實用的線性代數、傅裏葉變換和隨機數生成函數。numpy和稀疏矩陣運算包scipy配合使用更加方便。
scipy
介紹:SciPy是一款方便、易於使用、專為科學和工程設計的Python工具包。它包括統計、優化、線性代數、傅裏葉變換、信號和圖像處理、常微分方程求解等等。
pandas
介紹:Python Data Analysis Library 或 pandas 是基於NumPy 的一種工具,該工具是為了解決數據分析任務而創建的。Pandas 納入了大量庫和一些標準的數據模型,提供了高效地操作大型數據集所需的工具。pandas提供了大量能使我們快速便捷地處理數據的函數和方法。你很快就會發現,它是使Python成為強大而高效的數據分析環境的重要因素之一。
quantdsl
介紹: quantdsl包是Quant DSL語法在Python中的一個實現。Quant DSL 是財務定量分析領域專用語言,也是對衍生工具進行建模的功能編程語言。Quant DSL封裝了金融和交易中使用的模型(比如市場動態模型、最小二乘法、蒙特卡羅方法、貨幣的時間價值)。
statistics
介紹:python內建的統計庫,該庫提供用於計算數值數據的數學統計的功能。
PyQL
介紹: PyQL構建在Cython之上,並在QuantLib之上創建一個很淺的Pythonic層,是對QuantLib的一個包裝,並利用Cython更好的性能。
pyfin
介紹:針對於中國市場的Pandas定量投資金融工具包
vollib
介紹:Vollib是用於計算期權價格、隱含波動率的紀念日工具包。能夠非常快速和準確的技術來獲得期權的隱含波動率。
QuantPy
介紹:python量化金融框架。目前還是一個alpha版本,可以從雅虎網站獲取每日收益的投資組合類。計算夏普比率和有效邊界,並實現投資組合優化。
Finance-Python
介紹:純python實現的金融計算庫,目標是提供進行量化交易必要的工具,包括但不限於:定價分析工具、技術分析指標。其中部分實現參考了quantlib。
ffn
介紹:ffn是一個專門為從事量化金融工作的人們提供金融數據分析功能的python包。 它位於重量級包(Pandas,Numpy,Scipy等)的基礎上,並提供了廣泛的功能模塊,包括性能測量、圖形可視化和數據轉換。
pynance
介紹:PyNance是用於從股票和衍生品市場檢索、分析和可視化數據的開源軟件。 比較特別的是它能夠用於生成機器學習算法的特征和標簽的工具。
tia
介紹:TIA是針對彭博數據庫設置的,它提供bloomberg數據訪問、更簡便的pdf文檔生成、回溯測試功能、技術分析功能、收益率分析和幾個常用的Windows utils的工具包。
交易和回測
BigQuant
介紹:人工智能量化交易平臺,擁有豐富的金融數據,可直接使用90%的主流機器學習/ 深度學習Python包。
TA-Lib
介紹:TA-Lib的簡稱是Technical Analysis Library,主要功能是計算價格的技術分析指標。 是技術分析者和量化人員在策略開發中常用的量化分析包。
easytrader
介紹:提供券銀河/銀河客戶端/廣發/湘財證券/雪球的基金、股票自動程序化交易以及自動打新,支持跟蹤 joinquant /ricequant 模擬交易 和 實盤雪球組合, 量化交易組件。作者如果我說是90後,你敢信?
vnpy
介紹:vn.py - 基於python的開源交易平臺開發框架,在github上是一個比較火的項目,目前對接的交易接口特別豐富,無論是股票接口還是期貨接口。
實盤易
介紹:實盤易(ShiPanE)Python SDK,通達信自動化交易 API 及量化平臺。
easyquotation
介紹:實時獲取新浪 / Leverfun 的免費股票以及 level2 十檔行情 / 集思路的分級基金行情, 很小,但非常實用。
pyalgotrade-cn
介紹:Pyalgotrade-cn 在原版的基礎上加入了A股歷史行情回測,並整合了tushare提供實時行情。以便大家對自己的策略進行回測和模擬測試。這個項目提供了比特幣的交易接口。
pyktrader
基於pyctp接口,並采用vnpy的eventEngine,使用tkinter作為GUI的python交易平臺
trade
介紹:trade是金融應用的一個包。 它主要是用於分析主題投資和事件驅動策略。 主題代表可以交易的任何東西,而事件則代表影響一個或多個主題的任何內容,如證券交易所政策或股票分割。它是針對與金融市場有關的任何一種主題和事件進行開發的投資工具包。
zipline
介紹:一個事件驅動股票策略量化回測框架,由Quantopian開源,目前國內的很多Python編程語言的在線量化回測平臺都是以zipline為模板開發應用的。
QuantSoftware Toolkit
介紹:QSToolKit(QSTK)是一個基於Python的開源軟件框架,旨在支持組合構建和管理。 為金融學生、計算機學生和具有編程經驗的量化分析師建立QSToolKit。支持建模分析、回測分析和實盤交易。
quantitative
介紹:quantitative是一個事件驅動和多功能的反向測試庫。 用戶可以用定量測試他們的交易模型。由於仍在開發中,謹慎使用。
analyzer
介紹:用於實時金融數據收集、分析和開發交易策略的一個金融分析包。
bt
介紹:bt是用於測試定量交易策略的Python的靈活的backtesting框架。 bt建立在ffn之上,封裝了很多機器學習、信號處理和統計函數。bt的目的是建好輪子,讓量化人員把重點放在策略開發上。
rqalpha
介紹:一款量化回測平臺。
quantconnect
介紹:國外一款在線的量化回測平臺。
backtrader
介紹:一個功能豐富的Python測試和交易框架。backtrader能夠讓策略研究員專註於編寫可重用的交易策略、指標和分析器,而不是花時間構建基礎設施。理念類似bt.
pythalesians
介紹:網上對這個量化分析包的介紹資料並不多。
pybacktest
介紹:在Python 結合Pandas包的矢量化測試框架,旨在幫助寬客回測更容易、 緊湊、簡單、快速。
pyalgotrade
介紹:PyAlgoTrade是一個事件驅動的算法交易Python庫。 盡管設計初衷是回溯測試,但現在已經可以實盤交易,並且包含比特幣的交易。pyalgotrade-cn是國內版針對中國市場的開源量化包。
tradingWithPython
介紹:從名字就可以看出,這是一個使用Python 來進行交易的一個量化分析包,使用它可以完成一系列金融量化教程的學習。
algobroker
介紹:這是一個算法交易執行引擎。
pysentosa
介紹:pysentosa是一個針對sentosa自動化交易系統的Python接口,作者Wu Fuheng
finmarketpy
介紹:finmarketpy是一個基於Python的庫,幫助你能夠使用簡單易用的API分析金融數據以及回測交易策略。
volatility-trading
基於Euan Sinclair的波動率交易的波動率估計器
quant
在這裏收集了一些量化金融和算法交易的資料,大多數基於Quantopian、Zipline、Pandas的ipython notebook。
風險分析
pyfolio
介紹:組合投資和風險分析的庫,是與zipline配合使用的一個組合風險分析工具。BigQuant平臺可直接使用,已安裝完成。
qrisk
介紹:和pyfolio一樣,也是配合zipline使用的,主要用來分析因子風險。
finance
介紹:財務風險計算庫,該項目的目的是提供易於使用的python代碼進行財務風險計算。
qfrm
介紹:定量金融風險管理,用於度量、管理和可視化投資組合風險的極好的OOP工具。
visualize-wealth
介紹:投資組合構建與定量分析
VisualPortfolio
介紹:用於可視化分析投資組合的工具
Reference:
鏈接:https://www.jianshu.com/p/1658f319bfdc
目前比較流行的Python量化開源框架匯總