跑完 4,585 天:4 種階層式配置法,沒一個贏過「誰波動小就多買一點」
讀者互動
已追蹤瀏覽 0 次,登入會員可按讚與收藏。
跑完 4,585 天:4 種階層式配置法,沒一個贏過「誰波動小就多買一點」
資產配置這個領域有個很吃香的賣點:把「怎麼分配錢」講得越像機器學習,聽起來就越專業。
HRP(階層式風險平價)是這股風潮的代表作。它會先算出資產之間的相關性,用樹狀分群把「長得像的」歸成一群,再一層一層把資金分下去。宣傳素材裡常見的關鍵字是分群、樹狀圖、遞迴二分。後來又長出了 HERC、NCO、Schur 補完法等一整個家族。
跟它們對打的是四個沒什麼面子的老方法。等權重就是每檔各買一份,不用估任何東西。反波動加權只做一件事:誰波動小就多買一點。ERC 風險平價再認真一些,要解方程式讓每檔資產貢獻的風險相等。最小變異則是教科書裡那個經典解:直接去找波動最小的那組權重。
我們把這八種方法放進同一條跑道,跑近 19 年、4,585 個交易日的樣本外資料,看誰真的活得比較好。這是實驗 K1639。
先把三個名詞講白
風險平價 的想法是:不要讓某一檔資產貢獻了整個組合的絕大部分風險。股票的波動遠比公債大,所以等金額買下去,你的組合其實幾乎全靠股票在起伏。風險平價會把股票的金額壓下來、債券的金額拉上去,讓每檔資產「貢獻的風險」差不多。
階層式分群 多做一步。它先看資產兩兩之間的相關係數,把 SPY、QQQ、IWM 這些走勢相近的股票 ETF 分成一群,把 TLT、IEF 這類利率商品分成另一群,然後在群跟群之間、群裡面各自分錢。理論上的好處是,配置決策順著市場的真實結構走,而不是把 11 檔資產拍平成一張表硬算。
樣本外 是這整件事的裁判。任何配置法拿歷史資料回頭調參數,都能調得很漂亮。K1639 的規則是:要決定 2015 年 3 月的權重,只准看 2015 年 3 月之前那 252 個交易日的報酬,之後發生什麼一概不准偷看。每月再平衡一次,每一塊錢換手都扣 5 個基點的交易成本。八種方法吃一模一樣的資料、同一組規則。
結果:前兩名都是老方法
| 方法 | 淨夏普值 | 年化報酬 | 最大回撤 | 年換手率 |
|---|---|---|---|---|
| ERC 風險平價 | 0.743 | 5.36% | -20.4% | 55% |
| 反波動加權 | 0.703 | 5.76% | -24.4% | 43% |
| HERC 階層式 | 0.685 | 4.30% | -20.2% | 154% |
| 等權重 | 0.645 | 6.99% | -34.4% | 31% |
| HRP 階層式 | 0.643 | 3.99% | -20.1% | 132% |
| 最小變異 | 0.537 | 2.87% | -17.8% | 139% |
| Schur 階層式 | 0.522 | 3.03% | -18.8% | 169% |
| NCO 階層式 | 0.448 | 2.58% | -21.9% | 116% |
夏普值愈高,代表每承擔一單位風險換到的報酬愈多。四個階層式方法排在第三、第五、第七、第八名。冠亞軍是 ERC 風險平價與反波動加權,兩個都是不用分群、不用樹狀圖的老東西。

十八年的累積報酬攤開來看,等權重是 +242%,HERC 是 +115%,HRP 是 +104%,NCO 只有 +59%。

「沒贏」到底有多沒贏
排名可以是運氣。我們拿夏普值差距做了配對移動區塊自助抽樣(1,000 次重抽、21 天為一個區塊、固定隨機種子),算出 95% 信心水準的合理範圍。
拿最強的 ERC 當基準,HRP 的夏普值差是 -0.100,區間 [-0.241, +0.049]。這個區間跨過 0,意思是資料還不足以斷定 HRP 比 ERC 差,但更不足以說它比較好。HERC 差 -0.058,區間 [-0.209, +0.091],同樣是零證據。
NCO 的差距是 -0.295,區間 [-0.501, -0.081],整段落在 0 左邊。Schur 補完法是 -0.221,區間 [-0.404, -0.029],一樣。這兩個在統計上確實輸給 ERC,不是抽樣運氣。
一句話總結:階層式方法要嘛跟老方法打平,要嘛明確落後。沒有一個提出證據說自己贏。
複雜方法輸在哪
先排除一個直覺的兇手:交易成本。階層式方法確實換手兇得多,HERC 一年周轉 154%,等權重只有 31%。但把每筆換手 5 個基點的成本乘下去,被吃掉的其實很少:HERC 每年的成本拖累是 0.077%,等權重是 0.016%。兩邊的年化報酬呢?等權重 6.99%,HERC 4.30%。成本這條線解釋不了那個落差。
真正的問題出在權重本身。11 檔資產的共變異數矩陣,每一格都要用過去 252 天的報酬估出來,而每一個估計值都帶著雜訊。配置法愈是「認真」地拿它們去解最佳化,就愈是在放大雜訊。等權重完全不碰這個矩陣,反波動加權只用到對角線上那幾個變異數(估起來最穩的部分),過度配適的空間幾乎是零。
放大雜訊的代價,最後長成一個很具體的東西:集中。

