吉睿
(四川大學(xué)計(jì)算機(jī)學(xué)院,成都610065)
在金融時(shí)間序列這個(gè)研究領(lǐng)域中,股票市場(chǎng)預(yù)測(cè)一直是一項(xiàng)受到各個(gè)領(lǐng)域研究者關(guān)注且極具挑戰(zhàn)性的任務(wù)。股票市場(chǎng)預(yù)測(cè)可以在一定程度上為投資者做投資決策時(shí)提供參考建議,也可以在一定程度上有效提高投資者的投資回報(bào)。金融時(shí)間序列預(yù)測(cè),從最初傳統(tǒng)的統(tǒng)計(jì)方法,發(fā)展到機(jī)器學(xué)習(xí)[1],再發(fā)展到深度學(xué)習(xí)[2]。最近幾年,由于深度學(xué)習(xí)的廣泛應(yīng)用,使股票預(yù)測(cè)的結(jié)果表現(xiàn)更優(yōu)。一般來(lái)說(shuō),由于股票價(jià)格具有非平穩(wěn)性、非線性、高噪聲的特點(diǎn),股票價(jià)格與其影響因素之間存在著復(fù)雜的非線性關(guān)系。傳統(tǒng)的統(tǒng)計(jì)學(xué)模型難以對(duì)其做出精度較高的預(yù)測(cè),而神經(jīng)網(wǎng)絡(luò)[3]以其良好的非線性逼近能力為股價(jià)預(yù)測(cè)提供了新的方法。這些任務(wù)基本可以分為兩類:一是預(yù)測(cè)未來(lái)股票漲、跌趨勢(shì)的分類問(wèn)題;二是預(yù)測(cè)股票未來(lái)價(jià)格的回歸問(wèn)題。目前大多研究中,預(yù)測(cè)某支股票未來(lái)的價(jià)格或者趨勢(shì)大多基于它自身的歷史數(shù)據(jù)[4-6],例如收盤價(jià)、最高價(jià)、最低價(jià)、成交量等交易數(shù)據(jù),或者根據(jù)交易數(shù)據(jù)進(jìn)行一系列計(jì)算,得到一些對(duì)股票走勢(shì)有指導(dǎo)作用的相關(guān)技術(shù)指標(biāo),對(duì)股票進(jìn)行預(yù)測(cè)。但是,通常影響股票走勢(shì)的因素有多個(gè),這些因素包括:股票歷史交易數(shù)據(jù)、技術(shù)指標(biāo)、企業(yè)的財(cái)務(wù)報(bào)表、宏觀經(jīng)濟(jì)狀況、財(cái)經(jīng)新聞、股民情緒、國(guó)家政策、政治事件等。針對(duì)當(dāng)前使用股票歷史數(shù)據(jù)預(yù)測(cè)股市精度不高的問(wèn)題,提出將連續(xù)型數(shù)值的股票技術(shù)指標(biāo)特征離散化為一系列0、1 特征,同時(shí)加入宏觀經(jīng)濟(jì)指標(biāo)的方法應(yīng)用于股票指數(shù)預(yù)測(cè)。
本文主要工作是利用離散化的方法以及基于LSTM[7]長(zhǎng)短時(shí)期記憶神經(jīng)網(wǎng)絡(luò)對(duì)股票指數(shù)的漲、跌進(jìn)行分類預(yù)測(cè)。主要包含以下幾個(gè)步驟,一是股票指數(shù)數(shù)據(jù)的采集,根據(jù)需要從股票歷史交易數(shù)據(jù)中選取相應(yīng)時(shí)間段內(nèi)的數(shù)據(jù),并計(jì)算相應(yīng)的技術(shù)指標(biāo),同時(shí)根據(jù)技術(shù)指標(biāo)的特定含義對(duì)技術(shù)指標(biāo)進(jìn)行離散化處理,并將原始數(shù)據(jù)集劃分為訓(xùn)練集和測(cè)試集;二是構(gòu)建LSTM長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型;三是利用構(gòu)建的模型完成對(duì)股票指數(shù)漲、跌的分類預(yù)測(cè);四是對(duì)預(yù)測(cè)結(jié)果進(jìn)行評(píng)估。整個(gè)實(shí)驗(yàn)流程如圖1 所示。
本文主要研究對(duì)象為滬深300 成分指數(shù)(399300.SZ)從2009 年8 月31 日至2018 年6 月25 日,滬深300 成分指數(shù)是從上海和深圳證券市場(chǎng)中選取的300支市值大、交易活躍以及流通性好的A 股,這些成分股覆蓋了市場(chǎng)上大部分流通市值的股票,能夠反映整個(gè)市場(chǎng)中主流投資的收益情況,從而反映整個(gè)股票市場(chǎng)的行情。歷史數(shù)據(jù)樣例如表1 所示。
表1 股票歷史數(shù)據(jù)樣例(399300.SZ,深滬300 指數(shù))
股票技術(shù)指標(biāo)[8]是相對(duì)于基本分析而言的,技術(shù)指標(biāo)是從過(guò)去的價(jià)格、時(shí)間、成交量等數(shù)據(jù)中通過(guò)不同的統(tǒng)計(jì)計(jì)算得到的,是一些衡量股價(jià)走勢(shì)的指標(biāo)。技術(shù)指標(biāo)通常由開盤價(jià)、收盤價(jià)、最高價(jià)、最低價(jià)、成交量等基本數(shù)據(jù)計(jì)算而來(lái)。本文也將使用一些常見(jiàn)的技術(shù)指標(biāo)來(lái)完成對(duì)股票指數(shù)漲、跌的分類預(yù)測(cè),用到的技術(shù)指標(biāo)如表2 所示。
表2 技術(shù)指標(biāo)
宏觀經(jīng)濟(jì)指標(biāo)是體現(xiàn)經(jīng)濟(jì)狀況的一種方式,宏觀經(jīng)濟(jì)狀況也是對(duì)本國(guó)股票市場(chǎng)影響的因素之一。文獻(xiàn)[9]的結(jié)論是,人民幣匯率的波動(dòng)會(huì)影響中國(guó)大陸A 股市場(chǎng)的走勢(shì)。因此,增加宏觀經(jīng)濟(jì)指標(biāo)可以將更多信息引入LSTM 長(zhǎng)短期神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)中,提高預(yù)測(cè)的準(zhǔn)確度。本文選擇了選擇兩種宏觀經(jīng)濟(jì)指標(biāo):美元指數(shù)(以此來(lái)捕捉匯率對(duì)中國(guó)股市的影響)和上海銀行同業(yè)拆借利率(以此來(lái)捕捉利率對(duì)中國(guó)股市的影響)。它們均有可能影響股票市場(chǎng)的資金流動(dòng),從而影響股票指數(shù)的走勢(shì)。宏觀經(jīng)濟(jì)指標(biāo)如表3 所示。
表3 宏觀經(jīng)濟(jì)數(shù)據(jù)樣例
由于計(jì)算出的股票技術(shù)指標(biāo)之間具有不同的量綱,同時(shí)數(shù)據(jù)范圍也具有較大差異,所有需要對(duì)不同量綱和不同數(shù)據(jù)范圍的數(shù)據(jù)進(jìn)行歸一化處理,本文采用Z-score 標(biāo)準(zhǔn)化方法對(duì)數(shù)據(jù)進(jìn)行處理,其公式為:
其中μ 表示均值,σ 表示標(biāo)準(zhǔn)差。
在通常的機(jī)器學(xué)習(xí)任務(wù)中,離散化[10]的運(yùn)用通常是將連續(xù)特征離散化為一系列0、1 特征,然后再輸入到模型中,這樣做的優(yōu)勢(shì)有以下幾點(diǎn):離散特征的增加和減少都很容易,易于模型的快速迭代;稀疏向量?jī)?nèi)積乘法運(yùn)算速度較快,同時(shí)計(jì)算結(jié)果方便存儲(chǔ);離散化后的特征對(duì)異常值有很強(qiáng)的魯棒性,同時(shí)在一定程度上有去除噪聲的作用,模型會(huì)更加穩(wěn)定;也起到了簡(jiǎn)化模型的作用,降低模型過(guò)擬合的風(fēng)險(xiǎn)。而本文根據(jù)股票技術(shù)指標(biāo)的具體含義,將連續(xù)型的股票技術(shù)指標(biāo)數(shù)據(jù)轉(zhuǎn)換為0、1 的離散型數(shù)據(jù)。以離散化RSI 指標(biāo)為例,RSI相對(duì)強(qiáng)弱指標(biāo)計(jì)算公式如下:
RSI 是一個(gè)衡量在一段特定時(shí)期內(nèi)股價(jià)的變動(dòng)情況,來(lái)推測(cè)價(jià)格未來(lái)的變動(dòng)方向的技術(shù)指標(biāo)。RSI 的取值在0-100 之間,RSI 值由上向下突破50,代表股價(jià)已經(jīng)轉(zhuǎn)弱。RSI 值由下向上突破50,代表股價(jià)已經(jīng)轉(zhuǎn)強(qiáng)。當(dāng)RSI 值高于80 進(jìn)入超買區(qū),股價(jià)隨時(shí)可能形成短期下跌趨勢(shì)。當(dāng)RSI 值低于20 進(jìn)入超賣區(qū),股價(jià)隨時(shí)可能形成短期上漲趨勢(shì)。預(yù)計(jì)未來(lái)股票指數(shù)將會(huì)下跌將對(duì)應(yīng)數(shù)據(jù)標(biāo)記為0,預(yù)計(jì)未來(lái)股票指數(shù)將會(huì)上漲將對(duì)應(yīng)數(shù)據(jù)標(biāo)記為1。將表2 的技術(shù)指標(biāo)離散化處理后,結(jié)果如表4 所示。
表4 技術(shù)指標(biāo)離散化
長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)(Long Short-Term Memory,LSTM)是遞歸神經(jīng)網(wǎng)絡(luò)(RNN)的一種,其主要是解決了RNN 在長(zhǎng)序列的訓(xùn)練過(guò)程中因梯度消失而無(wú)法學(xué)習(xí)到長(zhǎng)期依賴的問(wèn)題。LSTM 通過(guò)在其神經(jīng)元內(nèi)部加入了遺忘門f、輸入門i、輸出門o 和內(nèi)部記憶單元c 有效解決了梯度消失問(wèn)題,遺忘門f 控制輸入xt和上一層隱藏層輸出ht-1被遺忘的程度大小,輸入門i 控制輸入xt和當(dāng)前計(jì)算的狀態(tài)更新到記憶單元的程度大小,輸出門o 控制輸入xt和當(dāng)前輸出取決于當(dāng)前記憶單元的程度大小,其結(jié)構(gòu)如圖2 所示。
圖2 LSTM模型記憶單元內(nèi)部結(jié)構(gòu)
(1)xt是在t 時(shí)刻輸入記憶單元的向量
(2)Wf,Wi,Wc,Wo,Ui,Uf,Uc,Uo和Vo是權(quán)重矩陣
(3)bf,bi,bc和bo是偏置矩陣
(4)ht是記憶單元在t 時(shí)刻的值
(5)ft遺忘門在t 時(shí)刻的輸出值,遺忘門公式如下:
ft=σ(Wfxt+Ufht-1+bf)
(6)it是輸入門在t 時(shí)刻的輸出值,是當(dāng)前單元狀態(tài)在t 時(shí)刻的候選值,輸入門計(jì)算公式如下:
(7)Ct是在t 時(shí)刻的單元狀態(tài),單元狀態(tài)計(jì)算公式如下:
(8)ot和ht是輸出門在t 時(shí)刻的輸出值和時(shí)刻t 記憶細(xì)胞的值,輸出門計(jì)算公式如下:
模型預(yù)測(cè)方式為使用前20 個(gè)交易日的數(shù)據(jù)預(yù)測(cè)第21 日的漲、跌情況。訓(xùn)練方式為取前80%的數(shù)據(jù)作為訓(xùn)練集,取后20%作為測(cè)試集。整個(gè)過(guò)程一共可以分為三個(gè)部分,第一部分主要包括數(shù)據(jù)的預(yù)處理和股票技術(shù)指標(biāo)的離散化處理,第二部分使用LSTM 模型進(jìn)行分類預(yù)測(cè)獲得結(jié)果,第三部分對(duì)獲得的結(jié)果進(jìn)行評(píng)估并嘗試不同的輸入。預(yù)測(cè)模型流程如表5 所示。
表5 預(yù)測(cè)模型流程
本文使用準(zhǔn)確率對(duì)實(shí)驗(yàn)結(jié)果進(jìn)行評(píng)價(jià),其結(jié)果如表6 所示。
表6 實(shí)驗(yàn)結(jié)果
實(shí)驗(yàn)結(jié)果表明在僅使用股票技術(shù)指標(biāo)的情況下,對(duì)股票技術(shù)指標(biāo)進(jìn)行離散化處理后,模型預(yù)測(cè)準(zhǔn)確率有較大提升,離散化在提高股票指數(shù)趨勢(shì)預(yù)測(cè)的準(zhǔn)確度上是有效的。在使用技術(shù)指標(biāo)和使用技術(shù)指標(biāo)和宏觀經(jīng)濟(jì)指標(biāo)的情況下,加入宏觀經(jīng)濟(jì)指標(biāo)對(duì)模型的預(yù)測(cè)準(zhǔn)確率也有相應(yīng)的提升,宏觀經(jīng)濟(jì)指標(biāo)在提高股票指數(shù)趨勢(shì)預(yù)測(cè)的準(zhǔn)確度上也是有效的。
本文通過(guò)將連續(xù)型數(shù)值的股票技術(shù)指標(biāo)根據(jù)其具體含義將其離散化為一系列0、1 特征,再結(jié)合宏觀經(jīng)濟(jì)指標(biāo)構(gòu)建基于LSTM 長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)的股票指數(shù)預(yù)測(cè)模型,通過(guò)對(duì)實(shí)驗(yàn)結(jié)果的分析后發(fā)現(xiàn),離散化在提高股票指數(shù)趨勢(shì)預(yù)測(cè)的準(zhǔn)確度上是有效的。