999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于多因子與多變量長短期記憶網絡的股票價格預測①

2019-08-22 02:30:10裴大衛
計算機系統應用 2019年8期
關鍵詞:模型

裴大衛, 朱 明

(中國科學技術大學 信息科學技術學院 自動化系,合肥 230027)

1 概述

隨著社會經濟的高速發展,上市公司的數量越來越多,股票因而成為如今金融領域的熱點話題之一. 一方面,股票價格的走勢在一定程度上決定了諸多經濟行為的走向,因此股票價格的預測也受到越來越多研究者的關注. 另一方面,互聯網的不斷發展為我們提供了海量的金融數據,也就為機器學習算法的實現提供了可能,因此有越來越多的研究者開始嘗試使用機器學習對股票價格進行預測.

目前,針對股票價格預測常用的機器學習方法有:改進的梯度提升決策樹(Gradient Boosting Decision Tree,GBDT) XGBoost[1]、貝葉斯學習(Bayesian Learning,BL)[2]、卷積神經網絡(Convolutional Neural Networks,CNN)[3],結合自編碼器(auto encoder)的長短期記憶網絡(Long Short Term Memory,LSTM)[4]等.然而文獻[1,2]中的策略使用的是傳統的機器學習方法,在大數據集下的性能相較深度學習較差; 文獻[3]的策略雖然使用了深度學習方法,但是一般的深度神經網絡或者卷積神經網絡實際上并不適合股票這類序列型數據; 文獻[4]的策略使用了更適合序列數據的長短期記憶網絡,然而這類方法都只是將股票價格看做是一個簡單時間序列來進行預測,預測的準確度相對較低,同時在長期預測下模型的魯棒性較差. 因而越來越多的研究者希望能為股票價格這個簡單的時間序列添加更多的額外特征來提升預測水平.

實際上,一只股票本身并不只包含價格信息,還包含大量經濟學的外圍信息,例如:資產收益率、換手率、流通股數、市盈率、市凈率等,這些信息在量化選股[5]策略中經常會使用到,它們對股票本身的價格走勢有一定影響作用,因而這些諸多的外圍信息可以為股票價格預測模型提供一定的幫助.

本文從量化選股策略的角度出發,將其中的多因子模型(multiple-factor model)作為股票的額外特征引入到股票價格預測中,建立了一個基于多變量的長短期記憶網絡(multi-variable LSTM)股票價格預測模型,用以提升只基于單一價格序列,也即單變量長短期記憶網絡(univariate LSTM)的股票價格預測模型的準確性以及魯棒性.

2 量化選股策略中的多因子模型

量化選股就是利用數量化的方法選擇股票組合,使得期望的股票組合能過獲得超越基準收益率的投資行為. 多因子模型是量化選股策略中一個十分常見而且十分有效的模型[5].

2.1 多因子

因子可認為是影響股票價格波動與價格走勢因素的數學表達,這種因素主要來源于金融經濟規律以及市場經驗[5].

經濟學上最早提出的因子模型是資本資產定價模型(Capital Asset Pricing Model,CAPM)[6],CAPM認為對股票價格的影響因素主要是市場風險[7],現在金融領域常用Beta系數[8]來衡量,因此可以認為CAPM是一種單因子模型.

實際上影響股票價格僅僅依賴單一的市場風險是不夠的,CAPM模型暴露了諸多缺點,在此基礎上又產生了法馬-福萊奇三因子模型(Fama-French 3-factor Model,FF3)[9],FF3認為除了市場風險外,還存在市值風險[10]和賬面市值比風險[10],因此FF3可以看做是依賴市場風險、市值風險以及賬面市值比風險的三因子模型.

隨著經濟學的不斷發展與市場經濟的愈發復雜,FF3也不再能很好的解釋當前股票市場環境下的諸多現象[11]. 同時歸功于計算機技術的發展,計算能力的提升,可以嘗試用更多的因子來描述股票預測問題,因而產生了多因子模型.

多因子模型理論認為,影響股票價格的因素來自于以下三個層面:公司層面,市場表現層面,外部環境層面[5].

