999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

機器學(xué)習(xí)模型在股票價格時間序列分析中的應(yīng)用與比較

2021-06-03 06:11:34美國華盛頓大學(xué)西雅圖校區(qū)
電子世界 2021年9期
關(guān)鍵詞:深度模型

美國華盛頓大學(xué)西雅圖校區(qū) 李 超

股票市場是國度經(jīng)濟的主要表現(xiàn),股價的走勢是股票投資者存眷的核心問題。由于股票價格固有的噪聲環(huán)境和相對市場趨勢的較大波動性,股價的擬合和預(yù)測是一個具有挑戰(zhàn)性的問題。本文使用了隨機森林、GBDT算法、神經(jīng)網(wǎng)絡(luò)、SVM等模型對股票價格時間序列進行了擬合。通過對上證A股貴州茅臺(600519)數(shù)據(jù)的預(yù)處理、擬合、驗證、調(diào)參全流程的分析,獲得并展示了最終模型的效果。實驗結(jié)果表明,使用梯度提升隨機樹(GBDT),股價擬合結(jié)果的預(yù)測誤差最小。相對于隨機森林和神經(jīng)網(wǎng)絡(luò)模型,GBDT算法在本文的股價預(yù)測任務(wù)中表現(xiàn)得更加穩(wěn)定可靠。

1 介紹

近幾年經(jīng)濟的飛速發(fā)展,追求上市的公司愈發(fā)增多,股票逐漸走進越來越多人的視線。股票這個紐帶在股民、股東和交易所之間也愈發(fā)緊密。因為股票市場的波動十分巨大,隨時可能因為一些新的政策或者其他原因,進行大幅度的波動,導(dǎo)致自然人股民很難對股票進行投資盈利;并且,股票價格具有高噪聲、非線性,易受政策影響等特點,因此投資者很難就近規(guī)避風(fēng)險。通過眾多的網(wǎng)絡(luò)數(shù)據(jù)接口,研究者可以進行數(shù)據(jù)分析,再利用機器的深度學(xué)習(xí)來對股票價格進行預(yù)測。

1.1 背景與意義

在目前市場環(huán)境下,散戶投資過程中最大的問題是信息不對稱,要獲取真實信息則需要付出成本,使得散戶往往依賴于無成本的“小道消息”而非科學(xué)的技術(shù)分析。形態(tài)分析認(rèn)為一切能夠影響股價的因素——經(jīng)濟的、政策的、心理的等最終都反映到K線圖上。股票價格預(yù)測正是基于K線圖幫助散戶在缺乏透明度的市場中低成本地、科學(xué)地獲取有效信息。股票價格預(yù)測每天對每只股票的未來趨勢(超短線、中短期)做出預(yù)測,預(yù)測的內(nèi)容包括股票未來的上漲概率、上漲幅度、下跌概率、下跌幅度、中短期走勢,行業(yè)的上漲和下跌趨勢,用戶可以通過每日提供的大量預(yù)測數(shù)據(jù)發(fā)現(xiàn)存在上漲可能的股票和行業(yè)。當(dāng)然,股票預(yù)測的結(jié)果的準(zhǔn)確性取決于對模型的選擇,本文便是對幾種常見的方法進行一個對比,來供讀者參考。

1.2 傳統(tǒng)的機器學(xué)習(xí)方法

傳統(tǒng)機器學(xué)習(xí)是基于樣本出發(fā),嘗試發(fā)掘那些不能利用原理解釋分析的規(guī)律,以此實現(xiàn)對未來數(shù)據(jù)趨勢的準(zhǔn)確預(yù)測。相關(guān)的算法有:邏輯回歸、支持向量機方法、決策樹方法等。傳統(tǒng)的機器學(xué)習(xí)方法為機器學(xué)習(xí)結(jié)果的有效性與學(xué)習(xí)模型的可解釋性找到了一個平衡點,為解決有限樣本的學(xué)習(xí)問題提供了一種框架,主要用于有限樣本情況下的模式分類、回歸分析、概率密度估計等。傳統(tǒng)機器學(xué)習(xí)方法共同的重要理論基礎(chǔ)之一是統(tǒng)計學(xué),在自然語言處理、語音識別、圖像識別、信息檢索和生物信息等許多計算機領(lǐng)域獲得了廣泛應(yīng)用。

