量化研究 | 策略在指數(shù)與主連復(fù)權(quán)的差異化分析

作者簡(jiǎn)介

呂洋洋?
某大型資管公司在職量化策略研究員,熟悉數(shù)據(jù)清洗工作,擅于運(yùn)用宏觀因子、行業(yè)因子等進(jìn)行對(duì)期貨品種價(jià)格影響建模與相關(guān)性分析,理解機(jī)器學(xué)習(xí)多元回歸法,SVM,XGboost,金融時(shí)間序列等底層算法邏輯,部分算法可自定義函數(shù)封裝。掌 握各種機(jī)器學(xué)習(xí)包與數(shù)據(jù)計(jì)算分析包的運(yùn)用。包括不限于:Alphalens,pandans,爬蟲技術(shù),sklearn,statsmodels 等。

『正文』
ˇ
引言
眾所周知,在我們做期貨程序化過(guò)程中,大部分個(gè)人或者中小機(jī)構(gòu)基本上都是采用的第三方商業(yè)化軟件進(jìn)行交易,國(guó)內(nèi)用的最為廣泛的就是TB開(kāi)拓者這一平臺(tái),拋開(kāi)軟件穩(wěn)定性個(gè)性化等問(wèn)題來(lái)說(shuō),從策略回測(cè)角度來(lái)看,大家最為困惑和關(guān)心的問(wèn)題就是期貨指數(shù)合約和主連復(fù)權(quán)合約的誤差問(wèn)題。今天,筆者本人就帶著實(shí)盤的初衷、科學(xué)的計(jì)算、細(xì)節(jié)的描述來(lái)給大家分享一下關(guān)于指數(shù)合約和主連復(fù)權(quán)的差異化分析。
邏輯步驟
廢話不多說(shuō),我們直接上計(jì)算思考的邏輯。
步驟一:刻畫指數(shù)和主連復(fù)權(quán)的相關(guān)性,協(xié)整性。
目? ?地:通過(guò)初級(jí)統(tǒng)計(jì)學(xué)(高階的我不會(huì),哈哈~~)刻畫,定量的方法,定性的觀察,兩個(gè)XY時(shí)間序列數(shù)據(jù)的趨同性或者說(shuō)變動(dòng)是否緊密相關(guān),當(dāng)然誤差肯定是有的,但是只要整體是趨同的,就還好,最起碼如果趨同都不趨同,那肯定就不能用指數(shù)合約的了。因?yàn)槿魏我环N計(jì)算評(píng)估方法都是有誤差的,就好比回歸也是有“epsilon(希臘字母表第五個(gè)字母)”。所以就看這個(gè)誤差是否可以接受的程度。
步驟二:我們實(shí)際用一個(gè)相同的策略(代碼完全一樣,參數(shù)也一樣),加載到同一個(gè)周期的數(shù)據(jù)K線(相同的周期、相同的長(zhǎng)度),去回測(cè)看指數(shù)和主連復(fù)權(quán)的績(jī)效差別。
目? ?的:通過(guò)實(shí)際策略在不同的XY數(shù)據(jù)進(jìn)行的回測(cè),才是最終我們想看到的結(jié)果差。
步驟三:針對(duì)回測(cè)出來(lái)的凈值曲線數(shù)據(jù)進(jìn)行協(xié)整性和相關(guān)性分析。
目? ?的:這一步主要是我個(gè)人受限于數(shù)據(jù)問(wèn)題,無(wú)法獲取到主連復(fù)權(quán)數(shù)據(jù)到本地進(jìn)行協(xié)整性分析。因此,只能通過(guò)對(duì)XY兩個(gè)時(shí)間序列數(shù)據(jù),回測(cè)后的權(quán)益曲線進(jìn)行協(xié)整和相關(guān)分析。也就是說(shuō)把第一步里面的協(xié)整放到了第三步。當(dāng)然了,XY經(jīng)過(guò)了同樣的數(shù)學(xué)變換,那么他們的統(tǒng)計(jì)關(guān)系是不會(huì)變的。畢竟策略其實(shí)就是一個(gè)映射函數(shù),將X也就是行情數(shù)據(jù),通過(guò)策略f( ),轉(zhuǎn)變?yōu)榭?jī)效曲線Y的一個(gè)過(guò)程。
數(shù)據(jù)準(zhǔn)備
由于品種的差異性,以及各個(gè)板塊流動(dòng)性活躍問(wèn)題,按照以下羅列進(jìn)行逐個(gè)分析。
黑色的:螺紋、焦炭、熱卷、鐵礦石、猛硅、動(dòng)力煤
有? ? 色:銅、鋁、鎳
化? ? 工:PTA、PP、MA 、RU、SC、EG、EB、LPG
農(nóng)產(chǎn)品:蘋果、雞蛋、菜油、棕櫚油、豆粕、玉米、白糖、棉花
基本上以上品種都是本人實(shí)盤在交易的品種,有的品種可能就1-2個(gè)策略,又得可能有6-8個(gè)策略,所以抱著“推到自己“的態(tài)度去探索這些問(wèn)題。
由于這是開(kāi)篇第一篇,可能還有很多更為科學(xué)、更為嚴(yán)謹(jǐn)?shù)姆椒](méi)有想到,所以在正式開(kāi)始之前也希望各位給出各自的看法和意見(jiàn)。
指數(shù)和主連復(fù)權(quán)合約相關(guān)系數(shù)變動(dòng)
我們采用的就是Pearson相關(guān)系數(shù),數(shù)學(xué)公式如下圖所示:

