王冰玉,劉勇軍
(華南理工大學(xué),廣東 廣州 510640)
股價預(yù)測主要基于相關(guān)預(yù)測模型預(yù)測股價的未來變化趨勢以捕捉相應(yīng)的市場行情,從而促進股票選擇。近年來,股價預(yù)測是熱點問題。許多學(xué)者和業(yè)界人士都從理論和實踐層面對其股價預(yù)測模型進行相關(guān)研究,其研究方法包括GARCH[1-3]、模糊時間序列[4-5]、ARIMA[6-8]等。由于計算機技術(shù)的發(fā)展和廣泛應(yīng)用,各種機器學(xué)習(xí)和量化投資模型也被逐漸地應(yīng)用到股票預(yù)測領(lǐng)域,例如支持向量機、人工神經(jīng)網(wǎng)絡(luò)、遺傳算法和差分進化算法等股價預(yù)測模型。
Yu和Yan基于PSR方法和DL的長短期記憶網(wǎng)絡(luò)(LSTMs),設(shè)計了一種基于DNN的股價預(yù)測模型,并對不同時期的多個股票指數(shù)進行預(yù)測[9]。Onoh等利用協(xié)調(diào)搜索(HS)和遺傳算法,建立混合人工神經(jīng)網(wǎng)絡(luò)模型,并根據(jù)數(shù)據(jù)集的統(tǒng)計和財務(wù)表現(xiàn)進行實證分析[10]。Moghaddam等研究人工神經(jīng)網(wǎng)絡(luò)對納斯達克股票日匯率的預(yù)測能力,從而對用反向傳播算法訓(xùn)練的幾種前饋神經(jīng)網(wǎng)絡(luò)進行了評估[11]。Hjek等將情緒與財務(wù)指標(biāo)相結(jié)合,使用一個多層感知器神經(jīng)網(wǎng)絡(luò)來預(yù)測異常股票回報率[12]。綦方中等提出一種基于PCA-IFOA-BP神經(jīng)網(wǎng)絡(luò)的股票價格預(yù)測模型,并借助上證指數(shù)進行預(yù)測[13]。孟葉等選取K-近鄰、梯度提升和自適應(yīng)提升這3個分類器,通過改進的投票算法聚合成一個新的分類器模型,對指數(shù)行情數(shù)據(jù)進行學(xué)習(xí)分類[14]。
雖然基于神經(jīng)網(wǎng)絡(luò)的混合模型是預(yù)測股票市場指數(shù)的有效預(yù)測方法,但是卻存在著諸如黑箱技術(shù)、過擬合、收斂速度慢、陷入局部極小等局限性。為了克服這些局限性,Cortes和Vapnik提出的支持向量機(SVM)方法已經(jīng)成為股票市場指數(shù)預(yù)測領(lǐng)域的一種流行研究方法,它采用結(jié)構(gòu)風(fēng)險最小化的原則,以最小化泛化誤差的上界。通過應(yīng)用支持向量機,不太可能出現(xiàn)過擬合,而且最優(yōu)解也可能是全局的[15]。Nayak等構(gòu)建一種支持向量機與K近鄰法相結(jié)合的混合框架,用于印度股市指數(shù)的短期、中期和長期預(yù)測[16]。Chen等引入特征加權(quán)向量,進一步提出特征加權(quán)支持向量機和特征加權(quán)K最近鄰的基本混合框架,以有效地預(yù)測股票市場指數(shù)[17]。Xiao等提出一種將SVM和SSA相結(jié)合的組合模型,并建立基準(zhǔn)模型進行對比分析[18]。Lee創(chuàng)建一種基于支持向量機(SVM)和混合特征選擇方法的股市趨勢預(yù)測模型[19]。Fung等提出一種新的近端支持向量機(PSVM)模型,并使用公開的數(shù)據(jù)集上的計算結(jié)果表明,PSVM不僅具有與SVM相當(dāng)?shù)臏y試集正確性,而且具有相當(dāng)快的計算時間[20]。姚瀟和余樂安在PSVM的基礎(chǔ)上,引入模糊隸屬度的思想,提出模糊近似支持向量機(FPSVM),并利用兩個公開的信用數(shù)據(jù)集進行實證研究驗證該模型的有效性[21]。張貴生等針對股價的非線性特點,提出基于近鄰互信息特征選擇SVM-GARCH的股價預(yù)測模型[22]。張冰等提出具有局部信息挖掘功能的DNN加權(quán)算法對eplion-TSVR模型進行改進,并借助上證A股的高頻數(shù)據(jù)進行實證預(yù)測[23]。
綜上所述,首先雖然SVR能夠在股價預(yù)測中發(fā)揮更好的表現(xiàn)力,但是都未考慮股票數(shù)據(jù)中所含的噪聲信息對股價預(yù)測的影響,其次現(xiàn)有研究未曾考慮投資者對兩種預(yù)測誤差((1)預(yù)測值>實際值;(2)預(yù)測值<實際值)的不同偏好。有的投資者更注重收益,而有的投資者更關(guān)注損失,因此,不能簡單直接地使用SVR模型進行股價預(yù)測,而是應(yīng)該根據(jù)實際情況,針對投資者的不同目標(biāo)賦予不同的偏好值,構(gòu)建有效的股價預(yù)測模型進行股票價格的準(zhǔn)確預(yù)測。
綜合考慮以上研究現(xiàn)狀和存在的不足之處,該文構(gòu)建信噪比特征向量,并借用現(xiàn)有文獻表明的相關(guān)股價預(yù)測指標(biāo),選取歷史數(shù)據(jù)、趨向、反趨向、能量、量價、波動和信噪比等其他七個方面的指標(biāo)作為輸入變量,考慮到投資者對預(yù)測誤差的不同偏好,引入模糊隸屬度和雙邊權(quán)重測量方法,構(gòu)建基于信噪比的模糊近似支持向量回歸模型進行股價預(yù)測。
模糊近似支持向量機(FPSVM)是由姚瀟和余樂安在2012年提出的[21]。該模型是為了減小訓(xùn)練樣本的奇異點和噪聲對模型的干擾,在PSVM的基礎(chǔ)上,引入了模糊隸屬度。設(shè)含有N個訓(xùn)練樣本的訓(xùn)練集樣本對{(x1,y1),(x2,y2),…,(xN,yN)},其中xi∈Rd為第i個訓(xùn)練樣本的輸入向量,d為樣本空間維度,yi∈{+1,-1}為對應(yīng)輸出值,則FPSVM模型的具體形式如下:
(1)
其中,C>0為錯誤項的懲罰參數(shù),εi為松弛變量,Φ(x)為非線性映射函數(shù),wT為特征空間維數(shù),b為待定的標(biāo)量參數(shù),mi為隸屬度,表示第i個樣本點對超平面的貢獻率。mi越小,則誤差項所占的比例越小,在整個模型的影響就越小。當(dāng)所有的mi=1時,F(xiàn)PSVM就退化為PSVM。
由于買賣反彈,價格變化的離散性、交易規(guī)模的差異和訂單流的戰(zhàn)略組成部分等因素導(dǎo)致所觀察到的價格過程是一個包含噪聲的過程[24]。現(xiàn)實生活中,一般所觀察的對數(shù)價格過程包含對數(shù)有效價格和噪聲兩部分,相應(yīng)的股價對數(shù)形式為:

