基於雙聚類挖掘及模糊推理的股票交易規則預測方法與流程
2023-05-29 10:10:41 1

本發明涉及股票金融預測的技術領域,具體涉及一種基於雙聚類挖掘及模糊推理的股票交易規則預測方法。
背景技術:
股票交易規則的預測是股票金融領域十分關注的一個研究熱點,很多專家和投資人都在研究如何確定最佳的買入和賣出的時機,但是有時不可避免地會得到錯誤的結果。因為股票價格存在高維度和非穩定性的原因,這導致股票交易規則的預測是存在很大難度的。同時股票價格容易受到經濟環境以及政治形式等多方面因素的影響,這又在一定程度上提高了股票交易規則預測的難度。最初的股票預測的代表是以早期發展的技術分析理論為基礎的,如平均線理論、K線圖分析法、柱狀圖分析法等,隨著計算機技術和數據挖掘在證券領域的應用,股票預測的方法也越來越多,但是大多數方法僅僅是分析手段,還不能直接預測股票市場的動態。而且利用傳統的預測技術來預測股票市場的變換需要面對的最大的問題就是待處理的數據量非常大,在這些海量的數據匯總往往隱含著各種各樣的交易規則的信息,這些信息單純僅憑人們的直覺和經驗是難以發現的。如何從大量數據中獲得有價值的信息,將是金融預測領域的挑戰性研究課題。
目前在股票預測領域比較常用的方法有BP神經網絡,支持向量機,遺傳計算以及模糊推理等,比如,Wing W.Y.Ng et al利用遺傳算法最小化一個新的加權局部泛化誤差去預測交易點,比如,Luo and Chen提出一種基於分段線性表示方法和加權支持向量機的方法預測股票的交易信號,比如,Q.H.Huang et al使用雙聚類挖掘算法和K最近鄰分類算法去預測交易規則。
技術實現要素:
本發明的目的在於避免了傳統上根據專家經驗構建模糊規則存在的規則不夠客觀,專家經驗難以獲取的問題,提供一種基於雙聚類挖掘及模糊推理的股票交易規則預測方法,該預測方法能夠從大量的股票歷史數據中挖掘出有意義的交易規則信息,並且利用挖掘出的有價值的信息構建模糊規則,使得模糊規則更具有針對性,並獲得較好的利潤結果。
本發明的目的可以通過採取如下技術方案達到:
一種基於雙聚類挖掘及模糊推理的股票交易規則預測方法,所述預測方法包括下列步驟:
S1、計算歷史股票數據中第i個交易日的未來收益率FRi;
S2、將所述未來收益率FRi進行量級劃分,若第i個交易日的平均收盤價比當天收盤價要高,則未來收益率FRi≥0,若第i個交易日的平均價比當天收盤價低,則未來收益率FRi≤0;
S3、構造指標矩陣A=(aij)m×n,選取m個交易日的歷史股票數據,計算每個交易日的n個指標特徵值aij,其中i=1,2,…,m;j=1,2,…,n,aij表示第i交易日對應的第j列指標上的特徵值;
S4、對指標矩陣A使用雙聚類算法,通過雙聚類的挖掘,將所有得到的雙聚類放入一個雙聚類集合,集合中的每個雙聚類都對應一種交易規則模式的信息;
S5、提取交易規則模式,從雙聚類集合中取出一個雙聚類,計算雙聚類中每一列的總和的平均值,並且計算雙聚類中每一行對應的FRi的總和的平均值,得到一個行向量D=[Y1,Y2,…,Yc,FRav],Y1,Y2,…,Yc是雙聚類中包含的指標列的平均值,FRav是雙聚類中包含的未來收益率的平均值,行向量D是雙聚類中對應的交易規則模式信息的量化表示;
S6、劃分模糊規則中前提條件和結論的量級,將所述行向量D中Y1,Y2,…,Yc對應的指標列用來構建模糊規則的前提條件,將所述行向量D中平均未來收益率FRav用來構建模糊規則的結論;
S7、構建模糊規則,通過對行向量D包含的指標列和平均未來回報率在量級上的劃分則可得到構建模糊規則如下:
假如Y1∈O1並且Y2∈O2並且…Yc∈Oc,則FRav∈Ox,其中O1,…,Oc表示指標列的平均值的所屬量級,Ox表示平均未來收益率FRav的值所屬量級,然後對雙聚類集合中的所有雙聚類進行計算,依次得到每個雙聚類對應的模糊規則;
S8、將所有的模糊規則進行整合,得到模糊規則庫R,通過所得的模糊規則庫R構造模糊預測模型;
S9、對於需要預測的某一個交易日Dayi,計算Dayi的n個股票技術指標的值,然後輸入到該方法構建的模糊預測模型中,可得到交易日Dayi的交易規則的預測,其中所述交易規則包括買入、賣出和持有。
進一步地,所述步驟S1、計算歷史股票數據中第i個交易日的未來收益率FRi具體包括:
S11、選取過去m天的股票歷史數據作為挖掘股票歷史數據中雙聚類的數據集;
S12、根據技術指標公式計算出股票歷史數據中第i個交易日相對應的股票技術指標值,其中,所示技術指標公式如下:
其中,ACli表示第i個交易日的平均收盤價,Clx表示第x個交易日的收盤價,t表示投資時間周期;
S13、計算第i個交易日的未來收益率FRi,計算公式如下:
FRi代表第i個交易日對應的未來收益率。
進一步地,所述股票歷史數據包括開盤價、最高價、最低價、收盤價和交易量。
進一步地,所述步驟S2、將所述未來收益率FRi進行量級劃分的規則具體如下:
將交易日股價上漲分為小、中、大三種情況,對應地選取閾值Tr將未來收益率按照以下規則劃分:如果Tr≤FRi<2Tr,則置FRi=1;如果2Tr≤FRi<3Tr,則置FRi=2;如果FRi≥3Tr,則置FRi=3;
同理,將交易日股價下跌分為小、中、大三種情況,對應地選取閾值Tr將未來收益率按照以下規則劃分:如果-2Tr≤FRi<-Tr,則置FRi=-1;如果-3Tr≤FRi<-2Tr,則置FRi=-2;如果FRi≤-3Tr,則置FRi=-3。
進一步地,所述步驟S6具體包括:
S61、對所述行向量D中Y1,Y2,…,Yc對應的指標列使用隸屬度函數對每個指標列的值進行一個語言變量的量級上的劃分,將指標值的大小劃分成small(對應μ0,σ0),medium(對應μ1,σ1),big(對應μ2,σ2),large(對應μ3,σ3)四個量級;
S62、對行向量D中包含平均未來收益率對應的值FRav,使用隸屬的函數對FR的值進行一個語言變量的量級上的劃分,將FR值的大小劃分成negative small(對應w0,t0),negative large(對應w1,t1),positive small(對應w2,t2),positive large(對應w3,t3)四個量級。
進一步地,所述步驟S7中的所述指標列的平均值的所屬量級包括small、medium、big和large,所述平均未來收益率FRav的值所屬量級包括negative small、negative large、positive small和positive large。
進一步地,所述步驟S3還包括:
對指標矩陣A中每一列進行歸一化處理,把指標矩陣A中的技術指標值aij保持在相同範圍(0,1)內。
本發明相對於現有技術具有如下的優點及效果:
1、將雙聚類算法巧妙地應用在了股票數據挖掘中,可以從大量的股票數據中挖掘出股票的交易規則模式,避免受到大量噪聲信息的影響,提取出有價值的信息。
2、可解決傳統上根據專家經驗構建模糊規則存在的規則不夠客觀,專家經驗難以獲取的問題,使得構建出的規則更具有針對性,提升模糊預測模型的預測性能。
3、基於雙聚類挖掘及模糊推理的股票交易規則預測方法能夠更好地預測股票的交易規則,在較好的時機進行股票的買入或者賣出,獲得更大的利潤。通過該算法,驗證獲取的交易規則中的買入和賣出的時間點是靠近股票價格曲線的波谷和波峰,說明預測的交易規則是準確和有價值的。
附圖說明
圖1為本發明公開的基於雙聚類挖掘及模糊推理的股票交易規則預測方法的流程步驟圖;
圖2為本發明方法中構造指標矩陣的示意圖;
圖3為本發明方法中每個指標列使用的隸屬度函數IndicatorF(x);
圖4為本發明方法中FR標記列使用隸屬度函數FetureRF(x);
圖5為本發明方法對西藏藥業(600211)股票的預測結果示意圖。
具體實施方式
為使本發明實施例的目的、技術方案和優點更加清楚,下面將結合本發明實施例中的附圖,對本發明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例是本發明一部分實施例,而不是全部的實施例。基於本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬於本發明保護的範圍。
實施例一
附圖1是本發明公開的的基於雙聚類挖掘及模糊推理的股票交易規則預測方法的流程步驟圖,如附圖1所示,本實施例中公開的股票交易規則預測方法具體包括下列步驟:
S1、計算歷史股票數據中第i個交易日的未來收益率FRi。
選取一段時間的股票數據作為挖掘雙聚類的數據集,根據不同技術指標的公式計算出每一天的股票原始數據(開盤價,最高價,最低價,收盤價,交易量)相對應的技術指標值,計算歷史股票數據中第i個交易日的未來收益率FRi,未來收益率反應股票價格的變動趨勢,其中i表示交易日,FRi表示第i個交易日的未來收益率。
S11、選取過去m天的股票歷史數據(開盤價,最高價,最低價,收盤價,交易量)作為挖掘股票歷史數據中雙聚類的數據集;
S12、根據技術指標公式計算出股票歷史數據中第i個交易日相對應的股票技術指標值,其中,所示技術指標公式如下:
其中,ACli表示第i個交易日的平均收盤價,Clx表示第x個交易日的收盤價,t表示投資時間周期;
S13、計算第i個交易日的未來收益率FRi,計算公式如下:
FRi代表第i個交易日對應的未來收益率。
S2、將所述未來收益率FRi進行量級劃分,若第i個交易日的平均收盤價比當天收盤價要高,則未來收益率FRi≥0,若第i個交易日的平均價比當天收盤價低,則未來收益率FRi≤0;
其中,未來收益率代表股價的變化趨勢,如果第i個交易日來說,未來t個交易日內的收盤價有所上漲,則第i個交易日的平均收盤價比當天收盤價要高,未來收益率FRi≥0。同理,如果第i個交易日後的未來t個交易日的收盤價下跌,第i個交易日的平均價比當天收盤價低,未來收益率FRi≤0。因此,根據交易日股價上漲分為小,中,大三種情況,對應地選取閾值Tr將未來收益率按照以下規則劃分:如果Tr≤FRi<2Tr,則置FRi=1;如果2Tr≤FRi<3Tr,則置FRi=2;如果FRi≥3Tr,則置FRi=3;同理,根據交易日股價下跌分為小,中,大三種情況。如果-2Tr≤FRi<-Tr,則置FRi=-1;如果-3Tr≤FRi<-2Tr,則置FRi=-2;如果FRi≤-3Tr,則置FRi=-3。
S3、構造指標矩陣A=(aij)m×n,選取m個交易日的歷史股票數據,計算每個交易日的n個指標特徵值aij,其中i=1,2,…,m;j=1,2,…,n,aij位於矩陣A的第i行第j列,表示第i交易日對應的第j列指標上的特徵值。
在本實施例中,設n=32,即選取32個技術指標值,分別是SMA[周期6,10,12,24,30]、RSI[周期6,12,18,24,30]、WMS[周期6,14,20],ROC[周期6,12,24,28]、CCI[周期6,12,14,28]、EMV[周期6,12,14,28]、UO[周期7,14,28]、ARBR[周期26,26]、KDJ[周期9,9,9]、MTM[周期6]。其中,每個指標對應的每個周期可以計算得到一個技術指標值,但在UO指標中,三個周期共同計算得到一個指標值。定義指標矩陣其中i=1,2,…,m;j=1,2,…,32。aij表示第i交易日對應的第j列技術指標的指標特徵值aij。相應地,定義矩陣其中i=1,2,…,m。B矩陣是由m個交易日中每個交易日的未來回報率構成的。
構建指標矩陣A需要選取n個技術指標作為特徵,通過計算這些特徵在不同周期下的指標值,則可得到每一天的n個技術指標的技術指標值,這些特徵是判斷股票價格變換趨勢有利的依據。同時對指標矩陣A中每一列進行歸一化處理,把指標矩陣A中的技術指標值aij保持在相同範圍(0,1)內。
S4、對指標矩陣A使用雙聚類算法,通過雙聚類的挖掘,將所有得到的雙聚類放入一個雙聚類集合,集合中的每個雙聚類都對應一種交易規則模式的信息。
S5、提取交易規則模式,從雙聚類集合中取出一個雙聚類,計算雙聚類中每一列的總和的平均值,並且計算雙聚類中每一行對應的FRi的總和的平均值,得到一個行向量D=[Y1,Y2,…,Yc,FRav],Y1,Y2,…,Yc是雙聚類中包含的指標列的平均值,FRav是雙聚類中包含的未來收益率的平均值,行向量D是雙聚類中對應的交易規則模式信息的量化表示。
由於每個雙聚類都是一個二維矩陣,因此對雙聚類取列平均,則可得到一個行向量D=[Y1,Y2,…,Yc,FRav]。而且通過列平均的方法對雙聚類中的數據進行降維處理,可以對雙聚類中包含的少量噪聲數據起到平衡的作用。
S6、劃分模糊規則中前提條件和結論的量級。因為一個模糊規則由前提條件和結論構成,行向量D中Y1,Y2,…,Yc對應的指標列用來構建模糊規則的前提條件,平均未來收益率用來構建模糊規則的結論。對行向量D中Y1,Y2,…,Yc對應的指標列使用隸屬度函數對每個指標列的值進行一個語言變量的量級上的劃分,將指標值的大小劃分成small(對應μ0,σ0),medium(對應μ1,σ1),big(對應μ2,σ2),large(對應μ3,σ3)的四個量級。同理,對行向量D中包含平均未來收益率對應的值FRav,使用隸屬的函數對FR的值也進行一個語言變量的量級上的劃分,將FR值的大小劃分成negative small(對應w0,t0),negative large(對應w1,t1),positive small(對應w2,t2),positive large(對應w3,t3)四個量級。
S7、構建模糊規則。通過對行向量D包含的指標列和平均未來回報率在量級上的劃分則可得到構建模糊規則如下:
假如Y1∈O1並且Y2∈O2並且…Yc∈Oc,則FRav∈Ox,其中O1,…,Oc表示指標列的平均值的所屬量級(small,medium,big,large其中之一),Ox表示平均未來收益率FRav的值所屬量級(negative small,negativelarge,positive small,positive large其中之一),然後對雙聚類集合中的所有雙聚類進行計算,依次得到每個雙聚類對應的模糊規則。
將由挖掘出的雙聚類轉化為成的行向量D,以其作為依據構建模糊規則,避免了傳統上構建模糊規則根據專家經驗構建模糊規則存在的規則不夠客觀,專家經驗難以獲取的問題,而且構建出的模糊規則更具有針對性,是基於數據本身蘊含的規律構建的。
S8、將所有的模糊規則進行整合,得到模糊規則庫R,通過所得的模糊規則庫R構造模糊預測模型。
S9、對於需要預測的某一個交易日Dayi,計算Dayi的n個股票技術指標的值,然後輸入到該方法構建的模糊預測模型中,可得到交易日Dayi的交易規則的預測,其中所述交易規則包括買入、賣出和持有。
綜上所述,本實施例公開了一種基於雙聚類挖掘及模糊推理的股票交易規則預測方法,通過使用雙聚類算法去挖掘交易規則的模式,然後利用上述交易規則的模式構更有針對性的模糊規則,很好地解決了傳統方法中根據專家經驗構建模糊規則存在的規則不夠客觀,專家經驗難以獲取的問題。
實施例二
如圖1至圖5,本實施例選擇具體的股票--西藏藥業(600211),採用基於雙聚類挖掘及模糊推理的股票交易規則預測方法進行交易規則的預測,包括以下步驟:
1)選取m=1320天的西藏藥業(600211)股票數據(開盤價,最高價,最低價,收盤價,交易量)作為挖掘股票歷史數據中的交易規則模式的數據集,選取32個股票技術指標作為評價每一天的交易信息的特徵,同時給m天的數據集中的每一天標記一個未來收益率FRi,首先需要計算t個交易日的平均收盤價ACli,
其中,Clx表示第i個交易日的收盤價,t表示投資周時間周期。
代表第i個交易日對應的未來收益率,ACli代表平均收盤價。FRi在一定程度上反映了股票價格變換的趨勢。
2)計算m個的交易日中每一天的未來收益率FRi,將其作為訓練集的標記,設閾值為Tr=0.15%。如果Tr≤FRi<2Tr,則置FRi=1;如果2Tr≤FRi<3Tr,則置FRi=2;如果FRi≥3Tr,則置FRi=3;如果-2Tr≤FRi<-Tr,則置FRi=-1;如果-3Tr≤FRi<-2Tr,則置FRi=-2;如果FRi≤-3Tr,則置FRi=-3。
3)根據選取的1320天股票數據以及32個指標的技術公式,計算1320天中每一天的32個技術指標的值,如圖2所示,設指標矩陣為A,行數為1320表示數據集中的每一天,列數為33表示32個技術指標以及FRi標記,即指標矩陣的大小為1320×33,同時對矩陣中的每一列進行歸一化處理。
4)對指標矩陣A使用雙聚類算法,進行雙聚類的挖掘,將所有得到的雙聚類放入一個名為Bicluster_Set的集合,集合中的每個雙聚類都蘊含一定的交易規則模式的信息。
5)從Bicluster_Set的集合中取出一個雙聚類,需要將雙聚類中蘊含的交易規則模式信息提取出來,從而構建模糊規則。因為每個雙聚類都是一個二維矩陣,因此對雙聚類取列平均,則可得到一個行向量D=[Y1,Y2,…,Yc,FRav],Y1,Y2,…,Yc是雙聚類中包含的指標列的平均值,FRav是雙聚類中包含標記列。行向量D是雙聚類中蘊含的交易規則模式信息的量化表示。
5)因為一個模糊規則由前提條件和結論構成,因此需要將行向量D轉化成模糊規則,D包含的指標列用來構建模糊規則的前提條件,包含的FRav標記列用來構建模糊規則的結論。如圖3所示,對D包含的每個指標列使用隸屬度函數對每個指標列的值進行一個語言變量的量級上的劃分,將指標值的大小劃分成small(對應μ0=0,),medium(對應),big(對應),large(對應μ3=1,)的四個量級。如圖4所示,對Average_Bic包含的FR標記列使用隸屬的函數對FR的值也進行一個語言變量的量級上的劃分,將FR值的大小劃分成negative small(對應w0=-1,t0=1),negative large(對應w1=-3,t1=1),positive small(對應w2=1,t2=1),positive large(對應w3=3,t3=1)四個量級。
6)通過對行向量D包含的指標列的平均值以及標記列FR的平均值在量級上的劃分則可構建模糊規則。
假如Y1∈O1並且Y2∈O2並且…Yc∈Oc,則FRav∈Ox.其中,Y1…Yc表示指標列的平均值的所屬量級(small,medium,big,large其中之一),Ox表示標記列FRav的平均值所屬量級(negative small,negativelarge,positive small,positive large其中之一),然後對雙聚類集合Bicluster_Set中的所有雙聚類進行計算,依次得到每個雙聚類對應的模糊規則。
7)將所有的模糊規則進行整合,得到模糊規則庫R。通過所得的模糊規則庫R構造模糊預測模型。
8)對於需要預測的西藏藥業(600211)中的某個交易日Dayi,計算Dayi的32個股票技術指標的值,然後輸入到該方法構建的模糊預測模型中,可得到Dayi該天的價格變化趨勢的預測,若該天的價格預測是上漲趨勢,則應該買入,反之則應該賣出,則可對股票的交易規則進行預測。如圖5所示,運用該方法對西藏藥業(600211)在2010/08/30-2011/08/11這段時間交易規則預測的結果。
綜上所述,本發明公開的一種基於雙聚類挖掘及模糊推理的股票交易規則預測方法提出的預測模型能夠對股票價格曲線中的交易規則進行預測,為投資者在最好的時機買入或者賣出股票提供參考,通過從大量的股票歷史數據中挖掘出有意義的交易規則信息,並且利用挖掘出的有價值的信息構建模糊規則,使得模糊規則更具有針對性,並獲得較好的利潤結果。
上述實施例為本發明較佳的實施方式,但本發明的實施方式並不受上述實施例的限制,其他的任何未背離本發明的精神實質與原理下所作的改變、修飾、替代、組合、簡化,均應為等效的置換方式,都包含在本發明的保護範圍之內。