姚宏亮,徐禮維,楊 靜,俞 奎
合肥工業大學 計算機與信息學院,合肥 230009
從數據中發現知識是數據挖掘研究的核心任務,股票市場是數據挖掘的一個重要應用研究領域。股市的歷史數據與股市未來狀態之間具有高度的相關性[1],歷史數據蘊含的信息量大,但數據含有噪聲且有價值信息以隱蔽的方式在時間上進行傳遞,導致利用歷史數據預測股市的未來狀態仍是一個公開的難題。因而,將股票的歷史數據通過階段分割方式進行信息整合,從結構角度研究階段之間的作用關系,以及這種結構關系對于未來狀態的影響力,利用動態影響圖來研究歷史數據信息在時間上的傳遞,通過概率推理預測股市趨勢。
概率圖模型是結構建模和自動推理領域中的一種有力工具,在處理結構關系問題方面具有獨特的優勢。在利用概率圖模型研究股市數據方面,相關研究工作有:Zuo等[2]針對股票價格波動不完全符合正態分布情況,使用貝葉斯網絡(Bayesain networks,BNs)建模股票價格間的依賴關系,對NIKKH225股市和Toyota股市的趨勢進行預測,結果優于ARMA和ARCH等[2]時間序列預測算法。Cheng等[3]利用貝葉斯網絡提取影響股票波動的關鍵指標,并結合決策樹算法建立一種混合分類模型,對股票回報進行預測,由于僅考慮前一天的數據,忽略了歷史序列數據所含有的知識,效果一般。動態貝葉斯網絡(dynamic Bayesain networks,DBNs)是貝葉斯網絡時間上的擴展,數據在時間上具有記憶性,Li等[4]用動態貝葉斯網絡框架來模擬亞太地區、歐洲和南北地區的股市,揭示全球市場在同一個交易日內的信息傳播所產生的影響。Zhang等[5]提出一種基于歷史數據的高階隱馬爾可夫模型,相比一階隱馬爾可夫模型對市場價格趨勢有更高的識別能力,但數據噪聲較多,影響預測效果。因而,對數據進行分段來整合更多歷史信息,以增強容噪聲能力,同時又可降數據復雜性,有利于概率圖模型表示股票的歷史數據在結構上的關系。
股票的成交量數據與股票的價格數據存在高度相關性,通過量價關系預測股票趨勢是一個重要研究方向。Zhao等[6]提取股票數據相關特征,結合時間序列鄰近時間點的重要性,提出一種時間加權的LSTM模型。Wen等[7]通過MDTW[8]提取股票數據的序列特征,對序列進行重構后,利用卷積神經網絡對價格趨勢進行預測,但僅考慮了價格序列信息,忽視了成交量對于股價趨勢的影響,算法的適應性一般。孫彥林等[9]討論了股市成交量與股價趨勢的關系,指出股票價格與成交量之間具有聯動性。Mitchell等[10]從量價關系角度,提出一種維度轉換方法,將成交量融入價格序列中,但沒有考慮量價關系在時間上的演化,導致模型預測精度一般。當前,關于股市預測問題主要是利用基本交易數據,這些特征變量之間不具有結構關系,系統狀態整體表達能力弱,特征變量在時間上的作用關系難以清晰表示,通常主要使用基于神經網絡模型和基于支持向量機模型進行表示,但這些模型都難以表示特征變量之間的結構關系以及這種結構關系在時間上的傳遞過程。本文所提取的數據具有結構特征和時序關系,因而使用動態影響圖模型進行問題表示。
考慮股票價格的變化是成交量作用的結果,這種作用具有階段性,且不同階段作用效果不同,因而在數據分段基礎上,研究各個階段成交量與對應價格序列之間的配合度,以及量價關系對于未來股票狀態所產生的影響力,并利用動態影響圖建模成交量與價格在時間上的演化過程。
通過股票市場價格波動與成交量之間相關性的挖掘是研究股票趨勢的一種重要途徑,針對結構放量的股票數據,通過階段分割實現對離散的成交量數據進行整合,以提高融噪能力、降低數據復雜性和提高數據信息的表達能力;利用動態影響圖建模階段成交量與階段K線形態之間的結構關系,引入配合度來量化階段成交量與階段股票價格之間的作用關系;進而,利用聯合樹推理方法推演股票的歷史信息在時間上的傳播過程。
股市成交量是買賣雙方達成交易的數量,成交量是股票價格波動的源動力[9]。階段放量是股市的一種常見成交量變化情況,針對這種典型成交量時序場景,研究成交量階段與對應的K線階段之間的關系(如圖1),以及這種量價關系在時間上的傳遞,對于股票趨勢所產生的影響。

