陳婧 孫英凡







摘要:在全球金融領(lǐng)域中,股票擇時(shí)投資一直是研究的熱點(diǎn)。文章借助BP神經(jīng)網(wǎng)絡(luò)模型,結(jié)合較全面的影響股價(jià)的因素指標(biāo),利用主成分分析和計(jì)算機(jī)挖掘大數(shù)據(jù)信息的方式,對(duì)股票進(jìn)行擇時(shí)分析,具有較大的準(zhǔn)確性和客觀性,對(duì)該模型的推廣可以彌補(bǔ)我國證券市場的有效性不足問題。
關(guān)鍵詞:BP神經(jīng)網(wǎng)絡(luò)模型;股票投資
一、引言
近年來,中國資本市場中證券交易發(fā)展較為迅速,證券市場價(jià)格的劇烈波動(dòng)給投資者帶來巨大的風(fēng)險(xiǎn)。因此,構(gòu)建基于大數(shù)據(jù)挖掘技術(shù)的股票價(jià)格預(yù)測模型,對(duì)股票投資研究具有深遠(yuǎn)的意義。當(dāng)前的研究大多是基于神經(jīng)網(wǎng)絡(luò)、決策樹、支持向量機(jī)等模型研究股票擇時(shí)問題,但是股票價(jià)格的影響因素較多,形成過程復(fù)雜,易造成較大誤差。所以,本文選擇適合處理非線性函數(shù)的BP神經(jīng)網(wǎng)絡(luò)模型來對(duì)股票進(jìn)行擇時(shí)研究,相比其他預(yù)測方法具有很大的優(yōu)越性,實(shí)現(xiàn)了較好的訓(xùn)練效果,能夠?yàn)橥顿Y者、上市公司和監(jiān)管部門等提供可靠性依據(jù)。
二、BP神經(jīng)網(wǎng)絡(luò)模型理論
人工神經(jīng)網(wǎng)絡(luò)的類型不同是由拓?fù)浣Y(jié)構(gòu)的差異導(dǎo)致的,常用的前向型網(wǎng)絡(luò)中就包含BP神經(jīng)網(wǎng)絡(luò)模型,它是人工神經(jīng)網(wǎng)絡(luò)的經(jīng)典模型。它的工作原理包括兩個(gè)部分,即正向數(shù)據(jù)傳輸和誤差反傳校正,如圖2-1所示:
在圖2-1的正向數(shù)據(jù)傳輸中,輸入變量從輸入層進(jìn)入神經(jīng)元,通過權(quán)值與閾值的加總計(jì)算、激活函數(shù)的轉(zhuǎn)換后,將變量儲(chǔ)存在隱藏層中;隱藏層的神經(jīng)元節(jié)點(diǎn)再次將變量進(jìn)行上述運(yùn)算后,將變量傳輸給了輸出層;輸出層的神經(jīng)元節(jié)點(diǎn)會(huì)將輸出變量與期望輸出變量進(jìn)行對(duì)比,將誤差反傳給輸入層,調(diào)整權(quán)值和閾值,進(jìn)行第二次的輸入輸出計(jì)算。循環(huán)往復(fù),直到輸出誤差小于期望誤差時(shí),輸出結(jié)果,這時(shí)模型的擬合結(jié)果會(huì)更好地趨向?qū)嶋H值,實(shí)現(xiàn)了誤差反傳校正[1]。
三、BP神經(jīng)網(wǎng)絡(luò)模型的構(gòu)建
(一)BP神經(jīng)網(wǎng)絡(luò)模型參數(shù)的選取
1.BP神經(jīng)網(wǎng)絡(luò)模型輸入變量的選擇
BP神經(jīng)網(wǎng)絡(luò)模型是一種處理非線性、復(fù)雜的多維函數(shù)的工具,它通過捕捉輸入變量與輸出變量之間存在的關(guān)系進(jìn)行預(yù)測。通過經(jīng)濟(jì)學(xué)的價(jià)值價(jià)格理論可知股票價(jià)格是由價(jià)值決定的,但股票的價(jià)值受到多種因素的影響結(jié)合而成,故其價(jià)格的形成是十分復(fù)雜的[2]。通過建模分析市場的相關(guān)因素,能夠研究股票在市場上的行為,預(yù)測股票價(jià)格的波動(dòng)。因此為了模型更加的準(zhǔn)確,本文選取了較多的并且經(jīng)前人總結(jié)較為有效的、常用的一些指標(biāo),具體介紹如下:
(1)股票的收盤價(jià)和開盤價(jià)
股票開盤價(jià)是證券交易所每個(gè)交易日所產(chǎn)生的第一筆交易價(jià)格。股票收盤價(jià)是證券交易每天交易活動(dòng)結(jié)束前最后一筆交易產(chǎn)生的交易價(jià)格。股票前一日的開盤價(jià)和收盤價(jià)是投資者重要的參考依據(jù),對(duì)形成股票價(jià)格具有一定影響。
(2)股票的成交量
成交量是指股票在單位時(shí)間內(nèi)成交的交易總量,其與股票價(jià)格的發(fā)展趨勢有很大的關(guān)聯(lián)影響。
(3)股票的最高價(jià)和最低價(jià)
股市當(dāng)天的最高價(jià)和最低價(jià)進(jìn)行比較,通過比較可以確定開盤價(jià)在股價(jià)中的地位。股票的最高價(jià)和最低價(jià)可以反映股價(jià)的波動(dòng)性。其中,可以運(yùn)用相關(guān)數(shù)據(jù)計(jì)算股票的人氣指標(biāo)值,AR 值的計(jì)算公式如公式(3.1)所示:
公式中為當(dāng)日股票交易成交價(jià)格的最高價(jià),為當(dāng)日股票交易成交價(jià)格的最低價(jià),為當(dāng)日股票交易成交價(jià)格的開盤價(jià),N為我們?cè)O(shè)定的參數(shù),通常設(shè)定為26日。
2.BP神經(jīng)網(wǎng)絡(luò)模型激活函數(shù)的選擇
神經(jīng)網(wǎng)絡(luò)模型的激活函數(shù)是指內(nèi)部處理信息的函數(shù)。當(dāng)輸入層的信號(hào)進(jìn)入神經(jīng)元后,會(huì)引起神經(jīng)元的反應(yīng),反應(yīng)的結(jié)果就是神經(jīng)元激活函數(shù)變換的結(jié)果[3]。網(wǎng)絡(luò)中作用很大的激活函數(shù),其對(duì)模型解決問題的能力和效率有著很大影響。
S型激活函數(shù)是最常用的函數(shù),與另外兩種函數(shù)不同,S型激活函數(shù)是連續(xù)可導(dǎo)的。它的輸出范圍只能為[-1,1]或者[0,1],輸入輸出關(guān)系如公式(3.2)或(3.3)所示:
在建立神經(jīng)網(wǎng)絡(luò)模型中,需要激活函數(shù)是可導(dǎo)函數(shù),故選擇S型激活函數(shù)來進(jìn)行建模分析。
(二)模型構(gòu)建步驟
1.利用數(shù)據(jù)進(jìn)行BP神經(jīng)網(wǎng)絡(luò)模型分析
首先對(duì)主成分?jǐn)?shù)據(jù)和樣本進(jìn)行歸一化處理,消除輸入變量各維數(shù)據(jù)之間的數(shù)量級(jí)差異。數(shù)據(jù)規(guī)范化后,所有數(shù)據(jù)都可以映射到[-1,1]區(qū)間。數(shù)據(jù)歸一化的方法運(yùn)用的是Min-Max法。選取BP神經(jīng)網(wǎng)絡(luò)模型的參數(shù)設(shè)置模型的輸入,4個(gè)指標(biāo)作為神經(jīng)網(wǎng)絡(luò)模型的輸入變量。將股票的收盤價(jià)作為唯一輸出變量建立模型。處理后的數(shù)據(jù)可以作為神經(jīng)網(wǎng)絡(luò)模型的輸入變量,將股票的收盤價(jià)作為唯一輸出變量建立模型。建立模型時(shí),選取部分?jǐn)?shù)據(jù)作為訓(xùn)練的樣本,另外部分?jǐn)?shù)據(jù)作為測試的樣本,系統(tǒng)會(huì)自動(dòng)計(jì)算利用測試的樣本進(jìn)行模擬后產(chǎn)生的結(jié)果。其次設(shè)定不同隱藏節(jié)點(diǎn)數(shù)目,分別進(jìn)行試驗(yàn),選擇使得誤差最小的隱藏節(jié)點(diǎn)的數(shù)目,就可以得到最優(yōu)網(wǎng)絡(luò)。最后將數(shù)據(jù)進(jìn)行反歸一化[4]。
利用MATLAB建模時(shí),模型的輸入變量確定為4個(gè);模型的輸出變量只有1個(gè),即股票的收盤價(jià)格;模型還需要通過前人總結(jié)的試算公式來確定隱藏層的節(jié)點(diǎn)數(shù)量。普遍被認(rèn)可的試湊公式如公式(3.4)-(3.6)所示:
公式中q代表輸出層中節(jié)點(diǎn)的數(shù)量,p代表輸入層中節(jié)點(diǎn)的數(shù)量,m表示隱藏層中節(jié)點(diǎn)的數(shù)量,α則為一個(gè)從1至10中含有的常數(shù)。在模型建立中,由于有4個(gè)輸入變量和1個(gè)輸出變量,所以輸入層有4個(gè)節(jié)點(diǎn)、輸出層有1個(gè)節(jié)點(diǎn),從而可以確定隱藏層的節(jié)點(diǎn)個(gè)數(shù)的取值范圍3-13[5]。雖然無法確定隱藏層節(jié)點(diǎn)數(shù),但是可以通過確定的范圍多次實(shí)驗(yàn),最后確定最優(yōu)的節(jié)點(diǎn)數(shù)量。模型結(jié)果得出數(shù)據(jù)的預(yù)測值和真實(shí)值兩者相對(duì)的誤差值基本都均控制在2%以下。
為了確定最優(yōu)的隱藏層節(jié)點(diǎn)數(shù)量,找到模型的最優(yōu)情況,繼續(xù)對(duì)隱藏層節(jié)點(diǎn)分別為3-13時(shí)建立BP神經(jīng)網(wǎng)絡(luò)模型,并計(jì)算各模型的平均相對(duì)誤差進(jìn)行比較??芍?dāng)隱藏層的節(jié)點(diǎn)為5時(shí),模型的預(yù)測效果最好,并且平均相對(duì)誤差值較低。因此利用主成分分析和BP神經(jīng)網(wǎng)絡(luò)模型是可以追蹤上證綜合指數(shù)走勢的。
(三)模型有效性檢驗(yàn)
基于之前BP神經(jīng)網(wǎng)絡(luò)的模型以及做出的投資決策,需要建立合理的評(píng)價(jià)指標(biāo)對(duì)該模型的分析結(jié)果進(jìn)行檢驗(yàn)。以下是所列舉的兩個(gè)指標(biāo):
1.預(yù)測值和實(shí)際值的均方誤差MSE
MSE是指數(shù)理統(tǒng)計(jì)中參數(shù)的估計(jì)值與參數(shù)的真實(shí)值做差平方的期望值。其公式可以表示為:
測量“平均誤差”通常采用均方誤差這種方法,它可以評(píng)價(jià)估計(jì)值與實(shí)際值的擬合程度。公式中求出的MSE值越小,則證明模型預(yù)測描述實(shí)驗(yàn)的數(shù)據(jù)精度越好。
2.漲跌研判的準(zhǔn)確率
研究和分析次日開盤價(jià)“漲”或者“跌”的準(zhǔn)確度相對(duì)于當(dāng)日收盤價(jià)的百分比是漲跌研判準(zhǔn)確度的關(guān)鍵,可以用來衡量本文模型預(yù)測的有效性和準(zhǔn)確度。因?yàn)闇y試數(shù)據(jù)的數(shù)量是100,所以比較容易能獲得近似百分比。
通過此指標(biāo)判定之前選股方案和投資決策是否與實(shí)際情況相符。
四、BP神經(jīng)網(wǎng)絡(luò)模型應(yīng)用及評(píng)價(jià)
(一)基于BP神經(jīng)網(wǎng)絡(luò)模型的預(yù)測分析
選取從2019年1月29日到2020年3月26日,總共280個(gè)交易日的上證股票數(shù)據(jù)的5個(gè)指標(biāo),其中包括當(dāng)日的開盤價(jià)、收盤價(jià)、最高價(jià)、最低價(jià)和成交量。借助于K線+成交量的技術(shù)分析,通過前200天數(shù)據(jù)的學(xué)習(xí)和訓(xùn)練,網(wǎng)絡(luò)能夠自動(dòng)擬合日開盤價(jià)與前一日量價(jià)指數(shù)的關(guān)系,并對(duì)未來80天的數(shù)據(jù)(即79個(gè)預(yù)測數(shù)據(jù))進(jìn)行次日開盤價(jià)的預(yù)測,用真實(shí)值驗(yàn)證預(yù)測的準(zhǔn)確性。
選擇每日的開盤價(jià)、收盤價(jià)、最高價(jià)、最低價(jià)和成交量作為輸入,次日的開盤價(jià)作為輸出,以下是BP神經(jīng)網(wǎng)絡(luò)傳導(dǎo)過程圖[6]:
(二)BP神經(jīng)網(wǎng)絡(luò)模型對(duì)未來股票市場的預(yù)測
利用神經(jīng)網(wǎng)絡(luò)模型對(duì)現(xiàn)在指數(shù)的波動(dòng)和之后一年指數(shù)的波動(dòng)進(jìn)行數(shù)據(jù)預(yù)測,由于疫情原因,搜集到的2020年1—2020年3月的數(shù)據(jù)有可能會(huì)含有新冠疫情因素帶來的影響,令處于新冠肺炎疫情期間的數(shù)據(jù)為0,反之為1,以此加入神經(jīng)網(wǎng)絡(luò)的訓(xùn)練集中進(jìn)行預(yù)測。若模型研判當(dāng)日處于“轉(zhuǎn)折”點(diǎn),那就可推斷當(dāng)天正位于階段“頂部”,因此可做減倉或做空操作。反之,若股指價(jià)格處于下跌的情況下,若模型研判當(dāng)日處于“轉(zhuǎn)折”點(diǎn),則可推斷當(dāng)天正位于階段“底部”,因此可做増倉操作。
從理論上來說,將階段頂部和底部定義為一個(gè)區(qū)域更為恰當(dāng),從實(shí)踐的角度來說,微小的差別而導(dǎo)致的僅次于最底部或最頂部的“轉(zhuǎn)折”點(diǎn)仍然具有很強(qiáng)的使用價(jià)值和實(shí)際意義。鑒于此,如果我們?cè)陬A(yù)測中適當(dāng)放松對(duì)“轉(zhuǎn)折”研判正確的標(biāo)準(zhǔn),例如定義若模型預(yù)測的“轉(zhuǎn)折”點(diǎn)距離實(shí)際“轉(zhuǎn)折”只差1個(gè)交易日且“轉(zhuǎn)折”點(diǎn)處的最高(最低)價(jià)據(jù)實(shí)際值相差0.5%內(nèi),仍然將其計(jì)為判斷正確。
通過這樣的調(diào)整修正,重新編寫程序做統(tǒng)計(jì),得出新的準(zhǔn)確性指標(biāo)如表2、表3所示:
可以發(fā)現(xiàn),股票的風(fēng)險(xiǎn)和回報(bào)是可以通過一些特定的參數(shù)進(jìn)行控制的,選股的方案和投資組合的預(yù)期收益提供了可以從投資中獲得多少回報(bào)的估計(jì)。風(fēng)險(xiǎn)評(píng)估給出投資方在持有此投資的組合時(shí)所應(yīng)該承擔(dān)的風(fēng)險(xiǎn)估計(jì)。投資組合的回報(bào)和風(fēng)險(xiǎn)都是取決于股票的回報(bào)和風(fēng)險(xiǎn),及其股票在整個(gè)投資組合中的組成份額。根據(jù)模型分析得出的結(jié)果,可以使投資策略更為科學(xué)謹(jǐn)慎,個(gè)人獲益的概率也會(huì)得到相應(yīng)增加。
五、結(jié)論
在實(shí)際應(yīng)用中,若模型研判當(dāng)日處于“轉(zhuǎn)折”點(diǎn),那就可推斷當(dāng)天正位于階段“頂部”,因此可做減倉或做空操作。反之,在股指價(jià)格處于下跌的情況下,若模型研判當(dāng)日也處于“轉(zhuǎn)折”點(diǎn),則可推斷當(dāng)天正位于階段“底部”,因此可做増倉操作,從而達(dá)到投資收益的最大化。相信本模型未來對(duì)于人們投資分析、股東權(quán)益最大化和監(jiān)管層的有效監(jiān)管都能起到極大的幫助,可以為投資者、監(jiān)管者和上市公司等提供有跡可循的依據(jù)。
參考文獻(xiàn)
[1]王霄.基于SVM的滬深300指數(shù)量化擇時(shí)策略實(shí)證研究[D].蘭州大學(xué),2019.
[2]吳桂雯.量化交易中股票擇時(shí)的策略研究[D].天津商業(yè)大學(xué),2017.
[3]張清潔,錢魏冬.基于量化分析的股票投資策略[J].河北北方學(xué)院學(xué)報(bào)(自然科學(xué)版),2020,36(11):50-56.
[4]張?bào)惴澹鶠r陽.滬深300股指期現(xiàn)市場多階段波動(dòng)溢出效應(yīng)研究——基于非對(duì)稱BEKK-GARCH模型[J].現(xiàn)代財(cái)經(jīng)(天津財(cái)經(jīng)大學(xué)學(xué)報(bào)),2020,40(03):53-66.
[5]劉慶霞.基于主成分分析和BP神經(jīng)網(wǎng)絡(luò)的股價(jià)預(yù)測[D].蘇州大學(xué),2017.
[6]趙晨.動(dòng)態(tài)神經(jīng)網(wǎng)絡(luò)在量化投資預(yù)測中的應(yīng)用[D],上海:復(fù)旦大學(xué),2014:29-30,38-41.
國家級(jí)大學(xué)生創(chuàng)業(yè)訓(xùn)練項(xiàng)目(S202010445081X)