公司因子來自于公司的微觀結構,與公司的生產經營息息相關,一般表現為公司的財務指標,反映了公司的盈利、運營、債務和成長狀況,也是量化選股中最重要的一類因子[5],它們刻畫了一個公司在市場的表現,例如:資產負債比、流通市值、賬面市值比、凈利率等.

市場表現因子來自于股票在交易過程中的價格和交易量,他們刻畫了風險、動量、資金流向等各種金融技術類指標,例如:風險系數、動態市盈率、換手率等.

外部環境層面因子來自于政治法律、宏觀經濟、社會習俗和技術發展等外部環境,它們刻畫了一個行業的當前以及未來發展的趨勢,在長期預測中十分重要,例如:宏觀經濟變量,市場預期變化方向等.

由于考慮了諸多股票外圍因素,使得多因子模型相對比較穩定,因為在不同市場下,總會有一些因子發揮作用[11]. 簡單起見可以將多因子模型描述為一個線性回歸問題:

其中,Pstock為股票價格,N為因子的數量,Fi為第i個因子,wi為第i個因子的權值,ε為偏置,可以認為股票價格是受多個因子影響的,是多個因子的線性組合.

基于多因子模型的啟發,本文認為多因子可以在一定程度上刻畫股票的特征,因此本文對多只股票計算了多因子模型中若干典型因子,將其作為后續長短期記憶網絡的輸入特征來進行股票價格的預測.

3 多變量長短期記憶網絡

3.1 長短期記憶網絡[12]

長短期記憶網絡是循環神經網絡(Recurrent Neural Network,RNN)[13]的一種變體形式. 傳統的RNN隨著輸入序列的長度變長,會導致網絡的層數大大增加,進而帶來梯度消失(vanishing gradient)問題[14].

LSTM的提出解決了傳統循環神經網絡在學習過程中由于輸入序列過長帶來的梯度消失問題. 圖1為LSTM的展開形式,LSTM在RNN的基礎上設計了新的神經單元結構. LSTM記憶的歷史信息保留在細胞狀態(cell state)中,其受輸入門(input gate)、遺忘門(forget gate)、輸出門(forget gate)的控制,三個門的激活函數均為Sigmoid.

圖1 LSTM展開形式

輸入門用來控制當前時刻神經單元的輸入信息,遺忘門用來控制上一時刻神經單元中存儲的歷史信息,輸出門用來控制當前時刻神經單元的輸出信息. 設圖2為t時刻LSTM神經單元的狀態,其中Xt為當前時刻的輸入,Ht-1為上一個時刻的輸入,Ct-1為上一個時刻的細胞狀態,則LSTM單元的更新計算方法為:

其中,Wf、Wi、WC、Wo分別為遺忘門、輸入門、更新門和輸出門的權值矩陣,bf、bi、bC、bo分別為遺忘門、輸入門、更新門和輸出門的偏置(bias),最終計算得到當前時刻的輸出Ht與當前時刻更新的細胞狀態Ct.

3.2 單變量長短期記憶網絡

對于一般的長短期記憶網絡而言,輸入往往是一個單獨的股票價格序列,記為:

其中,T為序列的長度,將序列數據輸入網絡的時候并非一次只輸入一個時刻,而是會輸入前序多個時刻的數據. 例如要預測t時刻的股票價格,則當前時刻的輸入為:

即t時刻之前的W個時刻的數據,可以稱W為序列觀測窗口的長度,觀測窗口的大小也決定了輸入層的神經元數量; 隱藏層的神經元數量是一個超參數(hyperparameter),需要在實驗中根據效果決定; 輸出層的神經元數量為1表示每次預測下一個新時刻的股票價格.

圖2展示了一般單變量LSTM的輸入層、隱藏層和輸出層隨時序的變化形式.

圖2 單變量LSTM輸入層、隱藏層、輸出層時序

3.3 多變量長短期記憶網絡

在本文中場景下,網絡的輸入不再是一條單一的時間序列,設我們使用的因子數量為N,加之原始股票價格序列,則會有N+1條序列輸入網絡.

