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

?

一種基于時間序列鏈的股市預測方法

2021-10-15 05:49:24田賢忠胡安娜顧思義
浙江工業(yè)大學學報 2021年5期
關(guān)鍵詞:余弦夾角極值

田賢忠,胡安娜,顧思義

(浙江工業(yè)大學 計算機科學與技術(shù)學院,浙江 杭州 310023)

股票市場因具有高風險和高收益并存的特點,已成為當今社會的熱門話題之一。股票市場行情不僅關(guān)系到股民的切身利益,還影響社會經(jīng)濟體系,因此有大量學者都投身于股票市場的預測研究,并提供合理預測股票價格變化趨勢的方法。但是影響股票市場的因素眾多,例如國家宏觀經(jīng)濟的發(fā)展、法律法規(guī)的制定、公司的運營以及股民的信心等,這使得對股票價格走勢的預測具有極大的挑戰(zhàn)性。在股票市場研究的歷史中,不同的研究方法針對不同股票市場的預測均有顯著的效果,例如人工智能方法、分形結(jié)構(gòu)方法[1]和時間序列分析方法等。同時,也衍生了如時間序列模型、神經(jīng)網(wǎng)絡模型和隱馬爾可夫模型[2]等各式各樣的研究模型。其中,人工智能方法的股票市場預測研究中,機器學習算法以及深度學習網(wǎng)絡模型已被廣泛運用,例如決策樹[3]、遺傳算法和支持向量機[4]等。褚文華[5]建立了三層BP神經(jīng)網(wǎng)絡并且分析收斂速度,當選擇的數(shù)據(jù)合理時,擬合效果會更加準確,最終得到股票在短時間內(nèi)的趨向,從而說明BP神經(jīng)網(wǎng)絡對股票價格的預測具有可行性和合理性;彭燕等[6]結(jié)合LSTM(Long short-term memory)遞歸神經(jīng)網(wǎng)絡的特性和股票市場的特點,對數(shù)據(jù)進行插值、小波降噪和歸一化等預處理操作,然后推送到搭建的不同LSTM層數(shù)與相同層數(shù)下不同隱藏神經(jīng)元個數(shù)的LSTM網(wǎng)絡模型中進行訓練與測試。

在股票市場預測中時間序列模型的研究占很大比重,自2003年時間序列主題發(fā)掘被引入以來[7],就掀起了一連串的研究熱潮。時間序列主題的一個主要研究方向就是將主題應用于解決生物信息學[8]、語音處理[9]、機器人技術(shù)、神經(jīng)學和昆蟲學[10]等各種研究領(lǐng)域的問題。主題發(fā)現(xiàn)也已作為更高級別分析過程中的一部分,包括分類[11]、聚類、可視化[12]和規(guī)則發(fā)現(xiàn)[13]。其他研究重點則關(guān)注對原始主題發(fā)現(xiàn)的擴展,例如提高可伸縮性[14]和簡化搜索算法等。時間序列主題是嵌入在較長時間序列中的近似重復子序列,如果重復主題,則必須有一個偶爾會產(chǎn)生守恒行為的潛在系統(tǒng)。隨著時間的變遷,主題可能會發(fā)生改變,簡單地查找相似的主題無法捕捉到這種情況的發(fā)生。在2018年時間序列鏈的概念被提出之前[15],時間序列領(lǐng)域中一直沒有與時間序列鏈相關(guān)的想法,但在文本領(lǐng)域卻有相似的想法[16-17],也有鏈的概念。Zhu等[16]提出基于隨機游走算法找到故事鏈,即在一組新聞文章中,通過發(fā)現(xiàn)不同事件之間隱藏的關(guān)系追蹤事件的發(fā)展;Gel等[17]提出根據(jù)文章之間的鏈接關(guān)系來恢復一個或多個事件時間表和主題的框架。而在時間序列模型的研究中,時間序列鏈一定是和時間序列主題相關(guān)的[18-20],高效的主題發(fā)現(xiàn)時間序列算法能為大規(guī)模時間序列數(shù)據(jù)庫提供可視化和總結(jié)的工具。Yeh等[19]提出運用FFT以及高速GPU的高效時間序列主題查找算法STOMP,這個算法為后續(xù)時間序列鏈的查找奠定了基礎。關(guān)于尋找時間序列的周期性也已經(jīng)有許多研究[21],但是這項工作沒有考慮到兩種可能性:時間序列有完美的周期性,但是沒有鏈的情況;或者時間序列有鏈卻沒有明顯周期性的情況。直到時間序列鏈這個數(shù)據(jù)挖掘的新原語被提出,時間序列當中鏈的概念和周期性才達到完美共存。時間序列鏈的概念是在一條時間序列中查找并獲得一系列和待預測子序列相似并且在演化的子序列集合,這些子序列之間有內(nèi)在的演化關(guān)系。自時間序列鏈的概念被提出以來,還未得到大量的應用,如何將其應用在不同領(lǐng)域的研究中已引起了學者極大關(guān)注點?;谏鲜龇治?,將從股票市場的場景出發(fā),結(jié)合股票市場特點,基于時間序列鏈的查找,提出對應的股票市場預測算法。以待預測時間節(jié)點作為端點,截取一段歷史時間序列作為待測子序列,通過時間序列鏈查找到與待測子序列相似且正在演化的子序列集合。分析這些子序列中與待測子序列相對應的時間節(jié)點后續(xù)是否上漲,推測待預測后續(xù)是否上漲。為了獲取與待測子序列更為相似的子序列集合,引入二維向量的cos夾角余弦距離來改進時間序列鏈查找時用于計算子序列之間相似程度(即它們之間的距離)的公式。為了提取股票歷史數(shù)據(jù)中的不同模態(tài)特征,將經(jīng)驗模態(tài)分解(EMD)高級版本具有的自適應噪聲的完全集成經(jīng)驗模態(tài)分解方法(CEEMDAN)與時間序列鏈相結(jié)合,對金融時間序列進行預測。EMD是一種基于傅里葉變換的信號分解方法,它能自適應地處理任何非線性和非平穩(wěn)信號[23]。通過CEEMDAN處理,將原始時間序列分解為不同頻率下的若干序列,通過這些序列獲得查找時間序列鏈需要用到的子序列長度集合。最后,根據(jù)時間序列鏈模型,找到盡可能多且合理的相似子時間序列,通過對這些相似子時間序列的漲跌統(tǒng)計分析預測當前股票價格是否上漲。

