Julia量化交易入門(mén)篇01

? ? ? 大家好,小弟飛狐,在這個(gè)系列中我會(huì)帶著大家用Julia來(lái)敲開(kāi)量化交易的大門(mén)(也許是國(guó)內(nèi)第一套Julia量化交易系列)。首先我對(duì)Julia量化交易做一個(gè)小小的介紹,請(qǐng)注意,這里邊兒包含兩個(gè)詞兒,一個(gè)是Julia,一個(gè)是量化交易。這倆正逐步走熱的苗頭已現(xiàn)。先說(shuō)Julia,Julia是一門(mén)面向科學(xué)計(jì)算的高性能動(dòng)態(tài)高級(jí)程序設(shè)計(jì)語(yǔ)言。語(yǔ)法與其他科學(xué)計(jì)算語(yǔ)言相似,在許多情況下?lián)碛心芘c編譯型語(yǔ)言相媲美的性能。就在今年8月,Julia正式推出了1.0版本。

數(shù)值計(jì)算方面的編程語(yǔ)言通常分為兩大類(lèi):

1,靜態(tài)語(yǔ)言,比如C、C++ 和 Fortran,其優(yōu)點(diǎn)是執(zhí)行速度快,但缺點(diǎn)是開(kāi)發(fā)速度慢。

2,動(dòng)態(tài)語(yǔ)言,比如Python、R 和 Matlab,其優(yōu)點(diǎn)是開(kāi)發(fā)速度快,但執(zhí)行速度常常很慢。

編程語(yǔ)言可謂種類(lèi)繁多;數(shù)學(xué)家、研究人員和數(shù)據(jù)科學(xué)家面臨的一大問(wèn)題常常是,找到實(shí)際上適合手頭處理的任何任務(wù)的某一種語(yǔ)言。為了避免困難,總部位于孟加拉國(guó)和美國(guó)的初創(chuàng)公司Julia Computing的幾位聯(lián)合創(chuàng)始人開(kāi)發(fā)出了一種通用編程語(yǔ)言:Julia,不是程序員的人經(jīng)過(guò)培訓(xùn)就能使用這種語(yǔ)言。

Karpinski聲稱(chēng),Julia集兩者之所長(zhǎng),解決了“兩種語(yǔ)言的問(wèn)題”。

Julia Computing的聯(lián)合創(chuàng)始人Stefan Karpinski說(shuō):“相比其他語(yǔ)言,Julia運(yùn)行起來(lái)快得多,用起來(lái)容易得多,還可以無(wú)限擴(kuò)展?!?/p>

2009年,Karpinski與Viral Shah、Alan Edelman和Jeff Bezanson三人共同創(chuàng)辦了Julia這個(gè)開(kāi)源項(xiàng)目。由于市場(chǎng)反響極好,幾位開(kāi)發(fā)者聯(lián)同Deepak Vinchhi和Keno Fischer在2015年創(chuàng)辦了Julia Computing公司。Julia Computing為客戶(hù)提供收費(fèi)的支持、培訓(xùn)和咨詢(xún)服務(wù),不過(guò)Julia本身仍可以免費(fèi)使用。

Julia創(chuàng)始人團(tuán)隊(duì)

上圖是Julia Computing公司的幾位聯(lián)合創(chuàng)始人Stefan Karpinski、Viral Shah、Jeff Bezanson、Alan Edelman、Deepak Vinchhi和Keno Fischer(從左至右)。

Shah表示,由于Julia核心語(yǔ)言是免費(fèi)開(kāi)源的,所以它對(duì)印度來(lái)說(shuō)具有重大意義?!癑ulia對(duì)印度初創(chuàng)公司以及關(guān)注成本,又有大批工程師的大企業(yè)來(lái)說(shuō)很管用?!?/p>

Karpinski補(bǔ)充道:“Julia是人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)和并行計(jì)算這些應(yīng)用的較佳選擇――所有這些領(lǐng)域在印度的發(fā)展勢(shì)頭非常迅猛?!?/p>

