■殷光偉 沈陽工業(yè)大學(xué)經(jīng)濟(jì)學(xué)院 沈陽工業(yè)大學(xué)金融市場(chǎng)和風(fēng)險(xiǎn)管理研究所
■高麗峰 付岱山 萬志華 沈陽工業(yè)大學(xué)經(jīng)濟(jì)學(xué)院
自2005年7月21日起,我國開始實(shí)行了以市場(chǎng)供求為基礎(chǔ)、參考一籃子貨幣來進(jìn)行調(diào)節(jié)、有管理的浮動(dòng)匯率制度。至此,人民幣匯率不再盯住單一美元,人民幣匯率的變動(dòng)趨勢(shì)變得更加復(fù)雜化,對(duì)人民幣匯率的準(zhǔn)確預(yù)測(cè)也變得更加困難。
人工神經(jīng)網(wǎng)絡(luò)是一種非參數(shù)的數(shù)據(jù)驅(qū)動(dòng)型的方法,由于其具有能夠逼近非線性的能力,在預(yù)測(cè)領(lǐng)域中得到了比較廣泛的應(yīng)用;但是,當(dāng)將人工神經(jīng)網(wǎng)絡(luò)用于人民幣匯率預(yù)測(cè)時(shí),并不能得到理想的效果。匯率系統(tǒng)具有混沌特性,由于混沌具有一定的確定性,使得它具有有限預(yù)測(cè)能力,因此,對(duì)匯率系統(tǒng)長(zhǎng)期演化行為進(jìn)行預(yù)測(cè)是不可行的,而對(duì)其短期行為進(jìn)行預(yù)測(cè)是可行的。然而,當(dāng)采用混沌模型對(duì)匯率系統(tǒng)進(jìn)行短期預(yù)測(cè)時(shí),效果也不能令人滿意。究其原因還是匯率時(shí)序太復(fù)雜。由于匯率時(shí)序太復(fù)雜,因此很難對(duì)其準(zhǔn)確預(yù)測(cè)。
為了更好地對(duì)人民幣匯率進(jìn)行預(yù)測(cè),本文提出一種組合預(yù)測(cè)方法,將小波包變換引入到人民幣匯率預(yù)測(cè)中,并將其與混沌和神經(jīng)網(wǎng)絡(luò)相結(jié)合進(jìn)行預(yù)測(cè),以期提高人民幣匯率預(yù)報(bào)的精度。
1.小波包簡(jiǎn)介。設(shè){Vj;j∈Z}(Z是整數(shù)集)構(gòu)成L2(R)(R是實(shí)數(shù))上的正交多分辨分析,其尺度函數(shù)和母波函數(shù)分別為φ(t)和(t),它們滿足以下二尺度方程
其中,系數(shù)hk與gk系數(shù)滿足下面條件
對(duì)于固定尺度情況,定義一系列遞歸函數(shù)如下
則由(3)式所確定的函數(shù)序列Wn(t)(n=0,1,2,…,N)稱為由W0=φ確定的小波包。
2.混沌理論簡(jiǎn)介。混沌理論主要是研究自然界非線性過程內(nèi)在隨機(jī)性所具有的特殊規(guī)律性,揭示非線性系統(tǒng)中有序和無序、確定性與隨機(jī)性的統(tǒng)一。
重構(gòu)相空間是混沌理論的一個(gè)重要內(nèi)容之一,其目的是在高維相空間中恢復(fù)決定時(shí)序動(dòng)力系統(tǒng)的混沌吸引子。
在重構(gòu)相空間中,嵌入維數(shù)m的選取非常關(guān)鍵。通常有兩種方法可用來計(jì)算嵌入維數(shù),即關(guān)聯(lián)維數(shù)法和虛假鄰域法,但它們有共同的缺陷,就是在選擇嵌入維時(shí)都包含主觀參數(shù)或主觀判斷。而學(xué)者Cao L.提出一種基于零階近似的方法來計(jì)算嵌入維數(shù),也稱為零階近似法,這種方法在選擇嵌入維數(shù)時(shí)不依賴主觀參數(shù),故文中采用此方法來計(jì)算嵌入維數(shù)。
3.人工神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介。人工神經(jīng)網(wǎng)絡(luò),簡(jiǎn)稱神經(jīng)網(wǎng)絡(luò),是模擬生物神經(jīng)網(wǎng)絡(luò)進(jìn)行信息處理的一種數(shù)學(xué)模型。神經(jīng)網(wǎng)絡(luò)由大量的人工神經(jīng)元相互連接來進(jìn)行計(jì)算,并能夠根據(jù)外界的信息來改變自身的結(jié)構(gòu);它主要是通過調(diào)整神經(jīng)元之間的權(quán)值對(duì)數(shù)據(jù)進(jìn)行建模,并最終達(dá)到具備解決實(shí)際問題的能力。
神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)一般有三個(gè)層次,即輸入層、隱含層和輸出層,各層次順次連接。其中,輸入層連接外部輸入模式,并由各輸入單元傳送給相連的隱含層各單元;隱含層是神經(jīng)網(wǎng)絡(luò)的內(nèi)部處理單元,神經(jīng)網(wǎng)絡(luò)所具有的模式變換的能力主要體現(xiàn)在隱含層單元的處理功能上;輸出層則產(chǎn)生神經(jīng)網(wǎng)絡(luò)的輸出模式。
神經(jīng)網(wǎng)包括很多種,其中最常用的一種是BP神經(jīng)網(wǎng)絡(luò)。BP神經(jīng)網(wǎng)絡(luò)是一種以誤差反向傳播為基礎(chǔ)的前向網(wǎng)絡(luò),具有非常強(qiáng)的非線性映射能力。在實(shí)際應(yīng)用中,大約80%神經(jīng)網(wǎng)絡(luò)模型采用了BP神經(jīng)網(wǎng)絡(luò)或BP神經(jīng)網(wǎng)絡(luò)的變化形式。本文采用的神經(jīng)網(wǎng)絡(luò)也是BP神經(jīng)網(wǎng)絡(luò)。
1.實(shí)證研究設(shè)計(jì)。人民幣兌美元匯率數(shù)據(jù)具有多尺度特性,針對(duì)這一多尺度特性,本研究提出一種小波包變換與混沌和神經(jīng)網(wǎng)絡(luò)結(jié)合的匯率時(shí)間序列預(yù)測(cè)模型。實(shí)證步驟如下:
(1)通過小波包變換,將原始時(shí)間序列分解成不同尺度水平的子序列;(2)利用混沌理論對(duì)變換后所得到的從低頻到高頻的不同頻率的子序列分別進(jìn)行分析,以確定各子序列都具有混沌特性;(3)基于混沌信息和神經(jīng)網(wǎng)絡(luò)對(duì)各子時(shí)間序列構(gòu)建模型,簡(jiǎn)稱為混沌-神經(jīng)網(wǎng)絡(luò)模型,并對(duì)所構(gòu)建模型進(jìn)行訓(xùn)練和預(yù)測(cè);(4)最后將由基于混沌信息和神經(jīng)網(wǎng)絡(luò)構(gòu)建模型進(jìn)行預(yù)測(cè)所得到的子時(shí)間序列預(yù)測(cè)結(jié)果進(jìn)行小波包重構(gòu),得到匯率時(shí)間序列的預(yù)測(cè)結(jié)果。
2.實(shí)證過程與結(jié)果分析。本文選取2010年12月1日至2010年12月30日共22個(gè)交易日的每100美元/人民幣每日分時(shí)匯率數(shù)據(jù)為實(shí)證研究的原始數(shù)據(jù)。數(shù)據(jù)來源于http://fx.Sauder.Ubc.ca/data.html。每個(gè)交易日的匯率數(shù)據(jù)是取自從8:00到17:00的10個(gè)整點(diǎn)的匯率賣出價(jià)。
(1)小波包分解與特性分析。按照實(shí)證步驟,首先要對(duì)人民幣匯率序列進(jìn)行小波包分解,根據(jù)預(yù)測(cè)誤差最小的原則,確定分解的層數(shù)為三層,這樣就將原始時(shí)間序列分解成從低頻到高頻八個(gè)頻率成分的子序列。
對(duì)匯率進(jìn)行小波包分解之后,還需要對(duì)分解所得的各子序列進(jìn)行混沌特征分析與判別,以確定它們是否具有混沌特征。進(jìn)行混沌分析與判別的標(biāo)準(zhǔn),是要看各子序列的最大Lyapunov指數(shù)是否為正,如果為正,則可判斷是混沌的。本文采用小數(shù)據(jù)量方法求取各子序列的最大Lyapunov指數(shù),其計(jì)算結(jié)果都為正值,因此,可以判斷各子序列都具有混沌特征,都是混沌時(shí)間序列。
(2)混沌-神經(jīng)網(wǎng)絡(luò)模型構(gòu)建。由于各子序列都是混沌時(shí)間序列,在各子序列中必然隱含有混沌的信息,因此,可基于混沌信息和神經(jīng)網(wǎng)絡(luò)來構(gòu)建各子序列的預(yù)測(cè)模型,即混沌-神經(jīng)網(wǎng)絡(luò)模型。
混沌-神經(jīng)網(wǎng)絡(luò)實(shí)際上是“特殊”的神經(jīng)網(wǎng)絡(luò),之所以“特殊”,是因?yàn)樗抢没煦鐣r(shí)間序列的混沌信息來確定神經(jīng)網(wǎng)絡(luò)輸入層的神經(jīng)元數(shù)目。而一般的神經(jīng)網(wǎng)絡(luò)在確定輸入層神經(jīng)元的數(shù)目時(shí),都沒有考慮混沌信息。因此,混沌-神經(jīng)網(wǎng)絡(luò)與一般神經(jīng)網(wǎng)絡(luò)的區(qū)別是在于輸入層神經(jīng)元數(shù)目的確定方式有所不同。
利用混沌信息來確定神經(jīng)網(wǎng)絡(luò)輸入層的神經(jīng)元數(shù)目,是指把混沌時(shí)間序列重構(gòu)相空間的最佳嵌入維數(shù)作為輸入層的神經(jīng)元的數(shù)目。這樣,只要重構(gòu)相空間的最佳嵌入維數(shù)能夠計(jì)算出來,那么輸入層的神經(jīng)元數(shù)目也就確定下來。
本文采用零階近似法來計(jì)算各子序列重構(gòu)相空間的最佳嵌入維數(shù),結(jié)果如表1所示。
表1中的計(jì)算結(jié)果即可作為從低頻到高頻的各子序列預(yù)測(cè)模型的輸入層神經(jīng)元數(shù)目。
表1 重構(gòu)相空間的最佳嵌入維數(shù)
輸入層神經(jīng)元數(shù)目確定后,還需要確定網(wǎng)絡(luò)層數(shù)、隱含層神經(jīng)元數(shù)目以及輸出層神經(jīng)元數(shù)目等參數(shù),這些參數(shù)的確定方式與一般神經(jīng)網(wǎng)絡(luò)相關(guān)參數(shù)的確定方式相同。具體結(jié)果如下:
①確定網(wǎng)絡(luò)層數(shù)。由于一個(gè)具有單隱含層的神經(jīng)網(wǎng)絡(luò)只要包括足夠多的神經(jīng)元個(gè)數(shù)就可以逼近任意連續(xù)函數(shù),因此,本文針對(duì)從低頻到高頻各個(gè)子序列所構(gòu)建的預(yù)測(cè)模型都只有一個(gè)隱含層。
②確定隱含層神經(jīng)元數(shù)目。對(duì)隱含層神經(jīng)元數(shù)目的確定可采取試湊法或經(jīng)驗(yàn)公式來進(jìn)行。具體結(jié)果如表2所示。
表2 隱含層神經(jīng)元數(shù)目
③確定輸出層神經(jīng)元數(shù)目。輸出層神經(jīng)元的數(shù)目是根據(jù)實(shí)際問題來確定的。本文所做的匯率預(yù)測(cè)為一步向前預(yù)測(cè),因此,對(duì)每個(gè)子序列所做的預(yù)測(cè)也為一步向前預(yù)測(cè),每個(gè)子序列的預(yù)測(cè)模型的輸出數(shù)據(jù)都只有1個(gè),所以每個(gè)模型的輸出層神經(jīng)元的數(shù)目都只有1個(gè)。
輸入層神經(jīng)元數(shù)目、網(wǎng)絡(luò)層數(shù)、隱含層神經(jīng)元數(shù)目、輸出層神經(jīng)元數(shù)目等參數(shù)確定后,還需要確定每個(gè)模型的傳遞函數(shù)、訓(xùn)練方法及初始權(quán)值等,這些也是構(gòu)建模型的主要工作。
(3)預(yù)測(cè)結(jié)果與分析。模型構(gòu)建完成后,可采用trainlm函數(shù)和Levenberg-Marquardt算法對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練和學(xué)習(xí)。之后,就可應(yīng)用所構(gòu)建的模型(即模型1、模型2、模型3、模型4、模型5、模型6、模型7、模型8)分別對(duì)子序列(即序列1、序列2、序列3、序列4、序列5、序列6、序列7、序列8)進(jìn)行預(yù)測(cè)。
本文進(jìn)行實(shí)證研究的匯率數(shù)據(jù),樣本數(shù)量共有220個(gè),因此,經(jīng)三層小波包分解后所得到的每個(gè)子序列也均有220個(gè)數(shù)據(jù)。對(duì)每個(gè)子序列進(jìn)行預(yù)測(cè)時(shí),是以每個(gè)子序列的前200個(gè)數(shù)據(jù)作為網(wǎng)絡(luò)的訓(xùn)練樣本,而后面20個(gè)數(shù)據(jù)則作為測(cè)試樣本用以檢驗(yàn)網(wǎng)絡(luò)預(yù)測(cè)效果。
每個(gè)子序列的的預(yù)測(cè)結(jié)果得到之后,再將它們應(yīng)用小波包理論進(jìn)行重構(gòu),即可得到最終的預(yù)測(cè)結(jié)果,預(yù)測(cè)結(jié)果如圖1所示。預(yù)測(cè)的均方根誤差為0.0153,平均絕對(duì)誤差率為0.0015574%,預(yù)測(cè)方向精度為0.9474??梢婎A(yù)測(cè)效果很好。
本文也采用小波包與神經(jīng)網(wǎng)絡(luò)結(jié)合的方法對(duì)匯率進(jìn)行了預(yù)測(cè)。預(yù)測(cè)的均方根誤差為0.0253,平均絕對(duì)誤差率為0.0030932%,預(yù)測(cè)方向精度為0.8947。
由預(yù)測(cè)指標(biāo)對(duì)比分析可知,基于小波包與混沌和神經(jīng)網(wǎng)絡(luò)相結(jié)合方法的預(yù)測(cè)效果明顯優(yōu)于基于小波包與神經(jīng)網(wǎng)絡(luò)相結(jié)合方法的預(yù)測(cè)效果。
為進(jìn)一步確認(rèn)本文所提方法的有效性,本文還以2005-07-21至2010-12-30美元兌人民幣日匯率數(shù)據(jù)為實(shí)證數(shù)據(jù)進(jìn)行研究。實(shí)證數(shù)據(jù)共1372個(gè),以前1367個(gè)數(shù)據(jù)為樣本對(duì)后5個(gè)數(shù)據(jù)進(jìn)行預(yù)測(cè),預(yù)測(cè)均方根誤差為0.0023,平均絕對(duì)誤差率為0.027299%,預(yù)測(cè)效果仍然很好。而采用小波包與神經(jīng)網(wǎng)絡(luò)結(jié)合的方法對(duì)日匯率進(jìn)行預(yù)測(cè),其預(yù)測(cè)均方根誤差為0.0032,平均絕對(duì)誤差率為0.036871%,因此仍可以得出結(jié)論,本文所提方法的預(yù)測(cè)效果明顯優(yōu)于基于小波包與神經(jīng)網(wǎng)絡(luò)相結(jié)合方法的預(yù)測(cè)效果。由此可以得出,本文所提方法對(duì)人民幣每日分時(shí)匯率和日匯率的預(yù)測(cè)都具有有效性。
本文提出了一種人民幣匯率建模及其預(yù)測(cè)的小波包與混沌和神經(jīng)網(wǎng)絡(luò)相結(jié)合的三階段匯率時(shí)間序列預(yù)測(cè)方法。通過對(duì)比小波包與混沌和神經(jīng)網(wǎng)絡(luò)相結(jié)合的預(yù)測(cè)與小波包與神經(jīng)網(wǎng)絡(luò)相結(jié)合的預(yù)測(cè),本研究發(fā)現(xiàn),雖然小波包與神經(jīng)網(wǎng)絡(luò)相結(jié)合的預(yù)測(cè)效果已經(jīng)很好,但小波包與混沌和神經(jīng)網(wǎng)絡(luò)相結(jié)合的預(yù)測(cè)效果則更好,預(yù)測(cè)精度更高。這說明本文提出的方法能更好地刻畫時(shí)間序列的規(guī)律,更好地把握匯率價(jià)格變化的特征。采用此方法對(duì)人民幣匯率進(jìn)行預(yù)測(cè),其預(yù)測(cè)結(jié)果會(huì)更加準(zhǔn)確。
[1]劉貴忠,邸雙亮.小波分析及其應(yīng)用[M].西安電子科技大學(xué)出版社,1992.
[2]秦前清,楊宗凱.實(shí)用小波分析[M].西安電子科技大學(xué)出版社,1994.
[3]Grassberger P, Procaccia I.Characterization of stranger attractors [J],Physical Review Letters,1993, 50(5): 346~349.
[4]Matthew B Kennel, et al, Determining embedding dimension for phase-space reconstruction using a geometrical construction[J], Physical ReviewA,19923, 45(6): 3403~3411.
[5]Cao L.Practical method for determining the minimum embedding dimension of a scalar time series [J].PhysicaD, 1997, 121: 75—88.
[6]Rosenstein, M.T., Collins, J.J., De Luca, C.J.A practical method for calculating largest Lyapunov exponents from small data sets [J].Physica D,1993, 65: 117—134.