国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于AP-SVM組合模型的股票價格預測

2019-07-23 01:24:16,黃巍*
武漢工程大學學報 2019年3期
關鍵詞:收盤價天數(shù)股票

胡 迪 ,黃 巍*

1.武漢工程大學計算機科學與工程學院,湖北 武漢 430205;

2.智能機器人湖北省重點實驗室(武漢工程大學),湖北 武漢 430205

股票漲跌趨勢預測是利用歷史的股票數(shù)據(jù)信息對未來的股票走勢方向做出預測。股票價格受政治,經(jīng)濟和人為操作等許多因素影響,股票的漲跌是這些因素的綜合表現(xiàn)。對于投資者來說要考慮這些因素,需要花費大量的人力和物力來收集這些信息,在股票數(shù)據(jù)信息爆炸式增長的時代,這種做法是不可取的。因此在股票數(shù)據(jù)上直接進行預測分析,既能避免繁雜的數(shù)據(jù)獲取過程,又能避免大量的冗余信息的干擾。目前,股票預測的方法有很多種,大致可以分為三類:人為經(jīng)驗法,統(tǒng)計學方法和人工智能方法。隨著人工智能技術在計算機視覺和自然語言處理領域的表現(xiàn)越來越出色,在時序預測方面相比于人為經(jīng)驗法和統(tǒng)計學方法有更大的優(yōu)勢。

股票漲跌預測是金融領域經(jīng)久不衰的研究課題,由于人為經(jīng)驗法和統(tǒng)計學方法等傳統(tǒng)方法在股票漲跌預測中的效果并不理想,國內(nèi)外研究者開始探索新的股票預測方法,為了能夠準確預測股票漲跌的變化趨勢,學者們進行了大量的分析和驗證,探索出了越來越多的預測方法和模型。

彭麗芳等[1]提出一種基于時間序列的SVM股票預測方法,建立股票收盤價回歸預測模型,克服了傳統(tǒng)時間序列預測模型僅局限于線性系統(tǒng)的情況,提高了預測準確率。金桃等[2]提出采用基于支持向量機(support vector machine,SVM)的多變量股市時間序列預測算法來提高預測準確率,實驗證明相較于單變量的SVM回歸預測有更好的泛化能力。程昌品等[3]提出二進制正交小波變換和自回歸平均移動-支持向量機(autoregressive integrate moving average supportvectormachine,ARIMA-SVM)方法,使用小波分解[4]算法對數(shù)據(jù)進行分解,分離出非平穩(wěn)時間序列中的低頻和高頻信息,然后對高頻信息構建自回歸平均移動模型(autoregressive integrate moving average,ARIMA)預測,對低頻信息用SVM模型進行擬合,最后將各模型的預測結果進行疊加。實驗表明,小波分解ARIMA-SVM的組合模型較單一的預測模型效果更高。黃同愿等[5]通過選擇最優(yōu)的徑向基核函數(shù),再利用網(wǎng)格尋參[6],遺傳算法[7]和粒子群算法[8]對最佳核函數(shù)參數(shù)進行對比尋優(yōu),構建的SVM模型能夠準確的預測股票反轉點。張貴生等[9]提出近鄰互信息特征選擇的支持向量機-廣義自回歸條件異方差模型(svm support machine-generalized autoregressive conditional heteroskedasticity,SVM-GARCH),通過近鄰互信息的方式融合了與目標指數(shù)數(shù)據(jù)關系密切的周邊證券市場的相關變化信息,仿真結果表明在時序數(shù)據(jù)除噪,趨勢判別以及預測的精確度等方面均優(yōu)于傳統(tǒng)的自回歸平均移動-廣義自回歸條件異方差模型(autoregressive integrate moving average-generalized autoregressive conditional heteroskedasti,ARIMA-GARCH)。李輝等[10]提出一種兩層特征選取及預測的方法,即特征子集區(qū)分度衡量準則-二進制粒子群-支持向量機(discernibility of feature subsets-binary particle swarm optimization-supportvectormachine,DFS-BPSO-SVM),第一層特征選取高效剔除部分非預測相關特征,縮減了特征規(guī)模,第二層選擇出最優(yōu)特征組合,提升了預測準確率。張偉等[11]提出將SVM和遺傳和支持向量機組合算法(genetic algorithm-support vector machine,GA-SVM),預測未來股票市場的走勢,實驗證明GA-SVM優(yōu)于其他方法。胡蓉[12]提出多輸出的SVM回歸模型,預測股票的最高價和最低價,與單輸出相比有更好的整體預測精度和抗噪性能。