圖1 階段放量Fig.1 Stepped volume
定義1(放量)在一定交易日內,股票成交量呈階段式增長。每個階段中每天的成交量在該階段的均量附近。持續k個交易日后,成交量出現跳躍式增長。
定義2(平量階段)成交量序列在當前時間區間內處于小幅度波動的水平狀態。
定義3(增量階段)由當前平量階段變換到下一個平量階段過程中,有兩種變換方式:逐步增量(如圖1的V2階段)和大幅增量(如圖1的V4階段)。
圖1中橫坐標為交易日,縱坐標分別為價格、成交量。V1、V3、V5分別對應三個階段的平量階段,K1、K3、K5分別對應三個階段的價格走勢;V2、V4處于增量階段,K2、K4分別與增量階段對應的價格走勢。
股票價格時序數據描述為股票的K線,主要有5種基本K線形態:單邊上漲、震蕩上漲、橫盤整理、震蕩下跌、單邊下跌(如圖2所示)。股票K線形態劃分是對于股票時序數據的一種整合,對于噪聲數據具有包容性,從而提高數據表達能力。

圖2 階段趨勢Fig.2 Stepped trend
股票價格趨勢由時間和股票價格組成,可表示為:Y={(x1,t1),(x2,t2),…,(x i,t i),…,(x n,t n)},其中元素yi=(x i,t i)表示時間序列在x i時刻的股票價格為t i。利用序列重要點[11]方法來提取股票價格序列的K線形態,重要點即序列中首尾連線垂直距離dist最大的點,dist計算公式見式(1),式中i表示序列中第i個點(xi,t i),i+h表示第i+h個點(x i+h,t i+h),而j表示第i到第i+h的任意一個點。

在階段放量過程中,成交量變化是一種能量變化,成交量為股票走勢的變化提供能量。
每一階段股票價格漲跌幅與成交量成正比關系,具體關系式如下:

其中,m表示在Δt時間內的平均波動率,v表示當前階段相對于上一階段的階段放量比,Δr表示當前階段K線漲跌幅,α表示股票市值s的倒數關系,(c是一個常數),股票市值越大,波動幅度越小,ε表示利好或利空的擾動。
階段放量是一個持續性放量過程,成交量的持續作用,成交量對于股票價格的影響效果,會在時間在進行傳遞,影響股票狀態。因而,在給定的時間內股票價格波動r是階段成交量以及相關擾動合力作用的結果,即:

階段放量比是相鄰兩個階段的成交量均值之比,階段成交量放量比如式(4)所示:

其中,Vol t為第t個階段的成交量的均值,階段放量比離散化如表1所示。

表1 階段放量比離散化Table 1 Discretization of phase discharge ratio
股票價格序列反映了K線的強弱,K線與價格均線的位置關系也是K線狀態強勢的一種表現形式。

當前階段K線狀態強弱KE,如下式所示:

其中,Δr表示當前階段K線的漲跌幅,T為階段持續天數,qs10表示當前階段10日均價距離。
成交量與股價變化相一致時,表明投資者對未來市場走勢看法相近,反之表示看法出現分歧。
量價配合度體現當前階段量價關系的一個重要特征。為了方便對階段量價配合度的度量,對階段放量V j、K線狀態強弱KE j進行標準化處理。量價配合度可表示為:

其中,σKE表示當前階段KE的方差,表示當前階段KE的均值,σV表示當前階段V的方差,表示當前階段V的均值,量價配合度D離散化結果如表2所示。

表2 量價配合度離散化Table 2 Discretization of cooperation
貝葉斯網絡[12](Bayesian networks,BN)是表示數據變量之間的依賴關系的一種概率圖模型。動態貝葉斯網絡[13](dynamic Bayesian networks,DBNs)是貝葉斯網絡在時間上的擴展,由初始網絡和轉移網絡組成。
階段放量過程中每個階段量價趨勢特征直接影響到下一階段價格走勢,其階段動態影響圖結構如圖3所示;其中,Kt表示第t階段K線形態結點,V t表示第t階段成交量結點,D t表示第t階段量價配合度結點,Ut表示第t階段效用結點,S t為第t階段價格狀態結點。