1.3 深度學(xué)習(xí)方法

深度學(xué)習(xí)又稱為深度神經(jīng)網(wǎng)絡(luò)。深度學(xué)習(xí)源于多層神經(jīng)網(wǎng)絡(luò),其實質(zhì)是給出了一種將特征表示和學(xué)習(xí)合二為一的方式。深度學(xué)習(xí)的特點是放棄了可解釋性,單純追求學(xué)習(xí)的有效性。經(jīng)過多年的摸索嘗試和研究,已經(jīng)產(chǎn)生了諸多深度神經(jīng)網(wǎng)絡(luò)的模型,其中卷積神經(jīng)網(wǎng)絡(luò)、循環(huán)神經(jīng)網(wǎng)絡(luò)是兩類典型的模型。深度學(xué)習(xí)框架是進行深度學(xué)習(xí)的基礎(chǔ)底層框架,一般包含主流的神經(jīng)網(wǎng)絡(luò)算法模型,提供穩(wěn)定的深度學(xué)習(xí)API,支持訓(xùn)練模型在服務(wù)器和GPU、TPU 間的分布式學(xué)習(xí),部分框架還具備在包括移動設(shè)備、云平臺在內(nèi)的多種平臺上運行的移植能力,從而為深度學(xué)習(xí)算法帶來前所未有的運行速度和實用性。

2 幾種機器學(xué)習(xí)模型的應(yīng)用

目前,針對股票價格預(yù)測常用的機器學(xué)習(xí)方法有以下幾種:隨機森林模型(Random Forest)、長短期記憶模型(Long-short term memory)、RNN模型、GBDT模型等。雖然有諸多的模型算法,但是實際上一只股票不僅僅是呈現(xiàn)在價格方面,還有很多的外圍信息,例如:換手率、收益率、市盈率、市凈率等。這些信息會在選股策略中經(jīng)常使用到,因為它們本身就會對股價的走勢產(chǎn)生一定的影響,是不可被忽視的。本文主要是先對數(shù)據(jù)進行簡單分析和預(yù)處理,然后通過機器學(xué)習(xí)模型(尤其是預(yù)測相關(guān)的模型)構(gòu)建和參數(shù)的調(diào)整,最終將數(shù)據(jù)可視化,并且將本文使用到的模型進行比較,最終進行評價。本文從數(shù)據(jù)庫中隨即提取某個品牌的股價走勢數(shù)據(jù)進行分析。在引用到具體算法之前,我們先開始一個簡單的數(shù)據(jù)分析,例如移動平均值。通過不斷引入新的平均價格來降低價格表中的“噪音”,同時表示該平均價格的平均線可能充當(dāng)“阻力”,代表著股市的漲和跌,進而從中預(yù)期未來趨勢。對于單只股票,我們可以先進行一些簡單分析,例如移動平均值滾動平均/移動平均(MA)通過不斷更新平均價格來平滑價格數(shù)據(jù),有助于降低價格表中的“噪音”。此外,該移動平均線可能充當(dāng)“阻力”,代表股票的下跌和上升趨勢,你可以從中預(yù)期它的未來趨勢,不太可能偏離阻力點。首先通過Matplotlib來對茅臺這只股票進行簡單分析。計算收盤價100天以內(nèi)的移動平均值,并取每個滑窗的移動平均值。如圖1所示。

圖1 茅臺股份(600519)在2020年5月20日-2021年2月22日期間的價格走勢圖

圖2 茅臺股份(600519)在2020年5月20日-2021年2月22日期間的收益率走勢圖

圖3(a) 茅臺股份(600519)與五糧液(000858)股價關(guān)系走勢圖

此外,除了參考平均值,收益率也是考慮一只股票的重要影響因素,如圖2所示。

