陳登建 杜飛霞 夏換
摘? 要: 為提高金融市場股票的預測精確度,提出自回歸差分移動平均與支持向量機滾動殘差模型組合的預測股票方法。以貴州茅臺的股票數(shù)據(jù)為研究對象,借助ARIMA模型實現(xiàn)對股票數(shù)據(jù)的線性趨勢預測,通過滾動殘差的SVR回歸模型對ARIMA模型的預測殘差進行數(shù)據(jù)修正,得到ARIMA_SVR滾動殘差模型的預測值。實驗結(jié)果表明,相較于傳統(tǒng)ARIMA模型,ARIMA與滾動殘差SVR組合模型的性能和預測精度都得到大幅提升,具有一定的學術(shù)價值和應用意義。
關(guān)鍵詞: 金融; ARIMA模型; SVR滾動殘差模型; 股票預測
中圖分類號:TP183? ? ? ? ? 文獻標識碼:A? ? ?文章編號:1006-8228(2022)05-76-05
Stock forecasting based on the combination of ARIMA and SVR rolling residual model
Chen Dengjian ?Du Feixia Xia Huan
Abstract: In order to improve the accuracy of stock prediction, a prediction method based on the combination of autoregressive differential moving average and support vector machine rolling residual model is proposed. Taking the stock data of Guizhou Maotai as the research object, the ARIMA model is used to realize the linear trend prediction of the stock data. The predicted residuals of the ARIMA model are corrected by the SVR regression model of the rolling residuals, and the predicted values of the ARIMA_SVR rolling residuals model are obtained. The experimental results show that compared with the traditional ARIMA model, the performance and prediction accuracy of ARIMA and rolling residual SVR combined model have been greatly improved, which has certain academic value and application significance.
Key words: finance; ARIMA model; SVR rolling residual model; stock forecast
引言
我國股票二級市場的漲跌受到多種因素的影響,由于其不平穩(wěn)、非線性等特點,導致為實現(xiàn)對股票數(shù)據(jù)的精確預測變得尤為困難。挖掘股票的波動規(guī)律,預測股票漲跌情況,有利于促進中國金融市場的穩(wěn)定。
我國早期對股票走勢預測主要包括對于基本面的分析和技術(shù)面的分析?;久娴姆治鍪峭ㄟ^分析公司的運營情況和行業(yè)的發(fā)展態(tài)勢,預測該公司股票的未來走勢。技術(shù)的分析主要是分析金融市場各個因素,例如股票的成交量、成交價格等因素。
隨著研究的進展,學者們以時間為維度構(gòu)建出ARIMA模型,根據(jù)股票歷史價格走勢對股票進行短期預測[1-6]。計算機技術(shù)的發(fā)展,各種智能算法也越發(fā)的成熟,眾多學者將機器學習的智能算法應用在股票數(shù)據(jù)的研究分析。如丁文絹通過構(gòu)建ARIMA與LSTM神經(jīng)網(wǎng)絡模型,實現(xiàn)股票走勢的預測,LSTM神經(jīng)網(wǎng)絡模型相較于ARIMA模型預測誤差更小[7];鄒菊紅借助BP反向傳播的神經(jīng)網(wǎng)絡模型實現(xiàn)對于股票價格的預測[8];齊甜方借助Seq2Seq和情感分析實現(xiàn)對于股票波動趨勢的預測[9]。
本文選貴州茅臺的股票價格數(shù)據(jù)[1]作為實驗的研究對象,提出一種改進的差分自回歸移動平均模型(ARIMA)與滾動殘差的支持向量機回歸模型(SVR)的組合,利用殘差數(shù)據(jù)優(yōu)化模型的參數(shù),實現(xiàn)對貴州茅臺高準確率的預測。
1 研究方法
1.1 ARIMA模型
時間序列是以時間作為自變量,隨著時間變化并且互相關(guān)聯(lián)的數(shù)據(jù)。ARIMA模型是經(jīng)典的時間序列模型[10],該模型含義表達為將非平穩(wěn)的序列轉(zhuǎn)化為平穩(wěn)的序列,用當前變量的滯后項,以及隨機的誤差值來解釋當前變量,模型的輸入為時間序列的單變量,該模型的表達式可以用式⑴來表示。
⑴
其中?i的i取值從1到p,θi的i取值從1到q。其分別代表ARIMA模型參的參數(shù)p和q,p是自回歸模型的系數(shù),q是移動平均模型的系數(shù)。
ARIMA(p,d,q)模型要求當前的時間序列是一個平穩(wěn)的時間序列,平穩(wěn)的序列的時間平移長度,可以決定當前函數(shù)的自相關(guān)與協(xié)方差,如下所示:
⑵
γ (t,s)表示為序列{Xt}的自相關(guān)協(xié)方差函數(shù),μ為常數(shù)。時間序列進行差分處理后,可以將非平穩(wěn)的時間序列轉(zhuǎn)為平穩(wěn)的時間序列,再將AR自回歸模型與MA移動平均模型組合成ARIMA模型,該模型完整建模函數(shù)為:
⑶
⑷
⑸
函數(shù)⑶中?表示差分算法,式⑷代表平滑系數(shù)多項式,式⑸代表自回歸系數(shù)多項式。
本文的ARIMA建模步驟[11]
⑴ 觀察數(shù)據(jù)的平穩(wěn)性,將非平穩(wěn)的時間序列利用差分處理轉(zhuǎn)為平穩(wěn)的時間序列,確定d參數(shù)。
⑵ 根據(jù)ACF確定自回歸模型中參數(shù)p,根據(jù)PACF確定模型中的參數(shù)q。
⑶ 利用歷史數(shù)據(jù)對模型進行訓練,預測未來數(shù)據(jù)。
1.2 SVR模型
支持向量機模型,可以用于樣本數(shù)據(jù)的分類與預測,用于對于連續(xù)值的預測稱為支持向量機的回歸SVR[12]該模型是基于統(tǒng)計學結(jié)構(gòu)風險最小理論作為理論支撐{Yi}(i = 1, 2,…,M),輸入N維的樣本xi∈Rn進行訓練,將樣本xi低維度的特征,通過不同函數(shù)算法,映射為高維度的空間,輸出yi∈R預測值。支持向量的線性函數(shù)完成數(shù)據(jù)的預測任務,SVR回歸預測函數(shù)的表示為:
⑹
式⑹中Φ(x)完成輸入數(shù)據(jù)映射為高維數(shù)據(jù),通過梯度下降法,迭代訓練,收斂參數(shù)w和常數(shù)b的值,得到w,b誤差最小值,如下所示:
⑺
式⑺中C表示正則化系數(shù),相較于普通的回歸模型,SVR模型可以調(diào)整正則項系數(shù),解決模型的過擬合和欠擬合問題,式中[Lε]為不敏感系數(shù)。支持向量機模型中的核函數(shù)k(xi,xj)是借助拉格朗日函數(shù)和沃爾夫?qū)ε祭碚搶栴}轉(zhuǎn)化為二次規(guī)劃問題找最優(yōu),常用的核函數(shù)有線性核函數(shù)Linear kernel,多項式核函數(shù)Polynomial kernel,以及徑向基核函數(shù)RBF等。
本文的SVR模型的建模步驟
⑴ 將ARIMA預測獲得的殘差,通過不同次的實驗,獲取適宜的循環(huán)滾動次數(shù)。
⑵ 對數(shù)據(jù)進行切分,獲得得到訓練集的train_x與train_y,選擇核函數(shù),對SVR模型進行訓練。
⑶ 模型檢驗評估。
1.3 ARIMA_SVR滾動殘差組合模型
本文選取貴州茅臺的股票數(shù)據(jù),本文的ARIMA_SVR滾動殘差模型組合實現(xiàn)對未來數(shù)據(jù)的預測的步驟。
⑴ 借助ARIMA對于該數(shù)據(jù)線性部分數(shù)據(jù)處理,獲得股票的漲幅趨勢,以及預測值和殘差。
⑵ 借助SVR解決函數(shù)的非線性的部分的數(shù)據(jù)的擬合,利用SVR模型實現(xiàn)殘差值進行滾動訓練,預測。
⑶ ARIMA模型和SVR模型預測結(jié)果疊加,得到最終的預測數(shù)據(jù)。
2 實例分析
2.1 ARIMA建模
本文選貴州茅臺2008年1月至2021年8月的股票數(shù)據(jù)作為實驗數(shù)據(jù),如圖1所示。
ARIMA建模前,首先需要將采集到的貴州茅臺的股票數(shù)據(jù)進行預處理,再對股票數(shù)據(jù)進行重新采樣。因為六日股市不開放,所以數(shù)據(jù)中存在斷點。通過重新采樣,保證數(shù)據(jù)之間的連續(xù)性,提高到數(shù)據(jù)預測的精確度[13]。對采集到的貴州茅臺2008-2021年的股票收盤價數(shù)據(jù)按月進行重采樣,對每個月的數(shù)據(jù)的總和取得均值,結(jié)果如圖2所示??芍F州茅臺自2008-2014年間波動起伏大,并未有大幅度的上漲,但是自2016年后股票整體的走勢的呈現(xiàn)指數(shù)式的上漲的。
股票數(shù)據(jù)并不平穩(wěn),不符合ARIMA對數(shù)據(jù)的要求,需對數(shù)據(jù)進行差分處理,轉(zhuǎn)化為為平穩(wěn)的時間序列才可預測,差分的公式如下:
⑻
⑼
其中?和?s分別為一階差分算子和周期差分算子;Yt和Yt-1分別表示為當前的實際值與上一個時間的值;B為時間序列的滯后值;s是時間序列的周期。如果經(jīng)過一階差分處理后,數(shù)據(jù)還處于不平穩(wěn),可以在一階的基礎上,再次進行一次差分處理,直到序列平穩(wěn)。
貴州茅臺數(shù)據(jù)差分處理結(jié)果如圖3所示,藍色實線Closeing price表示收盤價價格曲線,黃色實線diff_1表示經(jīng)過對收盤價經(jīng)過一階差分處理后的波動情況,綠色實線diff_2表示對在一階差分基礎上的再次差分處理。原數(shù)據(jù)Closeing price數(shù)據(jù)不平穩(wěn),經(jīng)過一次差分后的數(shù)據(jù)就已逐步達到平穩(wěn)。
自回歸AR,可以表示為當前值與序列歷史值之間的相關(guān)關(guān)系。存在相關(guān)性才能用當前變量的歷史數(shù)據(jù)[14]實現(xiàn)對自身的預測,可以用自相關(guān)圖ACF進行初步觀測。模型中移動平均模型MA,利用移動平均來消除在預測當中的隨機波動,可以用偏自相關(guān)函數(shù)來確定q的值,該函數(shù)用來描述中間項的隨機變量對模型的影響,可以用PACF實現(xiàn)對q值的確定。自相關(guān)分析和偏自相關(guān)分析結(jié)果如圖4所示。
本文ARIMA模型根據(jù)赤池信息準則(Akaike Information Criterion,AIC)準則作為模型選擇的參考,AIC是日本統(tǒng)計學家Akaike提出,用以擬合精度與參數(shù)個數(shù)的加權(quán)函數(shù),L表示模型參數(shù)個數(shù),k表示模型極大似然函數(shù),函數(shù)表達式如下:
⑽
最終選擇ARIMA(1,1,1),將數(shù)據(jù)集進行切分,2008年~2017年劃分為ARIMA訓練數(shù)據(jù),對模型進行訓練。將2014~2018為ARIMA預測數(shù)據(jù),如圖5所示。
藍色的實線是實際的數(shù)據(jù),橙色的直線是預測結(jié)果,ARIMA模型已經(jīng)可以大致的預測出貴州茅臺股票的增長的趨勢,但是實際值與預測值之間的誤差還是較大。
ARIMA殘差的檢驗,主要對殘差數(shù)據(jù)的自相關(guān)性與正態(tài)性進行檢驗。ARIMA殘差應當符合正態(tài)分布的性質(zhì),若殘差數(shù)據(jù)都集中于0值的附近,那么殘差數(shù)據(jù)就服從正態(tài)分布,即這樣的殘差屬于白噪聲數(shù)據(jù)。ARIMA模型的殘差檢驗主要用于判別模型是否已經(jīng)完全捕捉到數(shù)據(jù)中的信息,性能良好的ARIMA模型的殘差之間不具有相關(guān)性,若殘差之間具有相關(guān)性,說明數(shù)據(jù)中還有未挖掘的信息,模型需要進一步優(yōu)化。性能良好的ARIMA模型的殘差的均值為0,若不為0說明模型中具有偏差。對數(shù)據(jù)進行白噪聲檢驗,檢驗數(shù)據(jù)的隨機性,最終的檢測結(jié)果如圖6所示。
殘差Normal QQ圖是線性分布則說明模型ARIMA(1,1,1)通過殘差白噪聲檢驗,由Standardized residual圖可知殘差數(shù)據(jù)符合正態(tài)分布,則ARIMA(1,1,1)模型的通過殘差檢驗,且模型性能良好。
2.2 SVR滾動殘差模型修正
計算得到殘差的值,經(jīng)過多次實驗,最終選定循環(huán)滾動4個殘差值,將這4個殘差作為訓練集的特征對SVR模型進行訓練,改模型的訓練還涉及核函數(shù)的選定,本文選擇取徑向基核函數(shù)作為模型的核函數(shù),因為其不受樣本參數(shù)大小的影響的優(yōu)點,再多次反復實驗發(fā)現(xiàn),對本次貴州茅臺的股票數(shù)據(jù)集有良好的表現(xiàn),該核函數(shù)如下:
⑾
選定滾動數(shù)據(jù)集,對模型進行訓練,預測2019年-2021年的股票數(shù)據(jù)的,結(jié)果如圖7所示。
從圖7可以發(fā)現(xiàn),相較于ARIMA模型的單模型,利用SVR模型循環(huán)滾動殘差值來修正原模型,已經(jīng)有了良好的預測效果,模型性能與精度都得到提升。
2.3 預測效果對比分析
分別用ARIMA、SVR和ARIMA-SVR模型對數(shù)據(jù)對相同的時間區(qū)間的真實數(shù)據(jù)進行預測,通過比較各個模型之間的預測誤差進行對比分析。為評價回歸模型的性能,本文主要采用平均絕對誤差(mean absolute error,MAE)和中位絕對值誤差(mean percentage error,MPE)選用這兩個個指標分別對ARIMA(1,1,1)和ARIMA_SVR模型的預測性能進行評估,這兩個指標的計算如下所示:
⑿
⒀
式⑿中yi的表示數(shù)據(jù)中的真實值,而[yi]表示模型的預測值,式⒀中MAD代表的是數(shù)據(jù)點Xi到中位數(shù)X的絕對值偏差。這兩個指標的值越小說明,模型的預測的準確性越高,模型的預測性能越好。
ARIMA,SVR,ARIMA_SVR三個模型的具體的預測值,如表1所示。可見ARIMA_SVR模型的預測誤差相較于單個的ARIMA(1,1,1)模型的預測值誤差,得到了改善。在ARIMA的預測基礎上可以實現(xiàn)預測貴州茅臺股票的大體的趨勢,實現(xiàn)了對于股票數(shù)據(jù)的線性預測?;赟VR的滾動殘差模型可以對ARIMA(1,1,1)預測的偏差進行修正。
對于ARIMA與ARIMA_SVR模型的預測性能的評估,如表2所示。可以發(fā)現(xiàn)相較于單個模型的ARIMA的MAE已經(jīng)從428降到44.35,MAD從224降到26.71。組合模型有更加良好的預測性能。
3 結(jié)束語
近年來,股票受到了越來越多人的追捧。而貴州股票自上市以來股票價格漲幅一直都處于良好趨勢,已然成為股民心中的大股票。針對傳統(tǒng)的股票預測方法預測精度低的問題,本文提出的基于ARIMA時間序列結(jié)合測SVR滾動殘差的股票價格的預測模型,以貴州茅臺的股票數(shù)據(jù)作為研究對象進行實證研究。研究結(jié)果表明本文方法是可行、有效的,可以為相關(guān)的投資者或者公司進行決策時提供參考策略,避免盲目的投資。
本文的研究不足之處在于,僅以時間的維度作為自變量出發(fā),僅反映在時間序列下數(shù)據(jù)之間的相關(guān)性與規(guī)律,這樣可以實現(xiàn)對于股票數(shù)據(jù)的短期價格的預測。而股票的漲跌受到多種因素的影響,因此,本模型并不能實現(xiàn)對于股票數(shù)據(jù)的長期的預測。
參考文獻(References):
[1] 袁仁國.危機時代,激發(fā)創(chuàng)新與改革的力量[N].貴陽日報,
2013-12-18(003)
[2] Rao T S,Gabr M M.An introduction to bispectral analysis
and bilinear time series models[M].New York:Springer,2012
[3] Zheng T,F(xiàn)arrish J,KitterlinM.Performance trends of hotels
and casino hotels through the recession:an ARIMAwith intervention analysis of stock indices[J].Journal of Hospitality Marketing & Management,2016,25(1):49-68
[4] Rangel-Gonzalez J A,F(xiàn)rausto-Solis J,González-Barbosa
JJ,et al.Comparative study of ARIMA methods for forecastingtime series of the mexican stock exchange[J].Studies in Computational Intelligence,2018,749:475-485
[5] 宋剛,張云峰,包芳勛,等.基于粒子群優(yōu)化LSTM的股票預測
模型[J].北京航空航天大學學報,2019,45(12):2533-2542
[6] 李超.機器學習模型在股票價格時間序列分析中的應用與
比較[J].電子世界,2021,615(9):66-70
[7] 丁文絹.基于股票預測的ARIMA模型、LSTM模型比較[J].
工業(yè)控制計算機,2021,34(7):109-112,116
[8] 鄒菊紅.基于BP神經(jīng)網(wǎng)絡的改進粒子群優(yōu)化股票預測[J].
山東工業(yè)技術(shù),2021,297(1):34-38
[9] 齊甜方,蔣洪迅.基于Seq2Seq文本摘要和情感挖掘的股票
波動趨勢預測[J].管理評論,2021,33(5):257-269
[10] 陳維榮,關(guān)佩,鄒月嫻.基于SVM的交通事件檢測技術(shù)[J].
西南交通大學學報,2011,46(1):63-67
[11] 李奮華,趙潤林.一種基于時間序列分析的股票走勢預測模
型[J].現(xiàn)代計算機(專業(yè)版),2016(20):14-17
[12] 劉家學,白明皓,郝磊.基于ARIMA-SVR組合方法的航班
滑出時間預測[J].中國科技論文,2021,16(6):661-667
[13] 楊翠娟.基于機器學習方法的金融股票預測研究[D].湖南
大學,2020
[14] 趙杜羽.基于ARIMA模型的深證成指收盤價的分析和
預測[J].老字號品牌營銷,2021(8):96-98
收稿日期:2021-10-19
*基金項目:貴州省科技計劃項目(No.黔科合基礎[2019]1041,No.黔科合基礎[2019]1403,No.黔科合基礎[2020]1Y279,No.黔科合基礎[2020]1Y420); 貴州省教育廳青年科技人才成長項目(No.黔教合KY字[2021]135)
作者簡介:陳登建(1997-),男,福建福州人,碩士研究生,主要研究方向:機器學習,自然語言處理。
通訊作者:夏換(1982-),男,湖南永州人,博士,教授,主要研究方向:計算機仿真,大數(shù)據(jù)分析。