每個寬客都應該收藏的量化「利器」

https://zhuanlan.zhihu.com/p/26983703php

工欲善其事,必先利其器,本文精心整理了各大編程語言經常使用的量化分析工具,會用其中幾個就應該能夠在私募找到一份不錯的量化工做,若是不想安裝,推薦 BigQuant 一站式的Python+機器學習+量化投資平臺,打開瀏覽器就能夠開發算法策略。

歡迎你們補充~~~

編程語言

      1.Python

 

      2.R

 

      3.Matlab

 

      4.Julia

 

      5.Java

 

      6.JavaScript

 

      7.Scala

 

      8.Ruby

 

      9.Frameworks

 

Python

  • numpy
    介紹:一個用python實現的科學計算包。包括:一、一個強大的N維數組對象Array;二、比較成熟的(廣播)函數庫;三、用於整合C/C++和Fortran代碼的工具包;四、實用的線性代數、傅里葉變換和隨機數生成函數。numpy和稀疏矩陣運算包scipy配合使用更加方便。html

  • scipy
    介紹:SciPy是一款方便、易於使用、專爲科學和工程設計的Python工具包。它包括統計、優化、線性代數、傅里葉變換、信號和圖像處理、常微分方程求解等等。java

  • pandas
    介紹:Python Data Analysis Library 或 pandas 是基於NumPy 的一種工具,該工具是爲了解決數據分析任務而建立的。Pandas 歸入了大量庫和一些標準的數據模型,提供了高效地操做大型數據集所需的工具。pandas提供了大量能使咱們快速便捷地處理數據的函數和方法。你很快就會發現,它是使Python成爲強大而高效的數據分析環境的重要因素之一。python

  • quantdsl
    介紹: quantdsl包是Quant DSL語法在Python中的一個實現。Quant DSL 是財務定量分析領域專用語言,也是對衍生工具進行建模的功能編程語言。Quant DSL封裝了金融和交易中使用的模型(好比市場動態模型、最小二乘法、蒙特卡羅方法、貨幣的時間價值)。git

  • statistics
    介紹:python內建的統計庫,該庫提供用於計算數值數據的數學統計的功能。github

  • PyQL
    介紹: PyQL構建在Cython之上,並在QuantLib之上建立一個很淺的Pythonic層,是對QuantLib的一個包裝,並利用Cython更好的性能。web

  • 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
    介紹:用於可視化分析投資組合的工具

時序分析

  • ARCH
    介紹:專門針對金融時間序列數據進行ARCH模型建模

  • statsmodels
    介紹:Python的統計建模和計量經濟學工具包,包括一些描述統計、統計模型估計和推斷

  • dynts
    介紹:對於時間序列分析和操做的庫

  • PyFlux
    介紹:一樣爲時間序列模型庫

交易日曆

  • tradingcalendar
    介紹:證券交易所交易日曆的模塊,配合zipline使用

  • bizdays
    介紹:工做日計算和建議實用程序