從邏輯上講,我們理想的股票收益應(yīng)該是盡可能的高且穩(wěn)定,但是通過上圖反映的情況來說,如果作為一個風(fēng)險規(guī)避者,那就應(yīng)該避開這類股票。因為在這只股票的收益率在某一時間段下跌了將近10個百分點。同時,我們也可以調(diào)用多只類似股票來研究酒水行業(yè)的股價之間的關(guān)系。如圖3(a)所示。

我們可以看到,五糧液和茅臺的收益之間存在著微弱正相關(guān)關(guān)系。似乎在大多情況下,五糧液的回報率越高,茅臺的回報率也就越高。然后我們可以通過繪制散點矩陣進一步改進我們的分析,以可視化競爭股票之間可能的相關(guān)性。在對角點,我們將運行核密度估計(Kernel Density Estimate,KDE)。KDE是一個基本的數(shù)據(jù)平滑問題,它基于有限的數(shù)據(jù)樣本對總體進行推斷,它有助于生成對總體分布的估計。如圖3(b)所示。

從這里可以看出五糧液和茅臺之間的分布成正相關(guān)。為了更進一步證明正相關(guān)系,我們可以使用熱圖來可視化競爭股票直接的相關(guān)程度。顏色越深代表兩只股票的相關(guān)性越強。如圖4所示。

通過以上簡單的一系列分析,我們對這只股票以及和其行業(yè)內(nèi)的股票有了大致的了解。 接下來開始通過不同的學(xué)習(xí)模型來對這支股票進行預(yù)測。

2.1 神經(jīng)網(wǎng)絡(luò)模型

通過改變各神經(jīng)元間的權(quán)值使得樣本點的實際輸出值和期望輸出值間誤差漸漸減少。神經(jīng)網(wǎng)絡(luò)是一種非線性學(xué)習(xí)算法,它的性能優(yōu)于幾乎其他的機器學(xué)習(xí)算法。但是其本身還是逃不過那個廣為人知的缺點:黑箱性質(zhì),這就意味著實驗者并不知道神經(jīng)網(wǎng)絡(luò)是如何以及為何會得到一定的輸出。具體建模步驟:首先引入激活函數(shù),優(yōu)化函數(shù)。其中,因為神經(jīng)網(wǎng)絡(luò)的線性模型表達能力不夠,所以激活函數(shù)的引用是為了避免神經(jīng)網(wǎng)絡(luò)的權(quán)重、偏置全是線性的仿射變換(affine transformation)。首先我們設(shè)立一個單隱層神經(jīng)網(wǎng)絡(luò),同時通過格子點搜索對隱含層神經(jīng)元的個數(shù)進行選擇。但經(jīng)過訓(xùn)練后得到的MAPE值并不太穩(wěn)定,總體趨勢變化較大,如圖5。所以神經(jīng)網(wǎng)絡(luò)模型并不太適合股價預(yù)測。對于未知數(shù)據(jù),我們得到了較大的誤差,這意味著該模型未能預(yù)測收盤價。值得注意的是,網(wǎng)絡(luò)本身并不能預(yù)測股價。相反,它嘗試使用給定的值猜測一個序列的下一個值是什么,這是因為價格沒有編碼下一次它會如何變化。如果價格上漲一段時間,就不能保證下一分鐘不會下跌。價格受外部事件的影響很大,這是網(wǎng)絡(luò)所不知的?;蛟S,我們將能夠使用神經(jīng)網(wǎng)絡(luò)進行短期預(yù)測,來確定未來幾分鐘內(nèi)的價格變化,這可能是因為我們預(yù)測的時間段越短,外部事件發(fā)生的變化就越小。然而,在這種情況下,最好使用線性回歸模型來預(yù)測價格變化的方向。如果我們仔細(xì)觀察股價曲線,我們會發(fā)現(xiàn)它的變化是隨機的。如果我們只有價格而不知道外部事件,這就是事實。因此,股價看起來就像一個鞅,這是一個我們無法預(yù)測的過程。

圖3(b) 茅臺股份(600519)與五糧液(000858)股價關(guān)系走勢圖

