王毓謙
【摘? 要】期貨市場(chǎng)是一個(gè)復(fù)雜系統(tǒng),其價(jià)格數(shù)據(jù)具有非線性、高噪聲等特性,導(dǎo)致其預(yù)測(cè)難度較高。論文結(jié)合深度學(xué)習(xí)框架下的神經(jīng)網(wǎng)絡(luò)模型對(duì)選取的滬深300指數(shù)期貨開盤、收盤價(jià)數(shù)據(jù)進(jìn)行分析并預(yù)測(cè)趨勢(shì),最終得到較高的預(yù)測(cè)精度。論文表明,深度學(xué)習(xí)循環(huán)神經(jīng)網(wǎng)絡(luò)在期貨價(jià)格預(yù)測(cè)方面有著不錯(cuò)的表現(xiàn)并且發(fā)展?jié)摿^大。
【Abstract】Futures market is a complex system, and its price data is nonlinear and noisy, which makes it difficult to predict. Combined with the neural network model under the framework of deep learning, this paper analyzes and predicts the trend of the selected opening and closing prices of CSI 300 index futures, and finally obtains a higher prediction accuracy. The paper shows that deep learning recurrent neural network has a good performance in futures price prediction and has great development potential.
【關(guān)鍵詞】深度學(xué)習(xí);神經(jīng)網(wǎng)絡(luò);長(zhǎng)短期記憶;期貨市場(chǎng);價(jià)格預(yù)測(cè)
【Keywords】deep learning; neural network; long and short-term memory; futures market; price prediction
【中圖分類號(hào)】F724.5;TP183? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文獻(xiàn)標(biāo)志碼】A? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?【文章編號(hào)】1673-1069(2021)12-0137-03
1 引言
隨著經(jīng)濟(jì)的不斷發(fā)展、理財(cái)類產(chǎn)品的不斷宣傳,各種類型的理財(cái)產(chǎn)品逐漸在人們的視野中出現(xiàn),對(duì)資產(chǎn)進(jìn)行合理配置,讓錢變得值錢,使得自己擁有的財(cái)富能夠在價(jià)值上得到最大的提升,引起了我國(guó)國(guó)民的廣泛關(guān)注。在一系列的投資交易方式之中,量化交易脫穎而出,成為新時(shí)代的寵兒。量化交易也被稱為算法交易,顧名思義就是依靠預(yù)先編寫好的代碼由計(jì)算機(jī)進(jìn)行擬合預(yù)測(cè),通過預(yù)先設(shè)計(jì)的算法,獲得交易策略的過程。量化交易采用量化模型代替人為的主觀判斷,減少了人為因素帶來的損失。機(jī)器學(xué)習(xí)作為人工智能中的重要發(fā)展領(lǐng)域,現(xiàn)如今發(fā)展很快,得到各界人士的認(rèn)可。深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究,其希望通過創(chuàng)立神經(jīng)元來模擬人腦的運(yùn)作機(jī)制,從而解釋數(shù)據(jù)并且處理數(shù)據(jù),其特點(diǎn)就是模型結(jié)構(gòu)的深度,通常深度學(xué)習(xí)構(gòu)建的神經(jīng)網(wǎng)絡(luò)能有較高深度。本文根據(jù)上述背景,進(jìn)行深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)應(yīng)用在量化交易策略上的研究。
目前學(xué)術(shù)界已有相關(guān)研究,郭朋(2012)第一次在國(guó)內(nèi)提出了量化交易這一概念,并且對(duì)國(guó)外的研究進(jìn)行了綜述,從那之后,國(guó)內(nèi)開始了對(duì)量化交易的研究。王新華(2017)在其論文之中提出將人工智能運(yùn)用到金融領(lǐng)域之中,其在論文中提到,金融領(lǐng)域最多的便是數(shù)據(jù),而人工智能則擁有很多處理數(shù)據(jù)的方式,所以人工智能的相關(guān)方法可以在這個(gè)領(lǐng)域有很多的運(yùn)用。胡葉帥(2021)在其論文中提到將深度學(xué)習(xí)運(yùn)用到量化交易策略之中,深度學(xué)習(xí)的特點(diǎn)就是將大量的數(shù)據(jù)集帶入設(shè)計(jì)好的模型之中,在圖像識(shí)別領(lǐng)域發(fā)展得很好,但是在處理時(shí)序金融數(shù)據(jù)這方面的研究還不是很多。王鑫(2018)將深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)中的LSTM循環(huán)神經(jīng)網(wǎng)絡(luò)運(yùn)用到系統(tǒng)故障預(yù)測(cè)之中,證明了LSTM在時(shí)序數(shù)據(jù)方面的可行性。
文章基于研究現(xiàn)狀,以滬深300指數(shù)的主力合約(合約代碼IF9999)為研究對(duì)象,通過深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)預(yù)測(cè),預(yù)測(cè)出未來合約交易的趨勢(shì),并進(jìn)行策略研究,結(jié)果證明深度學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)在期貨交易價(jià)格預(yù)測(cè)問題方面具有較高的實(shí)用性。
2 期貨交易價(jià)格數(shù)據(jù)描述
目前資本市場(chǎng)的股票、期貨數(shù)據(jù)獲取渠道相對(duì)較多,數(shù)據(jù)的準(zhǔn)確度較高,為量化交易行業(yè)研究奠定一個(gè)較好的基礎(chǔ),文章的期貨數(shù)據(jù)主要是通過聚寬(www.joinquant.com)專業(yè)量化投資平臺(tái)獲取,獲取的數(shù)據(jù)主要是開盤價(jià)(open)、收盤價(jià)(close)、最高價(jià)(high)、最低價(jià)(low)、成交量(volume)以及成交金額(money)6個(gè)常見指標(biāo)。具體數(shù)據(jù)形式如表1所示。
期貨交易市場(chǎng)上午9:00開盤,10:15~10:30,休息15min,11:30收盤。下午13:30開盤,15:00收盤。晚上21:00開盤,23:00收盤。文章考慮到數(shù)據(jù)集的大小問題,選取2019~2021年滬深300指數(shù)主力合約(合約代碼IF9999)的每分鐘數(shù)據(jù)進(jìn)行研究,原因是滬深300指數(shù)主力合約屬于熱門期貨交易合約,每分鐘的成交量較多,并且成交金額較大,這樣有利于學(xué)習(xí)模型學(xué)習(xí)到數(shù)據(jù)趨勢(shì),并且滬深300指數(shù)是國(guó)內(nèi)期貨交易市場(chǎng)的主要合約,具有一定的代表性,從某種方面講具有一定的普適性,在這個(gè)合約里能夠預(yù)測(cè)出的結(jié)果在其他的合約上也能夠?qū)崿F(xiàn)。
文章獲取的數(shù)據(jù)存在大量缺失值以及噪聲數(shù)據(jù),文章使用基本的數(shù)據(jù)處理方式對(duì)數(shù)據(jù)進(jìn)行處理,對(duì)于缺失的數(shù)據(jù),我們使用就近原則,取其前一組數(shù)據(jù)以及后一組數(shù)據(jù)的平均值將其補(bǔ)上,使得數(shù)據(jù)的偏差幅度不會(huì)過大影響到后面的數(shù)據(jù)預(yù)測(cè)。對(duì)于偏離整體趨勢(shì)的數(shù)據(jù)進(jìn)行刪除并且修正。最后對(duì)數(shù)據(jù)進(jìn)行歸一化處理,并將其做成64個(gè)數(shù)據(jù)為1組的batch型數(shù)據(jù)方便導(dǎo)入模型之中使用。
3 神經(jīng)網(wǎng)絡(luò)選取以及模型搭建
深度學(xué)習(xí)之中基礎(chǔ)的線性回歸模型以及卷積神經(jīng)網(wǎng)絡(luò)模型一般用于處理數(shù)值信息以及將圖像信息轉(zhuǎn)化為矩陣模式進(jìn)行模型迭代計(jì)算,而要適配文章所描述的金融時(shí)序數(shù)據(jù),需要使用新的模型。數(shù)據(jù)會(huì)根據(jù)時(shí)間進(jìn)程而進(jìn)行相應(yīng)的變化,所以使用新的神經(jīng)網(wǎng)絡(luò)模型:循環(huán)神經(jīng)網(wǎng)絡(luò)。
在神經(jīng)網(wǎng)絡(luò)模型之中,有一類含有隱藏層的多層感知機(jī)。在對(duì)于小批量數(shù)據(jù)樣本X∈Rn×d,隱藏層的激活函數(shù)為?準(zhǔn),偏差函數(shù)為b,權(quán)重參數(shù)為W,那么隱藏層輸出值H∈Rn×d的計(jì)算方法為:H=?準(zhǔn)(XWxn+bh)。
最終輸出的結(jié)果為:O=HWhq+bq。
一般的多層感知機(jī)用于線性回歸模型以及卷積塊模型,是一個(gè)靜態(tài)模型,并沒有加入過時(shí)間變量,所以需要使用到循環(huán)神經(jīng)網(wǎng)絡(luò),它是通過隱藏狀態(tài)來儲(chǔ)存之前的時(shí)間段t內(nèi)的信息,并且參與到下一次的迭代之中,對(duì)下一次迭代的結(jié)果造成影響。
現(xiàn)在考慮輸入的數(shù)據(jù)存在時(shí)間相關(guān)性的情況,輸入的數(shù)據(jù)樣本需要添加一個(gè)下標(biāo)t使之變?yōu)閄t∈Rn×d,其代表在序列之中時(shí)間為的時(shí)候小批量輸入的數(shù)據(jù)值,另外有Ht表示時(shí)間為t的時(shí)候的隱藏變量,并且引入新的權(quán)重參數(shù)Whh∈Rh×h,其大小表示t-1時(shí)間段的數(shù)據(jù)影響t時(shí)間數(shù)據(jù)的程度。在這種情況下,隱藏層的隱藏狀態(tài)輸出變化為:
為解決梯度問題、模型效率不高的問題,使用門控循環(huán)神經(jīng)網(wǎng)絡(luò)的思路,這種神經(jīng)網(wǎng)絡(luò)可以更好地捕捉時(shí)間序列之中時(shí)間步之間的依賴關(guān)系。近年來對(duì)于處理時(shí)間序列問題,有一類較為熱門的神經(jīng)網(wǎng)絡(luò)模型——長(zhǎng)短期記憶循環(huán)神經(jīng)網(wǎng)絡(luò)模型。
輸入門、遺忘門、輸出門的輸入是當(dāng)前時(shí)間段的輸入Xt以及上一個(gè)時(shí)間段的隱藏狀態(tài)Ht-1,通過sigmoid函數(shù)作為激活函數(shù)計(jì)算得到。假設(shè)時(shí)間步t的小批量輸入Xt∈Rn×d以及上一個(gè)時(shí)間步輸出的隱藏狀態(tài)Ht-1∈Rn×h;Wxx與bx為各個(gè)門對(duì)應(yīng)的權(quán)重參數(shù)以及偏差參數(shù),輸入門It、遺忘門Ft以及輸出門Ot的計(jì)算方式如下:
最終每個(gè)神經(jīng)元內(nèi)結(jié)構(gòu)如圖1所示。
以上為文章選取的LSTM模型的原理,本文將以此搭建LSTM神經(jīng)網(wǎng)絡(luò)模型,并對(duì)上文截取的數(shù)據(jù)進(jìn)行分析以及研究。
文章在Windows10操作系統(tǒng)下搭建GPU版本的LSTM神經(jīng)網(wǎng)絡(luò),使用python語(yǔ)言作為編譯語(yǔ)言,pytorch包作為搭載。pytorch包具有靈活性高、擴(kuò)展性強(qiáng)等優(yōu)點(diǎn),通過繼承父類模型來搭建自定義模型,編寫evaluate函數(shù)對(duì)數(shù)據(jù)進(jìn)行迭代,最終得出權(quán)重參數(shù)。文章采用model類,搭建幾種不同的神經(jīng)網(wǎng)絡(luò)模型對(duì)一支期貨進(jìn)行收盤價(jià)的分析預(yù)測(cè),對(duì)模型預(yù)測(cè)準(zhǔn)確性使用平方根誤差、平均絕對(duì)誤差進(jìn)行結(jié)果對(duì)比。
圖2展示了搭建的部分神經(jīng)網(wǎng)絡(luò)模型:卷積神經(jīng)網(wǎng)絡(luò)、全連接神經(jīng)網(wǎng)絡(luò)、長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)。
4 實(shí)驗(yàn)結(jié)果以及分析
根據(jù)上文所構(gòu)建的模型以及獲取到的數(shù)據(jù),文章基于python語(yǔ)言對(duì)長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)模型進(jìn)行代碼實(shí)現(xiàn),并且將數(shù)據(jù)集以8∶2的比例分為訓(xùn)練集以及測(cè)試集,以方便進(jìn)行模型的訓(xùn)練以及數(shù)據(jù)預(yù)測(cè)。
文章使用滬深300指數(shù)主力合約從2019年9月~2021年9月的每分鐘數(shù)據(jù)進(jìn)行數(shù)據(jù)預(yù)測(cè),共有84864*9個(gè)數(shù)據(jù),文章選取期貨數(shù)據(jù)開盤價(jià)進(jìn)行數(shù)據(jù)預(yù)測(cè),并且已經(jīng)進(jìn)行數(shù)據(jù)的預(yù)處理(見圖3)。
文章遵循神經(jīng)網(wǎng)絡(luò)訓(xùn)練的基本規(guī)則,按照8∶2的比例進(jìn)行數(shù)據(jù)集的切分,對(duì)2021年2月之前的數(shù)據(jù)歸為一類作為訓(xùn)練集,將2021年2月之后的數(shù)據(jù)歸為一類作為測(cè)試集,如圖3所示,訓(xùn)練集的數(shù)據(jù)由黑色線表示,接著之后的測(cè)試集數(shù)據(jù)由灰色線表示。
如圖2所示模型以及參數(shù),本文搭建LSTM神經(jīng)網(wǎng)絡(luò)、卷積神經(jīng)網(wǎng)絡(luò)、全連接多層感知器幾類模型進(jìn)行數(shù)據(jù)的分析以及預(yù)測(cè)。
在每個(gè)模型進(jìn)行1000次迭代后,得出的預(yù)測(cè)精度如表2所示。
從表1可以看出,LSTM神經(jīng)網(wǎng)絡(luò)的預(yù)測(cè)精度較好并且穩(wěn)定性較強(qiáng),于是使用LSTM進(jìn)行數(shù)據(jù)的預(yù)測(cè)并使用matplotlib包進(jìn)行繪圖(見圖4)。
如圖4所示,LSTM神經(jīng)網(wǎng)絡(luò)對(duì)期貨開盤價(jià)數(shù)據(jù)進(jìn)行了一次較好的擬合,雖然與真實(shí)數(shù)據(jù)仍有差距,但依舊能展示出大概的趨勢(shì)。
5 結(jié)語(yǔ)與展望
文章通過代碼構(gòu)建神經(jīng)網(wǎng)絡(luò)模型實(shí)現(xiàn)期貨數(shù)據(jù)預(yù)測(cè),并且經(jīng)過多個(gè)模型的對(duì)比選取較為精確的網(wǎng)絡(luò),雖仍有誤差,但是能夠?qū)φw趨勢(shì)有一個(gè)較好的預(yù)測(cè),對(duì)于投資者而言有參考價(jià)值,文章仍存在以下不足之處:
文章中采用的模型是最基礎(chǔ)的神經(jīng)網(wǎng)絡(luò)模型,模型深度并沒有達(dá)到多深,并且使用的超參數(shù)都是默認(rèn)參數(shù),沒有進(jìn)行修改,在之后的文章中可以使用網(wǎng)格排序法對(duì)每種超參數(shù)進(jìn)行枚舉,并得出最優(yōu)的參數(shù),并且對(duì)模型的結(jié)構(gòu)進(jìn)行調(diào)整,找到一個(gè)最適合的模型結(jié)構(gòu)。本文使用的是滑動(dòng)窗口式的預(yù)測(cè)方法,容易造成數(shù)據(jù)誤差的累計(jì),導(dǎo)致長(zhǎng)期的模型預(yù)測(cè)精度較低,固考慮采用S2S的搭建模型與讀取數(shù)據(jù)方式,加入注意力機(jī)制讓模型預(yù)測(cè)精度有更多的提升。
本文僅通過數(shù)據(jù)預(yù)測(cè)得出開盤價(jià)未來變動(dòng)的趨勢(shì),未來可以考慮在此數(shù)據(jù)基礎(chǔ)上使用量化交易中的策略進(jìn)行期貨交易,并預(yù)估收益,這都是未來文章研究的方向。
【參考文獻(xiàn)】
【1】郭朋.國(guó)外高頻交易的發(fā)展現(xiàn)狀及啟示[J].證券市場(chǎng)導(dǎo)報(bào),2012(07):56-61.
【2】王新華,肖波.人工智能及其在金融領(lǐng)域的應(yīng)用[J].銀行家,2017(12):126-128.
【3】胡葉帥.期貨深度量化交易策略的研究[D].沈陽(yáng):遼寧大學(xué),2021.
【4】王鑫,吳際,劉超,等.基于LSTM循環(huán)神經(jīng)網(wǎng)絡(luò)的故障時(shí)間序列預(yù)測(cè)[J].北京航空航天大學(xué)學(xué)報(bào),2018,44(04):772-784.
【5】岑躍峰,張晨光,岑崗,等.基于近端強(qiáng)化學(xué)習(xí)的股價(jià)預(yù)測(cè)方法[J].控制與決策,2021,36(04):967-973.
【6】余凱,賈磊,陳雨強(qiáng),等.深度學(xué)習(xí)的昨天、今天和明天[J].計(jì)算機(jī)研究與發(fā)展,2013,50(09):1799-1804.
【7】Wen Hu,Yuxue Shi. Prediction of online consumers' buying behavior based on LSTM-RF model[A]. Sichuan University.Proceedings of the 5th International Conference on Communication, Image and Signal Processing (CCISP 2020)[C].Sichuan University:成都夏洛克教育咨詢有限公司,2020:5.
【8】孫志軍,薛磊,許陽(yáng)明,等.深度學(xué)習(xí)研究綜述[J].計(jì)算機(jī)應(yīng)用研究,2012,29(08):2806-2810.
【9】李澤艷,陳銀鈞.LSTM Deep Learning Stock Prediction System Based on PyTorch Framework[J].運(yùn)籌與模糊學(xué),2021,11(02):137-146.