亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于改進(jìn)Self-Attention的股價(jià)趨勢預(yù)測

        2021-04-06 10:13:40鄭樹挺徐菲菲
        關(guān)鍵詞:特征模型

        鄭樹挺,徐菲菲

        (上海電力大學(xué) 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,上海 200000)

        0 引 言

        金融市場被認(rèn)為是世界經(jīng)濟(jì)的核心,每天交易額巨大,對市場未來行為的預(yù)測對投資者來說具有重要的價(jià)值,包括股票市場、貨幣匯率[1]、原油價(jià)格[2]、商品價(jià)格和比特幣[3]等加密貨幣。由于市場的動(dòng)態(tài)和嘈雜的行為,市場預(yù)測也是一項(xiàng)非常具有挑戰(zhàn)性的任務(wù),吸引了較多學(xué)者的關(guān)注。

        對股票市場的預(yù)測是一個(gè)非常具有挑戰(zhàn)性的問題,影響股票市場價(jià)格有很多因素,如公司新聞和業(yè)績、行業(yè)表現(xiàn)、投資者情緒、社交媒體情緒和經(jīng)濟(jì)因素,用于預(yù)測的特征更是多種多樣:價(jià)格數(shù)據(jù),歷史數(shù)據(jù)的技術(shù)指標(biāo),與個(gè)股有關(guān)的其他市場價(jià)格波動(dòng),貨幣匯率,油價(jià)等。自動(dòng)提取特征并進(jìn)行準(zhǔn)確的市場預(yù)測受到了較多學(xué)者的關(guān)注。

        現(xiàn)有的金融市場分析方法一般分為兩大類,一是基本面分析,另一個(gè)是技術(shù)分析。

        在技術(shù)分析中,目標(biāo)市場的歷史數(shù)據(jù)和其他一些技術(shù)指標(biāo)均是預(yù)測的重要因素。根據(jù)有效市場假設(shè)[4],股票價(jià)格可以反映出它們的所有信息。技術(shù)分析通過分析以前的價(jià)格數(shù)據(jù)和技術(shù)指標(biāo)預(yù)測市場價(jià)格的未來趨勢。而基本面分析研究證券投資的內(nèi)在價(jià)值,可以通過獲取相關(guān)資產(chǎn)(主要是股票或交易所交易基金)的財(cái)務(wù)報(bào)表的詳細(xì)信息來實(shí)現(xiàn),如現(xiàn)金流量、增長率、貼現(xiàn)因子、每年折扣和資本化率等,以深入了解公司的未來發(fā)展前途?;久娣治鐾ǔS糜跊Q定應(yīng)選擇哪種股票進(jìn)行交易。

        已經(jīng)有多種機(jī)器學(xué)習(xí)技術(shù)廣泛應(yīng)用于金融市場的預(yù)測,并取得了一定的效果,其中神經(jīng)網(wǎng)絡(luò)和支持向量機(jī)(support vector machine,SVM)[5-7]使用的最多,例如,趙澄[8]使用SVM來預(yù)測金融新聞對股票市場的影響。此外,隨機(jī)森林[9]、遺傳算法[10-13]、集成學(xué)習(xí)[14-15]等技術(shù)也已成功應(yīng)用于從原始金融數(shù)據(jù)中提取特征并基于特征進(jìn)行預(yù)測[16-17]。

        深度學(xué)習(xí)(deep learning)[18-19]是一類適合自動(dòng)特征提取和預(yù)測的方法,在許多領(lǐng)域如機(jī)器視覺、自然語言處理以及語音信號處理,深度學(xué)習(xí)方法能夠從原始數(shù)據(jù)或更簡單的特征逐漸構(gòu)建有用的復(fù)雜特征。由于股票市場的行為是復(fù)雜的、非線性的,而且股票數(shù)據(jù)具有噪聲,提取出準(zhǔn)確的特征以進(jìn)行預(yù)測面臨著巨大的挑戰(zhàn)。研究者嘗試了多種深度學(xué)習(xí)算法用于預(yù)測股票市場,如:深層多層感知器(MLP)[20]、Restricted Boltzmann Machine(RBM)[21-22]、Long Short-Term Memory(LSTM)[23-25]、Auto-Encoder(AE)[26]和Convolutional Neural Network(CNN)。

        Periso & Honchar[27]將CNN用于股票分析中,根據(jù)收盤價(jià)的歷史數(shù)據(jù)進(jìn)行預(yù)測,由于忽略了技術(shù)指標(biāo)等其他可能的信息數(shù)據(jù),預(yù)測的準(zhǔn)確率并不高。Gunduz[28]將每個(gè)樣本的相關(guān)技術(shù)指標(biāo)送入CNN中,提高了預(yù)測的準(zhǔn)確率。Ding[29]通過對上市公司發(fā)出的公告進(jìn)行事件提取來進(jìn)行預(yù)測股價(jià)走向;Nguyen[30]、劉斌[31]則是基于社交媒體情緒分析的主題建模,然后用于股票市場預(yù)測?;谖谋拘畔⑻幚淼姆椒m然取得了一定的效果,但因?yàn)槟壳白匀徽Z言處理技術(shù)中語義理解方面仍然是一個(gè)難題,所以有一定的局限。

        總體來說,現(xiàn)有的機(jī)器學(xué)習(xí)應(yīng)用于股票預(yù)測主要分為兩類方法。第一類包括通過增強(qiáng)預(yù)測模型來提高預(yù)測性能的算法,而第二類算法側(cè)重于改進(jìn)基于預(yù)測的輸入特征。雖然現(xiàn)有的研究取得了一些成果,但預(yù)測的準(zhǔn)確率有待進(jìn)一步的提升。該文通過改進(jìn)Self-Attention結(jié)構(gòu),分別對日線數(shù)據(jù)、分時(shí)線數(shù)據(jù)以及籌碼結(jié)構(gòu)進(jìn)行編碼并融合信息。實(shí)驗(yàn)結(jié)果表明,所提方法能夠有效提升股票未來走勢的判斷準(zhǔn)確率并提高投資收益率。

        1 相關(guān)研究

        循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)已經(jīng)被證實(shí)適合處理時(shí)間序列數(shù)據(jù),圖1所示為RNN的結(jié)構(gòu)。

        圖1 RNN結(jié)構(gòu)示意圖

        令s為隱藏層的第t步的狀態(tài),它代表了網(wǎng)絡(luò)的記憶單元。s的計(jì)算公式見式(1):

        s=f(Ux+Wh)

        (1)

        其中,f一般是非線性的激活函數(shù),如sigmoid或tanh。RNN通過Backpropagation Through Time (BPTT)算法更新參數(shù),然而缺陷是無法處理序列長度過大的數(shù)據(jù),因?yàn)闀?huì)帶來梯度消失或梯度爆炸的問題。當(dāng)然,目前已經(jīng)提出多種方法解決這個(gè)問題,如LSTM、GRU。

        LSTM與GRU在結(jié)構(gòu)上很相像,在Transformer出現(xiàn)之前是處理時(shí)間序列問題的主流算法,如圖2所示為一個(gè)LSTM cell的網(wǎng)絡(luò)結(jié)構(gòu)。

        圖2 LSTM結(jié)構(gòu)示意圖

        具體來說,在LSTM循環(huán)單元中包含三個(gè)門(gate),F(xiàn)orget gate決定要扔掉哪些信息,計(jì)算公式見式(2):

        f=σ(Wf·[a,x]+bf)

        (2)

        Updating gate決定要增加哪些新的信息,計(jì)算公式見式(3):

        i=σ(Wi·[a,x]+bi)

        (3)

        Forget gate和Updating gate一起決定了“長記憶”c,計(jì)算公式見式(4)、(5):

        (4)

        (5)

        Output gate決定了“短記憶”a,計(jì)算公式見式(6)、(7):

        o=σ(Wo·[a,x]+bo)

        (6)

        a=o·tanh(c)

        (7)

        可以看出,在實(shí)際使用時(shí),幾個(gè)門值不僅僅取決于a和x,還可能會(huì)取決于上一個(gè)記憶細(xì)胞的值c。雖然在LTSM上引入Attention機(jī)制后在很多任務(wù)上可以達(dá)到更好的效果,不過LSTM本身的序列依賴結(jié)構(gòu)有個(gè)很大的缺陷,就是難以具備高效的并行計(jì)算能力。

        Transformer[32]是谷歌在2017年發(fā)布的一個(gè)全新的網(wǎng)絡(luò)結(jié)構(gòu),Transformer本質(zhì)上就是一個(gè)Attention結(jié)構(gòu),它能夠直接獲取全局的信息,而不像RNN需要逐步遞歸才能獲得全局信息,也不像CNN只能獲取局部信息,并且其能夠進(jìn)行并行運(yùn)算,要比RNN快很多倍。Transformer中一個(gè)重要的結(jié)構(gòu)是Multi-Head Attention,計(jì)算公式見式(8),其中headi的計(jì)算公式見式(9):

        MultiHead(Q,K,V)=Concat(head1,head2,…,

        headh)Wo

        (8)

        (9)

        這里的Multi-Head的含義是,每個(gè)Transformer結(jié)構(gòu)會(huì)由多層結(jié)構(gòu)完全一樣,但權(quán)重矩陣不同的Attention組成,也就是Self-Attention結(jié)構(gòu)。這么做的目的是為了防止模型只關(guān)注到一部分特征,卻忽略了其他特征,所以增加模型的厚度,讓模型擁有多層結(jié)構(gòu)相同但是權(quán)重不同的Attention,每一個(gè)head都關(guān)注到不同的特征,那么模型整體就會(huì)關(guān)注到更多的特征。

        2 基于改進(jìn)Self-Attention的股票預(yù)測

        2.1 數(shù)據(jù)獲取

        實(shí)驗(yàn)采用的數(shù)據(jù)將是從2018年1月1日到2019年10月31號、上證50成份股中的股票數(shù)據(jù)。數(shù)據(jù)獲取途徑均是從網(wǎng)絡(luò)上爬取下載獲得,從滬股通官網(wǎng)獲取到每日上證股票的港資持股量以及所占個(gè)股比例,從上海證券交易所官網(wǎng)獲取到每日個(gè)股的融資余額、融資買入額以及融資償還額,其他的分別是從“同花順”、“東方財(cái)富”等網(wǎng)站獲取。Input0包括K線數(shù)據(jù),例如:開盤價(jià)、收盤價(jià)、最高價(jià)、最低價(jià)、日成交量、日成交額、換手率、MA5、MA10、MA20、MA30、市盈率、市凈率等,以及個(gè)股的滬股通數(shù)據(jù)、融資融券數(shù)據(jù)、資金流向數(shù)據(jù)(小、中、大、特大單的買入賣出量以及買入賣出額,以及凈流入量和凈流入額)等;Inpu1包括分時(shí)線數(shù)據(jù),包含分時(shí)價(jià)格和分時(shí)成交量;Input2包括籌碼結(jié)構(gòu)信息。

        2.2 時(shí)序數(shù)據(jù)處理

        因?yàn)楂@取到的K線數(shù)據(jù)是未復(fù)權(quán)的,所以從2019年10月31號開始向前復(fù)權(quán)。將所有跟成交量有關(guān)的數(shù)據(jù)的單位統(tǒng)一轉(zhuǎn)換成“手”(1手等于100股),將所有跟金額有關(guān)的數(shù)據(jù)的單位統(tǒng)一轉(zhuǎn)換成“萬元”。下載的滬股通數(shù)據(jù)包括總持股數(shù)量和總持股占比,由前后兩日的總持股數(shù)量計(jì)算出單日滬股通成交量,再計(jì)算出滬股通當(dāng)日凈成交量的占比。下載的融資融券數(shù)據(jù)包括融資余額和融券余額,分別計(jì)算出當(dāng)日融資余額和融券余額占當(dāng)日成交額的占比。小、中、大、特大單的買入賣出量以及買入賣出額,以及凈流入量和凈流入額也相應(yīng)轉(zhuǎn)換成當(dāng)日成交量或成交額的占比。

        對部分特征進(jìn)行歸一化處理,如成交量、成交額、流通股本等。對所有股票數(shù)據(jù)進(jìn)行處理,生成時(shí)間序列數(shù)據(jù)(模型的Input0、Input1),維度為(L,M,N),其中M表示樣本數(shù),N表示總特征數(shù),L表示序列長度,也就是已知的前L天的數(shù)據(jù),即L天的數(shù)據(jù)為一組特征,用前L天的數(shù)據(jù)來預(yù)測后一天漲幅。將時(shí)間序列數(shù)據(jù)的特征數(shù)分為兩個(gè)輸入分別對應(yīng)于模型的兩個(gè)輸入Input0和Input1。

        “漲幅”為用來訓(xùn)練的標(biāo)簽,定義為:(當(dāng)日收盤價(jià)-昨日收盤價(jià))/昨日收盤價(jià);“漲幅正負(fù)”為用來驗(yàn)證準(zhǔn)確率和精度的標(biāo)簽。這邊設(shè)定當(dāng)漲幅為正時(shí),則判定該股票的趨勢為漲(label:1);當(dāng)漲幅不為正時(shí),則判定該股票的趨勢為跌(label:0)。

        對數(shù)據(jù)集進(jìn)行劃分,其中訓(xùn)練集數(shù)據(jù)的時(shí)間段為2018.01.01~2019.08.31,測試集數(shù)據(jù)的時(shí)間段為 2019.09.01~2019.10.31。分別對訓(xùn)練集和測試集的漲跌分布進(jìn)行了統(tǒng)計(jì)分析,發(fā)現(xiàn)訓(xùn)練集和測試集的漲跌分布有一定的差異性,證明了改進(jìn)的模型在后續(xù)的實(shí)驗(yàn)中具有一定的泛化性。

        2.3 融合多源數(shù)據(jù)

        在股票交易操作上,一般短線操作都會(huì)實(shí)時(shí)關(guān)注個(gè)股的分時(shí)線走勢。在之前的一些研究中,利用機(jī)器學(xué)習(xí)預(yù)測股票一般都只關(guān)注了個(gè)股的日K線走勢及數(shù)據(jù),而忽略了每日的分時(shí)線數(shù)據(jù)及其他一些數(shù)據(jù)。每日的分時(shí)線數(shù)據(jù)隱藏了大量的交易信息,例如可以看出大資金的流入流出,對于個(gè)股未來趨勢的預(yù)測提供了大量有用的信息。

        改進(jìn)的模型基于Self-Attention架構(gòu),解碼器采用全連接層,在編碼器端合并了日線數(shù)據(jù)(Input0)、分時(shí)線數(shù)據(jù)(Input1)以及籌碼結(jié)構(gòu)數(shù)據(jù)(Input2),如圖3所示。分時(shí)線數(shù)據(jù)編碼器采用Multi-Head Attention和Feed Forward堆疊而成,有N層;日線數(shù)據(jù)編碼器也由N層堆疊而成,前N-1層結(jié)構(gòu)一樣,但不共享參數(shù),最后一層通過對分時(shí)線數(shù)據(jù)編碼器輸出做Multi-head Attention輸出o1,對自身做Multi-head Attention輸出o0;籌碼結(jié)構(gòu)編碼器采用全連接層,輸出o2。融合三個(gè)輸出o并進(jìn)行解碼,計(jì)算公式見式(10)、(11)、(12):

        m=σ(Wm·[o0,o1]+bm)

        (10)

        n=m⊙o0+(1-m)o1

        (11)

        o=Concat(n,o2)

        (12)

        圖3 改進(jìn)的Self-Attention模型

        3 實(shí)驗(yàn)與分析

        3.1 評估指標(biāo)

        在訓(xùn)練階段,做的是回歸任務(wù),即預(yù)測股票漲跌的幅度,損失函數(shù)用的是均方根誤差(root mean squared error,RMSE),計(jì)算公式見式(13):

        (13)

        根據(jù)樣本的真實(shí)結(jié)果和模型預(yù)測結(jié)果,將樣本分為四類:

        TP(true positive),樣本是正樣本并且模型預(yù)測結(jié)果也是正樣本的個(gè)數(shù);

        FN(false negative),樣本是正樣本但模型預(yù)測結(jié)果是負(fù)樣本的個(gè)數(shù);

        FP(false positive),樣本是負(fù)樣本但模型預(yù)測結(jié)果是正樣本的個(gè)數(shù);

        TN(true negative),樣本是負(fù)樣本并且模型預(yù)測結(jié)果也是負(fù)樣本的個(gè)數(shù)。

        評價(jià)模型性能使用以下2個(gè)指標(biāo):準(zhǔn)確率 (Accuracy)和精確率(Precision)。

        (14)

        (15)

        3.2 實(shí)驗(yàn)配置

        實(shí)驗(yàn)硬件配置為CPU:AMD-3700X,內(nèi)存:32 G,GPU:RTX-2070。操作系統(tǒng)為UBUNTU 18.04,Python版本為3.7.3,深度學(xué)習(xí)框架采用Pytorch。優(yōu)化器選擇Adam,學(xué)習(xí)率為1e-4,使用256的小批量大小。

        3.3 不同長度的時(shí)間序列數(shù)據(jù)效果對比

        為了測試不同長度L的歷史數(shù)據(jù)對實(shí)驗(yàn)結(jié)果的影響,使用改進(jìn)的Self-Attention模型測試了不同L對預(yù)測準(zhǔn)確率的影響,實(shí)驗(yàn)結(jié)果見圖4。

        圖4 不同長度L對結(jié)果的影響

        3.4 模型效果

        在測試集數(shù)據(jù)上,使用相同步驟的預(yù)處理步驟(這邊使用的歷史數(shù)據(jù)長度L為30),在不同的模型上進(jìn)行測試得出的數(shù)據(jù),如表1所示??梢园l(fā)現(xiàn),RMSE降低了不少。圖5展示了改進(jìn)的Self-Attention模型在部分個(gè)股上的預(yù)測結(jié)果。

        圖5 改進(jìn)的Self-Attention預(yù)測值

        表1 算法性能對比

        3.5 個(gè)股預(yù)測及投資收益

        通過模型對測試數(shù)據(jù)進(jìn)行預(yù)測買賣點(diǎn)以及收益率,選取股票“浦發(fā)銀行”作為操作說明。因?yàn)樵撃P褪峭ㄟ^前L天(這里L(fēng)取30)的數(shù)據(jù)預(yù)測后一天的漲幅,所以當(dāng)預(yù)測的漲幅大于等于1%的時(shí)候,模型提示買入;預(yù)測的漲幅小于等于-1%的時(shí)候,模型提示賣出;當(dāng)預(yù)測的漲幅在-1%到1%之間的時(shí)候,模型提示不操作。圖6展示了預(yù)測模型對買點(diǎn)和賣點(diǎn)的判斷,圖中提示的買賣時(shí)間點(diǎn)是每日的剛開盤時(shí)間(即9:30)。假設(shè)采取的策略是:當(dāng)未持有該股票時(shí),提示買入的時(shí)候,買入100股的股票;當(dāng)持有該股時(shí),提示買入的時(shí)候,不進(jìn)行買賣操作;當(dāng)提示賣出的時(shí)候,賣出持有該個(gè)股的所有股票,如果不持有該個(gè)股的股票則不進(jìn)行買賣操作;既沒有提示買入也沒有提示賣出的時(shí)候,則不進(jìn)行買賣操作。根據(jù)圖6,在“20190904”日剛開盤的時(shí)候以11.4的價(jià)格買入100股,在“20190905”日的時(shí)候雖然提示買入,當(dāng)已經(jīng)持有該股票,所以不進(jìn)行操作,直到在“20190916”日剛開盤的時(shí)候以11.99的價(jià)格賣出100股,收益率是(11.99-11.4)/11.4=0.051 7,所以在“20190613”賣出的操作中收益率為0.051 7,其他的賣點(diǎn)收益計(jì)算類似。只有當(dāng)進(jìn)行賣出操作的時(shí)候收益率才會(huì)變化,圖7展示了三只股票在測試數(shù)據(jù)上的收益率變化。圖8展示了同期上證50指數(shù)的投資收益率以及采用模型預(yù)測的上證50個(gè)股平均收益率??梢园l(fā)現(xiàn),改進(jìn)Self-Attention模型可以提高投資收益率。

        圖6 浦發(fā)銀行K線及買賣提示圖

        圖7 部分個(gè)股投資收益變化曲線

        圖8 同期投資收益變化

        4 結(jié)束語

        該文提出一種基于Self-Attention模型的金融時(shí)間序列預(yù)測模型,使用該模型預(yù)測中國證券市場上證50成分股,通過實(shí)驗(yàn)驗(yàn)證了模型的準(zhǔn)確率和精確率:模型的預(yù)測準(zhǔn)確率為61.32%,對正樣本的預(yù)測精確率為63.04%,這說明了改進(jìn)的模型可以有效預(yù)測股票趨勢。在與其他模型的對比中效果更優(yōu)。由圖8可知,通過模型的預(yù)測買賣點(diǎn)進(jìn)行股票買賣操作,在測試數(shù)據(jù)上的投資收益率為6.562%,而同期上證50指數(shù)的收益率3.260%,收益率提高了101.28%。所以改進(jìn)的模型可以有效輔助投資并取得一定的收益,這表明該模型在股價(jià)趨勢預(yù)測上具有一定的有效性和實(shí)用性。

        由于中國股市的散戶占比大,市場容易受到情緒波動(dòng)的影響,因此下一步將結(jié)合對股民情緒的分析以增加模型的準(zhǔn)確率。

        猜你喜歡
        特征模型
        一半模型
        抓住特征巧觀察
        重要模型『一線三等角』
        新型冠狀病毒及其流行病學(xué)特征認(rèn)識
        重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
        如何表達(dá)“特征”
        不忠誠的四個(gè)特征
        抓住特征巧觀察
        3D打印中的模型分割與打包
        FLUKA幾何模型到CAD幾何模型轉(zhuǎn)換方法初步研究
        人妻少妇一区二区三区| 国产伦精品免编号公布| 日本一区二区三区四区高清不卡| 国产做无码视频在线观看 | 亚洲一区有码在线观看| 国产精品日韩经典中文字幕| 亚洲av综合永久无码精品天堂| 麻豆精产国品| 国产熟女av一区二区三区四季| 亚洲自拍偷拍一区二区三区 | 国产精品制服| 久久精品国产亚洲AV高清特级| 国产成人精品中文字幕| 森中文字幕一区二区三区免费| 性高湖久久久久久久久| 九九在线视频| 中文字幕亚洲人妻系列| 亚洲免费福利视频网站| 国产乱子伦精品无码专区 | 国产免费激情小视频在线观看| 国产精品亚洲精品一区二区| 综合色区亚洲熟妇另类| 精品三级久久久久久久电影| 女同性恋亚洲一区二区| 在线观看亚洲视频一区二区| 人人妻人人添人人爽欧美一区 | 亚洲黄视频| 亚洲免费人成网站在线观看 | 婷婷五月亚洲综合图区| 一个人午夜观看在线中文字幕| 少妇被爽到高潮喷水久久欧美精品| 日韩a毛片免费观看| baoyu网址国产最新| 少妇特殊按摩高潮对白| 日韩av无码一区二区三区| 亚洲国产精品久久亚洲精品| 精品三级久久久久久久| 中文字幕亚洲一二三区| 免费成人在线电影| 国产成人一区二区三中文| 久久久人妻丰满熟妇av蜜臀|