(2)


(3)

噪聲的存在會影響股價預(yù)測。若該文能在SVM方程的構(gòu)建中進一步消除噪聲,則可提高股價預(yù)測精度。信噪比(SNR)是描述信號中有效成分與噪聲成分的比例關(guān)系參數(shù),可以有效地對噪聲進行處理[25]。該文考慮引入SNR降低噪聲干擾。根據(jù)現(xiàn)有文獻,可得到信噪比(SNR)的計算公式[26]:

(4)

此外,股票市場中,開盤價、最低價、最高價和總交易量歷史數(shù)據(jù)通常被用做輸入指標(biāo)。最近相關(guān)學(xué)者研究表明一些技術(shù)指標(biāo)有助于更好地預(yù)測股價[17]。故該文同時借助相關(guān)的技術(shù)指標(biāo)作為輸入變量,具體將這些指標(biāo)分為:
(1)趨向指標(biāo):移動平均線(MA)、指數(shù)移動平均線(EMA)、異同移動平均線(MACD)和動量指標(biāo)(MTM);
(2)反趨向指標(biāo):相對強度指數(shù)(RSI);
(3)能量指標(biāo):AR、BR和成交量變異率(VR);
(4)量價指標(biāo):多空比率凈額(DK);
(5)波動指標(biāo):平均真實范圍(ATR)。
直接采用SVR模型進行股票預(yù)測會存在以下不足:首先原有的SVR模型都未考慮投資者對股價預(yù)測誤差的不同偏好情況,默認(rèn)投資者對預(yù)測誤差的偏好是一致的,使得預(yù)測結(jié)果不能準(zhǔn)確反映投資者的投資策略,其次SVR模型無法處理噪聲和奇異點對模型的干擾狀況,影響模型的預(yù)測準(zhǔn)確度。


