張冰心
摘 要 國際原油一直是影響世界經濟發展的重要指標。原油價格的走勢深深地影響了其他資產的變動,因此對原油價格的分析十分重要。本文使用SVM模型對國際原油價格進行預測,對WTI的歷史價格數據進行建模,得到的預測誤差的MAE為2.98%,對比時間序列算法有較大提升。
關鍵詞 原油價格 SVM模型 參數優化
一、緒論
石油深深地影響了世界經濟的發展,帶來了能源的革命。作為基礎的工業生產原料,原油價格的變動會給世界經濟帶來重要的影響。很多經濟指標都同原油的價格有密切聯系,比如美元、黃金等資產的價格走勢,同原油價格都有一定的關系。因此,對原油價格的預測是金融界以及學術界關注的熱點。
傳統的金融學者一般用時間序列等傳統的計量模型對原油價格進行分析,但是這些模型的假設較強,效果較差。近年來機器學習、數據挖掘技術發展迅猛,在不同領域得到了很好的應用,同時,隨著計算機技術的發展,獲取海量數據并計算海量數據變得較為容易,其中,支持向量機(SVM)模型是一種效果較好、應用較多的模型。因此,本文嘗試使用支持向量機(SVM)模型對WTI原油價格進行建模,預測價格的走勢。
二、模型介紹
支持向量機(Support Vector Machine,簡稱SVM)是一種分類算法,將低維空間數據映射到高維空間,從而找到劃分邊界來對樣本進行劃分。在求解該問題時,對于線性不可分的數據,SVM使用了核函數來處理。核函數可以在高維空間對數據進行劃分,從而將非線性最優化問題轉變為線性可分問題,本文使用的是高斯核函數。
實證分析:
本文使用的WTI原油價格數據范圍為2004年1月1日到2017年12月31日,時間頻率為每日。為了分析預測效果,本文采用2004年1月1日到2016年12月31日的數據作為訓練樣本,2017年的數據作為測試樣本。
為了建立模型,本文選擇美元指數(Usdx)、黃金現貨價格(Gldx)、MSCI全球指數(Msci)、彭博大宗商品指數(Bcom)、原油庫存指數(Oilstock)為維度,進行相關性分析后,Msci的統計相關性較弱,因此過濾該指標,其余指標的統計檢驗具有顯著性,因此納入建模的維度之中。對于模型的評價使用絕對誤差(MAE),該值越小,預測精度越高。
本文使用Python的Sklearn包中的SVM函數進行建模,Sklearn是機器學習包,實現了若干的機器學習算法。SVM函數有一些參數需要優化,本文采用遺傳算法進行優化,得到W(權重參數)=(0.47,0.53)、C(懲罰參數)=2.0、Gamma(核函數參數)=1.65。
本文在測試時使用模型的最優參數進行樣本外測試,同時為了對比效果,使用ARIMA算法進行對比分析。最終SVM的MSE為2.98%,ARIMA的MSE為7.23%。從樣本測試結果中可以得出,SVM算法的表現遠遠好于傳統的時間序列預測ARIMA 算法。SVM算法在MAE上提高了4.25%,算法在樣本外數據測試如圖1所示。
三、結語
本文使用支持向量機SVM模型對WTI價格數據進行了建模分析,建模語言采用Python。通過分析實證數據,可以看到SVM算法對比傳統的時間序列ARIMA算法,在正則均方誤差(NMSE)上提高了4.25%,準確率有了較大提升,驗證了該算法的有效性。
(作者單位為西南財經大學)
參考文獻
[1] Dechow P,Sloan R . Returns to contrarian investment strategies:Tests of naive expectations hypotheses[J]. Journal of Financial Economics,1997,43(1):3-27.
[2] 鄒運.基于遺傳算法的風格選股模型研究[D].東北財經大學,2012.
[3] 蔣漢橋.基于支持向量機的證券投資決策研究[D].武漢大學,2005.