圖4 茅臺股份(600519)與五糧液(000858)股價關(guān)系熱圖走勢圖

2.2 隨機森林模型

首先便是通過隨機森林對股價做一個預(yù)測。隨機森林是一種集成算法(Ensemble Learning),它是屬于Bagging類型。由于采用了集成算法,機器訓(xùn)練后得到的結(jié)果會比那些只通過單個算法得到的結(jié)果更加準(zhǔn)確,它可以用來解決分類和回歸問題。其抗過擬合能力強,因為通過平均決策樹,降低了過擬合的風(fēng)險,但是一旦在回歸問題的訓(xùn)練數(shù)據(jù)中存在噪音,那么隨即森林的數(shù)據(jù)集會出現(xiàn)過擬合的現(xiàn)象;并且,隨機森林的時間成本相較于其他算法所需求的時間成本而言會更高。RF的隨機性的特點對降低模型的方差可以起到很好作用,故隨機森林一般不需要額外做剪枝,即可以取得較好的泛化和抗過擬合能力(Low Variance)。在這一個部分,我們要進行RF調(diào)參,其中包括兩個部分,第一部分是bagging框架的參數(shù)調(diào)整,第二部分則是CART決策樹的參數(shù)調(diào)整。首先還是建模,擬合數(shù)據(jù)和預(yù)測得到mse_test結(jié)果為0.14372028073490678。然后進行針對RF框架參數(shù)調(diào)參:(1)通常建議取一個適中的值以避免欠擬合或過擬合;(2)obb_score:采用袋外樣本來評估模型的好壞。(3)criterion,即CART樹做劃分時對特征的評價標(biāo)準(zhǔn),默認(rèn)是基尼系數(shù)gini。然后CART默認(rèn)回歸樹是均方差mse。然后,決策樹參數(shù)方面我們要考慮:(1)特征選擇criterion,使用默認(rèn)的gini系數(shù)。(2)最大特征max_features。(3)max_depth,如果樣本多,特征也多的情況下,最好限制最大深度。(4)min_samples_split,在樣本量大的情況下,增大這個值;反之,則不需要管這個值。(5)最后還要考慮葉子節(jié)點最小樣本權(quán)重、最大葉子節(jié)點數(shù)、類別權(quán)重和min_impurity_split。

具體實驗步驟:我們首先對n_estimators進行網(wǎng)格搜素(通過sklearn.grid_search),得到最佳的弱學(xué)習(xí)器迭代次數(shù)為10,接著最決策樹最大深度max_depth和內(nèi)部節(jié)點再劃分所需要的最小樣本數(shù)min_sample_split進行網(wǎng)格搜素(max_depth:5;min_sample_split:50)。因為這個決策樹和其他參數(shù)還存在關(guān)聯(lián),所以我們對內(nèi)部節(jié)點再劃分所需的最小樣本數(shù)和葉子節(jié)點最小樣本數(shù)進行調(diào)參(min_sample_leaf:10,min_sample_split:80)。最后,再對max_features進行調(diào)參(max_features:2)。 通過搜索到的最佳參數(shù),我們進行最終的模擬擬合??梢暬瘓D如圖6所示。

圖7是最終結(jié)果圖,可以看出隨機森林得到的結(jié)果:預(yù)測值和測試值相差不大,還算穩(wěn)定,所以通過隨機森林來預(yù)測股價還是可行的。至于隨機森林的缺點,當(dāng)隨機森林中的決策樹個數(shù)很多時,訓(xùn)練時需要的空間和時間會比較大。隨機森林中還有許多不好解釋的地方,有點算是黑盒模型,在某些噪音比較大的樣本集上,RF的模型容易陷入過擬合。當(dāng)進行回歸時,隨機森林不能夠做出超越訓(xùn)練集數(shù)據(jù)范圍的預(yù)測,這可能導(dǎo)致在某些特定噪聲的數(shù)據(jù)進行建模時出現(xiàn)過度擬合。對于小數(shù)據(jù)或者低維數(shù)據(jù)(特征較少的數(shù)據(jù)),可能不能產(chǎn)生很好的分類。處理高維數(shù)據(jù)、處理特征遺失數(shù)據(jù)、處理失衡數(shù)據(jù)是隨機森林的長處。執(zhí)行數(shù)據(jù)雖然比boosting等快(隨機森林屬于bagging),但比單只決策樹慢多了。