故而,該文得到基于模糊近似支持向量回歸的股價預(yù)測模型,其具體形式如下:

(5)
其中,i為所選取股票的第i個樣本,N為訓(xùn)練樣本總數(shù),xi為第i個輸入向量,xi=(xi1,xi2,…,xi15)分別代表開盤價、最高價、最低價、總交易量、移動平均線、指數(shù)移動平均線、異同移動平均線、動量指標(biāo)、相對強弱指數(shù)、人氣指標(biāo)、意愿指標(biāo)、成交量比率、多空比率額、真實波動幅度均值和信噪比,yi為實際股票收盤價。
通過構(gòu)造拉格朗日函數(shù)對式(5)進行求解,得到:
(6)
分別對w,b,mi,ni求偏導(dǎo),得:
(7)
對式(7)求解得到:
(8)
故上述規(guī)劃問題變?yōu)椋?/p>
(9)

f(x)=w*Φ(x)+b=
(10)


(11)
選擇滬深300成份股的股票日數(shù)據(jù)進行股票收盤價的實證分析,相應(yīng)時間序列的日期為2008年1月1日至2019年12月31日,數(shù)據(jù)來源于東方財富數(shù)據(jù)庫。滬深300成份股共包括300只股票,故該文總共選取300只股票作為總樣本,并從中隨機選取30只股票進行股票收盤價預(yù)測。所有的實證均在同一系統(tǒng)環(huán)境下運行,系統(tǒng)運行環(huán)境為PC(CPU 2.60 GHz,4.00 GB RAM),操作系統(tǒng)為Windows 10,仿真軟件為Matlab R2016b。此外,采用libsvm處理SVR。并將樣本數(shù)據(jù)集分為訓(xùn)練樣本數(shù)據(jù)集和測試樣本數(shù)據(jù)集,選擇樣本數(shù)據(jù)的前80%作為訓(xùn)練樣本,后20%作為測試樣本。
滬深300成份股是滬深證券交易所于2005年4月8日聯(lián)合發(fā)布的反映A股市場整體走勢的指數(shù),由上海和深圳證券市場中選取300只A股作為樣本,其中滬市有179只,深市121只,綜合反映深交所上市A股的股價走勢。它具有業(yè)績優(yōu)于整體、對家方案較優(yōu)、股改行情明顯等優(yōu)勢,經(jīng)常被研究者用于股價預(yù)測。
為了更好地反映所提出的基于信噪比的FPSVR股價預(yù)測模型的有效性,將所選取的股票時間序列按照股市的波動情況(牛市、震蕩市和熊市)分為三個階段,進行階段式預(yù)測。為了更清晰地展示股市狀況,以招商銀行為例,對階段式預(yù)測進行說明,如圖1所示。

