Python在量化領(lǐng)域的現(xiàn)狀
就跟Java在web領(lǐng)域無可撼動的地位一樣,Python也已經(jīng)在金融量化投資領(lǐng)域占據(jù)了重要位置,從各個業(yè)務(wù)鏈條都能找到相應(yīng)的框架實現(xiàn)。
在量化投資(證券和比特幣)開源項目里,全球star數(shù)排名前10位里面,有7個是Python實現(xiàn)的。從數(shù)據(jù)獲取到策略回測再到交易,覆蓋了整個業(yè)務(wù)鏈。
.jpeg)
而全球注冊用戶數(shù)多的商業(yè)量化平臺Uqer優(yōu)礦,也同樣是基于Python實現(xiàn)和提供服務(wù)的。國內(nèi)后來的其他量化平臺,例如RiceQuant和JoinQuant,也主推Python環(huán)境。可見Python在量化平臺應(yīng)用的占有程度。
為什么是Python?
Python是一門比較全面與平衡的語言,既能滿足包括web在內(nèi)的系統(tǒng)應(yīng)用的開發(fā),又能滿足數(shù)據(jù)統(tǒng)計分析等數(shù)學領(lǐng)域的計算需求,同時也能作為膠水語言跟其它開發(fā)語言互通融合。
在數(shù)據(jù)分析方面,沒有其他語言能像Python這樣既能精于計算又能保持性能,對于時間序列數(shù)據(jù)的處理展現(xiàn)了簡單便捷的優(yōu)勢。而如此適用的特點,主要得益于有如下框架和工具的支持:
Numpy:底層基于C實現(xiàn)的科學計算包
具有強大的N維數(shù)組對象;Array具有數(shù)據(jù)廣播功能的函數(shù)庫;具有完整的線性代數(shù)和隨機數(shù)生成函數(shù)
SciPy:開源算法和數(shù)學工具包
化線性代數(shù)、積分、插值、特殊函數(shù);快速傅里葉變換;信號處理和圖像處理常微分方程求解;其他科學與工程中常用的計算
其功能與Matlab和Scilab等類似
Pandas:起源于AQR的數(shù)據(jù)處理包,具有金融數(shù)據(jù)分析基因
基于Series、DataFrame和Pannel多維表結(jié)構(gòu)數(shù)據(jù);數(shù)據(jù)自動對齊功能;數(shù)據(jù)清洗和計算功能;時間序列數(shù)據(jù)快速處理功能
Matplotlib:基于Python的數(shù)據(jù)繪圖包,能夠繪制出各類豐富的圖形和報表
另外,Python在機器學習領(lǐng)域的應(yīng)用也越來越多,其中的開源項目包括了scikit-learn、Theano、Orange等
Python的特點
1、簡單易學Python是一門簡單而又簡約的語言。閱讀好的Python程序感覺就像閱讀英語。Python非常容易上手,學習曲線比較平緩。
2、語言垃圾自動處理且面向?qū)ο蟮恼Z言。Python 具備所有腳本語言的簡單和易用性,并且具有在編譯語言中才能找到的軟件工程工具。
3、擴展移植可與其他語言無縫對接并能實現(xiàn)跨平臺。
4、開源項目只要能想到的,幾乎都有現(xiàn)成的包能找到。
Python金融書籍
目前市面上已經(jīng)出現(xiàn)了不少針對金融領(lǐng)域數(shù)據(jù)分析和量化的書籍,有了這些書籍,實現(xiàn)金融數(shù)據(jù)處理完成量化投資分析便容易多了。
金融領(lǐng)域主要的Python書籍:《Python for Data Analysis》
《Python for Finance》《Mastering Python for Finance》《Machine Learning in Action》
金程已經(jīng)推出AQF量化金融分析師課程啦!打造金融+計算機編程量化投資的綜合復(fù)合型人才,在人工智能+大數(shù)據(jù)的大環(huán)境下,增加自身核心競爭能力。
.png)


.jpg)


