0
本文作者: 陳伊莉 | 2017-04-01 15:37 |
雷鋒網(wǎng)AI金融評論消息,由開源社、TopGeek、匯智Tek聯(lián)合主辦的中國區(qū)塊鏈和金融創(chuàng)新科技峰會(FTCon2017)日前在上海舉行,現(xiàn)任上海均直資產(chǎn)管理有限公司投資經(jīng)理的陳曉優(yōu)進(jìn)行了“擁抱開源,量化投資行業(yè)新趨勢”主題演講,指出在當(dāng)前的金融市場中,商業(yè)軟件和機(jī)構(gòu)自研已經(jīng)較難滿足量化投資機(jī)構(gòu)需求,而作為新趨勢的開源量化軟件能夠解決機(jī)構(gòu)痛點(diǎn),但也表示開源技術(shù)并不是盡善盡美,還有發(fā)展空間。
據(jù)雷鋒網(wǎng)AI金融評論了解,陳曉優(yōu)是倫敦卡斯商學(xué)院金融工程學(xué)碩士,開發(fā)并維護(hù)了針對國內(nèi)市場的量化交易系統(tǒng)框架vn.py,目前是國內(nèi)用戶最多的金融投資開源項(xiàng)目之一(Github Star 2486),據(jù)不完全統(tǒng)計(jì),已有數(shù)十家金融機(jī)構(gòu)在實(shí)盤投資中使用。
以下是經(jīng)過陳曉優(yōu)確認(rèn)的演講實(shí)錄,雷鋒網(wǎng)AI金融評論做了不改變原意的編輯。
今天我的主題是量化投資與新趨勢開源。量化投資在我國、世界的歷史都不是很長,美國八十年代出現(xiàn)使用計(jì)算機(jī)來炒股和炒期貨。接近2010年,國內(nèi)才出現(xiàn)了比較正規(guī)的量化交易機(jī)構(gòu),而國內(nèi)民間用計(jì)算機(jī)程序來量化分析行情走勢可能更早一些。當(dāng)時(shí)的形式主要是面向個(gè)人和小型機(jī)構(gòu)的商業(yè)軟件,早年投資者憑借這些軟件可以就可以在市場上取得相當(dāng)豐厚的收益,但到今天已經(jīng)變得難以為繼,當(dāng)前國內(nèi)的量化投資領(lǐng)域正是開源項(xiàng)目大放光彩的時(shí)候。
先說說量化投資的幾個(gè)特點(diǎn):
與傳統(tǒng)拍腦袋投資不同,量化投資使用數(shù)量分析方法尋找能夠?qū)崿F(xiàn)穩(wěn)定盈利的規(guī)律,通過采集歷史數(shù)據(jù)的時(shí)間序列并建模,尋找預(yù)測未來價(jià)格變動(dòng)的方法。
量化投資一般由計(jì)算機(jī)驅(qū)動(dòng)。尤其在今天市場上,股票數(shù)量眾多,行情以“秒”級變化,這種情況下不可能依靠人力繪制K線,分析開盤價(jià)、收盤價(jià)等信息,必須依靠計(jì)算機(jī)。理想狀態(tài)是在建好策略、模型后,計(jì)算機(jī)可以在輸入數(shù)據(jù)的基礎(chǔ)上自動(dòng)處理后作出該買還是賣的決策,這有利于避免人帶來的不確定性。
量化交易通過高性能算法實(shí)現(xiàn)超高速的交易決策。美國最高可以達(dá)到納秒級別的響應(yīng)速度。
關(guān)于量化投資行業(yè)現(xiàn)狀,我們從公募基金來看(因?yàn)樗侥蓟鸩惶敢夤紨?shù)字,也無法統(tǒng)計(jì)),截止2016年11月,股票量化產(chǎn)品規(guī)模超過858億。截止2017年1月,公募主動(dòng)量化產(chǎn)品三年平均回報(bào)超過了105%。
而經(jīng)過2015年的股災(zāi)之后,到今天能回本的投資者都算是高手。大部分人的基金回報(bào)只有50%,而用計(jì)算機(jī)管理的收益率至少是它的一倍。值得注意的是,這種產(chǎn)品還只是公募,比較高端的私募量化產(chǎn)品的收益可能會更高。
此外,量化FOF產(chǎn)品、智能投顧正在逐漸成為資產(chǎn)配置的新寵兒。目前大型金融機(jī)構(gòu)如銀行、信托等機(jī)構(gòu)等使用較多。更多理性的投資機(jī)構(gòu)開始擁抱計(jì)算機(jī),計(jì)算機(jī)能夠摒棄人的感情,以完全理性的決策態(tài)度幫助投資者獲益。
國內(nèi)量化投資是從商業(yè)軟件起步,初期可以滿足大家的需求,而在今天的市場中,完全使用商業(yè)軟件會有各種各樣的痛點(diǎn)。
首先是安全性方面的顧慮,一方面是模型的不安全,量化交易的核心模型或者說是交易策略必然存儲在某個(gè)平臺上,不論是某個(gè)商業(yè)平臺還是某個(gè)開源平臺、或者matlab里的一些文件。這些文件可能只有幾K,但是帶來的價(jià)值可能是上千萬甚至上億。另一方面是數(shù)據(jù)的不安全性,有一些重要的商業(yè)機(jī)密例如持倉、渠道、客戶、資金來源如果放在商業(yè)平臺上,完全達(dá)不到足夠的安全性。
第二,不兼容。這是國內(nèi)一些金融軟件服務(wù)商的缺點(diǎn),想做大而全,吃下全部的業(yè)務(wù),囊括數(shù)據(jù)、策略、交易等,但是每個(gè)公司精力有限,總有些并不擅長的業(yè)務(wù)。對于終端用戶來說,想要各個(gè)業(yè)務(wù)都獲得最好的解決方案,但是很多軟件要用就得用一套,用戶沒得選。
第三,迭代慢。這是一些大公司的弊病,對于新業(yè)務(wù)的支持反應(yīng)速度比較慢,等大家都做了它才做。
商業(yè)軟件有諸多不適用的地方,那么有一些量化機(jī)構(gòu)就選擇完全自主研發(fā),但這種模式也有不少痛點(diǎn)。
一,周期長,需要經(jīng)過數(shù)據(jù)、回測、實(shí)盤階段。首先需要搞定數(shù)據(jù),對于金融機(jī)構(gòu)而言數(shù)據(jù)收集、維護(hù)成本很高;再者研發(fā)過程中需要不斷的測試,例如購買一些外面的解決方案。還有一個(gè)大問題是試錯(cuò),尤其在國內(nèi),軟件業(yè)務(wù)更新速度很快,誰能在開發(fā)過程中領(lǐng)先就能在競爭中占據(jù)優(yōu)勢地位。
二,成本高,包括人力、物力、試錯(cuò)費(fèi)用。首先你需要很厲害的CTO,但是能不能找到也是一個(gè)問題。再者是金錢,不論是人力成本,還是研發(fā)過程中的測試、或者半成品解決方案,都需要不少費(fèi)用。此外還有最大的成本機(jī)會成本。國內(nèi)量化行業(yè)發(fā)展非??欤绻汩_發(fā)一個(gè)產(chǎn)品成功了那么可以躺著賺錢。但是如果東西做不出來,不僅沉沒成本沒了,還只能推倒重來,再投入一遍成本。不過中國的市場競爭很激烈,賺錢機(jī)會越來越少,市場越來越有效,試錯(cuò)成本也不斷攀上新高峰。
三,不穩(wěn)定,一方面因?yàn)橛脩羯伲硪环矫?,檢驗(yàn)量化模型有沒有問題主要看實(shí)盤賺不賺錢,不上實(shí)盤無法檢驗(yàn)?zāi)承〣UG。而實(shí)盤檢驗(yàn)出錯(cuò)可能又踩入試錯(cuò)的坑,需要推到再來。
所以這兩三年,量化投資領(lǐng)域涌現(xiàn)出很多開源軟件,開源有五點(diǎn)好處:
第一是開放的源代碼。大家可以看到程序?qū)τ跀?shù)據(jù)的處理流程,不用擔(dān)心別人偷偷把我的投資策略上傳到他的服務(wù)器上,從而削減我的獲益能力。開源后你做出來的東西就屬于你,除非內(nèi)部人員管理出現(xiàn)問題,員工偷走了你的模型,否則能夠杜絕核心機(jī)密泄漏的風(fēng)險(xiǎn)。
第二,開源有著良好的架構(gòu),絕大部分開源項(xiàng)目在發(fā)起時(shí)都不是為了賺錢,主要追求之一是為了獲得更多的用戶,通常來說擴(kuò)展性設(shè)計(jì)就會比較好,開源在擴(kuò)展性與應(yīng)用性的平衡會做得比很多商業(yè)軟件更好。很多商業(yè)軟件要么就追求速度,要么就追求應(yīng)用,這兩個(gè)都會導(dǎo)致拓展性變差。而開放的架構(gòu)有利于新業(yè)務(wù)的快速開發(fā)。
第三,開源意味著開放的設(shè)計(jì)。作為一個(gè)開源項(xiàng)目,我們總是假設(shè)用戶已經(jīng)買過各種解決方案了,而開源項(xiàng)目也不會做全所有業(yè)務(wù),那么會預(yù)留需要跟其它系統(tǒng)對接的接口,開源項(xiàng)目可以有機(jī)整合此前的系統(tǒng),提供易用、擴(kuò)展性的產(chǎn)品,能促成效益最大化。
第四,許多開源量化軟件使用通用性較強(qiáng)的語言,比如Python、R等,這種開源項(xiàng)目有一個(gè)大的好處,就是一個(gè)平滑的學(xué)習(xí)曲線,而很多商業(yè)軟件要么使用C++、Java等語言要么自己設(shè)計(jì)一套語言,總之一旦用了該平臺,轉(zhuǎn)換成本就會很高。從它們角度來說,這是商業(yè)利益最大化,但是從用戶角度來說,長期成本太高了。目前商業(yè)軟件方案越來越被量化巨頭機(jī)構(gòu)所拋棄。
第五,開源容易形成成熟的社區(qū)。開源提供交流、測試的場景,越多人參與其中測試、改進(jìn),系統(tǒng)也會越穩(wěn)定。群策群力也能最快找到正確的發(fā)展方向。
上圖是開源軟件構(gòu)建的一條量化交易工具鏈,分為幾個(gè)步驟:
首先是數(shù)據(jù)收集,國內(nèi)比較有名的是tushare、windpy,后者是大型商業(yè)軟件公司萬得做出來的一個(gè)開源接口。
接著到了數(shù)據(jù)分析階段,NumPy用來存儲和處理大型矩陣;pandas解決時(shí)間序列;用Matplotlib來實(shí)現(xiàn)數(shù)據(jù)可視化。
第三階段是策略研究,IPython是一個(gè)交互式計(jì)算系統(tǒng);Jupyter是最方便的策略研究工具之一;Zipline是一個(gè)策略回測框架,可以基于歷史數(shù)據(jù)對策略進(jìn)行回測檢驗(yàn);RQalpha是國內(nèi)公司開發(fā)的策略回測框架 。
實(shí)盤交易是整個(gè)生態(tài)鏈最后一環(huán),vn.py 是基于python的開源交易平臺開發(fā)框架,easytrader適合個(gè)人投資者,是一個(gè)開源的股票量化交易組件,只要你有一個(gè)炒股軟件,就能用它直接做量化交易,at.py則是一位在開源領(lǐng)域耕耘多年的大神的作品。
這是一個(gè)Github前十名的量化開源統(tǒng)計(jì),統(tǒng)計(jì)時(shí)間是2017.3.22。從這個(gè)榜單中可以發(fā)現(xiàn),python語言占了8位,此外,我們看到有很多策略回測框架,數(shù)據(jù)下載工具,還有比特幣策略模型。如果大家了解量化交易后想試試,可以看這些項(xiàng)目的源代碼,質(zhì)量更高,用戶也更多。
開源項(xiàng)目也存在短板,他們是被攻擊最多的地方,可以用一句話來概括——免費(fèi)的才是最貴的,這意味著缺乏專業(yè)服務(wù)。不過解決方案也很簡單:
積極參與開源社區(qū),培養(yǎng)技術(shù)團(tuán)隊(duì)。從vn.py社區(qū)的一些經(jīng)驗(yàn)來說,絕大部分用戶是私募、券商等專業(yè)金融機(jī)構(gòu),這些機(jī)構(gòu)希望自己的投資團(tuán)隊(duì)并不只是擁有寫策略、做交易的能力,也希望在一定程度上擁有擴(kuò)展平臺、開發(fā)新功能能力,那么他們通常會加入到開源社區(qū),先把自己的業(yè)務(wù)需求在框架上跑起來,后續(xù)再改進(jìn)并使原來沒有跑起來的業(yè)務(wù)也能順利運(yùn)行。此外,還會多多與社區(qū)眾人交流,看看這是否是最優(yōu)解決方案。長期來看,對整個(gè)團(tuán)隊(duì)?wèi)?zhàn)斗力會有非常大的提升。
獲取開源技術(shù)咨詢和培訓(xùn)服務(wù),可參考知名的開源解決方案供應(yīng)商Redhat和Wordpress,這可能會成為國內(nèi)一個(gè)趨勢。
雷峰網(wǎng)版權(quán)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。