圖1 招商銀行2008-2019年日收盤價的變化趨勢
從圖1可看出,招商銀行的收盤價變化趨勢可分為三個階段,其中H代表熊市階段,為階段1;N代表牛市階段,為階段2;其余時間的指數(shù)變化趨勢大致代表震蕩市階段,為階段3。
本研究為確保所有的輸入特征位于相同參數(shù)范圍內(nèi),以防止大范圍的輸入特征壓倒其他輸入特征,采用式(12)對數(shù)據(jù)進行標(biāo)準(zhǔn)化處理:

(12)
其中,xij為第i個樣本的第j個輸入特征值,xminj為樣本數(shù)據(jù)第j個輸入特征的最小值,xmaxj為樣本數(shù)據(jù)第j個輸入特征的最大值。
Spearman相關(guān)系數(shù)不但可以衡量存在非線性關(guān)系的相關(guān)變量之間的相關(guān)程度,而且未對數(shù)據(jù)有嚴(yán)格的假設(shè)要求,故本節(jié)采用Spearman相關(guān)系數(shù)進行輸入特征變量與股票收盤價之間的相關(guān)性分析。為了更清晰地說明特征變量與股票收盤價之間的相關(guān)性,進一步地以招商銀行為例展示輸入特征與股票收盤價的相關(guān)性分析結(jié)果,如表1所示。
由表1可看出:
(1)在置信度為0.01時,開盤價、最高價、最低價、MA和EMA都與股票收盤價之間的Spearman相關(guān)系數(shù)>0.95,說明這些指標(biāo)都與股票收盤價存在很強的正相關(guān)性,這些輸入指標(biāo)數(shù)值增加時,股票收盤價也增加。

表1 各指標(biāo)相關(guān)性分析
(2)在置信度為0.01時,SNR與股票收盤價的Spearman相關(guān)系數(shù)>0.6,說明SVR與股票收盤價之間存在中等程度的正相關(guān)性,當(dāng)SNR增大時,股票收盤價隨之增大。
(3)不管是在置信度為0.01時,還是在置信度為0.05時,MACD、BR、VR和OBV都與股票收盤價存在非相關(guān)關(guān)系,但是這些指標(biāo)與其他指標(biāo)之間存在相關(guān)關(guān)系,說明這些指標(biāo)可以影響其他指標(biāo),從而間接影響股票收盤價的變化。
從上述發(fā)現(xiàn)中可得到以下結(jié)論:①SNR與預(yù)測變量股票收盤價之間存在直接的正相關(guān)性,進而說明所構(gòu)建的SNR特征變量是有效的;②這些輸入特征之間存在緊密的相關(guān)性,且都與預(yù)測變量股票收盤價之間存在直接或間接的相關(guān)關(guān)系。
眾所周知,誤差是指測量值與真實值或?qū)嶋H值之間的差值,主要用來衡量測量結(jié)果的準(zhǔn)確度,其中平均絕對百分比誤差因能避免誤差相互抵消的問題,可以準(zhǔn)確反映實際預(yù)測誤差的大小,均方根誤差不僅能對一組測量中的特大或特小誤差反映非常敏感,而且能夠很好地反映出測量的精密度,故經(jīng)常被用于預(yù)測模型的準(zhǔn)確度測量。該文將平均絕對百分比誤差(MAPE)和均方根誤差(RMSE)作為股價預(yù)測模型的評估準(zhǔn)則,其表達式如下所示:
(13)

(14)