為了適應這樣的問題,本文對傳統的單變量LSTM的輸入層與隱藏層進行了改變,單變量LSTM的輸入形式為式(9)所示的向量. 而對于多條輸入序列,本文使用矩陣形式進行輸入,即多變量LSTM的輸入形式. 設輸入的多條時間序列為:

其中,j表示因子序號,這里不妨令0號代表股票價格序列,后續1到N為多因子序列. 則對于t時刻的輸入可以表示為式(11)的矩陣形式:

該輸入矩陣的大小取決于使用的因子數N以及觀測窗口W的大小. 圖3展示了多變量LSTM的輸入層、隱藏層和輸出層的形式.

圖3 多變量LSTM輸入層、隱藏層、輸出層

在多變量LSTM中,某個因子序列不僅僅與自身的隱藏層存在映射關系,還與其余多個因子的隱藏層存在映射關系,使得整個網絡的映射更加豐富,因而能在一定程度上提升了模型的性能,但是相比單變量LSTM而言,網絡的結構更加復雜,要學習的參數激增,使得網絡訓練的時間有所延長.

4 多因子與多變量長短期記憶網絡融合模型

4.1 模型輸出層

在實際應用中通常需要預測未來的股票價格,在本文中即[T+1,L]區間的股票價格,現實中無法直接獲得未來的多因子信息,例如:預測 t=T+3時刻的股票價格,必然沒有t=T+1與t=T+2時刻的多因子信息.

為解決這樣的問題,本文進一步增加了輸出層的神經元數量,使得模型不僅僅預測下一時刻的股票價格,還同時預測下一個時刻的多因子,也即輸出層神經元數量由1變為N+1,圖4展示了完整的融合模型形式.

圖4 改進后的多變量LSTM輸入層、隱藏層、輸出層

4.2 輸入數據

由于原始數據為多條股票價格及因子序列,需要將其轉換成類似式(11)的模型輸入形式. 根據式(10),對于股票數據集中第i只股票樣本有訓練數據S(i):

由于觀察窗口W的存在,每次輸入的數據長度不能少于W個,因此輸入數據的實際長度L=T-W,則在t時刻樣本i的輸入矩陣與該樣本對應的標簽有如下形式:

4.3 預測

當預測時刻t∈[T+1,L]的股票價格時,如前述原因無法獲得[T+1,t-1]區間的多因子信息,因而將這一時間區間的模型輸出作為t時刻的因子輸入,即:

這樣就可以保證在預測過程中,窗口可以正確的向后滑動.

5 實驗與分析

5.1 實驗數據

由于外部環境因子不容易量化與建模,本文中使用的因子主要來源于公司與市場表現兩個層面,包括:收益波動率(volatility rate)、風險流通市值加權(Beta1)、風險總市值加權(Beta2)、市盈率(price earning ratio)、市凈率(price/book value ratio)、市銷率(price-to-sales ratio)、換手率(turnover rate)、流通市值(circulated market value)、當日成交額(amount)、流動性指標(liquidity)這10個在量化選股策略中常用的因子[5].

本文選取了2014年滬深交易所所有上市A股中共830只有效股票作為數據集. 并對所有股票計算了對應因子作為模型的輸入數據. 這里選取股票編號為600000的股票展示股票價格與幾個典型因子的走勢.圖5為600000股票在當年的價格走勢,圖6為其市盈率、流通市值、換手率以及流動性指標四個因子的當年走勢.

圖5 股票編號600000價格序列

5.2 實驗環境與實驗準備

5.2.1 股票數據預處理

由圖5的股票價格曲線可以觀察到,價格的微小波動十分頻繁,從量化選股的角度而言,股票價格短期小范圍的微小波動并不能作為判斷股票長期價格走勢高低的依據[15],因此為了讓訓練數據集有更好的泛化能力,本文對訓練集中所有輸入的價格序列進行了一階指數平滑(first order exponential smoothing)[16]處理.通過序列平滑可以在一定程度減少短期小范圍價格波動對數據集造成的影響.

