王哲 肖臻
【摘要】? ? 期貨市場向從業(yè)者提供了套期保值工具以規(guī)避價格風(fēng)險,基于K線圖的技術(shù)分析以及基于統(tǒng)計分析與機器學(xué)習(xí)的量化交易,能提高期貨市場流動性,從而加速價格發(fā)現(xiàn)。然而,目前K線圖的分析過于依賴人主觀分析的經(jīng)驗,量化分析則通過特征預(yù)測漲跌來獲得買賣點,由于特征很容易失效,因此準確率不高。本研究通過人機結(jié)合,基于無監(jiān)督深度學(xué)習(xí)自編碼模型,將K線圖形狀時間序列數(shù)據(jù)降維,可視化為散點圖,使用點的顏色表示后續(xù)價格走勢,點之間的距離代表兩段K線圖形狀的相似度,因此通過散點圖可以快速檢索與當前K線圖形狀相似的歷史K線圖,并根據(jù)歷史K線圖后續(xù)走勢做出交易決策。有別于傳統(tǒng)方法,本方法既可以充分利用算法對數(shù)據(jù)的處理能力自動學(xué)習(xí)特征,同時又能很好的利用人視覺分析的經(jīng)驗。
【關(guān)鍵詞】? ? 人機結(jié)合? ? 期貨交易? ? 時序降維? ? 可視化? ? 自編碼網(wǎng)絡(luò)
一、國內(nèi)外研究現(xiàn)狀
1.1量化交易的研究
傳統(tǒng)分析方法側(cè)重于依靠特征(因子)預(yù)測漲跌的方法對量化交易進行研究,缺點是精準度不高、容易過擬合,同時,某特征被證明有效后,容易引起市場跟風(fēng),最終導(dǎo)致失效。
Jegadeesh and Titman (1993) 對橫截面動量進行了研究[1],定義了動量因子,是指價格趨勢有一種慣性,強者恒強,弱者恒弱,相應(yīng)的交易策略是追漲殺跌,動量因子容易理解,可操作性強。
Fernandez-Perez A 等人(2016) 總結(jié)了期貨交易常用的11個因子[2],包括動量因子、期限結(jié)構(gòu)因子、特質(zhì)波動率、持倉情況因子、流動性因子、通脹因子、匯率因子等因子。
上海交通大學(xué)胡波(2018)使用隨機森林和支持向量機算法研究了黃金期貨交易[3],此論文的創(chuàng)新點從算法上對支持向量機進行了加權(quán),對時間較早的數(shù)據(jù)特征降低權(quán)重,時間近的數(shù)據(jù)特征增加權(quán)重。
1.2無監(jiān)督深度學(xué)習(xí)自編碼器的研究
無監(jiān)督深度學(xué)習(xí)的優(yōu)勢在于能自主發(fā)現(xiàn)特征。網(wǎng)絡(luò)通過多層處理,將原始的“低層”特征轉(zhuǎn)換為“高層”特征表示,可完成復(fù)雜的分類等任務(wù)。深度學(xué)習(xí)在圖像識別、聲音識別、文本翻譯等領(lǐng)域取得了很多成果。
自編碼器是深度學(xué)習(xí)中的一種無監(jiān)督學(xué)習(xí)模型,它利用神經(jīng)網(wǎng)絡(luò)編碼器將輸入壓縮成潛在空間表征,再用解碼器將這種表征重構(gòu)為輸出,通過這種有損的壓縮算法,學(xué)習(xí)到輸入數(shù)據(jù)最重要的特征。
Madiraju N S,? Sadat S M,? Fisher D(2018)提出了一種針對時間序列數(shù)據(jù)的無監(jiān)督聚類算法[4],在聚類前通過自編碼器將時間序列數(shù)據(jù)降維。
Mohammed Ali,Mark W. Jones,Xianghua Xie,Mark Williams. TimeCluster(2019)提出了一種時間序列數(shù)據(jù)降維后,通過可視化進行模式識別與異常檢測的方法 [5],數(shù)據(jù)降維綜合使用了自編碼器與PCA等方法。與金融數(shù)據(jù)分析不同,文中舉例的呼吸時間序列數(shù)據(jù)非常有規(guī)律,模式比較明顯,人眼很容易識別異常,而在金融數(shù)據(jù)分析中,K線圖波浪識別主觀性更強,模式無明顯界限。同時,相較于醫(yī)學(xué)領(lǐng)域?qū)蚀_性的高要求,金融數(shù)據(jù)分析對準確率要求不如醫(yī)學(xué)領(lǐng)域嚴格,只需勝率略大即可。
二、人機結(jié)合在期貨交易中的應(yīng)用總體研究
人們在使用K線圖做期貨交易分析時,假設(shè)歷史會重演,通過K線圖的形狀來判斷價格走勢,例如鉆石底、頭肩頂?shù)取H欢?,目前K線圖的分析過于依賴人的經(jīng)驗,因此,我們可以通過皮爾遜相關(guān)系數(shù)計算兩條K線圖曲線的形狀相似度,找到與當前走勢相符的歷史數(shù)據(jù),返回其后續(xù)走勢的曲線,然后用人腦過濾一遍,來決定最終操作。
通過研究發(fā)現(xiàn),相似度類似的曲線有很多條,后續(xù)走勢可能存在差異。通過把每一段K線圖降維到二維空間的一個點,點之間的距離越近代表這兩段K線圖的形狀越相似,越遠代表這兩段K線圖的形狀差異越大,點的顏色代表這段K線圖后續(xù)價格的走勢。如果上漲為紅色,下跌為綠色,把這些點畫成散點圖后,就可以通過人來觀察待預(yù)測的點所處位置周圍顏色分布情況來判斷交易信號。本文的創(chuàng)新點是人機結(jié)合,開創(chuàng)了K線圖之外的一個新的可視化工具來輔助期貨交易決策。
三、實現(xiàn)方案
通過前30天的日K線數(shù)據(jù)預(yù)測后5天的價格走勢,將期貨交易K線圖時間序列數(shù)據(jù)用滑動窗口滾動生成數(shù)據(jù)集[5],使用無監(jiān)督深度學(xué)習(xí)自編碼模型[4]訓(xùn)練降維模型,然后通過模型對歷史期貨交易數(shù)據(jù)降維抽取特征,和待預(yù)測時序數(shù)據(jù)降維后的特征一起生成可視化的二維散點圖。
3.1數(shù)據(jù)預(yù)處理
1.期貨市場有幾十種交易品種,綜合考慮如下因素,選取螺紋鋼作為研究標的:交易活躍,不易產(chǎn)生滑點;交易一手金額適中,易控制風(fēng)險;價格波動率適中,即不會因為波動太大而爆倉,也不會因為波動太小沒有盈利;上市時間早,有較長歷史數(shù)據(jù)可用。
2.螺紋鋼日K線圖的數(shù)據(jù)包含開盤價、收盤價、最高價、最低價、成交量,從2009年3月27日到2021年8月4日共3006行數(shù)據(jù),使用30+5個工作日的滑動窗口[5],按天滑動滾動生成2970份步長為35的時序樣本數(shù)據(jù),其中前面30步長時序數(shù)據(jù)用于降維,后5個步長用于判斷后續(xù)走勢。
3. K 線圖的形狀與價格絕對值無關(guān),由于通貨膨脹等原因,時間越接近,價格越高,降維后保留的部分價格信息會干擾決策,通過求日漲跌幅消除其影響。其次,對數(shù)據(jù)做歸一化為深度學(xué)習(xí)訓(xùn)練做準備。90%的樣本數(shù)據(jù)用于深度學(xué)習(xí)訓(xùn)練(70%訓(xùn)練數(shù)據(jù),20%測試數(shù)據(jù)),另外10%用于評估人機結(jié)合交易的效果。
3.2自編碼器無監(jiān)督深度學(xué)習(xí)訓(xùn)練
1.參考文獻[4],使用TensorFlow和Keras構(gòu)建深度學(xué)習(xí)卷積自編碼模型,將30(步長)*5(特征)的時序數(shù)據(jù)降維到6維特征,使用90%樣本集中的30步長時序數(shù)據(jù)進行無監(jiān)督學(xué)習(xí)訓(xùn)練。
2.編碼器首先通過一維卷積捕捉序列間的短距離波動,然后經(jīng)過池化將卷積結(jié)果降維,降維后的數(shù)據(jù)通過兩個雙向LSTM學(xué)習(xí)到序列前后的數(shù)據(jù)波動,最后壓縮成6維特征。
3.解碼器進行UpSample和反卷積操作,將學(xué)習(xí)到的6維特征它重構(gòu)為30*5時序數(shù)據(jù),與輸入序列對比,以MSE為損失函數(shù),不斷的訓(xùn)練這個深度自編碼網(wǎng)絡(luò),就可以得到自編碼降維模型。
3.3降維和可視化
使用自編碼器訓(xùn)練出來的模型,將K線數(shù)據(jù)壓縮成6維特征,通過PCA進一步降維到2維,后5天走勢跌幅超過3%的點標識為綠色圓點,漲幅超過3%的點標識為紅色圓點,需要預(yù)測的當前行情通過同樣的模型將K線數(shù)據(jù)降維到散點平面圖上的一個點,用黑色三角形表示,根據(jù)點附近的紅綠圓點聚集情況判斷是要買多,還是賣空或者不交易。
通過實驗,可以非常清楚的看到K線圖形狀相似度接近的歷史曲線后續(xù)的歷史走勢,為交易決策提供了K線圖外的一種可視化工具。
四、結(jié)束語
通過機器學(xué)習(xí)K線圖形狀關(guān)鍵特征,將K線圖形狀相似度信息與價格未來走勢可視化為散點圖,快速找到與當前K線圖形狀類似的歷史K線圖及后續(xù)價格走勢,實現(xiàn)計算機輔助交易決策。機器學(xué)習(xí)與人腦結(jié)合,在K線圖以外,新創(chuàng)建了一種可視化輔助交易決策的圖。
參? ?考? 文? 獻
[1] Narasimhan Jegadeesh and Sheridan Titman .Returns to Buying Winners and Selling Losers:Implications for Stock Market Efficiency. The Journal of Finance, March 1993
[2] Fernandez-Perez A ,? Fuertes A M ,? Miffre J . Harvesting Commodity Risk Premia.2016
[3]胡波. 基于機器學(xué)習(xí)的期貨市場趨勢研究[D].上海交通大學(xué),2018.
[4] Madiraju N S ,? Sadat S M ,? Fisher D , et al. Deep Temporal Clustering : Fully Unsupervised Learning of Time-Domain Features[J].? 2018.
[5]Mohammed Ali,Mark W. Jones,Xianghua Xie,Mark Williams. TimeCluster: dimension reduction applied to temporal data for visual analytics[J]. The Visual Computer,2019,35(6-8):