Julia還用于美國(guó)航空航天局和勞倫斯伯克利國(guó)家實(shí)驗(yàn)室的研究,而麻省理工學(xué)院專(zhuān)門(mén)設(shè)有一個(gè)致力于研究和發(fā)展這種語(yǔ)言的Julia實(shí)驗(yàn)室。Shah說(shuō):“麻省理工學(xué)院林肯實(shí)驗(yàn)室的工程師們?cè)谘芯柯?lián)邦航空管理局新的下一代飛機(jī)防撞系統(tǒng),他們使用Julia來(lái)計(jì)算經(jīng)過(guò)優(yōu)化的邏輯表中的65億個(gè)決策點(diǎn),以便找出故障。”

Julia還被用于Celeste項(xiàng)目,這是為天空調(diào)查而設(shè)計(jì)的一種統(tǒng)計(jì)分析模型。Shah補(bǔ)充道:“研究團(tuán)隊(duì)在短短14.6分鐘內(nèi),借助NERSC Cori-II超級(jí)計(jì)算機(jī),用Julia對(duì)1.88億顆恒星和星系進(jìn)行了分類(lèi),這臺(tái)超級(jí)計(jì)算機(jī)是全球功能最強(qiáng)大的十臺(tái)計(jì)算機(jī)之一?!?/p>

Karpinski說(shuō):“Julia可以幫助數(shù)據(jù)科學(xué)家、物理學(xué)家、定量金融交易員和機(jī)器人設(shè)計(jì)師解決問(wèn)題,不必非得成為計(jì)算機(jī)程序員,也不必雇用計(jì)算機(jī)程序員其功能轉(zhuǎn)換成計(jì)算機(jī)代碼。”

注意到上面這句話的加粗的內(nèi)容定量金融交易了么,是的,Julia 已經(jīng)引起了華爾街的注意。投資銀行業(yè)正受到來(lái)自金融科技公司越來(lái)越大的競(jìng)爭(zhēng)壓力,迫使他們考慮利用 Julia 這些新興語(yǔ)言實(shí)現(xiàn)創(chuàng)新。Julia 的架構(gòu)使得金融和經(jīng)濟(jì)學(xué)領(lǐng)域的專(zhuān)家們很容易使用,用戶(hù)體驗(yàn)友好,已受到金融圈部分人士的歡迎。其中一個(gè)例子就是美聯(lián)儲(chǔ)對(duì)Julia的應(yīng)用。

“真正讓我們感到激動(dòng)的是,你可以編寫(xiě)高層級(jí)的科學(xué)、數(shù)字計(jì)算,而不需要重新編譯。通常來(lái)講,當(dāng)你用 R 或 Matlab 寫(xiě)了一些東西,想讓它運(yùn)行得更快。你需要把它重新翻譯至 C++,或者其他更快的語(yǔ)言。而使用 Julia 就不需要這樣——它的速度是拔尖的?!?/p>

——投資銀行 Berkery Noyes 的 CTO Keith Lubell

說(shuō)到這,很多盆友會(huì)說(shuō),為毛不用Python呢?

首先,量化交易是以先進(jìn)的數(shù)學(xué)模型替代人為的主觀判斷,利用計(jì)算機(jī)技術(shù)從龐大的歷史數(shù)據(jù)中海選能帶來(lái)超額收益的多種“大概率”事件以制定策略,極大地減少了投資者情緒波動(dòng)的影響,避免在市場(chǎng)極度狂熱或悲觀的情況下作出非理性的投資決策。從這個(gè)層面可以理解到量化交易也是一種交易,與計(jì)算機(jī)語(yǔ)言是兩種不同的概念。

其次,麻省理工學(xué)院認(rèn)為Julia于2012年發(fā)布,而隨著2018年8月1.0版本的發(fā)布,目標(biāo)將C的速度與Python的可用性、Ruby的動(dòng)態(tài)性、MATLAB的數(shù)學(xué)能力和R的統(tǒng)計(jì)能力。

麻省理工學(xué)院的計(jì)算機(jī)科學(xué)與人工智能實(shí)驗(yàn)室(CSAIL)也稱(chēng)贊Julia1.0是一個(gè)重要里程碑,因?yàn)镴ulia的一個(gè)共同創(chuàng)始人是麻省理工學(xué)院CSAIL教授艾倫·埃德?tīng)柭?,麻省理工學(xué)院Julia實(shí)驗(yàn)室的主任。

“Julia1.0的發(fā)布表明,Julia現(xiàn)在已經(jīng)準(zhǔn)備好將高水平的生產(chǎn)力與Python和R的易用性結(jié)合到C++的閃電般快的速度上來(lái)改變技術(shù)世界,”? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ——埃德曼