1 EMD和EEMDAN

經(jīng)驗模態(tài)分解(EMD)能自適應地將非線性信號分解為多個固有模態(tài)函數(shù)(IMF),可以利用這些分解得到的IMF提取金融數(shù)據(jù)的隱藏信息,比如振蕩的不同周期等,筆者利用它們來獲取更有效的查找時間序列鏈時用到的子序列長度值。EMD也存在著一些缺陷,如尺度混合等,所以采用更成熟的經(jīng)驗模態(tài)分解方法CEEMDAN。

1.1 經(jīng)典模態(tài)分解(EMD)和集成經(jīng)驗模態(tài)分解(EEMD)

經(jīng)驗模態(tài)分解(EMD)可以將任何復雜的數(shù)據(jù)集都分解為有限且通常為少量的“固有模態(tài)函數(shù)”,這種分解方法是自適應的,因此效率很高。由于分解是基于數(shù)據(jù)的局部特征時間尺度,因此適用于非線性和非平穩(wěn)過程。通過希爾伯特變換,“固有模態(tài)函數(shù)”產(chǎn)生瞬時頻率作為時間的函數(shù),從而給出嵌入結(jié)構(gòu)的清晰識別[24]。EMD尤其適用于分析自然信號,而自然信號通常是非線性和非平穩(wěn)的,可以與一些時空分析方法,如傅里葉變換和小波分解相比擬。不同的是EMD分解信號不需要事先預定或強制給定基函數(shù),而是依賴信號本身特征而自適應地進行分解。EMD將信號分解成不同的固有模態(tài)函數(shù)(IMFs)。每個IMF滿足兩個條件:1) 極值個數(shù)和過零個數(shù)必須相等或最多相差一個;2) 上下包絡的平均值處處為零。

圖1 EEMD算法得到的IMFsFig.1 The image of IMFs from EEMD algorithm

1.2 具有自適應噪聲的完全集成經(jīng)驗模態(tài)分解CEEMDAN

EEMD的核心思想是將EMD得到的模式平均化,然后將EMD應用于高斯白噪聲的多個實現(xiàn)中,雖然能更好地解決尺度混合的問題,但是產(chǎn)生了一些新的模式混合。EEDM得到的重構(gòu)信號中包括了殘余噪聲,并且信號加噪聲的不同實現(xiàn)可能產(chǎn)生不同數(shù)目的模式。為了解決以上問題,Marial等[26]提出一種改進的EEMD方法,該方法具有自適應噪聲的完全集成經(jīng)驗模態(tài)分解方法(CEEMDAN),能以較低的計算代價精確地重建原始信號,并能較好地分離模式。

