劉佳祺 劉雨嵐 沈雨霏 劉德紅
摘要:股票市場的價格具有非平穩(wěn)的非線性特征,因此直接預(yù)測非常困難。在本文中,我們使用集合經(jīng)驗(yàn)?zāi)J椒纸夥椒▽⑸献C綜合指數(shù)的時間序列分解為有限數(shù)量的IMF函數(shù)和一個趨勢項(xiàng)。然后對IMF進(jìn)行重構(gòu)得到高頻序列、低頻序列、長期趨勢三個部分,再將得到的三個部分分別輸入BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練得到三個預(yù)測值,最后,整合三個預(yù)測值以獲得最終預(yù)測值。實(shí)證結(jié)果表明,EEMD-BP方法比傳統(tǒng)的股價預(yù)測方法具有更高的預(yù)測精度。
關(guān)鍵詞:上證綜指;股指預(yù)測;集合經(jīng)驗(yàn)?zāi)B(tài)分解模型;BP神經(jīng)網(wǎng)絡(luò)
中圖分類號:F830.91
文獻(xiàn)識別碼:A
文章編號:1001-828X(2019)010-0319-03
一、引言
股票市場是一個國家宏觀經(jīng)濟(jì)運(yùn)行的“晴雨表”,在金融市場的發(fā)展中占有重要地位。因此,研究股票市場波動特征和股指預(yù)測具有重要意義。目前股票指數(shù)預(yù)測的方法主要可以分為三類:證券分析法,時間序列法和人工智能法。已有文獻(xiàn)表明,人工智能法中的BP神經(jīng)網(wǎng)絡(luò)模型被廣泛應(yīng)用于投資預(yù)測領(lǐng)域,具有很強(qiáng)的應(yīng)用價值。但是如果直接將股票指數(shù)等原始數(shù)據(jù)作為參數(shù)輸入到神經(jīng)網(wǎng)絡(luò)中,干擾項(xiàng)比較多,導(dǎo)致信號的特征量并不突出,神經(jīng)網(wǎng)絡(luò)需要很長的時間才能把握信號的特征。因此,作者采用Huang等提出的EEMD算法,將原始序列分解后得到的固有模態(tài)函數(shù)輸入BP神經(jīng)網(wǎng)絡(luò),大大提高了BP神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)訓(xùn)練的效率。綜上所述,本文采用EEMD方法和BP神經(jīng)網(wǎng)絡(luò)模型相結(jié)合的方法來預(yù)測上證綜合指數(shù),選取2013年1月4日至2018年12月28日上證綜指每日收盤價作為原始數(shù)據(jù),實(shí)證結(jié)果表明EEMD-BP模型的方法是有效的。
二、研究方法
1.集成經(jīng)驗(yàn)?zāi)B(tài)分解法(EEMD)
經(jīng)驗(yàn)?zāi)B(tài)分解法是由Wang等在1998年提出的,其基本原理是將復(fù)雜信號分解成若干個相互獨(dú)立且正交的本征模態(tài)函數(shù)(IMF),能有效地處理非線性信號。但是研究表明,在存在較多的噪聲干擾時,EMD方法經(jīng)常會出現(xiàn)模式混疊的情況,不能將IMF從原始序列中完全分離出來。為了解決這個問題,2004年Wu和Huang在EMD的基礎(chǔ)上提出了集成經(jīng)驗(yàn)?zāi)B(tài)分解算法(EEMD)。其基本原理是在原始信號中加入一組白噪聲,再對增加了白噪聲的信號進(jìn)行EMD分解,然后重復(fù)以上步驟。因?yàn)榘自肼暤墓β首V密度在整個頻域內(nèi)是個常數(shù),我們可以認(rèn)為白噪聲均勻分布在整個頻域中。當(dāng)每次選取的白噪聲密度不一樣時,就會分解得到不同的一組IMF值。把所有得到的IMF值取平均值作為最終結(jié)果,既可以消除白噪聲的影響,也解決了模式混疊的問題。
假設(shè)原始數(shù)據(jù)為x(t),EEMD算法具體步驟如下:
步驟一:將白噪聲加入原始信號中,得到含有白噪聲的原始數(shù)據(jù)x(t)
步驟二:用三次樣條函數(shù)把x(t)的局部極大值和局部極小值分別連接起來,構(gòu)成x(t)的上包絡(luò)線u(t)和下包絡(luò)線l(t)
步驟三:計算x(t)的平均包絡(luò)線
公式
步驟四:用x(t)減去m1(t)得到h1(t),若h1(t)滿足:1)極值點(diǎn)個數(shù)和零點(diǎn)數(shù)相差不超過1;2)在任意時刻上下包絡(luò)線的均值時0,那么h1(t)就是一個IMF分量。
步驟五:若h1(t)不滿足以上兩個條件,則將h1(t)作為新的原始序列,重復(fù)以上四個步驟,直到得到的序列滿足IMF的兩條性質(zhì)為止,將該IMF稱為c1
步驟六:用原始數(shù)據(jù)x(t)減去第一個IMF分量c1得到差值序列r1(t):r1(t)=x(t)-c1,將r1(t)作為原始序列并重復(fù)以上幾個步驟直至提取出所有IMF為止,此時rn(t)只有一個極值點(diǎn)或變成一個單調(diào)函數(shù)。因此,原始序列x(t)可以寫成:
公式
,其中n為IMF的個數(shù),ci為各IMF分量,rn(t)為殘差項(xiàng)
步驟七:分別對原始信號加入不同的白噪聲,重復(fù)步驟二到六;
步驟八:將得到的IMF集成均值作為最終的輸出結(jié)果。
由于加入的白噪聲是均勻分布在頻域空間中的,均值為0,能自動消除模式混疊問題,得到的結(jié)果也更加接近真實(shí)值。根據(jù)Wu和Huang的建議,白噪聲序列的次數(shù)可以根據(jù)公式
公式
得到,其中εn為最終誤差的標(biāo)準(zhǔn)差,ε為加入白噪聲的標(biāo)準(zhǔn)差,N為集成次數(shù)。一般情況下,將白噪聲序列的標(biāo)準(zhǔn)差設(shè)為0.1或0.2即可,集成數(shù)量設(shè)為100次。
2.BP神經(jīng)網(wǎng)絡(luò)算法
BP神經(jīng)網(wǎng)絡(luò)是目前應(yīng)用最廣泛的前向反饋網(wǎng)絡(luò),與反饋神經(jīng)網(wǎng)絡(luò)不同,前饋神經(jīng)網(wǎng)絡(luò)的各神經(jīng)元只接受前一層的數(shù)據(jù)輸入并輸出給下一層,并不反饋回上層,具有很強(qiáng)的非線性映射能力,預(yù)測精確度較高。BP神經(jīng)網(wǎng)絡(luò)全稱為Error?Back?Propagation,即利用給定輸入值與期望輸出值之間的誤差的反向傳導(dǎo)原理,反向從輸出層到輸入層對網(wǎng)絡(luò)各層的權(quán)值(均值)和閾值(臨界值)不斷修正,直到網(wǎng)絡(luò)輸出的誤差最接近預(yù)期值為止。具體步驟為:首先擬定初始化的三層權(quán)值及閾值,將訓(xùn)練樣本的原始數(shù)據(jù)輸入輸入層中,輸入層正向?qū)?shù)傳遞給隱含層,隱含層利用未完全訓(xùn)練的模式計算出輸出參數(shù),再將輸出參數(shù)傳遞給輸出層輸出。隨后計算上述步驟輸出結(jié)果與預(yù)期結(jié)果的誤差,并反向傳遞,先修正輸出層的權(quán)值及閾值,反向傳播到隱含層,修正隱含層的權(quán)值及閾值。至此一次訓(xùn)練結(jié)束,開始第二次訓(xùn)練,直至網(wǎng)絡(luò)輸出的誤差達(dá)到預(yù)期值為止。
3.EEMD-BP模型
集合經(jīng)驗(yàn)?zāi)B(tài)分解法在非對線性、非平穩(wěn)序列的處理方面具有很強(qiáng)的優(yōu)勢,而BP神經(jīng)網(wǎng)絡(luò)則在預(yù)測方面具有很高的精確度,因此將二者結(jié)合是一種很好的方法。用EEMD-BP模型預(yù)測上證綜指的流程圖如圖1所示,首先用集合經(jīng)驗(yàn)?zāi)B(tài)分解法分解上證綜指時間序列,得到一組有限個固有模態(tài)函數(shù)(IMFi)和一個趨勢項(xiàng)(R),然后對固有模態(tài)函數(shù)進(jìn)行重構(gòu),按照頻率將新的IMF分成高頻序列和低頻序列,再加上趨勢項(xiàng)代表的長期趨勢共三個時間序列,分別輸入BP神經(jīng)網(wǎng)絡(luò)進(jìn)行重復(fù)訓(xùn)練,得到三個預(yù)測值,最后將三個預(yù)測值進(jìn)行整合得到最終預(yù)測值。
三、實(shí)證研究
1.數(shù)據(jù)來源及說明
本文的實(shí)證研究選取了2013年1月4日至2018年12月28日上證綜合指數(shù)的收盤價作為樣本數(shù)據(jù),共1458條數(shù)據(jù)。數(shù)據(jù)來源:網(wǎng)易財經(jīng)
2.上證綜指的EEMD分解
(1)EEMD分解
本文利用MATLAB軟件對1458條上證指數(shù)收盤價數(shù)據(jù)進(jìn)行分解,將白噪聲設(shè)置為0.1倍標(biāo)準(zhǔn)差,總體平均次數(shù)設(shè)定為100次。經(jīng)過EEMD分解之后得到9個固有模態(tài)函數(shù)和1個余項(xiàng),如圖2所示。這九個分量的主要區(qū)別是波動頻率的不同,IMF1是原始數(shù)據(jù)最先分離出來的變量,頻率最高,IMF9是原始數(shù)據(jù)最后分離出的變量,頻率最低,R是分離出所有IMF函數(shù)后的余項(xiàng),可以很好地反映出原始數(shù)據(jù)的趨勢。從圖中我們可以看出,上證綜指在這在這五年中是先增后減的。
我們對每個IMF分量和殘差項(xiàng)做統(tǒng)計分析可得表1,其中的Pearson系數(shù)是指固有模態(tài)函數(shù)IMF和趨勢項(xiàng)R與原始未分解序列的相關(guān)性,而方差占原始序列比例反映了分解后的各IMF函數(shù)對原始序列波動的貢獻(xiàn)率。由表可見,隨著頻率的增大,IMF的周期也變長,IMF與原始序列的相關(guān)性和對原始序列波動的貢獻(xiàn)都呈現(xiàn)增長的趨勢。
(2)IMF的重構(gòu)
我們采用均值為0的T檢驗(yàn)的方法對得到的IMF分量進(jìn)行重構(gòu)。由表2可知,在10%的顯著水平下,IMF1-IMF5在零均值檢驗(yàn)原假設(shè)是不顯著的,從IMF6開始均值發(fā)生顯著變化。由于EEMD分解之后的每個IMF分量都是相互獨(dú)立的,因此我們可以把IMF1到IMF5相加,得到高頻序列,再把IMF6到IMF9相加,得到低頻序列。
對重構(gòu)后得到的高頻序列、低頻序列和余項(xiàng)分別進(jìn)行相關(guān)性分析,由表3可見,低頻序列和趨勢項(xiàng)R與原始數(shù)據(jù)的相關(guān)性較大,分別為0.8960和0.6583,而高頻序列與原始序列的相關(guān)性僅為0.3439,方差占原始序列比例僅為7%,這說明原始序列的波動主要來源于低頻序列。
(3)波動特征分析
經(jīng)IMF重構(gòu)后的序列和原始序列如圖3所示,由圖中可以看出,高頻序列始終在零點(diǎn)附近隨機(jī)波動,代表了股票市場中正常波動;低頻序列則是在零點(diǎn)附近上下振動,表示重大事件對股票市場的影響;趨勢項(xiàng)則反映了股票市場的長期變化趨勢。
3.上證綜指的短期預(yù)測
本文用EEMD模型分解后得到的高頻序列、低頻序列和趨勢項(xiàng)作為BP神經(jīng)網(wǎng)絡(luò)的輸入層,神經(jīng)網(wǎng)絡(luò)的輸出層為上證綜指的預(yù)測價格。當(dāng)增加足夠多的神經(jīng)元節(jié)點(diǎn)時,神經(jīng)網(wǎng)絡(luò)的單個隱含層總能實(shí)現(xiàn)從輸入層到輸出層的任意非線性映射,所以即使面對股指這樣的復(fù)雜情況,只要經(jīng)過足夠多次的訓(xùn)練,一個隱含層即可滿足大多數(shù)情況。因此本文選擇只一個隱含層的三層BP神經(jīng)網(wǎng)絡(luò),隱含層節(jié)點(diǎn)的個數(shù)則根據(jù)沈玉花等提出的BP神經(jīng)網(wǎng)絡(luò)隱含層單元數(shù)改進(jìn)方法確定。
網(wǎng)絡(luò)結(jié)構(gòu)確定后我們需要對BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,將前1436組數(shù)據(jù)作為訓(xùn)練樣本訓(xùn)練神經(jīng)網(wǎng)絡(luò)模型,并用后22組數(shù)據(jù)作為預(yù)測樣本,選取輸入層節(jié)點(diǎn)數(shù)為4,然后根據(jù)前文所述選取隱含層節(jié)點(diǎn)數(shù)的方法確定最佳隱含層節(jié)點(diǎn)數(shù)為2,再將所得的高頻、低頻序列和余項(xiàng)的預(yù)測值進(jìn)行整合得到最終預(yù)測結(jié)果,如圖4所示。
為了驗(yàn)證EEMD-BP模型的有效性,我們用BP神經(jīng)網(wǎng)絡(luò)模型對原始數(shù)據(jù)進(jìn)行預(yù)測作為對比,兩個模型的誤差如表4所示。本文采用平均絕對百分比誤差(MAPE)、平均絕對誤差(MSE)和均方根誤差(RMSE)來衡量兩個模型的誤差,數(shù)字越小越好。由表中可以看出,EEMD-BP方法準(zhǔn)確度明顯高于單獨(dú)采用BP神經(jīng)網(wǎng)絡(luò)預(yù)測的值,這說明的EEMD模型能提高預(yù)測的準(zhǔn)確度。
四、結(jié)語
本文通過采用EEMD和BP網(wǎng)絡(luò)模型結(jié)合的方法對上證綜指的價格進(jìn)行研究,得到以下兩個結(jié)論:一是EEMD模型能有效地處理非線性序列,把握原始序列信號特征,有助于BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練過程;二是先利用EEMD模型對數(shù)據(jù)進(jìn)行平穩(wěn)化處理,能提高BP神經(jīng)網(wǎng)絡(luò)預(yù)測的準(zhǔn)確度,減小預(yù)測結(jié)果與實(shí)際結(jié)果之間的誤差。
參考文獻(xiàn):
[1]何凱,蘇梽芳,何衛(wèi)平.上證基金指數(shù)波動結(jié)構(gòu)分解與短期預(yù)測:基于EEMD模型[J].金融理論與實(shí)踐,2014(1):80-85.
[2]阮連法,包洪潔.基于經(jīng)驗(yàn)?zāi)B(tài)分解的房價周期波動實(shí)證分析[J].中國管理科學(xué),2012,20(3):41-46.
[3]劉海飛,李心丹.基于EMD方法的股票價格預(yù)測[J].統(tǒng)計與決策,2011(10):59-61.
[4]陳園園,劉俊,傅強(qiáng).基于EMD的神經(jīng)網(wǎng)絡(luò)股價預(yù)測方法[J].新疆大學(xué)學(xué)報:哲學(xué)·人文社會科學(xué)版,2014,42(4):6-11.
[5]王文波,費(fèi)浦生,羿旭明.基于EMD與神經(jīng)網(wǎng)絡(luò)的中國股票市場預(yù)測[J].系統(tǒng)工程理論與實(shí)踐,2010,30(6):1027-1033.
[6]秦宇.應(yīng)用經(jīng)驗(yàn)?zāi)B(tài)分解的上海股票市場價格趨勢分解及周期性分析[J].中國管理科學(xué),2008,16(S1):219-225.