• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于時序集成森林的股票多類別預(yù)測研究

      2021-08-06 08:28:48王平飛
      現(xiàn)代計算機(jī) 2021年18期
      關(guān)鍵詞:收盤價時序類別

      王平飛

      (四川大學(xué)計算機(jī)學(xué)院,成都610065)

      0 引言

      股票市場可以帶來高收益率,如何合理預(yù)測股票的走勢,獲得最大的收益一直是業(yè)界學(xué)者探索的方向。但由于股票數(shù)據(jù)存在噪聲,影響因素頗多,預(yù)測過程較為復(fù)雜。人工智能技術(shù)的發(fā)展為股票預(yù)測研究提供了新的思路,各種機(jī)器學(xué)習(xí)算法如SVM、BP、隨機(jī)森林[1-3]以及深度學(xué)習(xí)算法LSTM、LSTM-CNN-CBAM、LSTM-AdaBoost[4-6]等算法相繼在股票收盤價預(yù)測中得到了應(yīng)用,但是以上模型均是針對股票的收盤價進(jìn)行預(yù)測,雖然取得了較好的結(jié)果,但是仍然存在誤差,并且預(yù)測的結(jié)果也存在滯后性,加上投資人普遍更關(guān)心漲跌的趨勢。針對這一情況,夏陽雨新提出了基于LSTM的股票多類別預(yù)測模型[7],包振山在LSTM收盤價預(yù)測模型的基礎(chǔ)上使用GA算法對股票的漲跌信號進(jìn)行判定,提出了基于LSTM-GA的股票漲跌預(yù)測模型[8]。

      本文對長短記憶網(wǎng)絡(luò)(LSTM)、隨機(jī)森林(RF)和集成森林進(jìn)行了深入研究,提出了一種基于時序集成森林的混合股票多類別預(yù)測模型,該模型首先使用LSTM和隨機(jī)森林進(jìn)行收盤價的預(yù)測,再將預(yù)測的收盤價與前一天預(yù)測的收盤價進(jìn)行對比得到漲跌信號,再使用集成森林對LSTM輸出的時序特征和漲跌信號進(jìn)行分類,得到最終的股票漲跌趨勢。結(jié)合了LSTM提取時序特征的能力和隨機(jī)森林的回歸能力以及集成森林強(qiáng)大的分類能力,最后使用平安銀行股票數(shù)據(jù)進(jìn)行了驗證,實驗結(jié)果表明本文提出的股票預(yù)測模型精度更高。

      1 股票預(yù)測模型框架

      1.1 方法總體架構(gòu)

      本文中提出的股票預(yù)測模型總共有3個步驟。

      (1)數(shù)據(jù)獲取及處理。利用Tushare財經(jīng)接口包下載平安銀行股票數(shù)據(jù)000001.sz,并將其歸一化到(0,1)之間。

      (2)LSTM-RF股票收盤價預(yù)測,并將預(yù)測的結(jié)果與前一天的預(yù)測結(jié)果對比得到漲跌信號。

      (3)集成森林股票漲跌判定。將LSTM訓(xùn)練完成后輸出的時序特征數(shù)據(jù)輸入隨機(jī)森林訓(xùn)練。訓(xùn)練完成后對測試數(shù)據(jù)進(jìn)行預(yù)測。如圖1所示。

      圖1 股票預(yù)測模型

      1.2 LSTM時序特征提取

      其中C t是當(dāng)前時刻LSTM的控制單元狀態(tài)矩陣,W c是更新權(quán)重矩陣,b c是更新的偏執(zhí)矩陣,Ht是當(dāng)前LSTM在t時刻的輸出。

      1.3 隨機(jī)森林預(yù)測算法

      隨機(jī)森林可用于解決分類和回歸問題,當(dāng)用于回歸時,每一棵決策樹就是一棵回歸樹(CART),通過最小均方差來進(jìn)行劃分,對于需要劃分的特征A,可以取到一個任意的劃分點s將數(shù)據(jù)集劃分為兩個部分,這里記為D1和D2,通過迭代使得劃分后得到的數(shù)據(jù)集的各自的均方差最小,也就是滿足式(6)。

      圖2 LSTM模型

      式中的c1和c2分別是劃分的兩個數(shù)據(jù)集D1和D2的輸出均值,通過這個原則進(jìn)行反復(fù)迭代,直到誤差到達(dá)設(shè)定范圍內(nèi)或者是達(dá)到迭代次數(shù),算法結(jié)束,最后的輸出值就是所有決策樹的均值[10-11],具體的算法1所示。

      算法1隨機(jī)森林回歸算法

      輸入:LSTM提取的時序特征數(shù)據(jù)

      輸出:股票預(yù)測的最高價

      步驟一:利用Bootstrap算法對LSTM提取時序特征后的樣本進(jìn)行重抽樣,得到k組新的樣本集{θ1,θ2…θk}。

      步驟二:利用上一步劃分得到的k組樣本分別構(gòu)建決策樹{{T(x,θ1)},{T(x,θ2)}…{T(x,θk)}}。

      步驟三:從樣本的M維特征中抽取m個作為節(jié)點的分裂特征集,并保持m在隨機(jī)森林形成中不變。

      步驟四:對于給定的數(shù)據(jù)樣本X=x下,根據(jù)每棵決策樹的觀測值{Y1…Y k}得到單棵決策樹的預(yù)測值

      步驟五:對每個決策樹的權(quán)重取平均值,其中X=X i(i∈{1,2,…n}),t=(1,2,…k),進(jìn)一步得到每個觀測值

      1.4 集成森林分類算法

      集成森林是由多個RF層間級聯(lián)構(gòu)成的一個森林層,每一層的輸出就是一組預(yù)測值,在訓(xùn)練的過程中會使用測試集判定該層的輸入是否滿足收斂條件,如果不滿足就會將輸出向量與初始輸入數(shù)據(jù)相連接作為下一層的輸入[12],具體的模型如圖3所示,samples為預(yù)處理后的數(shù)據(jù)向量,輸入第1個森林層后,4個森林分別估計所有樣本的類別概率,然后將其作為輸出向量與原始樣本數(shù)據(jù)進(jìn)行拼接,并作為下一層的輸入向量,直至達(dá)到預(yù)設(shè)的循環(huán)次數(shù)或收斂條件為止。最后,對輸出層的向量求均值,將輸出概率最大的類別作為預(yù)測的樣本類別。

      圖3 集成森林原理圖

      在本文的股票多類別預(yù)測中,集成森林用來進(jìn)行最終的漲跌分類,輸入為LSTM輸出的時序特征和漲跌信號模塊輸出的初步漲跌類別,輸出為股票最終的漲跌類別。

      2 實驗結(jié)果及分析

      2.1 數(shù)據(jù)預(yù)處理

      本文實驗使用的數(shù)據(jù)為平安銀行股票數(shù)據(jù),包含了2001年至2020年共4675條股票數(shù)據(jù),每條數(shù)據(jù)包含了ts_code(股票代碼)、trade_date(交易日期)、open(開盤價)、high(最高價)、low(最低價)、close(收盤價)、pre_close(前一天收盤價)、change(價格變動)、pct_chog(價格波動百分比)、vol(成交量)、amount(成交金額)共11個指標(biāo),部分?jǐn)?shù)據(jù)如圖4所示。

      由于每個指標(biāo)的量綱的影響,比如收盤價,最高價和交易數(shù)量之間的統(tǒng)計量級之間存在較大差異,為了消除不同指標(biāo)的量綱的影響,在訓(xùn)練之前進(jìn)行了預(yù)處理,將數(shù)據(jù)歸一化到(0,1)之間,歸一化的公式如式(7)所示[5]。

      根據(jù)當(dāng)日股票收盤價與前一天的收盤價格波動的百分比,將股票的漲跌情況分成了2個類別,其中漲幅大于等于0為漲,小于等于0為跌,用2位的二進(jìn)制數(shù)據(jù)對4中漲跌情況類別進(jìn)行表示,具體的如表1所示。

      表1 漲跌情況二進(jìn)制表示

      2.2 實驗參數(shù)設(shè)置

      LSTM模型中承擔(dān)提取時序特征的角色,實驗中設(shè)定了三層的LSTM來提取時序特征,每一層LSTM的節(jié)點數(shù)均設(shè)定為128,每一層LSTM之間設(shè)定一個參數(shù)位0.1的dropout層,激活函數(shù)選用ReLU,時間窗口的大小設(shè)定為10。

      隨機(jī)森林在模塊中承擔(dān)著對LSTM提取時序進(jìn)行收盤價擬合的角色,實驗中將決策樹的棵樹nTree取值為30,損失函數(shù)選用Gini,其余參數(shù)采用默認(rèn)參數(shù)。

      集成森林在模型中負(fù)責(zé)最終的漲跌類別判定,實驗中將每次輸入的特征數(shù)量設(shè)定為80,決策樹數(shù)量設(shè)定為20,具體的參數(shù)如表2所示。

      表2 集成森林參數(shù)設(shè)定

      2.3 實驗評價標(biāo)準(zhǔn)

      本文采用分類準(zhǔn)確率、精確率和各漲跌類別的F分?jǐn)?shù)作為評價指標(biāo)[14],具體如式(8)-式(10)所示:

      2.4 實驗結(jié)果分析

      實驗中使用的數(shù)據(jù)集為平安銀行股票數(shù)據(jù),按照8:2的比例分成訓(xùn)練集和測試集,首先使用訓(xùn)練集進(jìn)行LSTM-RF模塊訓(xùn)練,訓(xùn)練完成后對股票的收盤價進(jìn)行預(yù)測,在測試集上的驗證結(jié)果如圖5所示。

      從圖5中不難看出本文的LSTM-RF收盤價預(yù)測模塊在測試集上表現(xiàn)出了很大的優(yōu)勢,預(yù)測值與實際值幾乎完全重合。

      LSTM-RF模塊訓(xùn)練完成后通過漲跌信號判別模塊,將當(dāng)前數(shù)據(jù)樣本的預(yù)測值與其一天樣本的預(yù)測值對比,得到漲跌信號,漲跌信號的劃分如表2所示。然后將訓(xùn)練集的漲跌信號與LSTM輸出的訓(xùn)練集樣本的時序特征輸入集成森林進(jìn)行訓(xùn)練,訓(xùn)練完成后對測試集進(jìn)行漲跌情況預(yù)測,實驗結(jié)果如表4所示。

      圖4 股票數(shù)據(jù)

      圖5 LSTM-RF測試集真實值和預(yù)測值對比

      從表4中可以看出本文算法LSTM-RF-DF在對各類別樣本的檢測率(Recall)、精確度(Precision)、和f1分?jǐn)?shù)三個指標(biāo)上均優(yōu)于傳統(tǒng)的LSTM算法和改進(jìn)后的LSTM-RF算法,對漲跌兩類樣本的檢測率均達(dá)到了70%以上。傳統(tǒng)的LSTM和LSTM-RF兩種算法對樣本的識別很不平衡,LSTM對漲類別預(yù)測準(zhǔn)確率為63%,但對跌樣本的預(yù)測準(zhǔn)確率進(jìn)36%,二者相差27%,LSTM-RF雖然準(zhǔn)確率有了一定的提高,但是仍然表現(xiàn)出這種不平衡性。本文算法在LSTM-RF算法基礎(chǔ)上使用的集成森林對LSTM-RF的預(yù)測結(jié)果進(jìn)行了二次判定,不僅在三個指標(biāo)上均優(yōu)于另外兩種算法,而且對兩類樣本的檢測準(zhǔn)確率僅相差5%,對樣本識別的平衡度遠(yuǎn)遠(yuǎn)高于另外兩種算法。

      表4 三種算法二分類預(yù)測結(jié)果/%

      圖6和圖7給出了三種算法在整體的檢測準(zhǔn)確率和平均精確度,平均f1分?jǐn)?shù)三個指標(biāo)上的對比,結(jié)果表明,本文算法在整體的預(yù)測準(zhǔn)確率和精確度乃至發(fā)分?jǐn)?shù)三個指標(biāo)上仍然表現(xiàn)出了優(yōu)勢,在整體的預(yù)測準(zhǔn)確率這一指標(biāo)上高出另外兩種算法20%,進(jìn)一步體現(xiàn)了本文算法的優(yōu)勢。

      圖6 三種算法的2類別預(yù)測準(zhǔn)確率對比

      圖7 三種算法的2類別預(yù)測平均精確度和f分?jǐn)?shù)對比

      為了進(jìn)一步驗證本文提出算法的優(yōu)勢,將股票的收盤價漲幅分成了4個類別進(jìn)行實驗驗證(其中大于3%為大漲,0到3%之間為小漲,-3%到0之間為小跌,小于-3%為大跌),得到的結(jié)果如表7-表7所示。

      表5 LSTM-RF-DF算法預(yù)測/%

      表6 LSTM-RF算法預(yù)測/%

      表7 LSTM算法預(yù)測/%

      實驗結(jié)果表明,4類別預(yù)測的精度明顯低于2類別預(yù)測,由此也可以看出股票的價格波動并非僅僅收到某些指標(biāo)的影響,但是在4類別預(yù)測上原始的LSTM算法表現(xiàn)出了很大的劣勢,大漲和大跌兩個類別完全無法識別。而LSTM-RF算法在一定程度上對大跌和大漲由識別能力,但準(zhǔn)確率均沒超過5%。本文算法在LSTM-RF的基礎(chǔ)上使用集成森林對預(yù)測結(jié)果進(jìn)行了二次判定,在對大跌的檢測率上比LSTM-RF增加了7%,大漲的檢測率上增加了6%。此外,在精確度和f分?jǐn)?shù)兩個指標(biāo)結(jié)果也表明本文算法優(yōu)于LSTM-RF和原始的LSTM算法。

      圖8 三種算法的4類別預(yù)測準(zhǔn)確率對比

      3 結(jié)語

      本文結(jié)合了LSTM提取時序特征的能力、隨機(jī)森林算法強(qiáng)大的擬合能力以及集成森林的多類別預(yù)測優(yōu)勢,提出了基于時序集成森林的股票多類別預(yù)測模型,該算法首相將原始股票數(shù)據(jù)輸入LSTM模塊,得到股票數(shù)據(jù)的時序特征,然后利用RF預(yù)測收盤價,并根據(jù)收盤價預(yù)測出股票的漲幅,與LSTM輸出的時序特征一起作為集成森林的輸入,最終得到股票下一天的漲跌情況。最后在平安銀行股票數(shù)據(jù)上進(jìn)行了二分類預(yù)測和4分類預(yù)測,得到的結(jié)果均表明本文算法優(yōu)于原始的LSTM算法和LSTM-RF算法。下一步將考慮情感因素對股價的印象,搭建出更加完善的股票預(yù)測模型。

      猜你喜歡
      收盤價時序類別
      時序坐標(biāo)
      基于Sentinel-2時序NDVI的麥冬識別研究
      股神榜
      股神榜
      股神榜
      一種毫米波放大器時序直流電源的設(shè)計
      電子制作(2016年15期)2017-01-15 13:39:08
      股神榜
      服務(wù)類別
      新校長(2016年8期)2016-01-10 06:43:59
      論類別股東會
      商事法論集(2014年1期)2014-06-27 01:20:42
      中醫(yī)類別全科醫(yī)師培養(yǎng)模式的探討
      宁强县| 盐山县| 玉溪市| 开远市| 桓台县| 内丘县| 仲巴县| 大方县| 义马市| 齐齐哈尔市| 泗水县| 鹿邑县| 吉隆县| 定日县| 黔南| 白玉县| 察雅县| 剑阁县| 武功县| 宝清县| 朝阳市| 连云港市| 德州市| 涟源市| 东源县| 萍乡市| 五大连池市| 扎鲁特旗| 思茅市| 原阳县| 抚州市| 赞皇县| 佛山市| 镇平县| 余姚市| 江油市| 五河县| 阿克陶县| 礼泉县| 高平市| 开远市|