圖7為股票編號為600000的股票價格平滑后的序列. 通過對比圖5可以觀察到,平滑后的股票價格序列減少了許多小范圍的價格波動,但也很好的保留了原始序列的價格趨勢,這樣有助于提升訓練數據集的泛化能力.

5.2.2 預測模型的搭建

本次實驗中的多變量長短期記憶網絡模型在Keras下進行搭建. Keras是一個基于Tensorflow以及Theano封裝的高級神經網絡應用編程接口(deep learning application program interface),編程語言為Python.使用Keras的LSTM相關API就可以的搭建一個單變量的LSTM模型,本文在此基礎上,修改了模型輸入層接受訓練數據的結構進而實現了一個可以輸入多個序列的多變量LSTM模型.

5.2.3 實驗環境與參數設置

本文的實驗環境如表1所示. 本次實驗的模型損失函數為均方誤差(Mean Square Error,MSE),梯度下降的優化器為Adam[17],模型迭代次數為200,隱藏層神經元數量為16. 實驗中的觀測窗口W大小為3,也即每次預測只觀測前3天的股票數據.

圖6 股票編號600000的四個典型因子走勢

圖7 股票編號600000價格平滑后走勢

5.2.4 模型評價標準

本次實驗使用的模型評價標準為回歸問題中典型的均方根誤差(Root Mean Square Error,RMSE)[18]. 這里可以對每一只股票分別計算其均方根誤差,則第i只股票樣本的預測均方根誤差為:

表1 實驗環境

其中,M為數據集的樣本總數. 模型的RMSE越小說明模型的預測準確性越高.

5.3 實驗結果與分析

5.3.1 模型的預測準確率

圖8展示了股票600000加入了多因子后的多變量LSTM模型的股票價格預測結果. 可以觀察到,對于驗證集中的新數據,模型可以較好的預測出股票價格的變化. 該序列預測的訓練集與測試集的均方根誤差分別為:

圖9展示了股票600000在沒有多因子的一般單變量LSTM模型下的股票價格預測結果,該序列預測的訓練集與測試集的均方根誤差分別為:

可以看到加入多因子的多變量LSTM相較于一般單變量LSTM在驗證集上有11.39%的性能提升.

為了更好的對比二者預測結果的差別,圖10僅顯示圖8和圖9在驗證集上的預測結果.

通過圖10中的預測曲線對比可以發現,在多因子的條件下,預測曲線不僅擬合了整體價格曲線的變化趨勢,同時也很好的擬合了曲線的一些短期波動,這就是多因子所帶來的價值; 而在一般單變量的條件下,預測曲線雖然也很好的擬合了價格曲線的變化趨勢,但是在很多細節之處卻沒有很好的擬合曲線的價格波動.

圖9 股票編號600000的單變量LSTM價格預測結果

圖10 股票編號600000驗證集預測結果對比

圖11在此額外展示了數據集中其他多只股票的驗證集預測結果.

最終使用單變量LSTM與多變量LSTM分別對全部830只股票進行預測,并分別計算在整個數據集上的平均RMSE:

在整個數據集上加入多因子的多變量LSTM相較于一般單變量LSTM有10.12%的性能提升.

5.3.2 模型的魯棒性

前文提到,本次實驗的觀測窗口W的大小為3,也即每次預測只觀測前3天的股票數據. 實際上觀察窗口的大小是一個對模型預測性能影響較大的模型超參數.

一般而言,觀測窗口越小預測曲線擬合的越緊湊,也即反映曲線的短期特性,更能體現曲線的波動; 觀測窗口越大預測曲線擬合的越松散,也即反映曲線的長期特性,更能體現曲線的趨勢. 因而根據RMSE的計算方式,則觀測窗口越小,RMSE就越小; 觀測窗口越大,RMSE就越大. 這也就意味著如果觀測窗口的變化對RMSE的值有很大影響,那么就會進而對模型的評估造成干擾.

圖11 額外幾只股票驗證集預測結果

圖12展示了RMSE隨觀測窗口W的變化曲線.隨著觀測窗口變大,無論是多變量LSTM還是單變量LSTM均受其影響導致RMSE增加. 但是在多因子的條件下,可以明顯會發現RMSE受觀測窗口的影響更加微弱,因而無論觀測窗口如何變化,多變量LSTM預測模型更加穩定,這也是得益于多因子的引入,更多豐富的股票外圍特征為模型帶來了更好的魯棒性.

