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