馮海珊,蔣若怡
(1.廣西大學 數學與信息科學學院,南寧 530004;2.桂林電子科技大學 計算機與信息安全學院,廣西 桂林 541004)
傳統的原油期貨價格的預測方法是ARIMA 模型和GARCH 模型,但原油期貨價格時間序列的非平穩、波動大、高集聚、高緯度等非線性特征使得傳統的方法難以準確刻畫。近年來,伴隨著大數據的積累、計算機硬件的改善,機器學習方法因其具有學習非線性網絡結構的能力,能實現對原油期貨價格時間序列非線性、非平穩特征的刻畫,逐漸成為預測原油期貨價格領域的主流方法。
謝文等人基于SVM 模型對原油價格進行了預測,并與ARIMA 模型和BPNN 模型的預測效果進行了比較,結果顯示改進的SVM 模型在預測精度上表現更好;希羅馬(Chiroma)等人構建了GA-NN 組合模型預測WTI 原油價格;還有不少學者采用LSTM 類模型預測原油期貨的價格。上述方法均以原始數據作為輸入要素,鮮少有文獻使用文本、圖片等非結構化數據信息對原油期貨價格進行預測。機器學習中的深度信念網絡(Deep Belief Network,DBN)模型對圖像識別有較好的效果?,F有文獻中,部分作者基于DBN 模型,使用非結構化信息作為輸入特征,對匯率和股票價格進行預測,能顯著改善預測效果。例如,沈富饒等人基于改進的DBN 網絡對外匯匯率序列進行預測,達到了比傳統方法更好的效果;曾志平等人基于DBN將原始價格轉化為圖像用于預測股票價格的趨勢,結果表明,預測準確率可以達到90%以上。
綜上所述,研究使用文本、圖片等非結構數據信息在原油期貨價格預測中具有可行性。本文在DBN模型的基礎上,采用圖片作為輸入要素,對WTI 原油期貨價格進行預測。與之前研究不同的是,本文不僅采用WTI 期貨價格的原始結算價,還會加入收盤價、開盤價、最高價和最低價的時間序列數據的預測,在此基礎上提出基于DBN 模型的區間預測方法。
DBN 模型是一種深度學習模型,可以實現對數據的降維及分類。其整體結構如圖1 所示。模型由多層堆疊在一起的受限玻爾茲曼機(Restricted Boltzmann Machine,RBM)和有監督的反向傳播網絡組成,前一個RBM 的輸出成為后面RBM 的輸入,輸入層-隱藏層之間和隱藏層-隱藏層之間均利用高斯-伯努利RBM,層級設計可以有N 層,輸出層為無監督分類的結果。模型訓練的過程就是對RBM 結構進行微調并設置合適的層數使其適應數據的訓練,以獲得最高的預測精度。

圖1 DBN 模型基本結構
國內學者曾志平等人首次將DBN 模型應用于金融領域的研究,研究指出,直接將時序數據輸入模型容易造成DBN 算法的發散,難以找出原始數據的整體規律。參考該文獻,本文在建模時,將結算價、收盤價、開盤價、最高價、最低價和成交量等指標數據均轉換成圖片作為輸入信號訓練DBN 模型,再利用訓練好的DBN 模型進行趨勢預測,這樣每個指標都會有一個趨勢預測結果,如上漲或下跌,最后將最低價、最高價、開盤價、收盤價的趨勢預測結果綜合考慮,就得到一個預測的區間范圍。
本研究采用的WTI 原油期貨結算價(連續)日度數據的時間區間為1983 年3 月30 日至2021 年3 月22 日,去掉空值后總的數據個數為9 536 個,數據來源于美國能源署網站。WTI 原油期貨開盤價、收盤價、最低價、最高價、成交量和成交額日度數據的時間區間為2010 年11 月19 日至2021 年4 月28 日,數據來源于WIND 數據庫。
首先,對數據進行歸一化處理并畫時間序列圖。鑒于原油期貨價格時序數據的復雜性,首先對時序數據樣本進行歸一化處理,公式為:

x
為某指標原始數據,y
為歸一化后的數據,假設樣本容量為N
,對其進行歸一化后選取n
個數據畫一張曲線圖,若窗口的移動步長為k
,則可生成(N
-n
+1)/k
張圖片。對于每一個價格序列,本研究均選取n
為5、k
為1 的模式。其次,對圖像進行預處理。在將圖片作為特征輸入模型之前,需要對圖像進行預處理,通常的預處理有圖像去噪、圖像灰度調整和圖像分辨率調整等,本文將全部非結構化數據均預處理為47×49 像素的非結構化圖片,并分成(a)有明顯上升趨勢、(b)有明顯下降趨勢和(c)無明顯趨勢3 種類型,部分樣本示例如圖2 所示。將這些非結構化數據作為訓練DBN模型的原始數據,其中預訓練數據約為總數據量的80%,驗證數據為總數據量的20%。

圖2 WTI 原油期貨數據樣本示例
在Python 3.7 下搭建TensorFlow 環境,經過模型篩選,選擇3 層RBM 組成的DBN 深度學習網絡,網絡的輸入層有47×49 個節點,第一個和第二個隱含層有3 000 個節點,輸出層有3 個輸出節點(上漲、下跌或者無明顯趨勢狀態),迭代次數為20,學習率的大小選擇1.0。
各指標預測結果如表1 所示。從預測結果來看,除最低價和最高價指標外,其余指標預測的準確率都能達到80%,效果較好,與曾志平等人用同一方法預測滬、深市場股票價格的準確率相當。

表1 DBN 網絡預測準確率
在決策實踐中,假設第t 天的結算價為5 元,最低價為4.5 元,最高價為5.5 元,根據趨勢預測,未來一天的結算價上漲,收盤價下跌,則可能的價格期間就為5~5.5 元。對于每個指標都漲或都跌的情況,預測的區間就會是一個沒有上限或下限的區間。結果表明,通過加入除結算價之外的最高價、最低價等指標的趨勢預測,構建漲跌趨勢的預測區間,可以更準確地篩選出漲跌區間,部分舉例如表2 所示。對投資者來說,可結合自己的風險偏好和期望預期,利用接下來若干個工作日的漲跌情況,設計符合自身情況的交易策略。

表2 預測的區間估計
研究表明,通過圖片信息提取作價格時間序列的預測,將價格時間序列的非線性、非平穩性等復雜特征的信息反映在圖片上,讓機器學習通過識別圖片這些特征,準確率能達到80%。為了達到更理想的效果,還可以從圖像分類和學習訓練模型的搭建方面進行改進。在圖像分類方面,可以嘗試補充轉折點的分類;在訓練模型方面,可以嘗試用不同的算法改進訓練的速度和效率,在此基礎上設計符合自身風格的投資組合策略。