數據源

    • findatapy
      介紹:經過Bloomberg,Quandl,Yahoo的交易數據

    • googlefinance
      介紹:經過Google金融api得到的實時股票數據

    • yahoo-finance
      介紹:從Yahoo得到股票數據

    • pandas-datareader
      介紹:從多個不一樣渠道(包括yahoo)得到的交易數據,配合Pandas包使用

    • pandas-finance
      介紹:獲取和分析金融數據的api

    • yfinanceapi
      介紹:金融數據獲取api

    • ystockquote
      介紹:yahoo金融的股票數據

    • wallstreet
      介紹:實時股票數據
      Wallstreet是一個用於監控和分析實時股票和期權數據的Python庫。 數據由Google財經API提供,是一個提供特別簡單的獲取美股數據API的開源庫。

    • stock_extractor
      介紹:該庫提供了兩個數據源,一個是Yahoo Finance,一個是

 

  • Stockex
    介紹:用以獲取yahoo金融數據的庫

  • finsymbols
    介紹:可以獲取來自AMEX、NYSE、NASDAQ等幾大交易所的行情數據。

  • FRB
    介紹:FRED® API的客戶端

  • inquisitor
    介紹:是經濟數據的彙總網站。inquisitor這個Python模塊提供了一個圍繞的API的包裝器,能夠快速批量獲取數據。

  • chinesestockapi
    介紹:獲取中國股票數據的python API

  • exchange
    介紹:得到當前匯率數據的API

  • ticks
    介紹:經過命令行得到交易Tick數據的庫

  • pybbg
    介紹:Bloomberg的python接口,方便其用戶快速獲取數據

  • ccy
    介紹:一個用於貨幣的python模塊。該模塊編譯一個貨幣對象字典,包含有用的財務分析信息。但並非全部的貨幣都被支持,處於持續增長中。

  • tushare
    介紹:獲取歷史以及實時的中國股票數據,簡單好用,但數據質量堪憂,並且不太穩定

  • jsm
    介紹:獲取日本股票數據的一個API庫

  • cn_stock_src
    介紹:獲取中國股票數據的庫,比較小衆

  • coinmarketcap
    介紹:用於獲取coinmarketcap數據的Python API

  • after-hours
    介紹:得到給定股票的歷史數據和小時股票價格

  • bronto-python
    介紹:brontoAPI集成,bronto-python是一個python數據查詢客戶端

Excel集成

  • xlwings
    介紹:處理excel文件的庫

  • openpyxl
    介紹:處理xlsx後綴格式文件的庫

  • xlrd
    介紹:處理excel的庫

  • xlsxwriter
    介紹:將數據寫入到xlsx的庫

  • xlwt
    介紹:建立可兼容的excel的庫

  • ExcelPython
    介紹:處理excel的python庫

  • pyxll
    介紹:處理excel的庫

R

  • xts
    介紹:xts是對時間序列數據(zoo)的一種擴展實現,目標是爲了統一時間序列的操做接口。實際上,xts類型繼承了zoo類型,豐富了時間序列數據處理的函數,API定義更貼近使用者,更實用,更簡單!

  • data.table 
    介紹:data.table繼承於data.frame。它提供了一個快速通道,讓咱們能更加快速的讀取文件,對數據進行篩選、分組、排序、聯表,並且其語法靈活、簡介。因爲data.table是一個data.frame因此它幾乎兼容全部的函數。

  • TSdbi
    介紹:提供了一個時間序列數據庫的接口

  • tseries
    介紹:時間序列分析和金融數據分析出來的包

  • its
    介紹:不規則時間序列數據分析的包

  • zoo
    介紹:zoo是一個R語言類庫,zoo類庫中定義了一個名爲zoo的S3類型對象,用於描述規則的和不規則的有序的時間序列數據。zoo對象是一個獨立的對象,包括索引、日期、時間,只依賴於基礎的R環境,zooreg對象繼承了zoo對象,只能用於規則的的時間序列數據。

  • tis
    介紹:專門針對帶時間戳數據的分析的包

  • tfplot
    介紹:數據操做和快速的時間序列可視化的包

  • tframe
    介紹:時間序列數據操做包

數據包

  • IBrokers
    介紹:提供本地R訪問Interactive Brokers Trader的一個接口。

  • Rblpapi
    介紹:Bloomberg的基於R語言的數據接口

  • Quandl
    介紹:得到金融數據的R包

  • Rbitcoin
    介紹:統一市場API接口(包括bitstamp、kraken、btce、bitmarket)。

  • GetTDData
    介紹:直接從Tesouro Direto網站下載並彙總巴西政府發行債券的數據。

  • GetHFData
    介紹:從Bovespa ftp站點直接下載並彙總的高頻交易數據