如圖2所示,由CEEMDAN分解得到的IMFs中,每個模態(tài)有固定的振蕩頻率,且不同模態(tài)的頻率顯著不同。觀察可得到低頻的IMFs,即IMF5至IMF10,能與原始數(shù)據(jù)的演進趨勢更貼近。利用這些經(jīng)CEEDMAN分解得到的低頻IMFs獲取它們的周期特征,根據(jù)極值點信息,得到時間序列鏈的子序列搜索長度集合,用于后續(xù)的股票市場預測,并在后續(xù)的實驗中驗證了此方法的可行性。

圖2 CEEMDAN算法得到的IMFsFig.2 The image of IMFs from CEEMDAN algorithm

2 時間序列鏈

時間序列鏈是一種旨在捕獲系統(tǒng)演變并助于預測未來的時間序列數(shù)據(jù)挖掘的新原語[27]。時間序列鏈可以被近似地認為是隨時間在某個方向上演化或漂移的主題。先暫且描述時間序列鏈是子序列模式的時間排序集合,因此每個模式都類似于其之前的模式,第一個和最后一個模式可以任意不同,如圖3中虛線表示的子序列所示。在離散空間中,這類似于從文本流中提取文本鏈“data, date, cate, cade, code”,第一個和最后一個字母沒有任何共同點,它們是由互不相同的一連串詞連接在一起的。時間序列鏈的提出將作用于各種領(lǐng)域來挖掘系統(tǒng)內(nèi)在的演進過程。

圖3 時間序列鏈示意圖Fig.3 Schematic diagram of time series chain

時間序列鏈中的一些相關(guān)定義為

定義1時間序列T是實數(shù)值ti的序列:T=t1,t2,…,tn,其中n是T的長度。

定義2時間序列T的子序列Ti,m是從位置i開始的長度為m的T的連續(xù)子集。形式上Ti,m=ti,ti+1,…,ti+m-1,其中1≤i≤n-m+1。

3 基于時間序列鏈的預測算法

采用Zhu等[27]提出的ATSC算法獲得時間序列T中的時間序列鏈,該算法中涉及兩個子序列Ti,m和Tj,m之間的相似度采用標準化的歐氏距離來表示。在股票預測中,需要更關(guān)注子序列初始位置和結(jié)束位置的數(shù)據(jù)差異,即子序列的走勢,而子序列中間部分的漲或跌,走勢的先快后慢,先慢后快,并不是預測的側(cè)重點。

如圖4所示,時間序列A和時間序列B的形狀差異明顯,其中時間序列A基本都在上漲,而時間序列B中2,3,4雖然處于下跌中,但是它們的線性趨勢線(趨勢A和趨勢B)是平行的,即總體走勢相同。為了將走勢的影響加入到子序列相似程度中,筆者借用夾角余弦的概念,在計算時間序列子序列相似程度中加入子序列的漲跌幅權(quán)重,提出了余弦ATSC算法,即ATSC-COS算法。其算法基本思想是:在搜索與給定子序列相似的時間序列子序列并計算它們之間的相似度時,增加余弦距離權(quán)重,得到一系列和給定子序列整體趨勢相似并正在演化的子序列鏈。

圖4 兩條形狀差異的時間序列及其趨勢線圖Fig.4 Time series of two shape differences and their trend charts

3.1 子序列之間的相似度距離定義

基于上述分析,為了把子序列的走勢影響加入到子序列相似程度中,筆者借鑒夾角余弦的概念衡量子序列之間的走勢差異,因為在幾何中夾角余弦可用來衡量兩個向量方向的差異。夾角余弦的大小可以反映出兩個向量之間的方向差異,二維空間向量a(x1,y1)和向量b(x2,y2)的夾角余弦為

(1)

對于兩個長度為n的子序列T1,n(x11,x12,…,x1n)和T2,n(x21,x22,…,x2n),它們的余弦相似度公式為

(2)

夾角余弦取值范圍為[-1,1]。夾角余弦越大表示兩個向量的夾角越小,夾角余弦越小表示兩個向量之間的夾角越大。當兩個向量的方向重合時夾角余弦取最大值1,當兩個向量的方向全然相反,則夾角余弦取最小值-1。

因此在歐式距離的基礎上增加余弦距離權(quán)重,具體為

(3)

(4)

式中:m為子序列長度;QTi,j為Ti,m和Tj,m的點積;μi為Ti,m的平均數(shù);μj為Tj,m的平均數(shù);σi為Ti,m的標準差;σj為Tj,m的標準差;τi為Ti,m的平方和,τj為Tj,m的平方和。

3.2 基于EEMDAN的自適應子序列長度搜索算法