考慮到上述實驗條件,對于所有RMSE和MAPE,它們的值越小,所構(gòu)建的股票收盤價預(yù)測模型的預(yù)測性能越好。
為了驗證所提出的基于信噪比的FPSVR股價預(yù)測模型的有效性,在收盤價預(yù)測的過程中,選用三種基準(zhǔn)模型預(yù)測方法,分別為模型1:未加入信噪比的支持向量回歸(未加入SNR的SVR);模型2:加入信噪比的支持向量回歸(加入SNR的SVR);模型3:未加入信噪比的FPSVR,并將這三種預(yù)測方法與文中所提的模型4—基于信噪比的FPSVR模型進行對比分析。
由于金融時間序列的動態(tài)特性是非線性的,文中將FPSVR模型應(yīng)用于收盤價預(yù)測時,使用高斯核函數(shù)作為核函數(shù),因為高斯核函數(shù)在一般的平滑假設(shè)下往往會有很好的性能[27]。此外,本節(jié)采用基于十折交叉驗證的網(wǎng)格搜索方法,對傳統(tǒng)的支持向量回歸參數(shù)進行了選擇,并對FWSVR模型也使用同樣的參數(shù),所使用的參數(shù)如表2所示。

表2 基于信噪比的FPSVR模型所使用的最優(yōu)參數(shù)
此外,采用遺傳算法(GA)對FPSVR股價預(yù)測模型進行求解,GA中所使用的相關(guān)參數(shù)為G=2 000,popsize=50,其中G為進化代數(shù),popsize為種群規(guī)模,相應(yīng)的適應(yīng)度函數(shù)變化情況如圖2所示。

圖2 GA的適應(yīng)度函數(shù)的變化情況
從圖2中可看出,在進化代數(shù)為2 000時,隨著GA算法的進化代數(shù)增加,適應(yīng)度函數(shù)趨于穩(wěn)定,從而說明這種情況下,GA算法可以很好地對FPSVR進行求解。
下面根據(jù)上述所建立的四種不同模型對滬深300成份股中隨機選擇的30只股票時間序列進行收盤價預(yù)測,并給出了四種模型在不同階段的預(yù)測誤差,如表3所示。
從上述實驗結(jié)果中可以看出:
(1)與模型1和模型2相比,模型3和模型4的預(yù)測誤差更低,說明加入模糊隸屬度和雙邊權(quán)重的FPSVR模型可以更好地實現(xiàn)股價預(yù)測。
(2)模型2和模型4的預(yù)測誤差分別低于模型1和模型3的預(yù)測誤差,從而表明加入信噪比特征變量后的股價預(yù)測模型準(zhǔn)確度更高。
(3)分階段來看,不管是SVR股價預(yù)測模型還是FPSVR的股價預(yù)測模型,在階段1和階段2的預(yù)測誤差均較高于階段3的預(yù)測誤差,說明在震蕩時期,這兩種模型更適用于股價預(yù)測。
(4)分階段來看,在階段1和階段2時期,F(xiàn)PSVR的股價預(yù)測模型的預(yù)測誤差要遠低于SVR股價預(yù)測模型的預(yù)測誤差,從而表明,該文所構(gòu)建的FPSVR模型可以彌補SVR模型在階段1和階段2時期的股價預(yù)測誤差較大的不足,可以更好地實現(xiàn)股價預(yù)測。

表3 模型對比分析結(jié)果
為了更好地實現(xiàn)股價的精準(zhǔn)預(yù)測,提出了基于信噪比的模糊近似支持向量回歸(FPSVR)的股價預(yù)測模型,并通過實證研究、相關(guān)性分析和對比分析三個方面實現(xiàn)和驗證所提模型的準(zhǔn)確性。研究結(jié)果表明,與現(xiàn)有模型相比,該模型不僅在震蕩期,而且在牛市和熊市期均可實現(xiàn)股價的精準(zhǔn)預(yù)測。該模型通過對滬深成份股2008年至2019年的股票日數(shù)據(jù)進行研究和分析,實現(xiàn)對股票的準(zhǔn)確預(yù)測,為投資者提供一種更有效的預(yù)測方法,從而有助于投資者的投資決策。