圖3 階段放量過程的動態影響圖結構Fig.3 Structure of dynamic influence diagram of stepped volume process
在時間片為t時,隨機變量為St,觀察變量集為{K t,V t,Dt}。該動態影響圖模型由概率模型和效用模型組成,這兩個子模型的具體描述如下:
3)教師隊伍結構有待優化。目前基地的師資隊伍青年教師占多數,部分年輕教師知識結構、教學經驗、學術研究和科研能力欠缺。雙師素質有待進一步提升、雙師結構需進一步優化。
(1)概率模型
狀態變量集為S t,觀察變量集為{K t,V t,D t}在t時間片的聯合概率分布為:

設動態影響圖模型滿足一階馬爾可夫假設,有P(S t|S0:t-1,K0:t,D0:t)=P(St|St-1,V t,D t)、P(V t|V0:t-1)=P(V t|V t-1)和P(D i|V0:i,S0:i)=P(D i|V i,S i),給定狀態變量的轉移概率分布P(S t|S t-1,V t,D t)和觀察變量的概率分布P(V t|V t-1)和P(D i|V i,S i),狀態變量的概率分布將通過轉移模型進行傳播,則t時狀態變量的先驗概率分布為:

在給定觀察變量(K i,V i,D i)時,狀態變量的條件先驗概率分布,可以得到狀態變量的后驗分布:

(2)效用模型

股票市場未來走勢依賴于當前階段K線強弱指標、成交量、量價配合度,根據多屬性效用理論[14],當前階段的局部效用函數可表示如下:其中,K E t、V t、Dt分別表示第t個階段的K線強弱指標、成交量放量比、量價配合度,α1、α2、α3表示相應的權值,通過多維最小二乘進行無偏參數估計,可表示為方程組Y=Xα+ε,其中X為常數矩陣,Y表示下一階段前a日內K線漲跌幅,αi為權值向量,ε為隨機向量。各個變量權重為:

綜合以上兩個模型可知,在給定量價配合度D j=d j時,則在t時刻聯合期望效用為:

通過展開(Unrolling)技術[15]將動態貝葉斯網絡轉換成全貝葉斯網絡。
3.2.1 構建聯合樹
定義4接口在DBNs中,接口連接兩個相鄰的時間片t和時間片t+1,包含時間片t內所有向時間片t+1發出弧的結點集合(如圖4所示),時間片t的接口可表示為I t。

圖4 一個動態概率模型的接口Fig.4 Dynamic probability model interface
展開網絡中任意兩個相鄰時間片t和t+1,消除時間片t中所有的非接口結點和與之相連的邊,再和時間片t進行組合,對該部分網絡進行正規化、三角化等操作,可生成聯合樹JT t。
圖5是對3.1節中階段放量動態影響圖模型前2個時間片通過接口進行粘合得到的,I t表示時間片t和時間片t+1中的接口結點,B t為包含接口I t={S t,V t}的團,Ct為包含接口I t+1={St+1,V t+1}的團。

圖5 一個具有2個時間片DBN通過接口進行粘合Fig.5 DBN with 2 time slices is bonded through interface
以接口I t為分割團,可將不同時間片的聯合樹粘合起來,生成完整的聯合樹。圖6中JTt是第t個聯合樹,每個聯合樹中含有接口I t-1和I t(JT1僅包含I1),分割團I t是JT t和JT t+1間的接口,Ft表示時間片中非接口結點。每個聯合樹的團樹結構如圖5中JT2所示。

圖6 通過接口粘合相鄰聯合樹的示意圖Fig.6 Schematic diagram of bonding adjacent junction trees through interfaces
3.2.2 趨勢預測的推理算法
階段放量的聯合樹推理算法的描述:
輸入:階段放量過程對應數據集Dataset。
輸出:階段放量后K線走勢。
(1)在A股數據中提取符合階段放量形態的數據集,將實驗數據劃分為訓練數據和測試數據。
(2)利用序列重要點提取各階段形態K,計算階段放量比V,并計算量價配合度D。
(3)構建聯合樹JT t,初始化JTt中所有團和分割團的概率分布,從t=1開始。
(4)從JTt-1中提取Ct-1的概率分布,邊緣化Ct-1得到I t-1的概率分布,吸收證據得到先驗分布P(I t-1|E1:t-1),其中E1:t-1表示證據(包含效用證據),并將該先驗概率分布作為Bt的概率分布,將Ct作為根結點,在JT t中執行收集證據的操作。
(5)使J T t從JT t+1中吸收概率,并實現對JTt的概率分布進行更新,邊緣化Bt+1得到I t的聯合概率分布,吸收JT t+1中Bt+1的概率分布來更新JT t中C t中概率分布,即,然后從根Ct開始進行證據的分發。
(6)t=t+1,若t<n返回(4)。
(7)整個網絡趨于一致后,對于預測目標結點S i所在的團或分割團,給定證據E,求得S i的后驗概率P(S i|E)。
從滬深A股市場選取2015年1月1日至2020年3月1日,1 000個交易日中出現的1 234條階段放量形態數據,其中90%作為訓練集用于模型的訓練,另外10%作為測試數據。
根據階段放量的量價特征對每次放量后起始日至第a個交易日的漲跌趨勢s i+a進行預測,其中s i+a為起始日至第a個交易日的漲跌幅度。當漲幅大于8%時,標記為漲,漲跌幅在-8%到8%之間時,標記為橫盤,當跌幅大于8%時,標記為跌。
為了驗證算法的有效性,主要采用常用指標:準確率P、召回率R和F1值對算法的預測結果進行度量。