股票預測的準備工作需要獲取準確且盡可能多的時間序列鏈,時間序列鏈的查找過程中,需要確定子序列的長度作為輸入。因此,筆者提出了基于CEEMDAN分解得到的低頻IMFs以及根據(jù)IMF序列中的極值點分布來確定需要用來搜索時間序列鏈的子序列長度。

在由CEEMDAN分解股票歷史數(shù)據(jù)得到的IMFs中,每個IMF都有自己獨特的振蕩頻率,可視為原始數(shù)據(jù)隱藏的特征,觀察得到低頻IMFs與原始數(shù)據(jù)的趨勢貼合度較大,而高頻IMFs展現(xiàn)出股票市場的日常波動性,預測利用價值不高。分析低頻IMFs的周期性可知,當一段時間序列有5 個極值點就能體現(xiàn)足夠的周期特征。同時,因為股票市場無常波動的特征可能會出現(xiàn)IMF連續(xù)5 個點都為極值點的特殊情況,因此還要保證子序列長度不小于10。從定位點anchor開始在IMF上向歷史數(shù)據(jù)方向查找極值點,找到滿足如下公式的第一個子序列長度m1,即

(5)

(6)

根據(jù)實驗發(fā)現(xiàn):即使在一段擁有6 000 個數(shù)據(jù)的時間序列中去查找指定一個子序列長度對應的一條時間序列鏈,也只可得到個位數(shù)的相似子序列。因此,為了獲得更多的相似子序列,筆者采取延長初始找到的子序列長度m1,以增加查找時間序列鏈的次數(shù)。為了同時保證預測的精準度和算法的低復雜度,延長后的子序列長度控制在m1和2m1之間,延長的節(jié)點為下一個極值點,所有獲得的子序列長度存入集合M中,即

M={i|extremun(i)=1∩m1≤i≤2m1}

(7)

根據(jù)IMFs的周期性,在查找極值點的同時設置搜索子序列長度。其算法的基本思想是先利用CEEMDAN算法分解時間序列得到低頻IMFs,在每個IMF上重復以下步驟:首先,獲取第5個極值點所在的位置,并判斷它與初始定位點的距離是否大于10,若大于10,就取這個距離值為初始子序列長度,否則,初始子序列長度設為10;其次,繼續(xù)查找初始子序列長度之后的極值點,把它們與初始定位點的距離記錄在子序列長度集合M中,直到查找到極值點與初始定位點的距離大于初始子序列長度的2倍為止;最后,返回所有待查找時間序列鏈的子序列長度集合M。

子序列長度搜索整個過程是隨著IMF走勢動態(tài)改變的,能適應各種形狀的子序列,為后續(xù)的時間序列鏈查找提供更多有效的子序列長度值,對于不同的IMF有很強的適應性。如圖5所示,從定位點1開始向后搜索,遇到第5個極值點時,子序列長度已經(jīng)超過10,因此往后查找分別遇到極值點6~12,記錄的子序列長度即為11,12,13,14,15,16,18,21。雖然子序列長度11,12,13,14,15,16之間差距只有1,但因為這幾個長度臨界點對應的都是極值點,所以形狀上是有明顯改變的。如圖6所示,上下兩段子序列的長度雖然只相差1,但是形狀已經(jīng)有了很大的改變,因此根據(jù)極值點來搜索子序列長度是合理并且有效的。

圖5 子序列長度搜索示意圖Fig.5 Schematic diagram of subsequence length search

圖6 不同長度的子序列差異示意圖Fig.6 Schematic diagram of subsequence differences of different lengths

3.3 預測算法

對根據(jù)子序列長度的搜索算法得到的子序列長度集合M執(zhí)行ATSC-COS算法,進行時間序列鏈搜索,并把每個子序列的初始位置記錄到集合Count中,再將插值后的子序列用于匹配對應的時間序列鏈,此時的子序列長度為2m1,最終得到的集合Count用于后續(xù)預測。對所有查找獲得的時間序列鏈子序列進行遍歷,獲取它們后續(xù)數(shù)據(jù)和當前數(shù)據(jù)的差并記錄于集合中,若這個差大于0,則呈現(xiàn)上漲趨勢。若90%的子序列都呈現(xiàn)上漲趨勢,在預測定位點之后,時間序列將上漲;否則,預測不上漲。

4 實驗結(jié)果

為了驗證預測算法和改進的距離公式對預測的有效性,實驗數(shù)據(jù)選擇平安銀行(股票代碼000001.SZ)的歷史收盤價數(shù)據(jù),將定位點從10開始往右(即歷史方向)開始遍歷至整條時間序列的1/3處,利用已知的定位點后續(xù)漲跌趨勢來檢驗筆者所提預測算法的正確率。

