賀毅岳,李 萍,韓進博
(1.西北大學 經濟管理學院,陜西 西安 710127;2.西安財經大學,陜西 西安 710100)
股票市場是上市公司籌集社會資金的重要途徑之一,股票投資已成為投資者實現資產保值、增值目標的主要方式之一。在股市投資研究中,資產價格行為的分析與建模是備受研究者關注的重要課題。對主動型股票投資研究而言,價格行為研究的核心是對股票價格的走勢或未來值進行有效預測,進而指導投資者的交易決策行為,以使其所持有的投資組合經風險調整后收益最優(yōu)化。然而,面對信息錯綜復雜、狀態(tài)瞬息萬變的股票市場,如何透過復雜現象看本質、把握股票市場行情脈絡和資產價格運動狀態(tài)及趨勢,進而通過持續(xù)的交易決策獲得理想的投資收益甚至超額收益,是股票投資者尤其是機構投資者高度關注并深入研究的核心課題。然而,傳統股票投資分析方法,包括基本面分析法和技術分析法,卻因建模數據體量小、模態(tài)單一、蘊含信息量少或模型發(fā)現數據變化規(guī)律低效等缺陷,難以對股市行情和資產價格的走勢或未來值進行有效預測,進而難以為股票持續(xù)交易過程中的動態(tài)最優(yōu)投資決策提供足夠的信息支撐[1-2]。
主動型股票量化投資利用計算機技術深入分析大量的市場交易與參與者相關數據,以捕獲市場的短期非有效現象,然后運用線性或非線性優(yōu)化方法構建投資策略模型,包括選股、擇時、風險管控等子模型,進而應用于選股、擇時和風險管理等實務操作所依賴的系列決策過程,以獲取投資者期望的最優(yōu)風險調整收益[1]。擇時是金融投資過程中的關鍵環(huán)節(jié),即投資者根據其對資產價格運動趨勢或未來狀態(tài)的預測,在恰當的時機進入或退出市場,從而實現規(guī)避虧損、獲取收益的目標。對于股票投資中的非系統風險,通常需要通過擇時加以規(guī)避。股票量化擇時就是運用數量化方法判斷股票的走勢或未來狀態(tài)值,進行高拋低吸操作以獲取超額收益的交易行為。擇時的關鍵在于如何有效預測股價走勢或未來值,而股票市場是一個受多種經濟社會因素驅動的非線性復雜系統,其價格波動具有顯著的非平穩(wěn)、非線性和高噪聲的復雜特性。傳統的股市預測方法,包括金融計量方法、統計建模方法、淺層的機器學習方法,存在建模數據的容量較小或模型發(fā)現數據復雜模式的能力不足等重要缺陷,使得股價序列的特征提取及預測建模成為了金融數據建模領域的一個關鍵難題[3]。
近年來,機器學習在計算機視覺和語音識別等領域取得了系列突破性進展,特別是谷歌Alpha Go的出現,激起了眾多行業(yè)、領域展開人工智能研究與應用的熱潮,對數據密集型的金融投資行業(yè)產生了尤其深遠的影響。國內外機構投資者正深入研究如何將最新的機器學習與人工智能技術引入到量化投資策略建模過程中,并已逐步形成了新的結合智能方法的主動型量化投資模式[4]。目前,國內已出現了一些該類投資模式的成功案例,如廣發(fā)證券金融工程團隊證實了深度學習在多因子選股、量化擇時和CTA策略構建等方面的優(yōu)異表現[5]。深度學習是一種新型的多隱藏層神經網絡,通過模擬人類大腦在學習過程中的多層抽象機制,建立從底層信號到高層語義的非線性可逆映射關系,在對復雜輸入樣本本質特征的抽取方面表現出了強大的能力。在計算機視覺、自然語言處理和金融數據建模等眾多應用領域中,基于深度學習構建的模型性能及泛化能力優(yōu)異,多數應用效果取得了歷史性突破[6]。因此,將深度學習中的最新方法拓展應用于股市指數序列的預測建模,可為復雜金融時序數據的建模研究提供有益的參考,同時有利于提升量化擇時研究方法的科學性與實用性,這也正是當前股票量化投資研究的一個熱點[1,3]。
股票價格預測建模即建立股價走勢或未來值的預測模型,是量化擇時策略建模過程中的核心環(huán)節(jié),也是量化投資理論和實務界形成共識的重要研究課題[3]。國內外學者針對股票價格及市場指數的預測建模展開了系統的研究,提出了三類預測建模方法。(1)技術分析法以道氏理論為基礎,認為股價基本走勢與市場波動趨勢趨同,包括短、中、長三種走勢,三者同時存在相輔相成。典型的股票技術分析研究大多以擇時方法或策略的構造為應用背景。Mabu等運用一種基于圖的進化計算方法——遺傳網絡規(guī)劃方法,提取大量的技術指標規(guī)則創(chuàng)建規(guī)則池,并構建了適合日本股票市場的基于多技術指標規(guī)則組合的量化擇時模型,實證研究結果表明:其所構建的多指標組合擇時策略的收益比傳統的單指標擇時策略更高[7]。Wang等將技術指標規(guī)則組合應用于NASDAQ100指數成分股,構建了一個復雜的績效獎勵交易策略,其中使用時變粒子群算法獲得策略的最優(yōu)參數集,實證結果表明技術規(guī)則組合擇時表現勝過基于單個指標規(guī)則的擇時[8]。梁淇俊等以技術指標為擇時策略依據,根據指標MACD、RSI和OBV構建交易信號以及信號有效性的擇優(yōu)體系,并以中信證券收盤價數據為例,對基于三個技術指標的單策略、聯合策略有效性進行了量化分析,得到了MACD指標擇時相對最優(yōu)的結論[9]。(2)統計建模方法依據嚴謹的統計學理論對股價序列進行預測建模。國內外學者對ARIMA、GARCH和HMM等代表性方法進行了系列研究。Hassan提出一種新的HMM與模糊模型相結合的股價預測方法,使用HMM識別股價變化模式并用模糊邏輯進行預測,得到了比ARIMA、ANN等模型精度更高的預測效果[10]。張超提出基于誤差校正的ARMA-GARCH股價預測方法,并將其應用于上證指數,顯著提升了預測精度[11]。張蓓利用高斯混合GHMM模型對IBM的股價進行預測,并驗證了其預測效果優(yōu)于HMM模型[12]。(3)利用機器學習方法對金融時序進行預測建模是近年來金融數據分析領域的研究熱點。Tay等從結構風險最小化角度深入分析了SVM的最小化泛化誤差優(yōu)勢,首次利用SVM對標普500指數進行預測,驗證了SVM的金融預測性能優(yōu)于傳統神經網絡[13]。Chen等提出了一個基于信息增益的特征加權SVM和KNN結合的預測模型,并對滬深股市指數進行預測實驗,獲得了比現有模型更好的預測效果[14]。Bao等實證證明了長短期記憶網絡(LSTM)對金融時序的預測性能優(yōu)于傳統的RNN[15]。Thomas等利用LSTM對標普500指數的變化方向進行預測,發(fā)現LSTM比隨機森林、深度神經網絡與logistic回歸的分類效果好[16]。楊青等構造深層LSTM神經網絡并對全球30種股票指數的3種不同期限進行預測,結果表明LSTM泛化能力強,對全部指數在不同期限下的預測效果穩(wěn)定,比ARIMA、MLP和SVR預測精度更高,并能有效控制誤差波動,提高不同期限下指數預測的穩(wěn)定度[5]。
上述三類方法在金融時序預測問題上大多取得了較好的實證效果,但依然存在一定的理論或實用性缺陷:技術分析法直觀,但其時效性較弱、所產生的買賣信號不確定性過高,易導致預測偏誤;統計建模方法的預測結果在統計意義上可靠,但通常假定所預測序列線性或近似線性,難以實現對非線性、低信噪比金融時序的高精度預測;機器學習方法避免了統計建模方法中數據分布假設過于嚴格的問題,并具有更強的非線性關系抽象能力,能顯著提升股價預測的準確性[3]。然而,股票市場是一個以多種方式對外部環(huán)境變化進行響應的復雜系統,隨機性很強且各種現象之間存在復雜的非線性內在關系,而現有的金融時序預測建模通常依靠單一方法直接對序列模式進行挖掘,無法充分提取復雜的序列變化模式,故即便通過SVM、RNN和LSTM等機器學習方法,依然難以獲得股票投資決策所需的高精度股價預測信息。
隨著對金融市場微觀結構與交易行為心理等方面研究的不斷深入,學者們逐漸認識到單個技術難以高效地挖掘并刻畫復雜金融市場中的多維量價變化規(guī)律,進而實現高精度預測,而融合金融計量、信號處理和機器學習等多學科方法的混合或集成模型,則能通過其不同子模塊識別數據的不同模式,進而匯總獲得其中蘊含的完整變化規(guī)律,實現金融時序的高精度預測[5]。美國工程院院士Huang等創(chuàng)造性地提出了經驗模態(tài)分解(EMD)方法,將時序信號中不同尺度的趨勢或波動逐級分解,生成一系列具有不同特征尺度的本征模函數(IMF),理論上可實現對非平穩(wěn)、非線性時序信號的分解[17]。針對EMD分解不徹底、產生虛假分量和模態(tài)混疊的問題,Wu等通過引入頻率分布均勻的輔助噪聲改進EMD方法,提出了集成經驗模態(tài)分解(EEMD)方法,解決了模態(tài)混疊問題,但處理過程中加入的高斯白噪聲很難完全去除[18]。Torres等通過加入自適應白噪聲進一步改進EEMD,提出了CEEMDAN方法,有效克服了EEMD分解不完備和重構誤差過大的問題。CEEMDAN分解獲得的各IMF相對簡單且相互獨立,為充分提取IMF子序列的波動特征提供了有利條件,從而顯著降低了金融時序預測建模的難度[19]。EMD早期主要應用于信號去噪與氣象科學領域,近年被引入到經濟與金融等領域,其中與機器學習方法相結合的典型研究有:Yang等將匯率序列經EMD分解獲得的IMF輸入極限學習機,實現了對匯率預測精度的提升[20];賀毅岳等提出了EMD分解下基于SVR的股價集成預測方法EMD-SVRF,實證結果表明該方法比EMD-Elman和ARMA-GARCH等已有方法具有更小的預測誤差[21];李合龍等運用EEMD方法對投資者情緒和股指價格序列進行分解和重構,并結合計量模型分析兩者在不同時間尺度下的波動關聯性[22];Zhang等在對地表溫度的預測研究中提出構建EEMD與LSTM混合的預測模型,其實證結果表明該模型的預測效果優(yōu)于RNN、LSTM和EMD-RNN等機器學習預測模型[23]。上述研究表明:CEEMDAN克服了模態(tài)混疊問題并具有自適應分解完備和重構誤差低的優(yōu)點,在提取復雜時間序列的波動模式進而提升預測建模精度方面具有突出的優(yōu)勢,是金融時間序列分析領域極具應用前景的新方法;另一方面,LSTM通過引入門控單元系統,解決了傳統RNN模型訓練中梯度爆炸和梯度消失問題,在提取序列數據中的長期依賴關系方面極具優(yōu)勢,可利用前期“記憶”為當期決策提供支持,是當前復雜高維時序數據分析中最成功的非線性建模方法之一,也是近年來金融數據建模領域的研究熱點[3,5]。
為此,本文提出一種CEEMDAN與LSTM結合的股市指數預測建模方法CEEMDAN-LSTM:首先,運用CEEMDAN方法對市場指數序列進行分解與重構,獲得高頻分量、低頻分量與趨勢項3個子序列;然后,分別構建各子序列LSTM預測模型,并依據模型獲得各子序列的預測值,進而通過加和集成處理獲得市場指數的整體預測值。最后,以滬深300和中證500等5個代表性的國內股市指數為測試數據集,對本文預測建模方法和現有主流的金融時序機器學習預測建模方法的市場指數預測效果進行對比實驗,以分析、驗證本文方法的有效性和實用性。
本文旨在提出高精度的股市指數預測建模方法,為主動型量化投資研究與實踐者把握股市動態(tài)趨勢、規(guī)避市場風險進而增強超額收益能力提供更有效的工具。本文的主要創(chuàng)新在于:(1)將具有自適應分解能力的CEEMDAN方法引入到股市指數的預測建模過程中,從而獲得波動特征相對簡單且相互獨立的高頻、低頻分量和趨勢項3個子序列,為進一步對各子序列的高精度預測建模創(chuàng)造了有利條件,避免了現有建模方法直接從指數時序數據中提取波動模式的技術難題,顯著降低了指數時序預測建模的難度。(2)針對指數CEEMDAN分解所產生的多個子序列,運用LSTM構建各子序列的預測模型,克服了傳統統計建模方法對適用數據的分布假設過于嚴格的局限性,且能更高效地提取序列中蘊含的長期動態(tài)依賴關系,可為復雜金融時序的非線性預測建模提供有益參考。(3)將CEEMDAN的自適應分解功能與LSTM的長期依賴關系提取能力有效結合,構建股市指數的高精度混合預測模型,對提升量化擇時信號的準確度與有效性具有較強的應用參考價值,有利于拓寬基于機器學習建模的量化投資策略設計的研究思路。
1.CEEMDAN原理。EEMDAN是針對經驗模態(tài)分解(EMD)和集成經驗模態(tài)分解(EEMD)的不足而提出的一種噪聲輔助數據分析方法。EMD作為自適應信號時頻處理方法可用于非線性、非平穩(wěn)信號的分析處理,其特征是將信號平穩(wěn)化,提取出信號中不同尺度的波動模式,生成一系列具有不同時間尺度局部特征的數據序列,每一個序列即為一個本征模態(tài)函數(IMF)。EMD分解的基本思路是用上、下包絡的平均值去確定“瞬時平衡位置”,進而提取IMF,具體包括如下四個步驟:
(1)識別S(t)中所有極大值點max和極小值點min,用三次樣條插值方法分別繪制出上、下包絡線。其中,S(t)表示當前待分解序列,本文中其取值為市場指數收盤價序列。
(2)計算每一時刻上、下包絡線的局部瞬時均值,從而獲得平均包絡線m(t),按照式(1)計算新序列d(t)。
d(t)=S(t)-m(t)
(1)
然后,按照式(2)計算出Sd值來判斷d(t)是否為本征模函數。
(2)
其中,di(t)為第i次篩分的結果,Sd的閾值通常設定為0.2~0.3。若Sd值小于閾值,則篩分處理停止;否則,將d(t)當作新的待分解序列S(t),重新執(zhí)行上述迭代處理過程。
(3)若d(t)滿足IMF成立所需要的兩個條件,則d(t)為一個IMF,將d(t)從S(t)中分離,得到余項r(t)=S(t)-d(t)。
(4)若余項r(t)已成為一個單調函數或常數,或振幅低于既定閾值而無法進一步提取IMF,則整個分解過程結束。否則,將r(t)當作待分解序列S(t),返回步驟(1),重新執(zhí)行上述迭代處理過程。
經EMD分解原序列S(t)被迭代分解為n個彼此正交的IMF,記為ci(t),i=1,2,…,n,以及表示原時序信號S(t)趨勢的最終殘差項rn(t)。如式(3)所示,其中ci(t)依次取為步驟(3)所得到的本征模函數d(t)。
(3)
為解決EMD分解中存在的模態(tài)混疊問題,Wu等在EMD分解中引入頻率分布均勻的輔助噪聲,提出了EEMD方法:每次將不同的頻率均勻分布的輔助白噪聲加入目標信號,然后利用EMD分解含有附加白噪聲的信號,重復執(zhí)行上述過程N次,最后對分解獲得的IMFs和趨勢項分別進行集成平均,得到原信號的最終分解結果[18]。雖然EEMD顯著改進了EMD的不足,但EEMD對原序列所添加的白噪聲仍可能在多次平均后影響分解產生的子序列,進而影響子序列的預測精度。CEEMDAN進一步改進EEMD算法,在每次分解中都添加自適應白噪聲來平滑干擾脈沖,進一步提升了EEMD分解的完整性,降低了重構誤差[19]。
2.IMF重組方法。原序列S(t)進行CEEMDAN分解獲得的各本征模函數ci(t),按如下三個步驟進行重組[21-22],可獲得S(t)的高頻分量、低頻分量和趨勢項3個子序列:
(1)分別計算各本征模函數ci(t)的均值,i=1,2,…,n;
(2)給定顯著性水平為0.05,按i=1,2,…,n的順序,依次對ci(t)執(zhí)行均值不為0的t檢驗;
(3)若ck(t)為第一個均值顯著非零的IMF,則將c1(t)至ck-1(t)加和得到S(t)的高頻子序列,將ck(t)至cn(t)加和得到S(t)的低頻子序列,而將rn(t)作為S(t)的趨勢項。
圖1給出了循環(huán)神經網絡(RNN)按時間展開的結構,其中主體結構A在t時刻讀取輸入信息,包括來自輸入層的xt以及模型的上一時刻狀態(tài)ht-1,以此更新其自身狀態(tài)為ht并產生輸出ot[16]。RNN憑借其在不同時刻隱含節(jié)點具有連接的結構,可實現對歷史信息的記憶并應用于當前輸出的計算,因而適用于時序信息的挖掘問題,已被廣泛應用于包括語音識別等多領域中序列數據的建模過程。然而,RNN參數優(yōu)化時面臨梯度消失和梯度爆炸的問題,致使其參數難以訓練達到最優(yōu)值,進而使得RNN網絡無法有效處理長期時序依賴關系。
圖1 RNN按時間展開的結構
LSTM是通過引入由輸入門、遺忘門和輸出門構成的門控單元系統而產生的一種RNN變體[3]。“門”是一種能對信息的通過進行選擇性控制的結構,通過一個sigmoid層和一個逐點相乘操作來實現,其輸出值在0~1之間,0表示完全不通過,1表示完全通過。LSTM用內部記憶單元即細胞的狀態(tài)保存歷史信息,并利用不同的“門”動態(tài)地讓網絡學習適時遺忘歷史信息、依據新信息更新細胞狀態(tài),以解決RNN中梯度消失與梯度爆炸的問題。LSTM神經網絡記憶單元的基本結構如圖2所示[5]。
圖2 LSTM單元的內部結構
LSTM通過遺忘門控制從當前狀態(tài)中移除哪些信息,輸入門控制哪些信息傳遞到當前狀態(tài)中,輸出門控制當前狀態(tài)中的哪些信息用作輸出,三個“門”共同作用、處理信息,完成時間序列的預測。遺忘門決定哪些信息被細胞狀態(tài)丟棄,它讀取ht-1和xt,按照式(4)計算遺忘門的輸出ft:
ft=σ(Wf[ht-1,xt]+bf)
(4)
it=σ(Wi[ht-1,xt]+bi)
(5)
(6)
(7)
最后,通過“輸出門”來確定輸出什么信息。通過sigmoid層確定細胞狀態(tài)的輸出部分,然后使用tanh層對細胞狀態(tài)Ct進行處理并與sigmoid門的輸出相乘,確定最后的輸出ht:
ot=σ(Wo[ht-1,xt]+bo)
(8)
ht=ottanh(Ct)
(9)
在式(4)~(9)中,xt、ht和Ct分別表示細胞的輸入、輸出和狀態(tài)向量;ft、it和ot分別表示遺忘門輸出、輸入門輸出和輸出門輸出向量;W和b表示權重向量和偏置項。用LSTM單元替代標準RNN中的隱狀態(tài)節(jié)點可以構建出LSTM網絡?;陂T控單元系統的結構特征使得LSTM網絡可以高效地處理復雜的長期時序動態(tài)依賴關系,特別適用于復雜金融時間序列建模。
股市指數經CEEMDAN分解與重組產生的子序列波動特征相對簡單,為進一步構建預測建模以充分提取子序列的波動模式創(chuàng)造了有利條件,可顯著降低對指數序列高精度預測建模的難度。為此,本文將CEEMDAN的時序分解與LSTM的時序預測的兩個優(yōu)勢功能進行結合,提出一個高精度的市場指數預測方法CEEMDAN-LSTM。圖3是CEEMDAN-LSTM的建模流程:以股市指數收盤價序列為輸入數據,通過CEEMDAN分解、本征模函數IMF的重組、高/低頻分量及趨勢項的LSTM建模及各分量預測值的加和集成四個處理階段,最終獲得高精度的指數序列預測值。
圖3 CEEMDAN-LSTM預測建模的流程
步驟1:運用CEEMDAN方法將市場指數收盤價序列分解為n個本征模函數ci(t),i=1,2,…,n,以及一個趨勢項rn(t)。
步驟2:按照前文所述的基于均值t檢驗的IMF重組方法,將各本征模函數ci(t)重組為原指數序列的高頻分量、低頻分量以及趨勢項3個子序列。
步驟3:針對高、低頻分量和趨勢項3個子序列,分別建立對應的LSTM預測模型,并對高頻子序列重組中IMF組合方式進行優(yōu)化,以使高頻預測模型達到最優(yōu)預測效果。
步驟4:利用步驟3構建的3個子序列LSTM預測模型,計算獲得各子序列的預測值,進而通過加和集成處理獲得指數的高精度預測值。
本文在闡述股市指數的預測建模過程中選取滬深300指數作為建模的數據基礎,原因包括:首先,滬深300指數是以滬深兩市具有很強代表性的300只股票為基礎編制而成,覆蓋了A股市場中大多數藍籌股,覆蓋的行業(yè)較均衡合理,其市值約占A股市場的六成,具有很強的市場代表性,能較準確地反映滬深兩市股價變化的整體行情及趨勢。其次,該指數收益率是評價股票組合投資業(yè)績的重要基準之一,可為市場中的指數化投資、指數衍生產品的創(chuàng)新提供基礎條件,因而研究滬深300指數預測建模對衍生品市場的投資研究也具有重要意義。
利用Python從聚寬量化平臺在線提取了2006年1月1日至2018年2月1日之間滬深300指數的收盤價,剔除節(jié)假日等因素的影響,共計2 955個數據作為指數預測建模的原始時序數據。在圖4所示的建模時間區(qū)間內,指數先后兩次大致經歷了上漲、下跌和橫盤震蕩三種行情階段,構成了兩個完整的股指運行周期,這使得本文所建立的模型對股市指數變化規(guī)律的表達更充分、對行情變化的適應性更強,從而能增強本文研究結論的說服力。
圖4 滬深300指數序列
對滬深300指數序列數據進行ADF檢驗,結果顯示在1%顯著性水平下指數非平穩(wěn);對指數的對數收益率序列進行Jarque-Bera檢驗,偏度為-0.587,峰度為3.639,具有尖峰厚尾特征,p值近似為0,指數收益率分布顯著非正態(tài)。同時,利用Ljung-Box統計量檢驗指數收益率序列的ARCH效應,結果顯示滯后階數超過4以后,p值遠遠小于0.05,表明收益率序列有顯著的波動聚集性。滬深300指數序列非平穩(wěn)且包含大量的噪聲,而傳統的ARIMA、GARCH等計量模型,在未進行高效的降噪處理情況下,很難對這種復雜金融時序進行高精度的預測建模。因此,本文引入CEEMDAN對指數進行自適應分解、去噪與重構,然后運用非線性時序建模方法LSTM對指數進行預測建模是合理且必要的。
1.指數序列的CEEMDAN分解。按照前文所述CEEMDAN分解過程,對滬深300指數序列進行自適應分解,結果如圖5所示,得到從上往下依次排列的10個IMF和1個殘余項,其中橫軸表示指數的時間序號,縱軸表示各IMF的頻率,從IMF1~IMF10到殘余項頻率逐步下降,變化模式也較原序列更簡單。
圖5 滬深300指數CEEMDAN分解結果
2.IMF重組處理。為了適當降低LSTM預測建模的復雜度和避免模型過擬合,參考李合龍等的研究,按照前文所述IMF重組方法,對滬深300指數經CEEMDAN分解所產生的10個IMF進行重組[22]。依次對IMF1~IMF10進行均值為0的t檢驗,檢驗結果顯示其中IMF5是首個P值小于0.05的本征模函數,即IMF5的均值顯著不等于0。因此,本文將IMF1~IMF4重組成為指數的高頻分量,IMF5~IMF10重組為指數的低頻分量,將殘余項作為指數的趨勢項r(t),從而獲得圖6所示從不同頻率視角下刻畫原指數序列變化模式的3個子序列。子序列變化模式相對簡單、有規(guī)律性,便于進一步充分提取各子序列的波動特征。
圖6 IMF重組得到的3個子序列
針對CEEMDAN分解與重組獲得的3個分量子序列,包括高頻分量、低頻分量和趨勢項,分別構建各子序列的LSTM預測模型,進而利用模型對預測區(qū)間內各子序列進行滾動預測,并采用確定系數R2、可解釋方差EVS、均方根誤差RMSE和平均絕對誤差MAE四個評價指標,對各模型的預測效果進行評估。
1.子序列LSTM預測建模。采用滾動預測建模方式,以最近30天的指數值為輸入來預測下一天的指數值[5,21]。從建模的原始時序數據中選取2006年1月1日至2016年2月1日共2 450個數據構建模型訓練集,并采用Python庫Pandas中的DataFrame對象來表示,大小為(2420×30),以剩余的505個數據構建測試集,對應的DataFrame對象大小為(505×30)。然后依次建立高、低頻分量和趨勢項對應的LSTM預測模型。
本文所構建的深層LSTM網絡具有圖7所示的計算圖結構,虛線方框內表示深層網絡的結構。在建模過程中,為消除數據間的量綱影響并提升模型的運算速度,對數據進行Z-score標準化處理[4]。模型參數設置方面參照了楊青等的研究,考慮到金融時序的非線性復雜特征及模型的運算效率,將隱藏層個數設置為2層,且每次投入模型的樣例個數即batch_size設置為41,迭代次數設置為100次,同時增設Dropout層以優(yōu)化神經網絡,失活率設置為0.2。為使模型快速收斂時損失函數取全局最小值,選取優(yōu)化器為Adagrad,設置動態(tài)學習率的初值設定為0.1,并根據經驗公式0.1×(0.96epoch)動態(tài)調整,其中epoch為迭代次數,以使學習率隨模型迭代次數的增加而均勻下降[5]。
圖7 LSTM網絡的計算圖結構
表1給出了不同神經元個數組合條件下高頻子序列LSTM預測模型的多指標評價結果,其中(10,10)對應的實驗結果整體最佳,故將高頻模型中兩個隱藏層的神經元個數設定為(10,10)。按照同樣的方法,將低頻、趨勢子序列預測模型的兩個隱藏層神經元個數均設定為(6,6)。在確定上述參數條件下,建立各子序列的LSTM預測模型,模型均在100次迭代后損失函數均能收斂到平穩(wěn)狀態(tài),故本文選取100次迭代后的訓練模型作為最優(yōu)預測模型。按照最近30天預測下一天的滾動預測方式,利用已建立的LSTM預測模型對預測區(qū)間內的高頻、低頻和趨勢項3個子序列進行預測。表2給出了各子序列預測模型的多指標評價結果:高頻子序列預測模型的R2只有0.408 1,表明該模型解釋能力不足、預測誤差較大,結合圖8所示,高頻子序列預測值相對真實值的右偏特征,表明高頻子序列預測模型存在明顯的滯后問題,需進一步改進;而低頻和趨勢子序列預測模型對應的R2都已超過0.997,表明兩者的預測值和實際值均已非常接近,預測效果出色。
圖8 高頻子序列的LSTM滾動預測結果
表1 不同神經元個數條件下高頻分量預測模型的評估結果
表2 各子序列預測模型的多指標評價結果
2.高頻子序列重組中IMF組合方式的優(yōu)化。重組構成高頻子序列的IMF1~IMF4在包含股市指數波動特征信息的同時攜帶大量的噪聲。因此,以IMF1~IMF4的不同子集重組產生的高頻子序列,也會同時包含指數的波動特征信息以及不同比例的噪聲。顯然,在IMF1~IMF4中,IMF3和IMF4的頻率相對更低,包含指數的波動信息相對更多,而IMF1、IMF2則含有更多的噪聲。因此,優(yōu)化后重組形成高頻子序列的IMF集合,至少應包含IMF3和IMF4。進一步采用本文所確定的子序列LSTM預測模型參數,并根據預測效果評估結果確定最優(yōu)的高頻IMF組合方式。如表3所示,在4種合理的IMF組合方式中,剔除IMF1后利用IMF2~IMF4重組產生高頻子序列,進而構建的高頻預測模型的預測效果最優(yōu)。相對于第一種組合方式,最優(yōu)組合方式的R2值、EVS、RMSE、MAE分別提升了116.3%、113.1%、47.6%、45.4%。圖9為最優(yōu)組合方式下高頻子序列的滾動預測結果,其滯后性比圖8中高頻子序列的預測結果有明顯改善。
表3 不同IMF組合方式下高頻預測模型的評估結果
圖9 最優(yōu)組合方式下高頻子序列的預測結果
將組合方式優(yōu)化后產生的高頻、低頻與趨勢項3個子序列的預測值加和,獲得優(yōu)化后的指數集成預測結果,如圖10所示??捎^察到未經優(yōu)化的預測值相對于真實值存在較明顯的整體右偏缺陷,表明未經優(yōu)化的預測值具有一定的滯后性,而優(yōu)化后的預測值明顯更加貼近真實值。表4給出了優(yōu)化前后指數集成預測效果的多指標評估結果:R2值提升了0.5%,EVS提升了0.5%,RMSE提升了43%,MAE提升了40.3%。這表明,IMF組合方式優(yōu)化處理顯著降低了模型預測的滯后性,并提升了預測精確度。
圖10 優(yōu)化前后指數的CEEMDAN-LSTM集成預測結果
表4 優(yōu)化前后指數的集成預測效果的評估結果
本文選取包括滬深300、上證綜指等5個最具代表性的國內股市指數為實驗數據,并以已經研究證實預測效果較突出的指數預測建模方法[5,21],包括多層感知器MLP、支持向量回歸SVR和LSTM,作為實驗的對比方法,對CEEMDAN-LSTM模型的預測有效性、適應性進行評估。
以本文所述訓練期內的滬深300指數時序數據為輸入,分別運用MLP、SVR和LSTM三種指數預測建模方法,直接針對指數序列數據構建相應的指數預測模型,然后以可視化方式呈現各種預測模型的滾動預測效果,并對各模型的預測效果進行采用多指標評估與對比分析,以客觀地評估CEEMDAN-LSTM指數預測建模方法的有效性。
多層感知器(MLP)是一種前向結構的人工神經網絡(ANN),其中包含多個節(jié)點層,每個節(jié)點代表一個帶有非線性激活函數的神經元。MLP是一個有向圖,每一層都全連接到下一層,能將一組輸入向量映射到輸出向量,通常采用反向傳播BP算法訓練網絡權值。本文通過交叉驗證與網格搜索方法設定MLP參數的最優(yōu)值:正則化懲罰項系數α為0.1,隱層層數為3,相應的節(jié)點數為(13,23,9),激活函數為“tanh”,優(yōu)化算法為“l(fā)bfgs”。圖11給出了指數MLP預測模型的滾動預測結果,存在一定的預測滯后性。
圖11 MLP模型的滾動預測結果
按照本文所述LSTM預測建模方法,針對滬深300指數序列的前2 450個數據,創(chuàng)建訓練集并直接建立基于LSTM的指數序列預測模型,其參數設定參照前文所述的子序列LSTM預測模型參數。直接通過LSTM建模的指數預測結果如圖12所示,其中預測值相對真實值有一定右偏,表明該預測方法存在預測滯后性問題。
圖12 LSTM模型的指數滾動預測結果
參照賀毅岳等關于股市指數SVR預測建模的研究結果,以指數時序數據為基礎創(chuàng)建訓練集和測試集[21]。在對指數的SVR建模過程中,為避免模型超參數較多導致參數搜索計算代價過高的問題,本文限定系數γ和懲罰系數C的搜索區(qū)間為[0.01,20],待選核函數為:多項式核、線性核函、高斯核,進一步采用隨機參數優(yōu)化方法進行參數尋優(yōu)實驗,搜索到SVR預測模型中最優(yōu)的核函數為“l(fā)inear”、懲罰系數α為20,其余參數設定為Sklearn庫中SVR函數提供的默認值。圖13給出了基于SVR的指數滾動預測結果,仍存在一定的預測滯后性。
圖13 SVR模型的指數滾動預測結果
在CEEMDAN分解的基礎上進一步構建預測模型CEEMDAN-MLP和CEEMDAN-SVR,在模型參數尋優(yōu)過程中均采用了隨機參數優(yōu)化方法[3]。圖14給出了本文方法及上述5種對比建模方法在預測區(qū)間的前100個指數值上的滾動預測對比結果。表5進一步給出了各預測方法的多指標評估結果,其中CEEMDAN-LSTM的R2和EVS最大,RMSE和MAE最小,其在所有評估指標上一致優(yōu)于其他5種對比方法。表5中模型CEEMDAN-MLP和CEEMDAN-SVR顯著優(yōu)于SVR和MLP直接建模的預測效果,也證實了對指數進行CEEMDAN分解與重組處理能顯著提升建模的精確度。這表明通過CEEMDAN分解與重組產生子序列,再建模預測并集成最終預測值的思路是合理有效的。
圖14 六種建模方法的滾動預測結果對比
表5 不同預測建模方法在滬深300上的評估結果
利用Python從聚寬量化平臺在線提取2006年1月1日至2018年2月1日之間上證綜指、上證50、深圳成指3個典型股市指數的收盤價,提取2008年1月1日至2018年2月1日之間中證500指數的收盤價,剔除節(jié)假日等因素的影響,前3個指數均含有2 955個數據,中證500含有2 472個數據,作為指數預測建模的輸入數據。對上述4個指數的統計性質分析與檢驗表明:與滬深300指數類似,上述4個指數包含大量的噪聲,具有顯著的非正態(tài)、非平穩(wěn)特征,對應的收益率序列波動聚集性顯著,直接應用傳統的計量方法難以獲得高精度的預測效果,因而選用CEEMDAN-LSTM對各指數進行預測建模。
分別以上述4種指數的2016年2月1日之前共2 450個數據(中證500前1 967個數據)作為建模輸入數據,參照前文所述滬深300指數序列CEEMDAN-LSTM建模過程,采用滾動預測建模方式,以最近30天的指數值為輸入變量來預測下一天的指數值,依次通過指數序列的CEEMDAN分解和重組、子序列LSTM預測建模及高頻子序列重組中IMF組合方式優(yōu)化、加和集成指數整體預測值等一系列建模步驟,構建出與每一種指數對應的CEEMDAN-LSTM預測模型。同時,參照本文基于滬深300指數的預測效果對比分析部分所述,針對上述每一種指數,采用滾動預測建模方式,分別運用MLP、SVR、LSTM、CEEMDAN-SVR和CEEMDAN-MLP建模方法,構建5個對應的指數預測對比模型。然后,以每一個指數2016年2月2日至2018年2月1日共505個數據構建滾動預測的測試集,分別利用上述6種預測模型進行周期為30天的按日滾動預測,以對比分析各模型的預測效果。
圖15依次給出了上述6種建模方法在上證綜指、上證50、深圳成指和中證500四個指數預測區(qū)間上的滾動預測對比結果。其中,相比其他對比建模方法的預測曲線,CEEMDAN-LSTM預測曲線與原指數曲線貼合最緊密,時間滯后性最弱。進一步地,表6~9依次給出了各模型在四個指數上滾動預測效果的多指標評估結果,其數據證實,在對上述每一個指數的預測表現中,相對于其他5種對比建模方法,CEEMDAN-LSTM的R2和EVS值均最大,而RMSE和MAE值均最小,即其在所有評估指標上一致優(yōu)于包括LSTM在內的其他5種對比方法;同時,在對每一個指數的預測表現中,CEEMDAN-SVR和 CEEMDAN-MLP又分別優(yōu)于SVR和MLP直接建模,證實了對指數進行CEEMDAN分解與重組處理能顯著提升進一步預測建模的有效性。因此,將CEEMDAN的自適應分解功能與LSTM的長期依賴關系提取能力結合運用,進而構建股市指數的高精度混合預測模型的思路是合理、有效的。
(a)上證綜指
(b)上證50
(c)深圳成指
(d)中證500圖15 6種建模方法在4個典型股市指數上的滾動預測效果對比
表6 不同預測建模方法在上證綜指上的評估結果
表7 不同預測建模方法在上證50上的評估結果
表8 不同預測建模方法在深圳成指上的評估結果
表9 不同預測建模方法在中證500上的評估結果
本文針對股票市場指數預測建模這一金融投資領域的核心問題,運用CEEMDAN分解與重組產生波動特征更簡單的高頻、低頻及趨勢子序列,為進一步構建子序列預測模型充分提取子序列的復雜波動模式創(chuàng)造了有利條件,顯著降低了指數序列高精度預測建模的難度,使得本文通過CEEMDAN進行指數分解與重組后分別構建預測模型,進而加和集成獲得指數整體預測值的思路合理、可行。本文在對指數CEEMDAN分解與重組的基礎上,充分利用LSTM對復雜序列中長期依賴關系高效提取的優(yōu)勢,提出并詳細闡述了一種CEEMDAN和LSTM結合的股市指數集成預測建模方法CEEMDAN-LSTM。最后,選取了包括滬深300、上證綜指等5個最具代表性的國內股市指數為實驗數據,并以經研究證實預測效果較突出的主流機器學習指數建模方法,包括MLP、SVR與LSTM,作為實驗的對比方法,對CEEMDAN-LSTM模型的預測有效性、適應性進行多維度量化評估。實驗結果證實,CEEMDAN-LSTM的預測表現一致性地優(yōu)于現有建模方法,其預測結果誤差小、精度高,且相對真實指數值具有更低的時間滯后性。然而,本文在CEEMDAN-LSTM的建模過程中,對網絡隱藏層個數等部分參數的選取仍具有一定的主觀性;同時,雙層LSTM單元未必能充分挖掘出非線性復雜指數序列中蘊含的深層次變化模式信息,故還需進一步研究模型參數的最優(yōu)化處理。