其中,TP(真正)是被模型預測為正的正樣本,TN(真負)是被模型預測為負的負樣本,TP(假正)是被模型預測為正的負樣本,FN(假負)是被模型預測為負的正樣本。
以T-LSTM-R[6]和RTS-CNN[7]為對照實驗,持續平量之后出現顯著放量為一個階段,分別針對階段放量第一階段、第二階段、第三階段之后的價格走勢進行預測,實驗結果如表3、表4、表5所示。

表3 第一階段放量實驗對比表Table 3 Comparison table of algorithms of the first stage volumetric experiment

表4 第二階段放量實驗算法對比表Table 4 Comparison table of algorithms of the second stage volumetric experiment

表5 第三階段放量實驗算法對比表Table 5 Comparison table of algorithms of the third stage volumetric experiment
表3是以第一階段放量區間量價特征作為輸入,預測后續股票價格走勢,對三種算法進行比較;表4是前兩階段放量區間量價特征作為輸入,預測后續股票價格走勢,對三種算法進行比較;表5是以前三階段放量區間量價特征作為輸入,預測后續股票價格走勢,三種算法進行比較,結果如表5所示。
由表3、表4和表5可見,針對股票階段放量場景,對上漲、橫盤、下跌趨勢預測準確率大部分優于T-LSTM-R算法和RTS-CNN算法。VP-JT的綜合精確率分別為64.37%、63.89%和69.78%,明顯高于T-LSTM-R和RTSCNN兩種算法,其召回率、F1值也普遍高于該兩種算法,說明引入量價間結構關系的VP-JT算法,相比T-LSTM-R和RTS-CNN單純從價格序列出發,在模型預測的精度和模型預測穩定性上相比更具有優勢。
對以上三組實驗第一階段、第二階段、第三階段放量后股票走勢的真實樣本數量分布情況統計如圖7所示,由圖可知,第一階段放量后股票價格上漲和橫盤的可能性更大,下跌可能性較小;第二階段放量后股票價格橫盤可能性較大,股票上漲和下跌可能性變大;第三階段放量后,成交量過高,股票下跌可能性增大,投資不確定性風險增大;算法預測的結果符合市場實際情況。

圖7 放量后走勢分布Fig.7 Trend distribution after heavy volume
個股002237(恒邦股份)和000413(東旭光電)的階段放量過程如圖8所示,圖中藍色箭頭表示T-LSTM-R算法的預測結果,綠色箭頭表示RTS-CNN算法的預測結果,紅色實線箭頭表示VP-JT算法的預測結果。分別對兩只股票每階段增量放量(V2,V4,V6)后K線走勢進行預測,T-LSTM-R和RTS-CNN分別失敗2次,而VP-JT算法僅在002237(恒邦股份)增量階段(V2)預測失敗,說明僅從價格序列對未來趨勢進行預測的局限性,從而體現結合量價結構關系的必要性。

圖8 階段放量過程案例Fig.8 Cases of stepped volume process
動態影響圖模型能有效地表示結構關系在時間上演化的不確定性問題。提出一種基于量價結構關系的聯合樹推理預測算法(structural relationship between volume and price-JT,VP-JT),從成交量階段放量過程中量價相關性出發,捕獲各個階段K線形態特征,提升數據的表達能力,計算配合度量化相應階段量價間的結構關系,建立階段放量過程量價關系動態演變的動態影響圖模型,通過聯合樹推理技術研究股票的歷史數據在時間的傳播和對于未來股票趨勢的影響,將考慮引入市場情緒,進一步提升算法的預測精度。