圖5 茅臺股份(600519)在2020年5月20日-2021年2月22日間通過神經(jīng)網(wǎng)絡(luò)擬合誤差圖

圖6 茅臺股份(600519)在2020年5月20日-2021年2月22日期間通過RF擬合誤差圖

2.3 GBDT模型

使用的決策樹是CART回歸樹,對于回歸樹來說最重要的點就是尋找最佳的劃分點,判別標(biāo)準(zhǔn)是基尼指數(shù)(0和1,越接近0,越表明接近最佳劃分點)。但在這兒,使用平方誤差(誤差平方和)可以更好地評判擬合程度。其具體過程:通過步長和迭代次數(shù)入手,尋找最好的迭代次數(shù)(重復(fù)計算工作表直到滿足特定數(shù)值條件為止)發(fā)現(xiàn)是5,開始調(diào)參,對max_depth和min_samples_split進行網(wǎng)格搜索,找到最大深度是9,所需最小樣本數(shù)80。但深度5是一個比較合理的值,于是再把min_sample_split和min_sample_leaf進行調(diào)參。然后,最終擬合模型。需要注意的是,其中我們還要考慮損失函數(shù),因為分類函數(shù)和回歸函數(shù)的損失模型是不一樣的。對于分類函數(shù)而言,有對數(shù)似然損失函數(shù)“deviance”和指數(shù)損失函數(shù)“exponential”兩者輸入選擇,默認(rèn)是對數(shù)似然損失函數(shù)“deviance”。一般來說,推薦使用默認(rèn)的“deviance”,它對二元分離和多元分類各自有比較好的優(yōu)化。具體過程:首先引入GradientBoostingRegressor和GridSearchCV,得到mse_test值為0.022381161587606203. 然后通過調(diào)參來提高模型的泛化能力,首先從步長(learning rate)和迭代次數(shù)(n_estimators)入手。我們先將步長初始值設(shè)置為0.1,然后對迭代次數(shù)進行網(wǎng)格搜索。找到一個最優(yōu)的迭代次數(shù)后,對決策樹進行調(diào)參。首先對最大深度max_depth和內(nèi)部節(jié)點再劃分所需最小樣本min_samples_split進行網(wǎng)格搜索得到最好的最大深度和所需最小樣本。由于決策樹深度5是一個比較合理的值,我們先暫定5。下面再對內(nèi)部節(jié)點所需最小樣本和葉子節(jié)點最小樣本一起調(diào)參;并對最大特征數(shù)進行網(wǎng)格搜索。用搜索到的最佳參數(shù)得到以下最終的模型擬合。

圖7 茅臺股份(600519)通過RF擬合最終誤差圖

圖8 茅臺股份(600519)通過GBDT擬合誤差圖

如圖8所示,可以看出GBDT在股價預(yù)測中的應(yīng)用也很穩(wěn)定可靠。與其他基于樹的模型類似,這一算法不需要對數(shù)據(jù)進行縮放就可以表現(xiàn)得很好,而且也適用于二元特征與連續(xù)特征同時存在的數(shù)據(jù)集。梯度提升樹模型的主要參數(shù)包括:樹的數(shù)量n_estimators、學(xué)習(xí)率 learning_rate,用于控制每棵樹對前一棵樹的錯誤的糾正強度。這兩個參數(shù)高度相關(guān),因為 learning_rate越低,就需要更多的樹來構(gòu)建具有相似復(fù)雜度的模型。隨機森林的n_estimators值總是越大越好,但梯度提升不同,增大n_estimators會導(dǎo)致模型更加復(fù)雜,進而可能導(dǎo)致過擬合。通常的做法是根據(jù)時間和內(nèi)存的預(yù)算選擇合適的n_estimators,然后對不同的learning_rate進行遍歷。另一個重要參數(shù)是max_depth(或max_leaf_nodes),用于降低每棵樹的復(fù)雜度。梯度提升模型的max_depth通常都設(shè)置得很小,一般不超過5。當(dāng)然它也有兩個主要缺點:需要仔細(xì)調(diào)參、訓(xùn)練時間可能會比較長。與其他基于樹的模型相同,它也通常不適用于高維稀疏數(shù)據(jù)。

