RiceQuant策略研究系列----基於組合權重優化的風格中性多因子選股策略

最近對於多因子都比較感興趣,之前所做的工作多在於單個因子的測試,但是後來發現這樣的工作已經被許多許多人和機構(券商,信息提供商)詳盡的做過了,可能更重要的還是如何把這些因子組合起來,形成一個穩定的知道哪裡掙錢哪裡虧錢的策略,所以今天給大家分享一個風格中性的多因子策略框架,大家可以根據自己的判斷加入和刪除自己喜歡的因子。接觸python和多因子不是很久,代碼寫的不是很清晰,因子也只是作為示範,希望這個框架可以給大家提供一些幫助。

本模型基於國泰君安在2015.04.06的研報,大部分內容也摘錄於這篇研報。本模型並未對因子選擇部分進行優化,只是作為一個框架性結構,大家可以自行定義和嘗試自己選擇的因子和想要中性化的因子。在中性化其他因子之後,我們可以得到這個因子的『pure return』,這個結果可以作為IC,t值等傳統檢測方法的一個補充。

多因子選股作為量化投資研究領域的經典模型,在海內外各類投資機構 均受到廣泛研究和實踐應用。在國內,自2010 年滬深 300 股指期貨上 線以來,以多因子選股為代表的阿爾法對沖策略也逐漸走入了公眾的視 野。然而在 2014 年 12 月的市場行情中,阿爾法對沖策略卻遭遇了重大 挫折,究其原因不難發現,組合帶有過於明顯的市值風格特徵是導致策 略收益大幅波動的主要原因。

本模型有別於傳統的多因子研究,並未將重點放在阿爾法因子的挖掘上,而是著重研究了股票組合的權重優化對策略風格特徵的影響並給出了一個自定義因子的回測模型。

在多因子模型中,決定策略收益穩健性的關鍵步驟正在於股票組合的權重配置。因此,從量化對沖策略追求收益穩定性的角度而言,組合權重優化對多因子模型起著至關重要的作用。

從具體的研究思路而言,我們從結構化多因子風險模型的角度出發,利 用 BARRA 風險因子有效性的檢驗方法,構建了基於 30 類行業因子、9 類 風格因子的結構化多因子風險模型,奠定了預測股票組合波動率的基 礎。之後,我們通過對純因子股票組合的研究,考察了各類因子阿爾法 性質的強弱,並解釋了因子背後的經濟、金融學邏輯。最後,我們通過 股票組合的權重優化計算,得到了市值中性、行業中性、風格中性約束 下的最優投資組合。

結構化風險因子模型利用一組共同因子和一個僅與該股票有關的特質因子解釋股票的收益率,並利用共同因子和特質因子的波動來解釋股票收益率的波動。結構化多因子風險模型的優勢在於,通過識別重要的因子,可以降低問題的規模,只要因子個數不變,即使股票組合的數量發生變化,處理問題的複雜度也不會發生變化。

結構化多因子風險模型首先對收益率進行簡單的線性分解,分解方程中 包含四個組成部分:股票收益率、因子暴露、因子收益率和特質因子收 益率。那麼,第 j 只股票的線性分解如下所示:

那麼對於一個包含 N 只股票的投資組合,假設組合的權重為 (w1 , w2 ,..., wN )T ,那麼組合收益率可以表示為:

其波動率可以表示為:

X作為因子載荷矩陣,k個因子n個股票的載荷矩陣可以表示如下:

因子收益率的協方差矩陣可表示如下:

delta為股票的特異波動率。

最大化經風險調整後的收益為目標函數,同時考慮了預期收益與預期風 險的作用,並且在馬克維茨的均值方差理論框架下,引入了風險厭惡係數lambda,具體權重優化表達為:

大家只需更改以下幾處即可:

1. 第339行的index。

2. 第342行的因子名稱,當然,你需要在上面定義你的因子的函數。

3. 第426行,你想讓哪些因子與對沖所用的指數因子載荷一樣。

大家可以在Ricequant上測試一下:

基於組合權重優化的風格中性多因子選股策略框架


推薦閱讀:

投資的重要武器——複利
怎樣從新聞聯播里挖掘出有潛力的股票?
為什麼一定會存在趨勢?

TAG:量化 | 多因子模型 | 股票 |