曾岫等[13]針對K線圖是一個分形圖,把其分維數(shù)作為聚類參數(shù)對股票進行聚類實證研究,研究結果表明,同一類的股票有著極強的相似走勢??卤龋?4]利用9項財務指標,對19家上市公司進行聚類分析,能把上市公司分為4個不同的類,與公司的實際情況相符。由此可見,聚類能將相同走勢的股票歸類在一起。吳薇等[15]利用反向傳播神經(jīng)網(wǎng)絡(back propagation,BP)網(wǎng)絡[16]有較好的分類能力,對滬市綜合指數(shù)漲跌進行預測,實驗結果表明BP網(wǎng)絡對中國股票市場的預測是可行的和有效的。

過去的研究一般考慮對單支或少數(shù)股票進行實證分析,忽略了股票與股票之間相關性,這種相關性的股票之間往往會有相同的變化趨勢。本文提出了基于SVM的聚類股票預測算法近鄰傳播聚類和支持向量機組合算法(affinity propagationsupport vector machine,AP-SVM),首先用近鄰傳播算法(affinity propagation,AP)對股票進行聚類,然后將簇內(nèi)股票按時間索引構建成矩陣簇,最后利用SVM,BP,AP-SVM和近鄰傳播和反向傳播組合算法(affinity propagation-back propagation,AP-BP)對太平洋證券進行漲跌預測,對比分析4種算法在不同時間間隔上的預測表現(xiàn),同時進一步討論簇內(nèi)股票數(shù)目對于預測結果的影響。

1 AP-SVM模型

A股股票常用特征有7個,即日期、最高價、最低價、開盤價、收盤價、成交量和成交額。首先對除時間以外的其余6個特征做相關性分析,計算各個特征之間的相關系數(shù),選擇相關性較弱的特征作為模型的輸入,由于這些特征之間的差異性較大,需要先對其進行最大最小歸一化處理,然后對收盤價做二范數(shù)歸一化[17]處理,將處理好的數(shù)據(jù)進行聚類分析,最后利用不同算法進行訓練,預測聚簇股票的漲跌。

1.1 特征選擇

由于股票數(shù)據(jù)中的特征存在相關性,會造成數(shù)據(jù)冗余,對預測結果產(chǎn)生影響,需要對股票特征之間進行相關性分析,挑選出能夠有效代表完整股票數(shù)據(jù)的特征子集。使用相關系數(shù)來描述各個特征之間的相關性,相關系數(shù)的取值在[-1,1]之間,-1表示完全負相關,1表示完全正相關,0表示不相關。相關系數(shù)n的定義如下:

其中μi和μj分別是特征vi和特征vj的均值,E和D分別表示計算期望和方差。

中信證券(股票代碼為600030)各特征之間的相關系數(shù)如圖1所示。由圖1可知,開盤價、收盤價、最高價和最低價之間的相關系數(shù)接近1,表示這些特征之間相關性很強,成交量和成交額之間也是相關性很強,而開盤價、收盤價、最高價、最低價與成交量、成交額之間相關性較小。因此只需要2個輸入特征就夠了,由于漲跌預測需要用到收盤價的差值來計算,根據(jù)圖1的第二行,收盤價與成交量的相關系數(shù)最小,所以選取成交量當做是股票的第二個輸入特征。

圖1 中信證券特征之間的相關系數(shù)Fig.1 Correlation coefficient diagram between CITIC securities features

