黃宏運,吳禮斌,李詩爭
(1.安徽財經大學 金融學院,安徽 蚌埠 233000;2.安徽財經大學 統計與應用數學學院,安徽 蚌埠 233000)
?
BP神經網絡在股票指數預測中的應用
黃宏運1,吳禮斌2,李詩爭1
(1.安徽財經大學 金融學院,安徽 蚌埠 233000;2.安徽財經大學 統計與應用數學學院,安徽 蚌埠 233000)
針對股票數據規模龐大、結構復雜、多噪聲和高度模糊非線性等特點而導致的預測難問題,利用人工智能算法BP神經網絡的誤差反向傳播機制建立了一個以歷史開盤價、收盤價、最低價、最高價、成交量、成交額和漲跌幅為輸入變量,未來股價為輸出變量的自適性相對優良的預測系統,通過MATLAB軟件實現了自2002年1月7日至2016年6月22日股價預測模型的建立,并且對預測結果與實際結果進行了誤差分析,得出了BP神經網絡可以在短期內為股價預測提供一定借鑒和指導的結論.
BP神經網絡;股票指數;預測;負梯度修正
隨著我國經濟水平的不斷提高,國內資本市場也呈現出不斷發展和擴大的局面,作為資本市場主要交易品種之一的股票自然也成為廣大個體與機構投資者追逐的熱寵.在成熟的市場經濟中,與股票價格、成交量相關的指數不僅是投資者決策的重要依據,同時也是國民經濟的晴雨表,因而對于未來股票指數的預測也就成為了廣為熱議的話題之一.
但是,由于歷史股票數據具有規模巨大,多噪聲和高度模糊非線性[1]等特點,因而對于適應股票指數預測的方法或系統具有較高的要求,盡管目前已經有很多學者給出了不同的預測方法,如時間序列預測[2]、灰色預測、組合預測等,但由于股票指數的波動易受到短期因素的影響,因而得到的效果并不十分理想.因而尋找一種適應性良好的預測方法,為投資者對未來股價的預測提供一定的借鑒就顯得尤為關鍵.
本文的數據主要來源于大智慧與同花順數據中心提供的自2002年1月7日至2016年6月22日的滬深300股價指數,其中數據的格式為3505行乘7維,其中每一行代表了每一日的開盤價、收盤價、最低價、最高價、成交量、成交額和漲跌幅.為了問題與數據的處理方便,給出幾點假設:①假設所獲取的數據真實、準確和可靠.②假設對數據進行適當的標準化處理不會對預測結果產生顯著影響.③假設在研究期間內未出現大的金融市場動蕩或貨幣危機.
考慮到股票數據所具有的規模龐大、結構混雜、多噪聲和高度模糊非線性等特點,利用人工智能算法BP神經網絡所具有的良好的自適性能力、自學習能力和以任意精度逼近能力來構建股票指數預測系統.
為了考慮前期股票指數因素對于股價的影響,以前一日股票的開盤價、收盤價、最低價、最高價、成交量、成交額和漲跌幅為因變量,以后一日的開盤價為自變量構建BP神經網絡預測系統,即建立一個具有一般意義的分布滯后模型.
2.1 BP神經網絡
BP(Back Propagation)網絡[3]是一種多層前向神經網絡,由于在網絡的訓練中,調整權閥值的訓練算法遵循了誤差反向傳播方式,所以,它是神經網絡中比較成熟和完美的一部分.通常BP神經網絡是一種具有3層或者3層以上神經元的神經網絡,包括輸入層、隱含層和輸出層,上下層之間實現全連接,而同一層神經元之間無連接.
輸入層神經元與隱含層神經元和隱含層神經元與輸出層神經元之間的是網絡的權值,即兩個神經元之間的連接強度,隱含層或輸出層任一神經元將前一層所有神經元傳來的信息進行整合,通常還會在整合過的信息中添加一個閥值.當一對學習樣本提供給輸入神經元后,神經元的激活值從輸入層經過各隱含層向輸出層傳播,然后按照減少網絡輸出與實際輸出樣本之間誤差的方向,從輸出層方向反向經過個隱含層回到輸入層,從而逐步修正各連接權值,這種算法即被稱為“誤差反向傳播算法”[4]或“負梯度修正算法”[5].
根據上述原理,以下給出BP神經網絡算法的實現過程[6].
假設X=(xij)是一個樣本輸入矩陣(i=1,2,…,n,j=1,2,…,p),每一行代表一組觀測值,且每一組輸入觀測值對應一個輸出值,整體樣本的實際輸出樣本為Y=[y1y2… yn]T,每一列可以理解為一個指標或屬性,那么輸入層的輸入I1即為X,通常輸入層與輸出層處的激勵函數均為線性函數,那么廣義上得到輸入層神經元的輸出O1即為X.
假設隱含層神經元的個數為m個,對應的權值矩陣為W=(xij)(i=1,2,…,m,j=1,2,…,p),閥值矩陣為B=(b1,b2,…,bm)T,那么隱含層的輸入
I2=Wm×p×X'p×n+B×ones1×n
(1)
通常作為隱含層的激勵函數為單極S型函數即Sigmoid函數,其表達式為f(x)=(1+e-x)-1,那么隱含層的輸出為O2=f(I2).輸出層的輸入與隱含層的輸入類似為I3=Wjk×O2+Bjk×ones1×n,對于第三層的輸出,由傳遞函數為線性函數,所以,可以認為O3=I3.
以下計算輸出層與隱含層和隱含層與輸入層連接權閥值的調整量分比為
(2)
(3)
觀察到f'(x)=f(x)[1-f(x)],可知隱含層的權閥值調整量為
(4)
(5)
BP神經網絡的誤差反向傳播算法事實上即將每一次權閥值的調整量與前一次的權閥值相整合,直至得到誤差最小的最優狀態,具體的調整過程為
(6)
(7)
(8)
(9)
從上述推導可以看出,誤差通過從輸出層到隱含層的反向傳播實現了連接權閥值的不斷最優調整過程,但是在實際的算法實現過程中,權閥值通常是通過隨機數來產生的,因而不易獲得一組好的權閥值.
2.2 研究過程
為了消除數據數量級與量綱方面的差異,首先對數據進行了適當的歸一化處理,具體得到的開盤指數對比如圖1、圖2所示.

