本文首發於微信公眾號:要資訊。文章內容屬作者個人觀點,不代表和訊網立場。投資者據此操作,風險請自擔。
概率模型簡介
概率模型是一大類模型的統稱,是常規金融模型的概率化表達。通常概率模型會把常規金融模型中的某些參數看作是一個未知的概率分布,這個未知的分布通常會預先給定一個基本假設,即先驗概率,然後再根據具體的觀測數據去推斷或者逐步修正這些假設。一種比較常見的概率模型就是貝葉斯線性回歸模型,這類模型把線性回歸中的係數 和截距等參數作為未知的概率分布。另外一類是最近二十年興起的狀態空間模型(State- Space Model, SSM)和隱含馬爾科夫模型(Hidden Markov Model, HMM),這類模型假設在可 觀測數據背後包含了某種隱含模式,並且可以利用條件概率分布來發掘這些隱含模式來 總結數據規律以及預測未來數據。SSM 通常用於描述連續的隱含狀態而 HMM 通常指有 限的隱含狀態。這類模型首先在物理學中得到應用,隨後在自然語言處理中被發現取得 良好效果。目前這類模型也常出現在金融、經濟等學術論文中用於檢驗經濟指標有效性 或者用作預測。這類模型在國外一些對衝基金公司也有所應用。
概率模型可以比靈活地從較少量數據中調校出來,但是在傳統機器學習問題上,比 如分類,非線性回歸等,這類模型效果在精確性和擴展性方面表現不會特別好。而另一 方面,深度學習在圖像識別、語音識別方面取得較大突破,其原因之一是大數據為較復 雜的模型架構提供了支持。如果把這兩者的優勢結合,則有可能在少量數據的基礎上構 造出較為複雜的模型,例如貝葉斯神經網絡。
本報告將簡單介紹概率模型的構造流程,常見概率模型的類型,最後給出貝葉斯線 性回歸模型和貝葉斯神經網絡在期貨預測中的應用例子。
概率模型構建流程
概率模型的構造通常要求對待預測的問題有一個直觀的認識,比如從可觀測資料庫存,現貨價格,利率,工廠開工率,產品優良率,成交量和持倉量等信息中推斷出期貨價格可能由基本面,宏觀,流動性等不可觀測的因子在背後驅動期貨價格漲跌。由此構造出有一定經濟學含義的模型,並且加入一定的主觀預期,即模型參數的先驗分布。再由可觀測數據去推斷出這些隱含因子對期貨價格的影響作用,也就是說利用特定的推斷算法 計算後驗分布。最後使用後驗分布來測試模型,找出其優點和缺點,如果能滿足則該概率 模型在此問題上有一定的解決能裡,否則則重新修改。這就是Box循環,如下圖所示。
Box循環清晰地把以下幾個步驟區分開了:把主觀認識加進模型,根據數據進行推斷,在現實環境中進行模型評價以及根據結果修改模型假設。第一個步驟概率模型構造由於需要加入對期貨價格行程的主觀認識,這個步驟更像是一個藝術過程。研究員甚至可以把商品產業鏈的相關信息編進概率模型中,例如一個簡單的豆粕和豆油的部分產業鏈可以如下圖表示。從大豆種植面積開始經過貿易,加工等環節生產出豆粕和豆油,這裡面的各種因素都會對其最終價格產生影響,而其下遊產物也可能由於供需關係的變動對原材料產生影響,這一系列過程可以都用一類稱作貝葉斯網絡的概率模型來表示,模型參數就是各個流程之間的條件概率分布。隨著研究員的認識深入,這個網絡可以不斷擴展。甚至添加一些變量,例如貿易利潤和加工成本可能同時受制於某些不可觀測的宏觀因素。
期貨研究員如果對某一商品品種有一定認識都可以構建出類似的概率模型,然後把可觀測數據交給模型利用特定的推斷算法計算出模型參數的後驗分布。對大多數概率模型來說,根據可觀測數據進行調校都不是簡單的步驟,兩種常用的方法是馬氏鏈蒙特卡羅和變分推斷。調校後的模型是否有效則受制於更多因素,例如數據質量,數據樣本是否足夠多,概率模型的推斷方法選取是否適當等等。最後可以用後驗預測檢驗(Posterior Predictive Checks, PPC)來評價模型對數據的擬合程度以及交叉驗證來評價模型的預測能力。
概率模型類型
概率模型包含了一大類模型,在金融建模中經常會用到,但是他們的名稱常常不統一,例如常用的regime-switch 模型通常包含2-3個regime,他們其實就是一類特殊的隱含馬爾科夫模型。David M. Blei 在 Build, Compute, Critique, Repeat: Data Analysis with Latent Variable Models(2014)中總結了幾類常用的概率模型,其架構如下圖所示。圖中深藍色 圓圈為可觀測變量,白色圓圈代表不可觀測變量,深藍色方框代表固定的模型超參數。灰色的箭頭表示各個變量之間的依存關係。其中的混合會員模型(mixed membership)常用於無監督的聚類分析,矩陣因子分解模型(matrix factorization)則用於特徵分解,如用戶行為分析等,這兩類概率模型在金融上的應用較為少見,所以在這裡不作討論,下面主要介紹其他幾種在金融中較為常見的概率模型
1.貝葉斯線性回歸(Bayesian Linear Regression, BLR)
這類模型比較基礎,主要就是把通常線性回歸模型中的係數看作是未知分布,可以用如下式子表示
其中ft1為自變量因子。A 和b為貝葉斯模型的係數和截距,其先驗分布均通常取為標 準正態分布,但也可根據具體情況採用其他與現實情況更為接近的分布。rt的預測誤差服從 正態分布(0, 2),其方差2可取標準對數正態分布。這裡的參數= {, b, 2}的後驗分布 都是通過歷史數據進行馬爾科夫鏈蒙特卡諾或者變分推斷。在推斷出後驗分布後就可以計 算rt的後驗分布了,也就是給定了當前因子下的條件概率分布(rt|, )。
2.隱含馬爾科夫模型(Hidden Markov Model, HMM)
隱含馬爾科夫模型在線性模型的基礎上可以用公式表示為
其中St1為當前的區域變量(regime),其取值是離散的St1 = 1,2,3, …。通常在金融應用中只取2-3個區域,例如當St1=1時,市場處於上升狀態,當St1= 2時,市場處於調整狀態,當St1=3時,市場處於下跌狀態。而有的模型會忽略掉市場的調整狀態,只取剩下兩種。同時模型通常也會假設各個狀態之間的存在一個轉移概率矩陣,這個轉移概率和在各個狀態下的係數A都是不可觀測的,他們可以是固定的參數也可以是貝葉斯化的概率分布。模型 的使用者並不知道當前市場處於哪個區域,需要從可觀測數據中使用特定算法進行推斷出當前市場所處區域的概率,將來市場所處的概率,以及市場出現轉換的概率。
在實際使用當中HMM的具體形式可能會稍作變化,例如Andrew Ang在How do Regimes Affect Asset Allocation?(2002)中使用了如下形式的HMM來研究在牛市和熊市中如何調節資產配置方案。在其論文中,股票超過政府債券的額外收益t表示為
Min Dai 等人在 Optimal Trend Following Trading Rules (2011)中把 HMM 加入到隨機過程模型中。例如用ft表示在t時刻的股票價格,滿足如下隨機過程其中()為預期收益率,其值取決於所處的兩個牛市或熊市區域,為常數波動率,與所處regime無關,是標準布朗運動。下表中列出了利用 S&P500 校正該 HMM 模型的參 數值,其中1和2分別是牛市和熊市的期望收益,1和2是從牛市轉移到熊市和熊市轉移 到牛市的轉換強度。從表中可以看出這些參數在 2008 年以前都比較穩定,2009年達到峰值,之後開始回落,這跟 2008-2009年間美股出現的大幅下滑表現一致,尤其是1達到最大值,說明市場有強趨勢向熊市轉換。由此可見該HMM模型對市場有一定的描述能力。
3.狀態空間模型(State Space Model, SSM) 狀態空間模型是隱含馬爾科夫模型的進一步擴展,其線性形式可以表示為其中公式(5)被稱為觀測方程,At是一個不可觀測的隱含狀態向量。該向量序列At由被稱為過渡方程的公式(6)定義,Bt是一個過渡矩陣。(0, 2)和(0, 2)相當於白噪聲。與之前的 HMM 相比,SSM中的At的取值變成了可變的時間序列,而且其分布不再是獨立相同的了。這類模型首先被用在航空學上,觀測方程所描繪的變量rt為雷達可觀測結果並帶有白噪聲幹擾,狀態At表示飛行器在空間位置、速度等狀態,該模型目標就是為了通過雷達觀測,求解出飛行器的狀態。這類模型在金融上的應用也有很多,較為經典的是隨機波動率模型。例如 Heston,
經過一階離散線性化後就可以寫成狀態空間的形式,其中為可觀測的股票價格,隨機波動率作為不可觀測的隱含狀態。把Heston模型寫成狀態空間的形式就可以使用時間序列,而非通常的期權價格進行校正了。
在圖 3:e中David M. Blei提到的卡曼濾波(Kalman filter)通常是作為一種實現SSM的推斷方法,其最初的設計目地就是用於雷達跟蹤,與HMM的發展是相互獨立的而且起源於不同的研究群體,但他們都是概率模型的一種實現形式。
4.貝葉斯神經網絡(Bayesian Neural Network, BNN)
前面所提到的幾類概率模型都是線性的,雖然也可以做成非線性的形式,但是要求模型構造者對建模問題需要有一定的認識前提。而利用期貨產業鏈構建貝葉斯網絡更要求研究者對整個產業有較為深刻的認識。上述模型都要求研究員對數據進行不同程度的加工,這也使得概率模型的構建更像一門藝術。目前正在興起的深度學習其成功的原因之一是能 夠利用算法自動發掘數據內部特徵,從而減少研究人員對數據人工預處理的依賴。由於深度學習用有一套相對比較科學的特徵提取和篩選方法,從而使得模型構造過程更加理性與客觀。如果把概率模型和深度學習相結合,則有可能實現優勢互補。其中貝葉斯神經網絡 就是兩者結合的一種形式,這類模型其實是把神經網絡中的權重看成是一個未知的先驗分布,然後根據觀測數據利用貝葉斯統計推斷的方法去求解權重的後驗分布。有概率模型開 源軟體的研究人員認為貝葉神經網絡具備的優勢包括:
1.預測結果的不確定性
貝葉斯模型能夠體現預測結果的不確定性,而這點通常是深度學習中被忽略掉的。比如預測結果的不確定性可以幫助研究者找到預測不太好的樣本,從而加強對這些樣本的訓練。
2.模型參數的不確定性
考察模型參數的不確定性也能幫助研究人員評價模型是否穩定。
3.通過先驗分布實現正則化
普通深度神經網絡通常使用權重懲罰來使得模型某個參數不至於過大或過小,從而防止過度擬合,而貝葉斯模型則由於有先驗分布的約束從而使後驗分布不至於產生過大的偏離。
4.通過先驗分布進行遷移學習 如果需要對某個新問題進行建模,那麼可以把在就問題中訓練好的模型參數作為研究新問題的先驗分布。這在期貨上可能也會有所應用,比如對國內即將上市的原油期貨,在上市初期,相關研究員可以用外盤布倫特原油期貨的大量相關數據進行模型訓練然後再把其作為先驗分布,結合國內原油期貨上市初期的少量數據進行訓練。
概率模型應用實例
在這一節裡嘗試對比貝葉斯線性回歸模型(BLR)和貝葉斯神經網絡(BNN)在預測滬銅主力期貨的收益。這裡選擇 BNN 而非其他介紹的模型,原因是他是概率模型的一個較高形 態而且不太依賴人工對數據的預處理。這裡的輸入參數以周頻基本面數據為基礎,包括銅庫存、期貨持倉量、成交量、相關利率、匯率等20多個可觀測因素。由於因子數目較多, 直接導入上述貝葉斯模型進行計算運算量較為龐大,所以這裡使用了主成份分析(Princinple Component Analysis, PCA)的方法以減少變量個數。貝葉斯線性回歸模型採用留一交叉驗證 法(Leave One Out Corss Validation)進行超參數篩選,詳情可參閱2017年8月華泰期貨量化專題報告:貝葉斯線性回歸在期貨交易中的應用。
目前貝葉斯神經網絡是採取了較為簡單的全連層結構如下圖所示,層神經元使用的激活函數為tanh,輸出層激活函數為 sigmoid,權重的先驗分布為標準正態分布,超參數包括層數目和其包含的神經元數量等。為方便比較兩個模型,貝葉斯神經網絡的輸入與線性回歸模型一致,都是使用PCA後相同的主成份。與線性回歸模型不同的是,由於訓練貝葉斯模型的計算量較大,只採用時間序列上前350個周頻數據樣本作為訓練集,約60個的樣本作為驗證集篩選超參數,約60個樣本作為測試集,所以BNN只訓練了一次,而BLR則是固定時間窗口每周滾動擬合。這裡使用的模型統計推斷方法為開源軟提供的自微 分變分推斷(Automatic Differentiation Variational Inference, ADVI)。
回測時這兩個模型都是先預測出滬銅主力合約下一周的上漲和下跌概率,如果上漲概率大於0.5就做多,下跌概率大於0.5就做空。每周最後一個交易日進行預測和調倉,為方便計算假設能以收盤價交易。這兩個模型的收益曲線如下圖,由於貝葉斯線性回歸模型採用了較小的時間窗口進行滾動擬合,所以驗證集數據較多。但由圖中可以看出這兩個模型的交易曲線差異並不是十分大,在2015年這段時間收益都比較平緩,而之後貝葉斯神經網絡的收益增長的趨勢則比較明顯。
這兩個模型在滬銅期貨上的收益如下圖所示,由於這兩個模型的驗證集和測試集數據樣本的時間跨度不一致,所以對其分別做了調整,使他們使用相同的樣本,從而BLR的驗證集能與BNN的驗證集比較,BNN的測試集能與BLR的測試集比較。在相同的驗證集區間BNN的收益為10.13%而BLR只有1.97%。在相同的測試集合上BNN的收益為20.91%略高於 BLR的18.84%。但考慮到BNN並沒有使用滾動訓練的方法,BNN的效果提升還是比較明顯的。
結果討論
本報告首先對概率模型進行了基本介紹,包括其框架,構建流程,同時簡述了幾類重要模型在金融建模上的應用,包括熊市和牛市的轉換判別,隨機波動率的推算和混頻數據的預測等。最後本報告嘗試基於滬銅期貨基本面因子,比較了貝葉斯線性回歸模型和貝葉斯神經網絡對交易滬銅期貨的收益。雖然貝葉斯神經網絡沒有使用滾動訓練的方法,運算量大大降低,但是在相同的數據樣本上卻取得比貝葉斯線性回歸模型更好的效果,是值得深入研究的一類模型。
作者:華泰期貨研究院量化策略組 陳維嘉
文章來源:微信公眾號要資訊
(責任編輯:陳姍 HF072)