關(guān)于皮爾森的數(shù)學(xué)相關(guān)推導(dǎo)和性質(zhì)我就不過(guò)多說(shuō)了,說(shuō)一些基本的,畢竟咱們這不是數(shù)學(xué)課。皮爾遜相關(guān)系數(shù)的變化范圍為-1到1。系數(shù)的值為1意味著X和Y可以很好的由直線方程來(lái)描述,所有的數(shù)據(jù)點(diǎn)都很好的落在一條直線上,且Y隨著X的增加而增加。反之亦然。


上圖所示是指數(shù)(上)與主連復(fù)權(quán)(下)的相關(guān)系數(shù)可視化圖,其中有兩條橫線分別是0.8、0.9,縱橫2016-今天4年7個(gè)月的時(shí)間軸來(lái)看,大部分的相關(guān)系數(shù)都在0.9以上,下面我們來(lái)看看這些相關(guān)系數(shù)抖動(dòng)的時(shí)間段是什么樣的。(我們由近到遠(yuǎn)的定性的去看)?

從最近半年多的相關(guān)系數(shù)可視化圖和2個(gè)K線行情圖,我們可以看到,大范圍、差異較大的異常波動(dòng)是在更換主力合約之前和更換日期附近發(fā)生的。其中的邏輯其實(shí)也很簡(jiǎn)單,因?yàn)榕R近換月升貼水和持倉(cāng)量的變化,導(dǎo)致了有2個(gè)月的持倉(cāng)量權(quán)重產(chǎn)生了相同,且升貼水越大,這個(gè)差異也就越大,相當(dāng)于取了升貼水的平均值。屆時(shí)指數(shù)和實(shí)際交易的主力合約就產(chǎn)生了波動(dòng)性差異,這一點(diǎn)我們通過(guò)相關(guān)系數(shù)刻畫的方法也可以印證這個(gè)邏輯點(diǎn)。但是我們要注意的是,相關(guān)性降低幅度和相關(guān)性降低時(shí)間,哪一個(gè)對(duì)我們更不利,當(dāng)然了廢話就是對(duì)我們都不利,但是我們不能奢求理想完美變?yōu)楣歉鞋F(xiàn)實(shí)。通過(guò)圖形可視化可以明顯看出,近半年多以來(lái)總共有15次下穿到0.8以下。

10個(gè)月時(shí)間里出現(xiàn)15次,平均一個(gè)月1.5次。持續(xù)的時(shí)間我們也來(lái)看一下。如下圖所示:

其中最大的兩次分別為2019.11.15和2019.12.2兩次,持續(xù)時(shí)間為8根K線(從下穿0.9到上穿0.9),一根K線15分鐘,8根共2個(gè)小時(shí)。其中這兩次是近半年多以來(lái),最大持續(xù)時(shí)間最久的2次。
在這里我也把實(shí)際的代碼發(fā)給大家:

Params
?????? //此處添加參數(shù)
?????? Numeric length(10);
Vars
?????? //此處添加變量
?????? Numeric corr;
Events
?????? OnBar(ArrayRefindexs)
?????? {
?????? ?????? corr = CoefficientR(Data0.close, Data1.Close, length);
?????? ?????? PlotNumeric("corr",corr);
?????? ?????? PlotNumeric("閾值2", 0.9, red);
?????? ?????? PlotNumeric("閾值",0.8, White);
?????? }? ? ??

實(shí)際上“CoefficientR”這個(gè)函數(shù)就是我們剛開(kāi)始提到的,皮爾森相關(guān)系數(shù)的計(jì)算方法,在TBQ里面我們是可以自動(dòng)調(diào)用這個(gè)函數(shù)的,下面是對(duì)這個(gè)函數(shù)代碼的分解。

通過(guò)閱讀源碼我們可以看到,相關(guān)系數(shù)的函數(shù)封裝是沒(méi)有問(wèn)題的。大家千萬(wàn)不要用TBQ里面自帶的“Correlation”這個(gè)函數(shù),這個(gè)函數(shù)是不對(duì)的,或者說(shuō)不符合我們用的皮爾森相關(guān)系數(shù)的算法。
我們?cè)诨氐綀D1中,歷史上最大的一次是在2016.3.7,那一次是螺紋鋼漲停了,第二天開(kāi)盤繼續(xù)漲停,但是實(shí)際肉眼觀察指數(shù)和主連復(fù)權(quán)并沒(méi)有特別大的不同,而且計(jì)算中我們發(fā)現(xiàn)出現(xiàn)了-2的場(chǎng)景出現(xiàn),這個(gè)并不是計(jì)算的問(wèn)題,是源碼中加入了一個(gè)默認(rèn)值,如下圖所示:

其余較大的相關(guān)性波動(dòng)期就是在2018.11和2019.3兩個(gè)時(shí)間點(diǎn)附近,這兩個(gè)點(diǎn)基本上位于01→05,05→10合約的轉(zhuǎn)換點(diǎn)之前。按照之前審視邏輯,最大周期為13根K線也就是3個(gè)小時(shí)時(shí)間。
縱觀4年零7個(gè)月的時(shí)間內(nèi),大大小小的相關(guān)性波動(dòng)有7次,并不是每一次主力合約更迭就會(huì)發(fā)生相關(guān)性降低的情況。
同一策略回測(cè)差異分析
下面我們來(lái)進(jìn)行第二步:用同一個(gè)策略對(duì)指數(shù)和主連復(fù)權(quán)合約進(jìn)行回測(cè)。讓我們來(lái)看看具體的績(jī)效指標(biāo)和績(jī)效曲線的區(qū)別什么樣子。

上圖是A策略(只包含多頭)在萬(wàn)1.5手續(xù)費(fèi)滑點(diǎn)1跳的場(chǎng)景下,從2016.1.1-2020.8.3的回測(cè)績(jī)效圖。圖中看到整體績(jī)效還是可以的。下面我們來(lái)看一下主連的績(jī)效圖

我們通過(guò)圖一眼就看出,指數(shù)和主連復(fù)權(quán)還是蠻大的,最起碼曲線后半段的盈利就明顯看出差別。先不要直接否定,我們做研究分析的目得不是看一眼線那么簡(jiǎn)單,還要具體看所有的績(jī)效指標(biāo)的差距到底是多大。? ? ??


主要績(jī)效指標(biāo)差異幅度如下表所示:

從部分績(jī)效指標(biāo)可以看到,收益型指標(biāo)幾乎少了一半兒,風(fēng)險(xiǎn)型指標(biāo)增加了20%??傊褪钦w削弱了。
從中我們來(lái)初窺什么?為什么要費(fèi)勁搞這些?目得其實(shí)就是來(lái)驗(yàn)證,我們用指數(shù)做回測(cè),用指數(shù)來(lái)映射實(shí)盤是否靠譜還是自欺欺人。
初步來(lái)看,從該數(shù)據(jù)中我們可以看到,我們用指數(shù)回測(cè)的績(jī)效實(shí)際上要比實(shí)盤利潤(rùn)要削弱一半兒左右,風(fēng)險(xiǎn)要低估20%左右。平滑度也削弱接近40%左右,這些具體的直觀感受從曲線圖也可以看到。
下面我們?yōu)榱蓑?yàn)證客觀性,我們按照上面所有的邏輯步驟程序,來(lái)進(jìn)行空頭的數(shù)據(jù)驗(yàn)證。我們這次就直接上結(jié)果,不在穿插任何解釋圖。

從空頭表中的結(jié)果我們可以看出,指數(shù)合約加載時(shí),是盈利的,但是到了主連復(fù)權(quán)最后就是虧損的狀態(tài)。
思考
1、是不是指數(shù)做策略的結(jié)果都是這樣?答:并不是,因?yàn)檫@涉及策略問(wèn)題,并不是所有空頭策略在指數(shù)與主連復(fù)權(quán)有差一倍以上的差異,但是說(shuō)明這種情況會(huì)出現(xiàn)。也就是說(shuō)指數(shù)情況下這個(gè)策略都一般 就不要考慮了,因?yàn)樵趯?shí)際的主連復(fù)權(quán)肯定是虧損的。
2、那是不是我們就不要指數(shù)了,直接主連復(fù)權(quán)就完了,費(fèi)那么多事兒干嗎?答:的確是可以這么做,就算沒(méi)有分析這些,從實(shí)盤和回測(cè)接近角度來(lái)說(shuō),也應(yīng)該以實(shí)際的交易數(shù)據(jù)為主。
3、指數(shù)合約的價(jià)值還有嗎?答:個(gè)人初步評(píng)估(并不是最后結(jié)論),是有的。因?yàn)橹笖?shù)在某種程度的確可以過(guò)濾主連復(fù)權(quán)中的信號(hào)雜音,我們從上面多空兩個(gè)表的數(shù)據(jù)可以看出,指數(shù)合約的交易次數(shù)是少于主連復(fù)權(quán)的。我們可以考慮用指數(shù)計(jì)算信號(hào),進(jìn)出場(chǎng)間的績(jī)效數(shù)據(jù)用主連復(fù)權(quán)來(lái)計(jì)算,那么問(wèn)題又來(lái)了,如果指數(shù)和主連復(fù)權(quán)完全反向,那么還是不能用指數(shù),例如后面我們會(huì)討論到蘋果和雞蛋這兩個(gè)奇怪的品種。
今天是指數(shù)和主連復(fù)權(quán)差異化深度分析第一篇文章,由于篇幅問(wèn)題,后續(xù)我將把上面的問(wèn)題,以及到底用主連復(fù)權(quán)、指數(shù)、還是指數(shù)計(jì)算信號(hào),主連復(fù)權(quán)計(jì)算績(jī)效等3種進(jìn)一步的闡述。當(dāng)然還有按照我們分析的邏輯把所有的品種結(jié)果都輸出出來(lái),會(huì)有符合邏輯的地方,也同樣會(huì)有大跌眼鏡的地方。
最后給大家留一個(gè)思考題,如果一個(gè)策略,在主力復(fù)權(quán)回測(cè)很好,是否在指數(shù)合約也是很好呢?可以留言參與討論。如果你覺(jué)得這篇文章對(duì)您有幫助,麻煩轉(zhuǎn)發(fā)一下或者在文末點(diǎn)一下在看和贊,碼字不宜,望客官不要白嫖了洋洋和小松鼠~
??
End