如果是自己想在本地搞一套專屬于自己,更適合自己的量化投資研究系統(tǒng),那么需要你需要先確定:
一、解決數(shù)據(jù)來源的問題
當(dāng)然數(shù)據(jù)最初的來源就是交易所,量化交易的場內(nèi)交易數(shù)據(jù)集,其實(shí)就是一帳本,只不過采用電子化記帳的方式,有心的機(jī)構(gòu)將這些數(shù)據(jù)收集加工處理,并在取得授權(quán)的資質(zhì)條件下進(jìn)行分發(fā),用作歷史行情展示,量化交易計(jì)算研究等等。
數(shù)據(jù)服務(wù)商就是這類機(jī)構(gòu),大型的機(jī)構(gòu)的數(shù)據(jù)分發(fā)質(zhì)量有所保證,但收費(fèi)不便宜。好在會(huì)提供學(xué)生版本或試用版本,這類機(jī)構(gòu)有wind,choice,通聯(lián)數(shù)據(jù)等,最近幾年因?yàn)榱炕鹬?,發(fā)展起來的,比如Tushrare,JData(聚寬的產(chǎn)品)等等。當(dāng)然新浪與和訊股票等等老財(cái)經(jīng)門戶網(wǎng)站也是可以采用(BA)的,不過需要注意職業(yè)操守,網(wǎng)易有聽說提供了數(shù)據(jù)的下載服務(wù),那么歷史行情的部份就完美解決了。還有很多適合自己策略的特色數(shù)據(jù),就需要開發(fā)者自己大開腦洞,進(jìn)行獲取了。
二、確定數(shù)據(jù)種類與本地化存儲(chǔ)的問題
在交易所分發(fā)出來的數(shù)據(jù),按數(shù)據(jù)精細(xì)程度將行情服務(wù)劃分為?Level1和Level2?兩種服務(wù)(自己百科交易所數(shù)據(jù)服務(wù)種類),對我們做量化交易研究者來說,數(shù)據(jù)的種類最好整齊備,以股票舉例來說,除去一些股票的基本信息數(shù)據(jù)(比如股票代碼、所屬交易所、曾用名、發(fā)行時(shí)間等等)以外,還要包含行情數(shù)據(jù),財(cái)務(wù)數(shù)據(jù)等。
三、搭建回測系統(tǒng)
包含數(shù)據(jù)可視化的界面,開發(fā)者需要深度準(zhǔn)確的撰寫各類統(tǒng)計(jì)指標(biāo)計(jì)算公式。目的就是為了建立一套策略好壞的客觀評(píng)價(jià)體系,為模擬盤或者實(shí)盤做準(zhǔn)備。
搭建一個(gè)回測框架,是我們檢驗(yàn)自己開發(fā)研究的交易模型是否可行的最小成本檢驗(yàn)方式,除因?yàn)槌?shí)盤驗(yàn)證,只有通過回測,才可以將一些人為認(rèn)定為有效的“因子”扔進(jìn)客觀數(shù)據(jù)集內(nèi)進(jìn)行打磨、檢驗(yàn)了。
回測框架其實(shí)有很多是開源的,新手入坑千萬別想著自己悶頭搞,浪費(fèi)時(shí)間不說,很多重要的回測框架知識(shí)點(diǎn),你完全可以通過借鑒別人而獲得。需要注意的是,自寫徒手?jǐn)]回測框架,一定要至少包含三個(gè)部份,回測執(zhí)行部份,回測報(bào)告輸出部份,交易模擬部份。
四、針對所交易市場構(gòu)建交易策略,撰寫交易策略代碼
這部份沒什么可以說的,主要是通過代碼調(diào)用股票或者期貨市場的品種數(shù)據(jù),在某個(gè)周期頻率bar下,通過自定義的算法,或是模型所規(guī)定的運(yùn)行規(guī)則,形成一完整交易信號(hào),包含進(jìn)場(交易開倉,調(diào)倉買入)、出場信號(hào)(交易平倉、止盈、止損)
五、進(jìn)行回測,查看并輸出樣本報(bào)告,進(jìn)行梯度研究分析
這一部份我主要講一下,回測報(bào)各中會(huì)用到的的一些我覺得還比較有意義的統(tǒng)計(jì)指標(biāo),以及參照分析的原則與意義。
策略收益率:這部份沒得說,必須參考,基金經(jīng)理每年排名拼的也是有這個(gè)。
年化收益率:對收益率按照策略的運(yùn)行時(shí)間,進(jìn)行年化平均。
夏普比率:反應(yīng)的每承提一個(gè)下行風(fēng)險(xiǎn),可以獲得多少個(gè)超額收益的部份,這個(gè)是一個(gè)綜合性的參考指標(biāo),很多基金運(yùn)作人士張口談?wù)摰囊簿褪沁@個(gè)指標(biāo)。
最大回撤值/比率:反應(yīng)的是極端風(fēng)險(xiǎn)發(fā)生時(shí),的最大虧損部份
勝率:這里的一般用作為單筆交易開平的勝率統(tǒng)計(jì)用,對一些偏向較高交易頻率的策略來說,是比較重要的參考
盈虧比:單一盈虧比一般不單獨(dú)使用,需要結(jié)合交易頻率的高低,還有勝率等指標(biāo)結(jié)實(shí)合來判定,盈虧比可以反應(yīng)出投資交易盈利下,所冒的風(fēng)險(xiǎn)。
收益風(fēng)險(xiǎn)比(收益回撤比):這個(gè)也是一個(gè)用來衡量策略綜合表現(xiàn)的指標(biāo)之一,反映出策略控制風(fēng)險(xiǎn)與獲得收益補(bǔ)償?shù)哪芰?,可以結(jié)合最大回撤與年化收益率等指標(biāo),綜合打分。
IC信息系數(shù):在每一個(gè)橫截面上的因子數(shù)值,與收益率之間的相關(guān)系數(shù),反應(yīng)出相關(guān)性強(qiáng)弱。
信息比率:單位風(fēng)險(xiǎn)下所帶來的超額收益大小,比率高說明超額收益高。
其它指標(biāo)等等。
這部份推薦本地化進(jìn)行,對計(jì)算機(jī)性能以及自己所開發(fā)運(yùn)算結(jié)構(gòu)的要求較高,還有策略本身的運(yùn)算結(jié)構(gòu)是否是冗余的,重復(fù)無關(guān)的,是否笨重占用較大計(jì)算機(jī)資源的。
還有自身的策略變量參數(shù)的尋找,是否是具備智能化處理的方式,不然自己每一個(gè)因子部份的參數(shù)確定,一大堆指標(biāo)數(shù)據(jù)堆在你眼前,你還在手動(dòng)人為肉眼尋找,我擔(dān)心你內(nèi)出血。炒個(gè)股交個(gè)易而已,為什么要把自己折騰如此。
參數(shù)的固化,有效因子的尋求這一系列的過程,在不斷更換樣本時(shí)間截面的做法背景下,我推薦適可而止,國內(nèi)市場成立年份也有限,應(yīng)該將自己的策略放在更小的交易周期、更近的交易時(shí)間維度上去進(jìn)行計(jì)算,這樣的樣本數(shù)據(jù)才足夠豐富,也會(huì)在實(shí)盤時(shí)更加有效。但應(yīng)隨時(shí)防止過擬合式的計(jì)算行為。
七、模擬盤測試
這部份,我不建議自己開發(fā)一套模擬交易所市場的仿真交易系統(tǒng),可以采用一些三方平臺(tái)的交易環(huán)境,只需要將信號(hào)給與他們即可,得到你們想要的實(shí)時(shí)結(jié)果即可。
八、實(shí)盤測試
這部份更多的是考慮你自己資金的實(shí)力,還有對策略保密性、還有策略內(nèi)容是否需要更高級(jí)別的計(jì)算資源。
一般來說,我是推薦直接將策略在本地開發(fā)完成之后,使用券商自帶的PB資管量化系統(tǒng)進(jìn)行交易的,比如券商QMT迅投系列,恒生系列等等。
大致是這么一個(gè)流程。