孔蔭瑩, 柯銳愷, 胡亞美, 楊 舟
(1. 廣東財(cái)經(jīng)大學(xué)經(jīng)濟(jì)與管理國(guó)家級(jí)實(shí)驗(yàn)教學(xué)示范中心, 廣州 510320; 2. 廣東財(cái)經(jīng)大學(xué)統(tǒng)計(jì)與數(shù)學(xué)學(xué)院, 廣州 510320;3. 華南師范大學(xué)數(shù)學(xué)科學(xué)學(xué)院, 廣州 510631)
目前,中國(guó)的股市市值占GDP的比值為72%,隨著經(jīng)濟(jì)的發(fā)展,股票市值仍有35萬(wàn)億元的增長(zhǎng)空間[1]。股票作為資本市場(chǎng)的重要組成部分,對(duì)A股價(jià)格進(jìn)行預(yù)測(cè),有利于分析和完善市場(chǎng)的定價(jià)機(jī)制、完善和加強(qiáng)現(xiàn)有的監(jiān)管體制、提高股票市場(chǎng)的開放程度和融資能力,對(duì)促進(jìn)經(jīng)濟(jì)平穩(wěn)健康發(fā)展有重要的意義。
股票市場(chǎng)本質(zhì)上是一個(gè)動(dòng)態(tài)、非平穩(wěn)、多噪聲的系統(tǒng),股票的波動(dòng)除了受經(jīng)濟(jì)周期、金融市場(chǎng)等錯(cuò)綜復(fù)雜的經(jīng)濟(jì)因素影響外,還受國(guó)際關(guān)系、國(guó)家政策和突發(fā)事件等影響。因此,對(duì)股價(jià)進(jìn)行預(yù)測(cè),不僅有利于健全和完善現(xiàn)有的市場(chǎng)監(jiān)管體制,還有利于股票市場(chǎng)的高質(zhì)量開放,促進(jìn)經(jīng)濟(jì)平穩(wěn)健康發(fā)展。對(duì)于股票預(yù)測(cè)的問(wèn)題,其基本思想是通過(guò)股票價(jià)格的歷史數(shù)據(jù)對(duì)股票未來(lái)的價(jià)格進(jìn)行預(yù)測(cè)。最初通過(guò)長(zhǎng)期觀察各只股票的K線圖及一定金融知識(shí),總結(jié)歸納出股價(jià)波動(dòng)周期性規(guī)律,制定最優(yōu)投資消費(fèi)策略[2]。隨著時(shí)間序列預(yù)測(cè)模型的發(fā)展,股價(jià)預(yù)測(cè)歷經(jīng)了從傳統(tǒng)統(tǒng)計(jì)方法到機(jī)器學(xué)習(xí)算法的發(fā)展。近期伴隨圖神經(jīng)網(wǎng)絡(luò)(GNN)的興起,關(guān)于時(shí)間序列的預(yù)測(cè)有新的方向。
傳統(tǒng)的序列預(yù)測(cè)方法有移動(dòng)平均自回歸模型(ARIMA)[3]、廣義自回歸條件異方差模型(GARCH)[4]、指數(shù)廣義自回歸條件異方差(EGA-RCH)[5]和整積廣義自回歸條件異方差(IGA-RCH)[6]等, 這些模型被運(yùn)用于早期的股票價(jià)格預(yù)測(cè),對(duì)整個(gè)股票價(jià)格預(yù)測(cè)界有重大的影響,但對(duì)具有大量非線性特征的股票數(shù)據(jù)的擬合效果不佳。
機(jī)器學(xué)習(xí)方法(如支持向量機(jī)(SVM)[7]等)在解決小樣本、高維度和非線性的問(wèn)題上展現(xiàn)出特有的優(yōu)勢(shì)?;谶@些方法,KIM等[8]直接將SVM用于股價(jià)預(yù)測(cè),準(zhǔn)確度較之前有一定提升;MEI等[9]將SVM與ARIMA模型相結(jié)合,提出了ARIMA-SVM模型進(jìn)行股價(jià)預(yù)測(cè);CHUNG等[10]將SVM與GARCH模型相結(jié)合,提出了GARCH-SVM模型用于股價(jià)預(yù)測(cè)。
循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)[11]具備對(duì)時(shí)序數(shù)據(jù)的記憶,其變體LSTM、GRU能更好地處理梯度爆炸或消失的問(wèn)題,在序列預(yù)測(cè)上得到廣泛應(yīng)用。如:SAJJAD等[12]將 CNN和GRU相結(jié)合,將時(shí)間序列數(shù)據(jù)分別從空間特征和序列特征2個(gè)角度進(jìn)行預(yù)測(cè);SHIH等[13]將TPA注意力機(jī)制引入LSTM中;SHI等[14]在CNN-LSTM的基礎(chǔ)上引入注意力機(jī)制和集成學(xué)習(xí),一定程度上提高了預(yù)測(cè)的精準(zhǔn)度。
隨著GNN的興起,越來(lái)越多研究者關(guān)注GNN的應(yīng)用。傳統(tǒng)的神經(jīng)網(wǎng)絡(luò)只能對(duì)歐氏數(shù)據(jù)進(jìn)行預(yù)測(cè),而現(xiàn)實(shí)中,各股間的關(guān)系往往不是簡(jiǎn)單的歐式數(shù)據(jù)結(jié)構(gòu),如果強(qiáng)行使用歐式數(shù)據(jù)結(jié)構(gòu)將會(huì)導(dǎo)致股票間空間特征丟失,進(jìn)而影響預(yù)測(cè)準(zhǔn)確度。GNN的相關(guān)應(yīng)用處于起步,如:CHEN等[15]利用公司持股信息構(gòu)建圖結(jié)構(gòu),將圖卷積神經(jīng)網(wǎng)絡(luò)運(yùn)用到股價(jià)漲跌的預(yù)測(cè);ZHAO等[16]提出構(gòu)建含有多支股票的拓?fù)鋱D,并將構(gòu)建的圖應(yīng)用于短期信息建模中,捕捉不同股票間的空間信息;LIN等[17]設(shè)計(jì)了條件局部卷積核,用以改進(jìn)RNN-GNN,使其在時(shí)空數(shù)據(jù)中預(yù)測(cè)性能提升。
本文主要研究?jī)?nèi)容包括自適應(yīng)訓(xùn)練出股票間的圖數(shù)據(jù)結(jié)構(gòu),并提取各板塊股票價(jià)格的時(shí)間和空間特征,來(lái)進(jìn)行股價(jià)預(yù)測(cè),進(jìn)而提出一種基于股票各板塊內(nèi)部的單向自適應(yīng)圖神經(jīng)網(wǎng)絡(luò)的股價(jià)預(yù)測(cè)模型(Stock-GNN)。一個(gè)板塊內(nèi)部往往存在一些龍頭股,股票板塊的上漲,往往是由這些個(gè)股的上漲而帶動(dòng)。這些個(gè)股即在某一時(shí)期股票市場(chǎng)的炒作中,對(duì)同行業(yè)板塊的其他股票具有影響和號(hào)召力的股票。Stock-GNN的圖學(xué)習(xí)層基于板塊內(nèi)部龍頭股的啟發(fā),訓(xùn)練出單向的圖結(jié)構(gòu),并且圖結(jié)構(gòu)隨時(shí)間變化隨時(shí)更新。時(shí)序卷積模塊根據(jù)股價(jià)常見指標(biāo)的周期,設(shè)計(jì)不同大小的卷積核來(lái)提取時(shí)序上的特征,圖卷積模塊提取各股票間的特征關(guān)系。本文貢獻(xiàn)包括兩點(diǎn):一是提出Stock-GNN預(yù)測(cè)模型,將各只股票作為圖的節(jié)點(diǎn),股票之間的關(guān)系作為圖的邊,通過(guò)圖學(xué)習(xí)層,能自適應(yīng)地從股價(jià)的歷史數(shù)據(jù)中提取稀疏圖鄰接矩陣;二是受龍頭股的啟示,將A股按板塊劃分,根據(jù)不同板塊訓(xùn)練出不同的圖,并使用時(shí)序卷積模塊和圖卷積模塊分別提取股價(jià)的時(shí)間和空間特征。
本模型基于圖神經(jīng)網(wǎng)絡(luò)提出,利用圖神經(jīng)網(wǎng)絡(luò)在非歐數(shù)據(jù)結(jié)構(gòu)優(yōu)秀的表現(xiàn)進(jìn)行股價(jià)預(yù)測(cè),下面給出描述圖的相關(guān)定義。
定義1[18]圖是指由頂點(diǎn)的有窮非空集合和頂點(diǎn)之間邊的集合組成,通常表示為:G=(V,E),其中,G表示一個(gè)圖,V是圖G中頂點(diǎn)的集合,E是圖G中邊的集合。
定義2[18]有向圖是指圖中任意2個(gè)頂點(diǎn)之間的邊都是有向邊。
定義3[18]節(jié)點(diǎn)鄰域?yàn)镹(v)={uV|(v,u)E}。
定義4[18]鄰接矩陣Aadp是一個(gè)n×n的矩陣,如果eijE,則Aij=1;如果eijE,則Aij=0。
本文由各板塊的股票收盤價(jià)和關(guān)系數(shù)據(jù)構(gòu)建圖數(shù)據(jù)結(jié)構(gòu),其中,節(jié)點(diǎn)代表股票收盤價(jià),邊則代表各股票間價(jià)格的影響關(guān)系。本文主要基于各行業(yè)板塊內(nèi)各只股票的收盤價(jià)訓(xùn)練生成圖,對(duì)時(shí)間和空間特征進(jìn)行提取,預(yù)測(cè)出下一個(gè)交易日的收盤價(jià)。
由于股票價(jià)格之間存在潛在的關(guān)系,尤其是在同一個(gè)板塊內(nèi)部,各只股票價(jià)格之間有較大的關(guān)聯(lián),選擇某一板塊的各只股票收盤價(jià)作為圖的節(jié)點(diǎn),訓(xùn)練出一張圖,并利用圖神經(jīng)網(wǎng)絡(luò)的模型進(jìn)行預(yù)測(cè)。其中,圖學(xué)習(xí)模塊基于板塊內(nèi)部龍頭股的啟發(fā)訓(xùn)練出單向的圖結(jié)構(gòu),并且圖結(jié)構(gòu)隨時(shí)間變化隨時(shí)更新。運(yùn)用類似GoogLeNet的Inception模塊,根據(jù)股價(jià)常見指標(biāo)的周期,設(shè)計(jì)不同大小的卷積核來(lái)提取時(shí)序上的特征;運(yùn)用改進(jìn)的圖卷積模塊來(lái)提取各股票間的特征關(guān)系。綜上,本文提出了一種基于股票各板塊內(nèi)部的單向自適應(yīng)圖神經(jīng)網(wǎng)絡(luò)的股價(jià)預(yù)測(cè)模型(Stock-GNN)。
模型的總體框架圖如圖1所示,主要包括單向圖學(xué)習(xí)層、圖卷積模塊和時(shí)序卷積模塊交替堆疊5層,最后使用1×1卷積核作為輸出層,控制輸出維度。為了避免在訓(xùn)練的過(guò)程中梯度爆炸和梯度消失問(wèn)題,提高網(wǎng)絡(luò)的訓(xùn)練效率和性能,各模塊間還使用了殘差連接和跳躍連接。
圖1 Stock-GNN預(yù)測(cè)模型的整體框架
在股票價(jià)格預(yù)測(cè)中,各只股票間的關(guān)系沒(méi)有預(yù)先形成的圖結(jié)構(gòu),因此各股票之間潛在的關(guān)系不能直接獲得。受各板塊內(nèi)龍頭股往往對(duì)同行業(yè)的其他股票的漲跌起引導(dǎo)和示范作用的啟示,并且在同一板塊板塊內(nèi)各股票往往有相似的趨勢(shì)(圖2),繪制了浦發(fā)銀行(600000.SH)、華夏銀行(600015.SH)、民生銀行(600016.SH)3支銀行板塊股票的每日收盤價(jià)格曲線圖。
圖2 3只銀行股的股價(jià)曲線圖
基于上述思想,本文提出基于各板塊內(nèi)部的單向自適應(yīng)的圖結(jié)構(gòu)學(xué)習(xí),即構(gòu)造一個(gè)參數(shù)化的鄰接矩陣?;谔荻认陆档姆椒?在反向傳播中不斷進(jìn)行優(yōu)化,更新鄰接矩陣。
單向圖學(xué)習(xí)模塊是通過(guò)學(xué)習(xí)一個(gè)鄰接矩陣,從多元時(shí)間序列數(shù)據(jù)中獲取變量之間的單向影響關(guān)系,并且能與圖卷積層進(jìn)行共同優(yōu)化[19]。本文使用多只股票的收盤價(jià)作為圖的節(jié)點(diǎn)進(jìn)行股價(jià)預(yù)測(cè),以探索股票價(jià)格間的影響關(guān)系。受龍頭股的啟示,股票價(jià)格間的影響關(guān)系是單向的,一個(gè)節(jié)點(diǎn)狀態(tài)的變化會(huì)引起其他節(jié)點(diǎn)的變化,因此,模型的圖學(xué)習(xí)模塊訓(xùn)練出的鄰接矩陣是非對(duì)稱的。另外,由于部分股票的關(guān)系較小,但模型仍訓(xùn)練出邊的權(quán)重,為了減少無(wú)意義矩陣的計(jì)算量,每個(gè)節(jié)點(diǎn)相鄰的節(jié)點(diǎn)數(shù)的最大值設(shè)置為8,即1個(gè)節(jié)點(diǎn)最多與8個(gè)關(guān)系密切的節(jié)點(diǎn)相連,與其他節(jié)點(diǎn)的邊權(quán)重為0。圖學(xué)習(xí)模塊的計(jì)算公式如下:
Aadp=ReLU(tanh(αK)),
(1)
(2)
K1=PReLU(E1θ1),
(3)
K2=PReLU(E2θ2),
(4)
其中,E1、E2分別為源節(jié)點(diǎn)、目標(biāo)節(jié)點(diǎn),θ1、θ2是模型的參數(shù),K為源節(jié)點(diǎn)指向目標(biāo)節(jié)點(diǎn)的方向權(quán)重,α為激活函數(shù)的飽和率,ReLU(·)為控制鄰接矩陣的非對(duì)稱性的激活函數(shù);PReLU(·)為增加非線性的激活函數(shù)。
時(shí)序卷積模塊使用多個(gè)不同大小的一維卷積核來(lái)抽取高維的時(shí)序特征[20]。時(shí)序卷積模塊使用類似GoogLeNet的inception模塊,不同的卷積核大小提供了不同的感受野,使該模塊提取到不同股票價(jià)格周期的變化特征,其結(jié)構(gòu)如圖3所示。
圖3 時(shí)序卷積模塊
通過(guò)多個(gè)卷積核提取不同交易周期的信息,最后進(jìn)行拼接。關(guān)于卷積核大小的選擇,考慮到卷積核太大會(huì)忽略股票短周期的特征,而太小又不能充分提取長(zhǎng)期的特征,本文受常用的股票周期指標(biāo)(5日均線、10日均線、20日均線、30日均線)的啟發(fā),對(duì)每一個(gè)節(jié)點(diǎn)的時(shí)間序列使用大小為1×5、1×10、1×20、1×30的卷積核進(jìn)行時(shí)序特征提取。
圖卷積層可將節(jié)點(diǎn)及其相鄰節(jié)點(diǎn)信息進(jìn)行整合,對(duì)信息起到傳遞和篩選的作用,更廣泛地提取股票間價(jià)格的影響關(guān)系的特征。通過(guò)重復(fù)混合不同距離的鄰居特征表示,可以實(shí)現(xiàn)對(duì)節(jié)點(diǎn)特征的多尺度建模,從而能更準(zhǔn)確地捕捉節(jié)點(diǎn)之間的關(guān)系和特征。該模塊橫向利用多次鄰接矩陣,縱向通過(guò)訓(xùn)練權(quán)重W,其結(jié)構(gòu)如圖4所示。
圖4 圖卷積模塊
信息傳遞即從相鄰的節(jié)點(diǎn)和相鄰節(jié)點(diǎn)的節(jié)點(diǎn)一直延伸進(jìn)行信息提取,使用超參數(shù)β控制保持輸入時(shí)節(jié)點(diǎn)的信息的比例,計(jì)算公式如下:
Hk=βH輸入+(1-β)AHk-1,
(5)
信息篩選的作用是防止隨著網(wǎng)絡(luò)層數(shù)的增加,每個(gè)節(jié)點(diǎn)的隱層表征會(huì)趨向于收斂到同一個(gè)值的過(guò)度平滑問(wèn)題和篩選掉噪聲的信號(hào)。對(duì)每一個(gè)Hk訓(xùn)練出一個(gè)權(quán)重Wk,將每個(gè)Hk乘上權(quán)重Wk后相加就得到當(dāng)前層的輸出,既保持了源節(jié)點(diǎn)的部分信息,又更新到鄰居節(jié)點(diǎn)信息,信息篩選公式如下:
(6)
將基于股票各板塊內(nèi)部的單向自適應(yīng)圖神經(jīng)網(wǎng)絡(luò)模型(Stock-GNN)與常用于股價(jià)預(yù)測(cè)的AR[3]、GARCH[4]、CNN-GRU[12]、TPA-LSTM[13]、CNN-LSTM-Attention[14]模型和不按板塊劃分的圖神經(jīng)網(wǎng)絡(luò)(All-SGNN)模型進(jìn)行比較,使用各支股票的歷史數(shù)據(jù)進(jìn)行股價(jià)預(yù)測(cè)。為了評(píng)估模型的預(yù)測(cè)性能,本文使用相對(duì)平均誤差(RSE)、相對(duì)絕對(duì)誤差 (RAE)、預(yù)測(cè)序列與實(shí)際序列的相似度系數(shù)(CORR)3個(gè)指標(biāo)對(duì)預(yù)測(cè)結(jié)果進(jìn)行分析。首先對(duì)比Stock-GNN與其他模型的性能,然后對(duì)Stock-GNN在不同板塊的預(yù)測(cè)效果進(jìn)行分析,最后在每個(gè)板塊隨機(jī)選擇一個(gè)股票進(jìn)行可視化分析。
實(shí)驗(yàn)數(shù)據(jù)來(lái)源于滬深A(yù)股主板中市值排名前4的行業(yè)板塊(銀行、白酒、電力設(shè)備和生物醫(yī)藥)。選取這些行業(yè)板塊中市值都不低于總計(jì)100億元,并已上市超過(guò)10年的股票共61只,具體分類和名稱見表1。使用2011年1月4日至2022年5月6日,共計(jì)2 754個(gè)交易日的股票收盤價(jià)數(shù)據(jù)進(jìn)行訓(xùn)練和測(cè)試。數(shù)據(jù)集分為訓(xùn)練集、驗(yàn)證集和測(cè)試集。訓(xùn)練集為2011年1月4日至2017年10月24日,共1 654條數(shù)據(jù),占該數(shù)據(jù)集的60%;驗(yàn)證集為2017年10月25日至2020年1月22日,共550條數(shù)據(jù),占該數(shù)據(jù)集的20%;測(cè)試集為2020年1月23日至2022年5月6日,共550條數(shù)據(jù),占該數(shù)據(jù)集的 20%。
表1 實(shí)驗(yàn)所選取的股票
各只股票的價(jià)格差異較大,若直接將這些數(shù)據(jù)輸入圖神經(jīng)網(wǎng)絡(luò)中,會(huì)對(duì)圖學(xué)習(xí)和預(yù)測(cè)結(jié)果有較大的影響。為了消除各股價(jià)之間的量綱影響,需要對(duì)股價(jià)進(jìn)行歸一化處理,歸一化公式[11]如下:
(7)
其中,X為各只股票每天的收盤價(jià)數(shù)據(jù),Xnormation為歸一化股價(jià),Xmax為對(duì)應(yīng)股票的最高收盤價(jià),Xmin為對(duì)應(yīng)股票的最低收盤價(jià)。
本文選擇每支股票的相對(duì)平均誤差(RSE)、相對(duì)絕對(duì)誤差 (RAE) 、預(yù)測(cè)序列與實(shí)際序列的相似度系數(shù)(CORR)作為模型評(píng)價(jià)指標(biāo)。其中,RSE和RAE是用來(lái)衡量預(yù)測(cè)值與真實(shí)值之間誤差大小的指標(biāo),因此相對(duì)平均誤差和相對(duì)絕對(duì)誤差越小則預(yù)測(cè)準(zhǔn)確性越好;CORR是用來(lái)衡量2個(gè)序列之間相關(guān)程度的指標(biāo),因此越大越好。計(jì)算每只股票的指標(biāo)數(shù)值后求平均值即為對(duì)應(yīng)模型的誤差評(píng)價(jià)。所用指標(biāo)的計(jì)算公式如下:
(8)
(9)
(10)
其中,a為實(shí)際值,p為預(yù)測(cè)值。
本實(shí)驗(yàn)使用操作系統(tǒng)為Windows10,CPU為Inter Core i7-10700F,顯卡為 NVIDIA GeForce RTX 3060 Ti,編程使用的版本為Python 3.7.9,PyTorch 1.9.1,CUDA 11.3。
本實(shí)驗(yàn)對(duì)各只股票進(jìn)行單步預(yù)測(cè),即根據(jù)股票歷史收盤價(jià)對(duì)股票進(jìn)行下一個(gè)交易日收盤價(jià)的預(yù)測(cè),據(jù)此持續(xù)滾動(dòng)進(jìn)行預(yù)測(cè)。
模型參數(shù)設(shè)置方面,優(yōu)化器選擇 Adam 優(yōu)化器,損失函數(shù)為L(zhǎng)1范數(shù),batch size設(shè)置為4,epochs設(shè)置為30,iteration設(shè)置為100,dropout設(shè)置為0.3,learn rate設(shè)置為0.000 1, weight decay設(shè)置為0.000 01。
將本文提出的Stock-GNN模型與常用的股價(jià)預(yù)測(cè)模型進(jìn)行實(shí)證分析,并計(jì)算每支股票的相對(duì)平均誤差(RSE)、相對(duì)絕對(duì)誤差 (RAE) 、預(yù)測(cè)序列與實(shí)際序列的相似度系數(shù)(CORR)。由結(jié)果(表2)可知:在3類評(píng)價(jià)指標(biāo)中,與不按板塊劃分的All-SGNN相比,Stock-GNN模型對(duì)股票價(jià)格的預(yù)測(cè)效果略有提升;與AR、GARCH、CNN-GRU、TPA-LSTM、CNN-LSTM-Attention模型相比,Stock-GNN模型的相對(duì)平均誤差和相對(duì)絕對(duì)誤差有較大提升,相似度系數(shù)也有一定提升。
表2 7個(gè)股票預(yù)測(cè)模型的性能對(duì)比
對(duì)不同板塊分別進(jìn)行訓(xùn)練得到不同的圖,計(jì)算每支股票的相對(duì)平均誤差(RSE)、相對(duì)絕對(duì)誤差 (RAE) 、預(yù)測(cè)序列與實(shí)際序列的相關(guān)系數(shù)(CORR)作為模型評(píng)價(jià)指標(biāo),各板塊取平均值并計(jì)算標(biāo)準(zhǔn)偏差。由結(jié)果(表3)可知:(1)四大板塊的股票預(yù)測(cè)序列和實(shí)際序列的相似度系數(shù)(CORR)都在0.98以上,即2個(gè)序列極高度相關(guān),說(shuō)明股票價(jià)格的漲跌趨勢(shì)預(yù)測(cè)效果非常好;(2)銀行板塊的RSE和RAE只有0.029 4和0.019 5,并且各只銀行股預(yù)測(cè)誤差的標(biāo)準(zhǔn)偏差較小,說(shuō)明各銀行股的預(yù)測(cè)效果都很好,與現(xiàn)實(shí)中銀行板塊波動(dòng)較小,各股關(guān)系較明顯吻合;(3)白酒板塊由于受市場(chǎng)及政策影響,股票波動(dòng)大,標(biāo)準(zhǔn)偏差大,說(shuō)明各股預(yù)測(cè)效果差異較大,RSE和RAE為0.089 3和0.063 6,預(yù)測(cè)效果不如其他板塊。
表3 各板塊預(yù)測(cè)指標(biāo)對(duì)比
在個(gè)股的預(yù)測(cè)方面,本文隨機(jī)選取上述4個(gè)板塊中的1只股票,并將股價(jià)預(yù)測(cè)結(jié)果進(jìn)行可視化。由結(jié)果(圖5)可知:(1)個(gè)股的預(yù)測(cè)曲線基本與實(shí)際吻合,趨勢(shì)基本一致,但個(gè)別時(shí)刻存在輕微的滯后;(2)除了古井貢酒外,其他個(gè)股的價(jià)格預(yù)精確度都很高;(3)古井貢酒雖然趨勢(shì)預(yù)測(cè)基本準(zhǔn)確,但是預(yù)測(cè)值與實(shí)際值存在一定誤差,該結(jié)論與表3結(jié)果吻合,即白酒板塊預(yù)測(cè)誤差明顯高于其他板塊,但序列相似度仍較高。
圖5 股票預(yù)測(cè)曲線
本文提出一種基于股票各板塊內(nèi)部的單向自適應(yīng)圖神經(jīng)網(wǎng)絡(luò)的股價(jià)預(yù)測(cè)模型(Stock-GNN),該模型可以訓(xùn)練出各股票之間的圖數(shù)據(jù)結(jié)構(gòu)關(guān)系,并利用圖卷積模塊和時(shí)序卷積模塊提取它們的時(shí)空特征進(jìn)行預(yù)測(cè)。爬取A股4大行業(yè)板塊共61只股票的真實(shí)數(shù)據(jù)進(jìn)行實(shí)證分析,將Stock-GNN模型與常用于股價(jià)預(yù)測(cè)的AR、GARCH、CNN-GRU、TPA-LSTM、CNN-LSTM-Attention模型和不按板塊劃分的圖神經(jīng)網(wǎng)絡(luò)(All-SGNN)模型進(jìn)行比較。結(jié)果表明:與其他預(yù)測(cè)模型相比,Stock-GNN模型的相對(duì)平均誤差和相對(duì)絕對(duì)誤差有較大提升,相似度系數(shù)也有一定提升;個(gè)股的預(yù)測(cè)曲線基本與實(shí)際吻合,趨勢(shì)基本一致,但個(gè)別時(shí)刻存在輕微的滯后;受市場(chǎng)及政策的影響,白酒板塊波動(dòng)較大,預(yù)測(cè)精確度會(huì)略低于其他板塊。
本文將圖神經(jīng)網(wǎng)絡(luò)與股價(jià)預(yù)測(cè)結(jié)合,考慮到同板塊股票間的影響和龍頭股的影響,后續(xù)研究可考慮更多板塊的股票,訓(xùn)練雙向的圖數(shù)據(jù)結(jié)構(gòu),探索預(yù)測(cè)效果更好的模型。