6 結語與展望

本文將量化選股策略中的多因子模型概念引入到股票價格預測中,為一般基于單序列的單變量LSTM價格預測模型加入了更多經濟學外圍特征,不再僅僅將股票價格看做為一個簡單的數學概念上的時間序列.在此之上構造了一個基于多因子的多變量LSTM股票價格預測模型,在一定程度上提升了股票價格預測的準確性與模型的魯棒性.

圖12 驗證集RMSE隨觀測窗口W的變化趨勢

在本文中用于參與訓練的股票因子是較為常用的典型的量化選股因素,但是典型并不意味著適用于所有場景,實際上因子的數量是非常龐大的,在初期可以嘗試通過某些方法對大量的因子進行篩選,遴選出更為適合當前場景的因子,可以進一步提升模型的預測性能. 此外多變量的LSTM網絡的訓練時間相對較長,在后續可以嘗試對模型的計算復雜度進行優化.

猜你喜歡
模型
一半模型
一種去中心化的域名服務本地化模型
適用于BDS-3 PPP的隨機模型
提煉模型 突破難點
函數模型及應用
p150Glued在帕金森病模型中的表達及分布
函數模型及應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 成年人午夜免费视频| 欧美激情首页| 欧美色视频网站| 丝袜国产一区| 久久青草视频| 色噜噜综合网| 日韩成人在线一区二区| 国产主播在线一区| 免费AV在线播放观看18禁强制| 国产va在线| 国产丝袜无码精品| 人人91人人澡人人妻人人爽| 中文字幕亚洲专区第19页| 免费国产不卡午夜福在线观看| 午夜性刺激在线观看免费| 中文字幕中文字字幕码一二区| 91精品国产91欠久久久久| 幺女国产一级毛片| 亚洲精品制服丝袜二区| 99久久性生片| 一本大道香蕉久中文在线播放| 亚洲欧美成aⅴ人在线观看| 国产女人18水真多毛片18精品| 日韩欧美网址| 国产 日韩 欧美 第二页| 操操操综合网| 国产成人亚洲精品色欲AV| 一级毛片在线播放免费观看| 国产美女叼嘿视频免费看| 亚洲av片在线免费观看| 亚洲成aⅴ人片在线影院八| 国产超碰在线观看| 成人在线第一页| 免费人成网站在线高清| 亚洲色图欧美在线| 欧美亚洲国产一区| 在线综合亚洲欧美网站| 国产新AV天堂| 91精品免费久久久| 国产乱人伦AV在线A| 91精品国产自产在线观看| 99国产精品国产| 无码高潮喷水在线观看| 伊伊人成亚洲综合人网7777| 亚洲中文无码h在线观看 | 波多野结衣二区| 97久久超碰极品视觉盛宴| 中文字幕天无码久久精品视频免费| 三上悠亚一区二区| 亚洲精品无码久久久久苍井空| 亚洲日韩AV无码一区二区三区人| 亚洲国产天堂在线观看| 香蕉久久国产超碰青草| 在线视频精品一区| 色综合天天娱乐综合网| 国产理论最新国产精品视频| 激情在线网| 国产精品视频猛进猛出| 青青草欧美| Jizz国产色系免费| 婷婷亚洲天堂| 久久亚洲国产视频| av无码久久精品| 国产成人精品视频一区二区电影 | 爽爽影院十八禁在线观看| 99re在线视频观看| 精品無碼一區在線觀看 | 国产成人1024精品下载| 伊人天堂网| 国产网站在线看| 91在线一9|永久视频在线| 欧美精品高清| 国产国拍精品视频免费看| 亚洲三级成人| 成人亚洲国产| 在线免费观看AV| 在线观看国产小视频| av在线人妻熟妇| 日本AⅤ精品一区二区三区日| 天堂网亚洲系列亚洲系列| 综合网天天| 国产黄网永久免费|