實驗分別采取了以下4 種組合方式:1) ATSC-COS/簡單子序列搜索,這里子序列長度按照從10到200逐步加1的方式來遍歷搜索時間序列鏈;2) ATSC-COS/極值點,極值點即直接在原始數(shù)據(jù)上按照極值點分布來搜索時間序列鏈子序列的長度,而不是通過CEEMDAN的低頻IMFs搜索;3) ATSC-COS/CEEMDAN/極值點,即結(jié)合改進距離公式并且利用CEEMDAN分解得到的低頻IMFs搜索子序列長度;4) ATSC/CEEMDAN/極值點,不改變距離公式,利用原ATSC算法計算得出相應的時間序列鏈。實驗結(jié)果如表1所示。

表1 ATSC,ATSC-COS和ATSC-COS/CEEDAN算法對比實驗結(jié)果

分析實驗結(jié)果可知:簡單子序列長度搜索雖然迭代次數(shù)多,但是獲得的相似時間序列鏈子序列并不能很有效地判斷定位點之后是否上漲,正確率僅達到54.10%。直接在原始數(shù)據(jù)上根據(jù)極值點進行自適應子序列長度搜索,即第2個實驗,不僅減少了搜索時間序列鏈的次數(shù),而且正確率也遠高于簡單子序列長度搜索。利用低頻的CEEMDAN分解得到的IMFs來搜索子序列長度,判斷上漲次數(shù)增加的同時,正確率也有了很大的提升,并且計算量也大幅減少,說明基于CEEMDAN的自適應子序列長度搜索算法是有效的。最后,利用該搜索算法及原始ATSC算法來搜索時間序列鏈,得到的正確率低于ATSC-COS算法,也驗證了筆者改進的距離公式更適合股票市場的上漲預測。

為了驗證CEEMDAN的低頻IMFs相對高頻IMFs更適用于子序列長度搜索,進行了補充對比實驗,采用ATSC-COS/CEEMDAN/極值點的算法,改變子序列長度搜索時采用的IMFs,結(jié)果如表2所示。

表2 采用不同IMFs的實驗結(jié)果對比

實驗結(jié)果顯示:使用高頻IMF1~IMF5的實驗不僅計算耗時,且正確率較低;而采用低頻IMF6~IMF10的實驗效果更好,且預測到會上漲的次數(shù)更多,說明結(jié)合低頻IMFs搜索得到的子序列長度能更準確地搜索到時間序列鏈的相似子序列。

5 結(jié) 論

筆者提出了一種將時間序列鏈應用于股票市場預測的算法,結(jié)合了股票市場的特點,利用CEEMDAN分解得到的低頻IMFs和極值點獲得子序列的長度集合,達到更加有效的時間序列鏈查找。同時引入類似二維向量的cos夾角余弦距離來改進時間序列鏈查找時計算子序列之間相似程度(即子序列之間的距離)的公式,符合股票市場走勢的特征。目前筆者還停留在通過研究單支股票的歷史數(shù)據(jù)來預測其走勢的階段,未來將研究通過多條股票歷史數(shù)據(jù)搜索時間序列鏈,用于預測某支指定的股票走勢,在不同的時間序列中找到它們之間的關(guān)聯(lián),并且提出復雜度更低的預測算法。

猜你喜歡
余弦夾角極值
極值點帶你去“漂移”
探究鐘表上的夾角
極值點偏移攔路,三法可取
求解異面直線夾角問題的兩個路徑
一類“極值點偏移”問題的解法與反思
任意夾角交叉封閉邊界內(nèi)平面流線計算及應用
兩個含余弦函數(shù)的三角母不等式及其推論
直線轉(zhuǎn)角塔L形絕緣子串夾角取值分析
廣西電力(2016年5期)2016-07-10 09:16:44
分數(shù)階余弦變換的卷積定理
圖像壓縮感知在分數(shù)階Fourier域、分數(shù)階余弦域的性能比較
浦县| 毕节市| 浮山县| 大新县| 循化| 灵宝市| 洱源县| 建平县| 巴塘县| 汾阳市| 玛曲县| 东乌珠穆沁旗| 健康| 襄垣县| 公主岭市| 富宁县| 轮台县| 宣武区| 吉隆县| 福泉市| 武陟县| 桐庐县| 元江| 临湘市| 阜宁县| 乐东| 广德县| 锦屏县| 浦城县| 朝阳区| 新余市| 老河口市| 得荣县| 南宫市| 溧水县| 宁明县| 庆城县| 宁陕县| 玉树县| 望谟县| 确山县|