先從動能是什麼說起。
假設把市場裡的股票按照過去一年的報酬排成一列,一邊是漲得最多的贏家,另一邊是跌得最多的輸家。動能策略做的事,就是買進前者,避開或放空後者。
它背後的想法並不複雜。股票上漲後,趨勢不一定會立刻停止;股票下跌後,壞消息也不一定已經完全反映在價格裡。投資人反應得慢、分析師逐步調整預測、資金跟著績效流動,都可能讓原本的價格方向延續一段時間。
不過,動能並不是看到一檔股票昨天上漲,今天就追進去。經典做法通常觀察過去幾個月至一年的報酬,並且刻意跳過最近一個月,以避開很短期的價格反轉。本文使用的 12-1 動能就是如此。它觀察過去十二個月,但不計算離現在最近的那一個月。
動能研究的起點通常追溯到 Jegadeesh 和 Titman 在 1993 年發表的〈Returns to Buying Winners and Selling Losers〉。他們發現,過去表現較好的股票,在接下來一段時間仍傾向跑贏過去表現較差的股票。這個結果後來被整理成 UMD 因子,也就是 Up Minus Down,衡量贏家和輸家之間的報酬差。
後續研究開始追問另一個問題。動能雖然長期平均報酬為正,為什麼偶爾會跌得這麼重?
Barroso 和 Santa-Clara 在 2015 年提出波動管理。當近期動能波動升高時,策略主動降低部位,希望避開少數特別嚴重的虧損。Daniel 和 Moskowitz 在 2016 年則進一步研究動能崩潰。他們發現,動能常在市場經歷下跌後的快速反彈中受傷,因為原本的輸家會突然大幅上漲。
另一條研究路線懷疑,普通動能可能只是混入了市場 beta 或其他共同因子。Blitz、Huij 和 Martens 因此提出殘差動能,先扣除市場、規模與價值因子的影響,再從剩下的個股報酬裡尋找趨勢。
所以,動能並不是一條簡單的「買強賣弱」規則。過去三十年的研究,已經從報酬是否存在,一路問到它為什麼崩潰、如何控制風險,以及訊號裡究竟混入了什麼。
照理說,研究做到這個程度,「動能到底有沒有效」應該已經沒有多少懸念。
可是,把這些想法放進一個真的能持有的 Nasdaq-100 組合後,答案卻沒有那麼直接。
從 1927 年一路算到 2026 年,美國 UMD 動能因子的年化平均報酬是 7.27%,t 值為 4.82。這表示它的長期報酬很難只用運氣解釋。動能也不是只在美國出現,其他國家與資產類別都留下過類似證據。
| 期間 | 年化報酬 | 年化波動 | Sharpe | t 值 | 最差月份 | 最大回撤 |
|---|---|---|---|---|---|---|
| 1927–2026 | 7.27% | 15.07% | 0.48 | 4.82 | −30.2% | −70.4% |
| 2006–2026 | 2.43% | 15.39% | 0.16 | 0.71 | −26.8% | −56.2% |
資料為 Fama–French UMD 月報酬。年化與統計定義見附註 1。
然而,2015 年至 2026 年 8 月,每月買進 Nasdaq-100 中動能最高的二十檔股票,組合的年化平均報酬為 19.95%,同期 QQQ 為 19.26%。看起來確實贏了,只是差距只有 0.76 個百分點,t 值也只有 0.21。
若再扣除 QQQ 的市場曝險,年化 alpha 只剩 0.06%,t 值為 0.02,幾乎就是零。
那問題就來了。學術資料裡的動能明明很清楚,實際組合的報酬也不差,為什麼扣掉 QQQ 的影響後,alpha 幾乎沒有留下來?
既然動能證據這麼多,照著做不就好了?
麻煩就在於,這裡的「照著做」其實沒有想像中直接。
學術文獻中的 UMD 並不是單純買進一批強勢股。它先把整個市場的股票依照過去報酬排序,再買進贏家、放空輸家。最後觀察的是兩邊之間的報酬差。
放空輸家不是一個可有可無的選項。換句話說,少了空頭部位,市場共同上漲的那一段就不會被抵銷,最後看到的報酬自然會混進更多大盤成分。
實際投資通常沒那麼完整。投資人可能不願意放空,也不會持有整個市場,只能從一個熟悉且能買到的股票池裡挑選標的。這裡使用的是 Nasdaq-100,而且只買進排名最高的二十檔。組合保留了動能的選股方式,卻拿掉了輸家那一邊。
既然如此,市場本身的漲跌就會重新進入組合。Nasdaq-100 又以大型成長股為主,所以動能組合和 QQQ 之間本來就會有很高的共同波動。實際估計的 beta 為 1.04,也就是 QQQ 上漲或下跌 1% 時,這個組合平均會往同一方向移動約 1.04%。
到這裡,前面的結果就比較容易理解了。組合年化報酬接近 20%,不代表其中有 20% 來自動能。大部分報酬可能只是持有 Nasdaq-100 的結果,動能真正多帶來多少,需要另外拆開。
那要怎麼拆?
首先,回測不能站在今天回頭挑股票。早期探索曾經使用事後整理的股票名單,由於那份名單帶有未來資訊,相關結果不納入本文。這次改用每個月份當時的 Nasdaq-100 成分股,並且只使用當時已經可以取得的價格。
目前資料共涵蓋 13,974 個成分股月份,其中 301 個月份缺少價格,覆蓋率為 97.8%。缺漏資料可能影響個別月份的排序,但無法確定偏誤方向。因此,以下結果只能解讀為現有 point-in-time 資料下的估計,不是一份毫無缺口的歷史重建。
資料處理乾淨之後,仍然剩下一個很直覺的疑問。即使做不到論文裡完整的多空因子,這二十檔股票畢竟不是隨便挑的。它們真的沒有比其他 Nasdaq-100 公司更好嗎?
那會不會只是 QQQ 這個比較對象不公平?
QQQ 並不只是「持有 Nasdaq-100」。它還按照公司市值分配權重。少數大型公司占有很高比重,其餘公司的影響則相對有限。
可是,動能二十檔組合採用的是等權。無論公司大小,每檔股票起始權重都是 5%。因此,直接拿它和 QQQ 比較時,差異不只來自選了哪些股票,也來自資金如何分配。
若要單獨觀察選股效果,可以把比較對象改成等權 Nasdaq-100。兩邊都採用等權,主要差別便剩下是否經過動能排序。
這樣一比,動能選股看起來就有些不同了。等權持有所有 Nasdaq-100 成分股的年化平均報酬為 14.98%,動能二十檔則為 19.95%。兩者相差 4.96 個百分點,t 值為 1.29。
這個結果還不到一般會稱為統計顯著的程度,但也不能直接當成零。至少在這段樣本中,動能選出的二十檔股票,確實比等權持有整個 Nasdaq-100 表現更好。
看到這裡,很自然會得到另一個猜測。也許動能排序確實有作用,只是 QQQ 剛好重押了幾間表現很強的巨型公司,才讓兩者最後看不出差距。
這個解釋聽起來合理。那既然如此,只要固定動能選出的股票,再把權重改得更接近 QQQ,應該就能看出超額報酬究竟來自哪裡。
事前預期是,超額報酬可能縮小,但不至於完全消失。畢竟股票還是那些股票,動能訊號也沒有變。
結果偏偏不是這樣。
股票都沒換,為什麼答案會翻到另一邊?
那就先把選股固定下來,只動權重看看。
股票不換,動能排名不換,換股日期也不換。唯一的改動,是把每檔 5% 的等權配置改成市值加權。
若報酬主要來自動能選股,這個版本仍然持有同一批贏家,理論上應該保留部分效果。然而,市值加權版本的年化平均報酬只有 18.26%,相對 QQQ 的超額報酬為負 0.85%。
原本等權版本領先 0.76%,改成市值加權後反而落後 0.85%。
到這裡,前面那個解釋就站不太住了。
動能選出的股票沒有改變,結果卻從贏變成輸。既然訊號保持不動,改變的那一部分報酬只能來自權重。因此,等權配置不是包裝策略的一個小細節,它本身就是策略報酬的一部分。
這並不能證明原來的 0.76% 全部由等權造成。樣本不長,兩個估計值也都不精確。較窄而且更安全的解讀是,現有資料無法將等權版本的領先完整歸因於動能。
說白一點,股票沒有換,訊號也沒有換,只改了權重,結果就從贏變成輸。那前面多出來的報酬,當然不能全部算在動能頭上。
| 組合 | 年化報酬 | 年化波動 | Sharpe | 最差月份 | 最大回撤 |
|---|---|---|---|---|---|
| QQQ | 19.26% | 18.64% | 1.03 | −13.6% | −32.6% |
| 等權 Nasdaq-100 | 14.98% | 16.92% | 0.89 | −10.6% | −27.9% |
| 前 20 名,等權 | 19.95% | 22.89% | 0.87 | −19.9% | −31.0% |
| 前 20 名,市值加權 | 18.26% | 21.61% | 0.84 | −13.8% | −29.0% |
等權前 20 名相對 QQQ 為 +0.76%(t = 0.21);市值加權版本為 −0.85%(t = −0.26)。市值資料處理見附註 3。
原來「動能策略」這個名稱比實際內容簡單很多。組合裡同時存在動能排序、Nasdaq-100 的市場曝險,以及等權相對於市值加權的差異。績效曲線把這些東西加在一起,卻不會主動告訴讀者每一部分貢獻了多少。
不過,問題還沒有完全結束。也許權重只是把一個本來就不夠純的動能訊號放大了。那如果把訊號做得更集中、更乾淨,結果會不會不一樣?
如果只留下最強的股票,效果會不會比較明顯?
二十檔股票或許太多了。排名接近第二十名的公司,動能強度自然不如前幾名。如果這些股票稀釋了訊號,只持有前十檔應該能提高報酬效率。
然而,Top-10 的結果沒有支持這個想法。它的 Sharpe ratio 和 Top-20 大致相同,加入相同的波動管理後反而更差。集中持股放大了個別公司的影響,卻沒有帶來更清楚的動能報酬。
那會不會是普通動能挑到的,只是近期跟著市場一起上漲的高 beta 股票?
殘差動能正是為了處理這個問題。它先扣除市場、規模與價值等共同因子的影響,再依照剩餘報酬排序。若普通動能混入太多市場曝險,殘差版本應該選出一批不太一樣的股票。
可是,結果又沒有想像中那麼不一樣。
殘差動能和普通動能的報酬相關係數高達 0.94。年化波動由 23.2% 降至 20.8%,但 Sharpe ratio 從 1.04 降至 1.01,平均換手率則由 25% 升至 32%。2020 年 3 月,殘差版本甚至跌得更多。
這不表示殘差動能在其他市場無效。Nasdaq-100 本來就是一個相對集中的股票池,成分股大多暴露於相近的成長與科技因子。扣掉共同波動後,剩下可供排序的公司差異可能沒有想像中多。
換句話說,方法確實變複雜了,選出來的東西卻幾乎還是同一組。至少在這個股票池裡,殘差化沒有分離出另一套更有用的動能訊號。
到這裡,幾個看似合理的修正都沒有讓 alpha 變得更清楚。增加集中度沒有用,換一套更純的訊號也沒有用。原本以為只是某個設定不夠好,繞了一圈之後,問題反而更像是投資範圍本身限制了動能可以提供的東西。
既然報酬很難再提高,問題便只好轉向另一邊。動能最令人擔心的從來不只是平均報酬,而是偶爾會出現很深的虧損。
那至少能不能讓它少跌一點?
動能的麻煩,往往出現在少數幾個月
動能策略的虧損通常不是平均分布。換句話說,風險往往不是每個月多跌一點,而是平常看不出異常,少數月份卻突然跌得很深。
這類虧損常發生在市場由急跌轉為反彈時。原本的輸家突然大幅上漲,原本的贏家同時落後,正好打中多空動能的兩側。
Barroso 和 Santa-Clara 的波動管理不試圖預測反彈何時發生。它只觀察近期動能報酬的波動。波動升高時降低部位,平靜時再恢復。
完整 UMD 歷史中,這個做法確實減輕過幾次動能崩潰。2009 年 4 月,原始 UMD 下跌 26.8%,管理版本下跌 7.9%。2020 年 11 月,跌幅也從 12.0% 降至 4.1%。
| 月份 | 原始動能 | 波動管理後 | 實際部位 |
|---|---|---|---|
| 1932-07 | −25.3% | −11.2% | 44% |
| 1932-08 | −26.4% | −11.2% | 42% |
| 2009-04 | −26.8% | −7.9% | 30% |
| 2020-11 | −12.0% | −4.1% | 34% |
看起來風險問題似乎找到了解法。可是,放進 Nasdaq-100 多頭組合後,結果又多了一層。
波動管理把最大回撤從負 31.0% 降至負 23.6%,最差單月由負 19.9% 收窄至負 14.5%。這一部分確實符合預期。然而,年化平均報酬也從 19.95% 降到 14.13%,Sharpe ratio 從 0.87 降至 0.80。
所以,它讓組合少跌了一些,卻沒有提高每單位風險換到的報酬。對真的會因為回撤而中途離場的人來說,這仍然可能有價值。只是這個價值來自比較容易持有,不是來自更高的 alpha。
既然單靠波動還不夠,那能不能再聰明一點,只在熊市裡縮小部位?
依照 Daniel 和 Moskowitz 的想法加入熊市閘門後,訊號主要在 2022 年 10 月至 2023 年 11 月啟動。偏偏 2022 年 10 月的動能組合上漲了 8.1%,閘門卻在這個月降低部位。它等到跌勢已經發生才確認熊市,接著切掉的反而是反彈。
幾種熊市設定的 Sharpe ratio 都低於單純波動管理版本。這項結果不能推翻原論文。說得更精確一點,這裡使用的是 Nasdaq-100 多頭組合、簡化的市場狀態代理,而且樣本中沒有長時間的熊市。能下的結論只有,這個熊市閘門在目前環境裡沒有改善策略。
熊市閘門沒有改善結果,那會不會是原本的風險限制反而太保守?
下一個檢驗取消一倍曝險上限,允許模型在市場平靜時使用槓桿。無上限版本的最高曝險達到 1.49 倍,年化報酬約增加 1.2 個百分點,Sharpe ratio 卻只提高 0.01。
更麻煩的是,模型在 2020 年 2 月仍然帶著槓桿。因為當時觀察到的歷史波動還很低,系統看不見即將發生的急跌。
到這裡才比較看得清楚,波動管理能做的事其實有限。它可以在風險已經升高時縮小部位,卻無法知道一次突然的下跌即將開始。風險上限看起來犧牲了一點報酬,實際上是在防止模型對平靜的過去做出太有把握的反應。
| 試驗 | 結果 | 決定 |
|---|---|---|
| Top-20+波動管理+價值 | 初版鎖定規格 | 保留核心 |
| Top-10 | Sharpe 沒有改善,波動管理後更差 | 不採用 |
| 取消槓桿上限 | 最高曝險 1.49;Sharpe 只增加 0.01 | 保留上限 |
| 熊市狀態閘門 | 訊號落後,切掉反彈 | 剔除 |
| 殘差動能 | 與原策略相關 0.94,換手更高 | 剔除 |
| 市值加權交叉驗證 | 相對 QQQ 的超額轉負 | 維持等權,改寫解釋 |
本文只使用目前仍能重製的結果。早期遺失腳本的摘要數字沒有納入,見附註 4。
原來「有效」問得太快了
回到最初的問題,動能策略到底有沒有效?
若指的是學術上的動能現象,答案仍然偏向肯定。近百年的 UMD 報酬很難由隨機波動解釋。即使最近二十年的結果弱了許多,現有資料也不足以宣告動能已經消失。
但若問題是,只買 Nasdaq-100 裡動能最高的二十檔股票,能不能穩定打敗 QQQ,目前的答案並不樂觀。等權版本多出 0.76%,差距不顯著,alpha 也接近零。更換權重後,超額報酬還會直接轉為負數。
這裡多少有點可惜。長期證據如此完整的因子,到了可以實際持有的組合裡,沒有自動變成一條穩定勝過 QQQ 的曲線。增加集中度、改用殘差動能或加入熊市判斷,也沒有把缺少的 alpha 找回來。
不過,繞了一圈之後,答案反而清楚了。
原來前面一直卡住,是因為學術研究和實際策略回答的根本不是同一題。學術上的動能問的是,過去贏家和輸家之間是否長期存在報酬差。實際策略問的則是,在某個股票池裡,只保留多頭、選定持股數量、決定權重,再加上風險限制後,投資人最後會得到什麼。
兩者當然有關,但不能直接畫上等號。
最容易被忽略的,偏偏是看起來最普通的權重。股票沒換,訊號沒換,換股日期也沒換,只把等權改成市值加權,結果便從小幅領先變成落後。讀到這裡才會發現,先前被稱為「動能報酬」的東西,原來一直混著投資組合設計的影響。
所以,動能並沒有失效。只是從一個被研究近百年的因子,走到一個真的能買、也真的能持有的組合,中間每一個看似普通的決定,都可能比訊號本身更接近最後看到的績效。