由于股票的收盤價和成交量在數(shù)量級上相差較大,對2個特征進行最大最小歸一化處理(規(guī)范化到[0,1]區(qū)間),以減少訓練過程中計算的復雜度和預測準確率。歸一化的公式如下:

其中,xmax和xmin分別為樣本中特征的最大值和最小值,x′i為歸一化后的數(shù)據(jù)。

1.2 聚類相似度度量

相同走勢的股票之間往往有較高的相似性,可以利用股票價格間的相似性提高股票價格預測的準確性。

聚類操作可以挑選出與待預測股票價格走勢相近的股票。首先對每支股票的收盤價進行二范數(shù)歸一化,假設某支股票包含N天的收盤價格,則這支股票的收盤價格可記為x=(x1,x2,…,xN),其二范數(shù)歸一化定義如下:

式(3)中,xi表示這支股票第i天的收盤價表示這支股票第i天的歸一化收盤價。二范數(shù)歸一化如圖2所示。

圖2 收盤價的二范數(shù)歸一化Fig.2 Normalization of two norms of closing price

在圖2中,x,y表示2支不同股票在同一個交易日的原始收盤價,x*,y*表示x,y歸一化后股票的收盤價。從圖2中可以看出,二范數(shù)歸一化后,所有股票的收盤價格向量落到一個球面上,因而可以使用2支股票收盤價向量x和y的夾角余弦刻畫它們的相似程度。

由向量內(nèi)積定義可知,2支股票價格向量x和y的夾角余弦定義如下:對于二范數(shù)歸一化后的股票價格向量x*和

y*,有||x*||2=||y*||2=1,帶入到式(4)中,可得:

去掉式(5)中的平移因子1和比例因子1/2,對于二范數(shù)歸一化后的價格向量,可以使用負歐幾里德距離-||x*-y*||2作為價格向量的相似性度量函數(shù)。

1.3SVM

目前,有許多股票預測的研究方法,如遺傳算法、決策樹、馬爾科夫鏈[18]等,這些方法在股票這種非線性、高噪聲、波動性較強的數(shù)據(jù)中,不能很好的預測股票的漲跌,而SVM能利用核函數(shù),通過非線性映射將股票數(shù)據(jù)映射到一個更高維的空間,利用線性函數(shù)對股票的漲跌進行分類。

對于股票數(shù)據(jù)集 (xi,yi),i=1,2,…,m,其中m是樣本個數(shù),xi∈Rn,yi∈{-1,1},n表示樣本的特征數(shù)。

對于單支股票而言,yi表示股票的漲跌,-1表示股票下跌,1表示股票上漲。為了驗證AP-SVM算法對于單支股票的預測有影響,簇的標簽與單支股票的標簽一致。

對于線性可分的點,SVM可以通過選擇最佳超平面來分類數(shù)據(jù)。

如果存在滿足方程式(7)的超平面,通過求解以下的優(yōu)化問題,就能夠找到最佳的線性分離超平面。

引入拉格朗日乘子αi,用條件極值求解最優(yōu)分界面,構造拉格朗日函數(shù)。

利用對偶求解可得:

直接求解式(10)很難,不能做到100%線性可分,可以通過引入松弛變量ε,允許有股票預測處于分類錯誤的一側。

εi是松弛變量,常數(shù)C是懲罰系數(shù)。如果股票數(shù)據(jù)點分類錯誤,劃分到其他類,C越大表示越不想放棄這個點,邊界就會縮小,錯分點會更少,但是過擬合情況會更加嚴重。

分類決策函數(shù)

1.4 AP-SVM算法模型

利用AP算法將具有相同變化規(guī)律的股票歸為一個簇,簇內(nèi)股票大多處于相同行業(yè),這些股票之間相關性很強,股票與股票的數(shù)據(jù)之間產(chǎn)生影響,將簇內(nèi)股票數(shù)據(jù)結合在一起構建新的矩陣簇,相比于單支股票擁有更多的信息量,以便于更好地預測股票價格漲跌趨勢,矩陣簇擁有行業(yè)信息的同時,數(shù)據(jù)維度也極大的增加了,而SVM能夠有效處理股票這種高維非線性數(shù)據(jù),從而提出AP-SVM算法,分類流程如下:

輸入:A股股票數(shù)據(jù)

輸出:股票漲跌分類

1)選取中信證券股票,利用式(1)對股票特征做相關性分析,選取相關性較小的2個特征作為模型的輸入特征。并用式(2)對輸入特征做最大最小歸一化處理。

2)獲取A股10年內(nèi)停牌較少的股票數(shù)據(jù),根據(jù)式(3)對其收盤價做二范數(shù)規(guī)范化,將處理好的數(shù)據(jù)構建成一個新的矩陣,根據(jù)式(4)和(5)利用AP算法對其進行聚類分析。

3)根據(jù)式(6)對簇和簇內(nèi)股票進行樣本標簽制作。

4)將特征輸入到SVM中,利用網(wǎng)格搜索尋找最優(yōu)的C和gamma,通過式(7)~式(13),求解出 w*和b*,可以計算出分類決策函數(shù)。

如果分類結果與真實結果一致,則表示分類正確,統(tǒng)計分類正確樣本占樣本總數(shù)的比例,就能得到股票的預測準確率。

2 結果與討論

從聚寬網(wǎng)站上獲取A股2008-09-10至2018-09-10這10年間所有股票的日數(shù)據(jù)信息,包括時間、開盤價、最高價、最低價、收盤價、成交量、成交額。剔除數(shù)據(jù)嚴重缺省、退市、股票數(shù)據(jù)長時間不變的股票,最后所剩的1 561支股票作為本次實驗的研究對象。

2.1 聚類結果分析

將這些股票的收盤價通過時間索引,構建成一個1 561×2 433的矩陣,通過二范式的預處理對收盤價進行處理,將股票數(shù)據(jù)規(guī)范化到一個單位的圓內(nèi),避免了不同股票價格間差異過大,而對預測結果產(chǎn)生的影響,然后利用AP算法對新矩陣內(nèi)的股票數(shù)據(jù)進行聚類分析,將有相同變化趨勢的股票劃分到同一個簇中。

使用AP算法聚類的部分股票結果如下:

聚簇1:華銀電力,上海電力,華電能源,東方能源

聚簇2:海通證券,中信證券,東北證券,西南證券

聚簇3;新鋼股份,鞍鋼股份,馬鋼股份,山東鋼鐵

聚簇4:北京銀行,浦發(fā)銀行,交通銀行,中信銀行

從聚類分類結果來看,大部分簇是按照行業(yè)來劃分的,簇內(nèi)股票根據(jù)行業(yè)的發(fā)展而有相對應的波動,這與通常的認識一致。

選取證券行業(yè)內(nèi)股票,統(tǒng)計其漲跌天數(shù)和行業(yè)內(nèi)股票漲跌差值,圖3中的橫坐標表示漲跌差值,即一天內(nèi)簇內(nèi)股票上漲的股票數(shù)與下跌股票數(shù)的差值,若上漲股票數(shù)為5,下跌股票數(shù)為4,則漲跌差值記為1,縱坐標表示10 a內(nèi)這些股票漲跌差值所出現(xiàn)的天數(shù),結果如圖3所示。

圖3 證券行業(yè)內(nèi)股票漲跌天數(shù)差Fig.3 Days of stock prices in up and down movement in security industry