Julia 問(wèn)世之初就以『性能媲美 C++』聞名,所以高性能計(jì)算(high performance computing)是這個(gè)語(yǔ)言的一大亮點(diǎn),無(wú)論是之前的元編程還是宏,都體現(xiàn)了該語(yǔ)言本身效率至上的特點(diǎn)。

量化交易越來(lái)越火,的確目前很多量化分析都是用的MATLAB或PYTHON。很多萌新不知道如何下手,本系列文章會(huì)從最基本的來(lái)講起,以Julia語(yǔ)言來(lái)敲門(mén),讓萌新小白漸漸成長(zhǎng)為量化分析高手。

量化交易

國(guó)外量化金融領(lǐng)域發(fā)展日趨成熟,近年來(lái),量化交易在國(guó)內(nèi)掀起熱潮,飛狐以 Julia 作為量化交易的編程語(yǔ)言帶您進(jìn)入量化大門(mén)。

何為量化交易呢?

1,利用計(jì)算機(jī)強(qiáng)大的運(yùn)算能力

2,以數(shù)學(xué)模型為思維,歷史數(shù)據(jù)為基礎(chǔ),以數(shù)學(xué)建模、統(tǒng)計(jì)學(xué)分析、編程設(shè)計(jì)為工具

3,制定大概率獲利的交易策略

? ? ? 聊到量化投資不得不說(shuō)到華爾街傳奇人物詹姆斯·西蒙斯(James Simons),是世界級(jí)的數(shù)學(xué)家,也是最偉大的對(duì)沖基金經(jīng)理之一。西蒙斯運(yùn)用數(shù)學(xué)方法來(lái)搭建投資模型,從而能夠科學(xué)精準(zhǔn)地預(yù)測(cè)貨幣市場(chǎng)的走勢(shì)變動(dòng)。這一大膽的跨學(xué)科嘗試,最終徹底改變了他的人生走向。通過(guò)將數(shù)學(xué)理論巧妙融合到投資的實(shí)戰(zhàn)之中,西蒙斯從一個(gè)天資卓越的數(shù)學(xué)家搖身一變,成為了投資界中首屈一指的“模型先生”。由其運(yùn)作的大獎(jiǎng)?wù)禄?Medallion)在1989-2009的二十年間,平均年收益率為35%,若算上44%的收益提成,則該基金實(shí)際的年化收益率可高達(dá)60%,比同期標(biāo)普500指數(shù)年均回報(bào)率高出20多個(gè)百分點(diǎn),即使相較金融大鱷索羅斯和股神巴菲特的操盤(pán)表現(xiàn),也要遙遙領(lǐng)先十幾個(gè)百分點(diǎn)。即使在2008年金融危機(jī)時(shí),該基金的投資回報(bào)率仍可穩(wěn)穩(wěn)保持在80%左右的驚人水準(zhǔn)。西蒙斯通過(guò)將數(shù)學(xué)模型和投資策略相結(jié)合,逐步走上神壇,開(kāi)創(chuàng)了由他扛旗的量化時(shí)代。西蒙斯的驟富神話讓人們對(duì)于量化投資有了最為直觀而淺顯的認(rèn)識(shí):這能賺錢(qián),而且能賺很多錢(qián)。

通過(guò)這段西蒙斯的故事我們可以看到,量化交易的優(yōu)勢(shì)在于:

1,歷史規(guī)律中發(fā)現(xiàn)概率優(yōu)勢(shì)作為投資基礎(chǔ)

2,計(jì)算機(jī)運(yùn)算能力保證分析廣度

3,克服來(lái)自人性中的弱點(diǎn)

香港金融中心

而量化交易的核心在于無(wú)論多復(fù)雜的模型,沒(méi)有一個(gè)能長(zhǎng)期不變地一直賺錢(qián)。

依然需要以人為主導(dǎo),模型需要人去不斷更新,需要人去尋找市場(chǎng)上的規(guī)律。

這一篇我們主要對(duì)Julia和量化交易做了個(gè)基本的介紹,大家已經(jīng)知道了Julia一門(mén)語(yǔ)言,量化交易是一種投資策略、也是一種交易。

下一篇會(huì)聊到Julia的安裝、Series數(shù)據(jù)、DataFrame數(shù)據(jù)對(duì)象的生成和訪問(wèn)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容