基于長短期記憶神經(jīng)網(wǎng)絡(luò)的收益率預(yù)測研究
發(fā)布時間:2020-06-08 06:16
【摘要】:我國證券市場雖然已經(jīng)發(fā)展了近三十年,但是在體制和監(jiān)管方面仍然還不是很規(guī)范,同時偶爾會發(fā)生投資者惡性投資事件,使得證券市場充滿了風險,股票市場具有較強的不穩(wěn)定性,投資者們面臨著嚴峻的挑戰(zhàn)。在這種背景下,如何準確描述股市的未來收益以及相關(guān)風險已成為眾多學(xué)者和投資者們廣泛關(guān)注的熱點問題。神經(jīng)網(wǎng)絡(luò)模型在具有穩(wěn)定性的同時,本身具有很高的學(xué)習能力和抽象模擬能力,神經(jīng)網(wǎng)絡(luò)模型跟統(tǒng)計學(xué)和計量經(jīng)濟學(xué)中的數(shù)學(xué)模型相比,在預(yù)測金融時間序列時有一定的優(yōu)勢。作為深度學(xué)習的經(jīng)典模型之一,長短期記憶(LSTM)神經(jīng)網(wǎng)絡(luò)在挖掘序列數(shù)據(jù)長期依賴關(guān)系中具有一定的優(yōu)勢,適合用于處理和預(yù)測時間序列中間隔和延遲較長的事件。對于一般循環(huán)神經(jīng)網(wǎng)絡(luò),容易出現(xiàn)梯度消失和梯度爆炸的問題,雖然可以通過優(yōu)化激活函數(shù)、設(shè)置變動的學(xué)習率等方式來防止梯度消失問題,但是并不是很好的解決方式,本文使用的LSTM神經(jīng)網(wǎng)絡(luò)具有自循環(huán)和門控制機制,可以有效避免梯度消失,通過添加正則項來避免梯度爆炸。本文首先介紹了傳統(tǒng)的ARMA-GARCH模型基本理論及擬合方法,并介紹了在利用GARCH模型建模前的基本檢驗方法。然后介紹了 LSTM神經(jīng)網(wǎng)絡(luò),深入研究其復(fù)雜結(jié)構(gòu)中的數(shù)學(xué)結(jié)構(gòu),并對各權(quán)重系數(shù)和偏置項梯度進行推導(dǎo)。本文實證部分通過LSTM神經(jīng)網(wǎng)絡(luò)對上證綜指、深證綜指、上證50指數(shù)、中證100指數(shù)和滬深300指數(shù)的收益率進行預(yù)測,并用傳統(tǒng)的ARMA-GARCH模型與其做對比,同時還對不同指數(shù)之間的精確度進行比較分析。在使用LSTM模型進行預(yù)測時引入波動率變量,通過先預(yù)測出下一交易日的波動率,再計算得出下一交易日的收益率,這與GARCH模型的預(yù)測步驟有一定的相通性。為了便于LSTM神經(jīng)網(wǎng)絡(luò)與GARCH模型相比較,僅選用歷史收益率和歷史波動率作為神經(jīng)網(wǎng)絡(luò)每一層神經(jīng)元的自變量。對模型的評價選用RMSE和按照上漲、平穩(wěn)、下降三種類型分類的定性方法來衡量兩個模型預(yù)測的精確度,從五種指數(shù)的預(yù)測結(jié)果來看,LSTM模型的精確度優(yōu)于GARCH模型:另外在利用LSTM模型做預(yù)測時,不同指數(shù)之間預(yù)測值之間也存在一定的差異,滬深300指數(shù)預(yù)測準確度高于其他指數(shù),因為本文選用的五種指數(shù)的訓(xùn)練集和測試集的時間段相同,所以預(yù)測準確度的差異可能與各指數(shù)的樣本股不同相關(guān),其中滬深300指數(shù)的樣本股是規(guī)模大、流動性高、質(zhì)地較好的公司股票。
【圖文】:
閣3.1yL經(jīng)兒逡逑其中x。、xP邋x2、x?為yL經(jīng)元的輸入,%、⑴I、岣、%為權(quán)重系數(shù),激活函數(shù)逡逑是一般選用為sigmoid函數(shù)或tanli邋p⑤數(shù),圖3.1中為sigmoid函數(shù),其定義為如逡逑下:逡逑sigmoid(x)^-邐(3.1)逡逑1邋+6逡逑上圖中神經(jīng)元的輸出為逡逑1邋1逡逑y=\^7^^邐(3.2)逡逑\邋+邋e邋"逡逑另外,sigmoid函數(shù)的導(dǎo)數(shù)可以用函數(shù)自身來表示,即:令>;=5/於;70/£/&),,逡逑則有/邋=逡逑3.1.1激活函數(shù)逡逑激活函數(shù)的作用是給yL經(jīng)網(wǎng)絡(luò)加入非線性特點的,故激活函數(shù)為非線性函數(shù)。逡逑由于在使用梯度下降算法對權(quán)重系數(shù)進行更新時,需要對目標函數(shù)求導(dǎo),因此激逡逑活函數(shù)必須是可導(dǎo)的,在應(yīng)用屮激活函數(shù)滿足兒乎處處可導(dǎo)條件即可。逡逑10逡逑
一IV逡逑A逡逑圖3.4簡單的循環(huán)神經(jīng)網(wǎng)絡(luò)圖逡逑其中輸入層x、隱藏層.s和輸出都足向M;邋(/為輸入層到隱藏層的權(quán)重逡逑系數(shù)矩陣;K為隱藏層到輸出層的權(quán)重系數(shù)矩陣循環(huán)神經(jīng)網(wǎng)絡(luò)的隱藏層當前時逡逑刻值僅僅取決于當前時刻的輸入X,還M時取決于丨.?時刻隱藏層的值。權(quán)逡逑重矩陣W就是隱藏層上一時刻的值作為,前時刻輸入的權(quán)里。將圖3.4展開后的逡逑循環(huán)神經(jīng)網(wǎng)絡(luò)圖如下:逡逑0邐°:邋>邐°.邐°m逡逑J邋i邐^逡逑^邋w,邐^邐V逡逑Unfold邐t邐U’邐t邐t逡逑u邐u邋u邋u逡逑X邐xr,邐x,邐x,?逡逑圖3.5循環(huán)神經(jīng)網(wǎng)絡(luò)圖(閣片來源丨?網(wǎng)絡(luò))逡逑循環(huán)yL經(jīng)網(wǎng)絡(luò)在/時刻的輸入為.r,,隱藏H的值為,輸出值為。K?中的逡逑值同時S尉鲇冢
本文編號:2702666
【圖文】:
閣3.1yL經(jīng)兒逡逑其中x。、xP邋x2、x?為yL經(jīng)元的輸入,%、⑴I、岣、%為權(quán)重系數(shù),激活函數(shù)逡逑是一般選用為sigmoid函數(shù)或tanli邋p⑤數(shù),圖3.1中為sigmoid函數(shù),其定義為如逡逑下:逡逑sigmoid(x)^-邐(3.1)逡逑1邋+6逡逑上圖中神經(jīng)元的輸出為逡逑1邋1逡逑y=\^7^^邐(3.2)逡逑\邋+邋e邋"逡逑另外,sigmoid函數(shù)的導(dǎo)數(shù)可以用函數(shù)自身來表示,即:令>;=5/於;70/£/&),,逡逑則有/邋=逡逑3.1.1激活函數(shù)逡逑激活函數(shù)的作用是給yL經(jīng)網(wǎng)絡(luò)加入非線性特點的,故激活函數(shù)為非線性函數(shù)。逡逑由于在使用梯度下降算法對權(quán)重系數(shù)進行更新時,需要對目標函數(shù)求導(dǎo),因此激逡逑活函數(shù)必須是可導(dǎo)的,在應(yīng)用屮激活函數(shù)滿足兒乎處處可導(dǎo)條件即可。逡逑10逡逑
一IV逡逑A逡逑圖3.4簡單的循環(huán)神經(jīng)網(wǎng)絡(luò)圖逡逑其中輸入層x、隱藏層.s和輸出都足向M;邋(/為輸入層到隱藏層的權(quán)重逡逑系數(shù)矩陣;K為隱藏層到輸出層的權(quán)重系數(shù)矩陣循環(huán)神經(jīng)網(wǎng)絡(luò)的隱藏層當前時逡逑刻值僅僅取決于當前時刻的輸入X,還M時取決于丨.?時刻隱藏層的值。權(quán)逡逑重矩陣W就是隱藏層上一時刻的值作為,前時刻輸入的權(quán)里。將圖3.4展開后的逡逑循環(huán)神經(jīng)網(wǎng)絡(luò)圖如下:逡逑0邐°:邋>邐°.邐°m逡逑J邋i邐^逡逑^邋w,邐^邐V逡逑Unfold邐t邐U’邐t邐t逡逑u邐u邋u邋u逡逑X邐xr,邐x,邐x,?逡逑圖3.5循環(huán)神經(jīng)網(wǎng)絡(luò)圖(閣片來源丨?網(wǎng)絡(luò))逡逑循環(huán)yL經(jīng)網(wǎng)絡(luò)在/時刻的輸入為.r,,隱藏H的值為,輸出值為。K?中的逡逑值同時S尉鲇冢
本文編號:2702666
本文鏈接:http://sikaile.net/jingjilunwen/jinrongzhengquanlunwen/2702666.html
教材專著