因子排序法
★☆☆☆☆
有人說,大公司體質比較健康,也有壟斷性,所以股票常上漲。
也有人說,小公司通常股本小,能受到資金拉抬,價格容易往上衝。
究竟誰才正確,哪種公司的股價上漲較快?
想知道答案,我們可以借用排序法來觀察。
我找出台股市值前300大公司,以及它們的3年漲幅,並製成圖表。
在我眼中,雖然出現局部隨機的起伏,但是整體而言似乎有「規律」。
為了方便檢視,我進一步把60家公司分成一組,總共5組,再次製圖。這時候規律更明顯,市值高的組別同時也有高報酬。
利用同樣的方式,我們可以找出近10年/20年、前500大/1000大公司的表現,並檢視市值和報酬的關聯。
相似的,投資人也可以測試「殖利率和股價」、「成立時間和成交量」、「老闆幾歲和法人買進占比」....等各類條件。
我曾經寫過的〈殖利率Fetish〉,內容就來自殖利率因子和報酬的關聯。我認為殖利率因子無效(或是不存在),但如果讀者持相反意見,一樣可以自行使用同樣的方式驗證。
可以這麼說,排序法的重點就在於規律。
我們把股票依條件排開,如果另一個特徵呈現隨機分布,那兩者大概沒什關聯。
相對的,要是結果像「市值-報酬」圖,我們可以合理懷疑,兩者存在某種規律。
排序的應用很廣泛,接下來讓我們進入因子領域,也就是因子排序。
1. 因子排序法
粗略的說,因子排序能幫助投資人檢驗和觀察因子的效力。
雖然排序法不是最佳的方法,但是門檻最低。
排序法能夠最大程度避免數學公式,包括定量分析中的相關性、標準誤、回歸等,對人類而言具有高效率。
因此在我的經驗中,即使投資人第一次接觸,也能知道排序法的精神。
白話文就是,因子有沒有效,一「看」就知道。
當然,在實戰的時候不可能這麼草率,我們會需要借助其它統計工具,讓因子的品質提升。
我畫了一張台股10年間Beta因子的排序圖,總量500家,乍看之下高Beta確實代表高收益。
然而僅憑因子排序圖,我不知道當時間窗口延伸到15/20年,這個條件會不會持續,而且圖中的分組和總量也是我「挑過」的數字。
因此,排序法只是一個好用方便的方法,而投資人遲早需要熟練其它武器。
2. 因子曝露和構建
因子(風格因子)的組成多半藉由多空交易完成,我們通常只需要把因子分成「小中大」3種或是「強弱」2種,然後選擇持有或賣空。
據我觀察,分組數量是主觀決定,市面上也有人分出5組,將因子曝露最強的20%資產扣掉最弱的20%.
大家想分成10組/20組/50組也可以,不過當分組太細,雜音會蓋過獲利規律,而且因子投射到資產(股票)池的時候,可能會造成標的太少,甚至從缺。
在此有人可能會好奇,怎麼連簡單的分組數量都能產生分歧?
這是因為,排序和分組,本身就是一個在效率和效能之間妥協的產物。
量化的因子分析不一定會採用排序法,有些框架是用線性回歸的方式,只不過這些方法都會涉及到統計和模型,本篇不談。
回到主題,假設現在有了目標因子,以市值因子為例,具體而言我該怎麼投資呢? 有兩個簡單的方式。
第一,我可以持有小市值股票。
第二,我也可以同時做多小市值和做空大市值。如果小市值是一個能獲利的因子,那我的因子策略就會有比較好的表現。
利用排序法做出因子投資組合,就是這麼親民,接下來我要補充兩個常見疑問。
3. 因子和資產的關係
有人覺得透過因子分組來找出股票,屬於「選股」,但我覺得兩者差異很大。
我沒有精確的定義來區分兩者,但因子投資大概也只有在構築步驟會涉及到選股。
推論上,依照某種條件把資產排序、分組,我們當然需要「選擇」。
可是,排序法的主要目標,是要讓投資人獲取因子,而不是持有某種資產(例如股票)。
簡單的說,如果你透過因子排序選出心儀股票,然後就長期持有,那比較接近選股。
如果妳只注重獲利的因子,而會依照篩選條件增減手中的持股,那大致屬於因子範疇。
另外一個疑問,可以輔助說明前者。
「因子和槓桿是什麼關係?」
多空和槓桿屬於同類概念,而因子也天生自帶槓桿。
或許股票池中根本沒有任何一支股票,具有夠純粹的因子原料,但是透過多空和槓桿,投資者有辦法得到放大的因子。
換個方式描述,投資人利用多空構建組合的過程,可以提取出超過資產本身的「因子濃度」。
此圖來自Alphaarchitect的一篇文章,大致描述投資組合加入價值和動量因子的表現,我們可以看到效率前緣的擴大。
效率前緣來自全市場股票,即使加入重複的股票也不可能造成曲線改變,因此,這剛好能說明因子投資和單純選股的不同之處。
順帶一提,如果把股票本身的多空槓桿限制也解除,效率前緣的圖會變得很狂妄,各位畫過一次就會意識到了。
4. 雙重排序法
再次回到主題,隨著時間進展,我們在單因子排序之外,也開始關心因子間的關聯,其中一個方法就是雙重排序。
我們先看1992 Fama等人的研究,他們把市淨率和市值兩個因子排序,並統計相應組別的平均月度收益。
各位看到什麼? 一堆數字。
我借用文內的資料,並畫出heat map.
或許各位能夠發現,從左到右或從上到下,股票的收益都呈現規律。
也就是說,市值和市淨率,在實驗時間內具有對於收益的解釋力。
在這裡需注意,Fama使用的是「獨立」排序,也就是一次排到位。
實際上,有另外一種「條件」排序,先控制一組變因,再取組內平均,然後換因子再試一次,最後會拿到兩組單獨排序圖。
「狂徒,有單獨排序也有雙重排序,那有沒有三重排序?」
5. 多重排序法
在三重或四重排序,投資人需要考慮到獨立或條件排序方式。
而且既然維度更高,所以大家會面對較多的資料和運算,脫離它原本簡約的特性。
理論上,你想要做十重因子排序也可以,只不過非常沒有計算效率。
因此,即使電腦可以輕鬆勝任多重排序,可是通常投資人不會把排序法應用到更高維度上。
注意我的說詞。
更高維度的因子分析和建構方式確實存在,也是整個因子投資框架的重點,但是排序法本身有極限,不適合處理相應的資料。
另外一點,傳統的風格因子投資和量化多因子、機器學習的特徵工程幾乎沒有交集,所以這裡說的「多重」或「高維」是指雙重以上,和常見語意的高維數據沒什麼關聯。
不過主觀而言,我認為排序法的維度和流行多因子模型有關,不超出六因子,因此不同廣義因子投資領域相安無事,井水不犯河水。
實務上,由於因子分析的精神就是重新拆分和融合,所以為了清楚評估各項重疊的因子風格,我們不太使用單獨排序,但三重排序又太複雜,因此「雙重」排序成為常見布局。
正常來說,我們用到多重排序法而不強調線性回歸,是希望在盡量不涉及數據統計的前提下,得出有意義的定性結論。
例如張櫓等人(2015)就曾經在寫q因子的時候,提到雙重/三重的因子構建,那是因為排序法有效避免曝露的計算。
我知道,Fama等人(2014)在FF5寫過四重因子排序,也就是「市值-市淨率-獲利能力-投資」,可是各位仔細看就能發現,每個因子都是二分法,所以整組數據也只分成16類。
多重排序法在此不是建構或檢驗的手段,而是作者的表達語言。
排序法是投資者初步處理數據的方式,讓我們能快速建立心儀的因子。
如果各位突然覺得哪個因子能夠帶來報酬,不妨利用排序法驗證。
相信只要經過足夠嘗試,各位也能順利成為神棍。
註:
想把因子應用到投資組合中,通常必須運用檢驗、回歸和優化的一系列步驟。
所以順序上,我應該放回歸和殘差的內容。
不過因為安排原因,本系列的下一小節,我打算放「因子正交化」。
統計部分,讀者可以自行找書複習。
對因子投資實踐有興趣的讀者,也可以看石川博士等人的《因子投資》
我推薦一整年,沒遇到第二個讀者 :)
參考:
Expanding the Efficient Frontier with Value and Momentum Strategies
The Cross-Section of Expected Stock Returns (FF 1992)
Like my work? Don't forget to support and clap, let me know that you are with me on the road of creation. Keep this enthusiasm together!
- Author
- More