由圖3可以看出,證券行業(yè)股票成一個V字型,即2端的數(shù)值最大,向中間位置逐漸減少,中間位置的數(shù)值最小。圖3中的[-1,127]表示證券行業(yè)有127 d下跌的股票數(shù)比上漲的股票數(shù)多1支,[1,99]表示有99 d上漲的股票數(shù)比下跌的股票數(shù)多1支。證券行業(yè)內(nèi)的股票全漲的天數(shù)為488 d,占總交易天數(shù)的20%,全跌的天數(shù)為531,占總交易天數(shù)的21.8%,同漲同跌的天數(shù)為1 019 d,占總交易天數(shù)的41.8%,超過總交易天數(shù)的40%,有1支股票表現(xiàn)和其他股票漲跌不一致的天數(shù)為550 d,占總交易天數(shù)的22.6%,有2支股票表現(xiàn)和其他股票漲跌不一致的天數(shù)為373 d,占總交易天數(shù)的15.3%。證券行業(yè)內(nèi)的股票有79.7%的天數(shù)有著大致相同的漲跌,可以認為在大的方向上,相同行業(yè)內(nèi)的大部分股票漲跌是相同的。

2.2 AP-SVM預測結果討論

根據(jù)AP算法聚類得到證券行業(yè)股票,實驗數(shù)據(jù)為在2008-09-10至2018-09-10期間證券行業(yè)的9支股票,每一支有2 433天的交易數(shù)據(jù),將其前90%當做訓練集,用于訓練模型的參數(shù),后10%為測試數(shù)據(jù),選擇股票前k個交易日的收盤價和成交量作為模型的自變量,模型的因變量是第(k+1)個交易日的漲跌,將證券行業(yè)內(nèi)所有股票的特征當作是簇的特征,構建成一個擁有18個特征的矩陣簇。

以往的研究中證實了不同核函數(shù)對預測結果有不同的影響,最常用的高斯核函數(shù)在大多數(shù)情況下都有不錯的表現(xiàn)效果,因此本文將在以往的研究基礎上,引入高斯核函數(shù),利用網(wǎng)格搜索算法對高斯核函數(shù)的參數(shù)g和懲罰因子C進行參數(shù)尋優(yōu)。根據(jù)SVM基本原理,構建SVM模型對矩陣簇和簇內(nèi)股票進行實驗預測。

本文選擇了 SVM,BP[19],AP-SVM 和 AP-BP算法進行了對比實驗,在5 d,10 d,15 d,20 d 4種時間間隔的數(shù)據(jù)進行預測,刪除其中停牌日期的數(shù)據(jù),對太平洋證券的預測結果如表1所示。

表1 不同時間間隔下四種模型的預測準確率對比表Tab.1 Comparison of prediction accuracy of four models at different time intervals

對比AP-SVM和SVM的預測結果,當時間步長為5 d、10 d和15 d時,AP-SVM的預測準確率要好于SVM,說明聚簇的股票相互作用,會對簇內(nèi)單支股票的預測準確率有提升作用,當步長慢慢增加,AP-SVM相比單支股票擁有更多行業(yè)相關數(shù)據(jù),預測準確慢慢變大,但是隨著步長繼續(xù)變大,AP-SVM的輸入維度變得很大,樣本數(shù)據(jù)很少,導致準確率慢慢變小。

對比AP-BP和BP的預測結果,當時間步長為10 d、15 d、20 d時,AP-BP的預測效果要好于BP神經(jīng)網(wǎng)絡,說明通過AP聚類和BP神經(jīng)網(wǎng)絡結合,也會提升股票的預測效果。

對比AP-SVM和AP-BP的預測結果,當時間步長為5 d、10 d和15 d時,AP-SVM的預測效果是最好的;當時間步長為20 d時,AP-BP的預測效果要好于AP-SVM。綜上所述,當時間間隔取較短時,通過AP聚類和其他算法結合的預測效果會優(yōu)于單獨算法進行預測。

根據(jù)AP聚類在一起的股票,大部分是屬于同一個行業(yè)的,而這些行業(yè)之間的股票有著相似的波動,股票數(shù)據(jù)之間相互作用提供了單支股票所缺乏的行業(yè)信息,從而提升了預測準確率。為了進一步確定簇內(nèi)多少股票對于預測有作用,利用收盤價計算每兩支股票之間相似度,假設2支股票的收盤價矢量表示為X={x1,x2,…,xN}和Y={y1,y2,…,yN},則X和Y的相似性度量如下:

利用式(14)計算以收盤價聚類的證券簇內(nèi)股票之間的相似度,兩支股票越相似,它們之間的余弦值越接近1,如圖4所示。

圖4 證券行業(yè)內(nèi)股票的相似度關系圖Fig.4 Similarity relation schema of stocks in security industry

由圖4可知,與太平洋證券走勢相似的股票依次是長江證券、東北證券、國金證券、西南證券、吉林敖東、中信證券、國元證券和海通證券。根據(jù)與太平洋證券相關性的強弱,依次選取1~9支股票構建AP-SVM算法對太平洋證券進行漲跌預測,選用時間步長為10進行預測的實驗結果如圖5所示。

圖5 不同股票數(shù)目的預測準確率對比圖Fig.5 Comparison diagram of prediction accuracy for different stock numbers

由圖5可知,當選用2支與太平洋證券走勢相近的股票時,就能達到用整個簇進行預測的結果,因此可以用簇內(nèi)的3支股票來預測太平洋證券在不同時間間隔上的表現(xiàn),預測結果如表2所示。

表2 不同時間間隔下兩個不同股票數(shù)模型的預測準確率對比表Tab.2 Comparison of prediction accuracy of two stock number models at different time intervals

由表2可知,當時間間隔取10 d和15 d時,選擇簇內(nèi)3支股票和簇內(nèi)所有股票的預測結果是一樣的,說明只要選擇用3支走勢相近的股票代替整個簇進行漲跌趨勢預測,能夠減少計算量,縮短計算時間。

3 結 語

本文提出了AP-SVM模型對A股2008~2018年間的股票進行漲跌預測,通過AP算法對A股股票進行聚類,發(fā)現(xiàn)聚類在一起的股票是按行業(yè)劃分的,簇內(nèi)的股票基本上遵循著同漲同跌的變化規(guī)律。通過相關性分析,篩選出相關性小的2個特征,將簇內(nèi)股票按時間索引構建矩陣簇,對比SVM、BP、AP-SVM和AP-BP在不同時間間隔上對太平洋證券進行預測,結果表明隨著時間間隔增大,AP-SVM的預測效果要優(yōu)于其他3種算法,當時間間隔取最大時,由于AP-SVM的維度變得很大,導致最后的預測結果反而變差。進一步分析簇內(nèi)股票數(shù)目對預測結果的影響,發(fā)現(xiàn)在時間間隔取10 d和15 d時,走勢最相似的3支股票的預測效果跟整個簇的預測準確率是相同的,可以代替用整個簇預測。

驗證了AP算法和其他算法結合,相比單獨使用SVM和BP算法,對于股票的準確率預測有提升效果。本文只用同一個簇內(nèi)有很強相關性的股票進行實驗,而不同簇之間也有相關性,挖掘出不同行業(yè)漲跌的先后規(guī)律,結合深度學習算法是今后的研究方向。

猜你喜歡
收盤價天數(shù)股票
本周連漲天數(shù)居前個股
本周連跌天數(shù)居前個股
股神榜
股神榜
生日謎題
股神榜
本周創(chuàng)出今年以來新高的股票
本周創(chuàng)出今年以來新高的股票
股神榜
本周連續(xù)上漲3天以上的股票
垦利县| 上犹县| 南雄市| 黄陵县| 永川市| 沙坪坝区| 新泰市| 于田县| 佛冈县| 洱源县| 上高县| 安多县| 丰台区| 扬州市| 兴国县| 鲁山县| 虞城县| 黎川县| 竹溪县| 嘉禾县| 江西省| 大洼县| 朝阳县| 突泉县| 桓仁| 桂林市| 依安县| 蒲城县| 砀山县| 罗城| 遵义市| 镇沅| 肥东县| 蓝田县| 南丰县| 辰溪县| 岳池县| 定结县| 建水县| 兴海县| 称多县|