3 分析與總結(jié)

這里要對以上的那幾個模型進行比較,做出數(shù)據(jù)圖形,做到數(shù)據(jù)可視化。

股價預(yù)測問題一直是金融領(lǐng)域的核心問題。隨著機器學(xué)習(xí)的技術(shù)的進一步提升,研究人員開始嘗試將機器學(xué)習(xí)模型運用到現(xiàn)實生活中。借鑒之前的研究,我們將數(shù)據(jù)預(yù)處理、擬合、驗證、調(diào)參運用到上文提到的幾個算法中。通過實驗分析表明,GBDT相較于隨機森林和神經(jīng)網(wǎng)絡(luò)模型,在本文的股價預(yù)測任務(wù)中表現(xiàn)得更加穩(wěn)定可靠。

猜你喜歡
深度模型
一半模型
深度理解一元一次方程
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計的漸近分布
深度觀察
深度觀察
深度觀察
深度觀察
3D打印中的模型分割與打包
FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
主站蜘蛛池模板: 999福利激情视频| 播五月综合| 欧美国产日韩另类| 国产97视频在线观看| 欧美午夜视频| 亚洲美女一级毛片| 亚洲国产精品不卡在线| 国产麻豆精品在线观看| 五月婷婷综合在线视频| 91成人在线免费观看| 97在线观看视频免费| 午夜精品国产自在| 色精品视频| 国内精品自在欧美一区| 欧美精品v欧洲精品| 久久这里只有精品2| 中文字幕乱妇无码AV在线| 亚洲一区黄色| 免费A∨中文乱码专区| 久久国产V一级毛多内射| 国产人妖视频一区在线观看| 婷婷色中文| 91娇喘视频| 国产精品欧美日本韩免费一区二区三区不卡| 国产精品自拍露脸视频| 99激情网| www.亚洲一区| 无码精油按摩潮喷在线播放| 国产成人夜色91| 亚洲丝袜中文字幕| 91欧美在线| 国产精品粉嫩| 国产呦精品一区二区三区下载| 色成人亚洲| 国产成人午夜福利免费无码r| 久久国产香蕉| 99九九成人免费视频精品| …亚洲 欧洲 另类 春色| 成年片色大黄全免费网站久久| 国产 在线视频无码| 日本高清免费不卡视频| 日韩色图区| 亚洲专区一区二区在线观看| 亚洲精品成人片在线播放| 国产视频a| 国产肉感大码AV无码| 亚洲区视频在线观看| 国产小视频免费| 欧美精品高清| 日韩精品中文字幕一区三区| 亚洲欧美日韩中文字幕一区二区三区| 日本不卡视频在线| 午夜日本永久乱码免费播放片| 四虎影视库国产精品一区| 国产网站免费观看| 国产精品福利社| 国内精品免费| 在线中文字幕网| 久久综合一个色综合网| 毛片免费观看视频| 欧美 国产 人人视频| 亚洲成a人在线播放www| 一级爱做片免费观看久久| 性激烈欧美三级在线播放| 欧美成人国产| 蜜桃视频一区| 色噜噜狠狠色综合网图区| 2021精品国产自在现线看| jizz亚洲高清在线观看| 国产a在视频线精品视频下载| 久久久受www免费人成| 97在线观看视频免费| 亚洲码一区二区三区| 欧美.成人.综合在线| 国产精选小视频在线观看| 欧美日韩国产精品va| 青草精品视频| 亚洲大尺度在线| 99视频在线精品免费观看6| 亚洲大尺码专区影院| 国产亚洲男人的天堂在线观看| 欧美三级日韩三级|