圖1 原始開盤指數

圖2 歸一化后開盤指數
從圖1和圖2可以看出,歸一化之后的開盤指數基本保持了原始開盤指數的走勢規律.以前3000組數據為網絡訓練樣本,以后505組數據為網絡測試樣本,設置的初始網絡結構為[7]:設置兩個隱含層,且在經過多次測試之后確定最佳的隱含層神經元個數為50,20,隱含層與輸出層傳遞函數均為tansig,網絡訓練函數為traingda,最大的迭代次數為1000次,學習率為0.1,目標精度0.000004.
利用MATLAB軟件對3000組訓練樣本進行訓練后,平均相對誤差降低到135.988,從預測股指輸出與實際股指輸出的對比情況來看,BP網絡結構在一定程度上實現了對訓練集股指開盤數的準確判斷,且誤差基本上控制在5%以內,具體的訓練結果與誤差顯示如圖3~4所示.

圖3 訓練集網絡開盤指數預測輸出

圖4 訓練集預測輸出與實際輸出誤差
以下利用訓練好的BP網絡對測試集數據進行仿真預測,測試的具體結果如圖5所示.

圖5 測試集網絡開盤指數預測輸出
從圖5可以看出,訓練好的BP神經網絡在測試集短期內對開盤指數的預測較好,但是隨著時間的推遲,在股價劇烈波動的區域,網絡的預測輸出與實際輸出存在著較大的差異.預測指數與實際指數之間誤差如圖6所示.

圖6 測試集網絡預測輸出與實際輸出誤差
從圖6可以看出,網絡在短期內的預測輸出與實際輸出之間的誤差較小,但是長期內的誤差震蕩較大,預測輸出與實際輸出之間的偏離程度非常大,因而BP神經網絡在對于長期股票指數的預測仍然存在著較大的缺陷.為了進一步比較測試集預測輸出與實際輸出之間的誤差,選取了股價波動幅度較小的六天(2014年5月28日至2014年6月5日)和波動幅度較大的六天(2015年6月18日至2015年6月26日)進行對比,整理的輸出結果,如表1所示.

表1 網絡預測輸出與實際輸出結果
從表1可以看出,位于測試集初期時段且股價波動幅度較小時,BP神經網絡的預測輸出對實際輸出具有較高的擬合度,但對股價波動幅度較大的時段預測輸出則嚴重偏離實際輸出.
本文基于BP神經網絡的誤差反向傳播算法,利用MATLAB軟件建立了以前一日股票的開盤價、收盤價、最低價、最高價、成交量、成交額和漲跌幅為自變量,以后一日的開盤價為因變量的股票指數預測模型,通過對比網絡的預測輸出與實際輸出得到以下兩點結論.
(1)BP神經網絡在一定程度可以實現對短期股票指數較為準確的預測,但對于長期股票指數預測效果并不理想,在實際的股票投資中,BP神經網絡可以為短期指數的預測提供一定的借鑒,但對于長期的投資預測仍有待預測模型進一步的修正與改善.
(2)BP神經網絡對股價波動浮動較小時段的股指預測要明顯比對股價波動浮動較大時段的股指預測準確,這主要是由于股價波動幅度較大的區域受到短期不確定的因素影響較多,如相關利好政策、市場羊群效應預期等,因而預測的精度也顯著降低.
[1]王小川,史峰.MATLAB神經網絡30個案例分析[M].北京:北京航空航天大學出版社,2013.
[2]陳敏.基于BP神經網絡的混沌時間序列預測模型研究[D].長沙:中南大學,2007.
[3]韓立群.人工神經網絡理論、設計及應用[M].北京:化學工業出版社,2002.
[4]余立雪.神經網絡與實例學習[M].北京:中國鐵道出版社,1996.
[5]飛思科技產品研發中心.神經網絡與MATLAB 7實現[M].北京:電子工業出版社,2005.
[6]楊杰.MATLAB神經網絡30例[M].北京:電子工業出版社,2014.
[7]劉玉靜,李成華,楊升明.遼寧省農機總動力組合預測與分析[J].農機化研究,2007(5):31-33.
(責任編輯:陳衍峰)
2016-07-12
國家自然科學基金資助項目“隨機動力系統的非一致指數二分性及其數值模擬”(11301001);安徽高等學校省級自然科學基金項目“基于分數布朗運動的組合信用衍生品定價及其應用研究”(KJ2013Z001);安徽財經大學校級重點研究項目“信用衍生品定價研究”(ACKY1402ZD)
黃宏運,安徽合肥人,安徽財經大學金融學院在讀.
F830.91;O29
A
1008-7974(2016)05-0032-03
10.13877/j.cnki.cn22-1284.2016.10.011