有效持股數是「你實際上真的分散到幾檔」的指標。同樣是 11 檔資產,等權重的有效持股數是 10.99,反波動加權 8.53,ERC 7.72。而 HRP 只剩 4.50,NCO 更只有 2.55。這裡有個諷刺的地方:以分散為賣點的方法,實際分散得比什麼都不做還少。
打開 HRP 的平均權重就懂了。它在 IEF 上放 29.7%、LQD 25.6%、HYG 18.1%,三檔債券與信用債就吃掉大半個組合;股票那五檔,每一檔的平均權重都不到 2.5%。等權重是每檔各 9.1%,股票該有多少就有多少。NCO 更極端,SPY 的平均權重只有 0.48%。這些方法算來算去,最後都得到同一個結論:債券波動低,多買點。它們只是把這個結論下得比別人重得多。
講句公道話:階層式確實修好了一個東西
HRP 當初被提出來,針對的是最小變異這類最佳化方法太過集中的老毛病。這一點它做到了。
拿最小變異當基準,HERC 的夏普值差是 +0.148,區間 [+0.012, +0.286],整段在 0 右邊,是這次實驗裡唯一一個階層式方法擊敗傳統方法的統計顯著結果。HRP 也贏 +0.106,只是區間 [-0.026, +0.238] 跨過 0,還不能定案。
所以階層式分群確實把最小變異的集中問題修好了一部分。麻煩在於,這個問題早就有更便宜的解法:反波動加權,一行程式碼,夏普 0.703。花上樹狀分群、遞迴二分、矩陣分塊的力氣,換到的是 0.685。
同一個賭注,兩張臉
把樣本切開看,故事更立體。
2008 到 2009 那 436 個交易日,階層式方法是全場最好的。HERC 的夏普值 0.127、最大回撤 -13.3%,同期等權重是 0.037 與 -34.4%。重押債券在那段時間是救命的。
2020 到 2022 那 756 個交易日,同一個賭注翻臉。股債同步下跌,HRP 的夏普值掉到 -0.384,NCO 是 -0.652,連 ERC 都翻負到 -0.074。八種方法裡只有兩個守在正值:等權重 +0.255,反波動加權 +0.060。押債券押得最少的那兩個。
階層式方法沒有比別人聰明,它只是把「債券波動低」這個判斷押得更滿。押得滿,就要接受它兩邊的極端結果。
這篇沒有說的事
這是一個 null result。我們沒有發明更好的配置法,也不打算把它包裝成什麼發現。
證據的邊界要講清楚:這 11 檔 ETF、2008 到 2026 這段期間、月頻再平衡、252 天回看窗、5 個基點成本、只用共變異數不預測報酬。換一組資產、換個再平衡頻率、加進報酬預測,結論都可能不一樣。這裡的 Schur 版本也是一個透明的遞迴分塊近似,不是原始論文每個變體的完整重現。
反過來說,把這個結果讀成「量化方法都沒用」也是過度解讀。ERC 風險平價本身就是一個要解方程式的量化方法,而它是這次的冠軍。
能站得住的結論只有一句:在這個測試裡,多加的那層階層式機器沒有換回它應得的回報。下次看到一個配置法把分群、樹狀圖、機器學習寫在賣點上,可以先問兩句:它跟「每檔各買一份」比過嗎?比的時候,有沒有偷看未來?
資料來源 :yfinance 調整後收盤價,11 檔 ETF(SPY、QQQ、IWM、EFA、EEM、TLT、IEF、LQD、HYG、GLD、DBC),共同期間 2007-04-11 至 2026-07-02,樣本外 2008-04-11 起共 4,585 個交易日。所有數字取自實驗 K1639 的結果檔,程式碼與圖表可完整重現。實驗結論代碼:CONDITIONAL_PASS_NULL_HIERARCHICAL_DOES_NOT_BEAT_SIMPLE_BASELINES。
方法文獻 :Lopez de Prado (2016) 提出 HRP;Raffinot (2018) 提出 HERC;Lopez de Prado (2019) 提出 NCO;Cotton (2024) 提出 Schur 補完配置。
懶人包圖組



相關文章
先讀正式關聯,若無則使用標籤與主題相似度補齊