金融工具包

  • RQuantLib
    介紹:RQuantLib將GNU R與QuantLib鏈接起來。

  • quantmod
    介紹:定量金融建模框架。

  • Rmetrics
    介紹:數字金融教學和培訓的首要開源軟件解決方案

  • portfolio
    介紹:權益資產(股票)分析的一個包

  • portfolioSim
    介紹:模擬股票投資組合策略構建的框架

  • stockPortfolio
    介紹:創建股票模型並分析股票投資組合

  • financial 介紹:貨幣時間價值、現金流分析等財務功能

  • sde 介紹:價格隨機微分方程的模擬與推理

  • termstrc
    介紹:零息票收益率曲線估計

  • YieldCurve
    介紹:收益率曲線的建模和估計

  • SmithWilsonYieldCurve - 介紹:經過Smith-Wilson方法從LIBOR和SWAP匯率表中構建收益率曲線

  • ycinterextra
    介紹:收益率曲線或零息票據的內插和外推

  • opefimor
    介紹:優化價格和金融模型估計

  • maRketSim
    介紹:金融市場模擬仿真的一個R包

  • AmericanCallOpt
    介紹:美國看漲期權訂價的一個包

  • VarSwapPrice
    介紹:權益指數訂價的方差互換

  • RND - 風險分析

  • LSMonteCarlo
    介紹:美國期權訂價與最小二乘法蒙特卡羅方法

  • OptHedging 
    介紹:看跌期權的訂價和套期保值策略的估計

  • tvm
    介紹:貨幣功能的時間價值

  • OptionPricing
    介紹:有效模擬期權訂價

  • derivmkts
    介紹:金融衍生品市場的R語言包

  • FinCal
    介紹:時間序列數據處理和金融分析

  • r-quant
    介紹:R語言實現的金融數據分析庫

交易

  • TA-Lib
    介紹:對金融市場數據進行技術分析,運用很是普遍。

  • backtest
    介紹:backtest提供了探索有關金融工具(股票、債券、掉期、期權等)的投資組合構建,可以對多市場標的進行回測的交易包。

  • pa
    介紹:股權投資組合的績效歸因包。

  • TTR
    介紹:技術交易規則包。

  • QuantTools
    介紹:QuantTools所有在一個R包中,旨在加強量化交易策略建模。 它容許您從Yahoo、Google和IQFeed等多個來源下載和整理歷史市場數據,並快速編寫交易算法,具備強大的事件驅動處理API,包括交易成本和交換通訊延遲,並將詳細數據無縫轉換爲R代碼。在幾行代碼中,您將能可視化地看到交易模型如何從bar數據到回測結果圖。

風險分析

Time Series

    • tseries
      介紹:時間序列處理和金融分析的一個R包,開篇的第一個例子就是單位根檢驗。

    • zoo
      介紹: 一個S3類,特別針對不規律的時間序列數字向量/矩陣建模。zoo包設計目標
      是爲獨立的特定索引/日期/時間類提供擴展方法保持與ts和base R的一致性

 

  • xts
    介紹:經過擴展zoo包來提供對R不一樣時間數據類型的統一處理,並容許用戶定製和擴展,同時簡化跨類互操做性。

  • fGarch
    介紹:自迴歸條件異方差建模的一個包,這個包定位比較精專。

  • timeSeries
    介紹:如名字所示,金融工程與計算金融環境,管理金融時間序列數據對象。

  • rugarch
    介紹:提供ARFIMA、in-mean, external regressors 等各類GARCH模型,數理知識要求比較高,不少函數理解起來很困難。

交易日曆

  • timeDate
    介紹:timeDate不只提供日期和時間功能,並且還提供複雜的工做日、週末、節假日和教會假期的日曆操做。

  • bizdays
    介紹:在許多國家,價格衍生品和固定收益工具的訂價涉及到使用工做日。例如,在巴西,絕大多數的金融機構都是按照營業日計數規則訂價。bizdays的目的是使日期計算更加簡單。

Matlab

  • QUANTAXIS
    介紹:Matlab上集成的量化工具包

Julia

Java

  • JQuantLib
    介紹:純java寫的量化金融庫,相似於Python的Quantlib

  • finmat.net
    介紹:數學金融庫:與數學金融相關的算法和方法。

  • quantcomponents
    介紹:QuantComponents - 用於量化金融和算法交易的免費Java組件

  • DRIP
    介紹:固定收益、資產配置、交易成本分析的庫

JavaScript

Scala

Ruby

  • Jiji
    介紹:Ruby的算法交易接口

框架

相關文章
相關標籤/搜索