債券還是黃金?動態切換『避險端』在波動率目標策略裡的真實表現
讀者互動
已追蹤瀏覽 0 次,登入會員可按讚與收藏。
債券還是黃金?動態切換『避險端』在波動率目標策略裡的真實表現
一句話結論
我們把波動率目標(VT)框架裡「避險那一半」拿來嘗試 6 種動態切換配置——靜態黃金(GLD)、靜態長天期公債(TLT)、依利率方向切換、依動能切換、固定五五分、波動率倒數加權、純現金——結果是: 沒有任何一種動態切換能穩定打敗最簡單的「永遠 50% GLD」配置 ;長期 OOS 平均風險調整後報酬最高的,反而是這個 boring baseline(OOS 平均 1.118)。本研究判定 verdict 為 NEGATIVE / 動態方法 fail ,不建議投資人放棄靜態黃金去追求動態切換。
起點:為什麼要研究避險端?
過去幾年我們在 VolPred 研究系統裡反覆驗證過一個事實—— SPY 50% × (12/VIX) + GLD 50% 這個簡單到幾乎沒有可調參數的組合,在 2005–2026 樣本上交出的長期表現,比大多數複雜的動態擇時方法都更穩定(K507、K425、N176、T19 等)。
但這個結果讓我們一直放心不下一個問題: 避險端的 50% 為什麼一定要全押 GLD?
直覺上,當利率下行時,長天期公債(TLT)會大漲、報酬比黃金更亮眼;當利率上行時,黃金作為非生息資產反而會勝出。如果能即時辨識利率環境,是不是可以動態切換 GLD ↔ TLT,拿到「兩邊都最好」的部分?
K561 這個實驗就是要把這個直覺,做一次徹底的、可驗證的、嚴格統計檢定門檻下的回答。
實驗設計
我們 固定 VT 主結構不動 :
- 股票端永遠是
12/VIX × 50%押 SPY,剩下沒押滿的部分回到現金 - 避險端固定 50%,差別只在「這 50% 怎麼配」
避險端 6 + 1 = 7 種策略各跑一次:
| 策略 | 配置邏輯 |
|---|---|
| A 靜態 GLD (baseline) | 永遠 50% 黃金 |
| B 靜態 TLT | 永遠 50% 長天期公債 |
| C 利率條件切換 | 過去 63 日 10Y 殖利率上行 → GLD;下行 → TLT |
| D 動能切換 | 過去 60 日 GLD vs TLT 報酬,誰高選誰 |
| E 五五對半 | 25% GLD + 25% TLT 永遠不動 |
| F 波動率倒數加權 | 過去 63 日 GLD/TLT 波動率倒數比例配置 |
| G 靜態現金 | 避險端全現金(純 VT benchmark) |
樣本期間:2004-11-18 到 2026-03-27,共 5,366 個交易日。
評估方法包括:
- 全樣本表現 (年化報酬、年化波動、風險調整後報酬、最大回撤、Calmar、Sortino)
- 跨期 OOS 切片 :5 個獨立樣本外期間,看穩定性
- 利率環境分區 (低利率 <2%、中利率 2–3.5%、高利率 >3.5%;上行 vs 下行)
- 子期間切片 (2010–2019 / 2020 COVID / 2021 低利率 / 2022 升息 / 2023 高利率 / 2024–2026 至今)
- 兩模型比較顯著 (vs A 靜態 GLD),用嚴格統計檢驗門檻(門檻值 3.0),10,000 次重抽樣比較信賴區間
全樣本結果:F 波動率倒數加權看似贏家
先看全樣本最直觀的數字:
| 策略 | 年化報酬 (%) | 年化波動 (%) | 風險調整後報酬 | 最大回撤 (%) | Calmar |
|---|---|---|---|---|---|
| A 靜態 GLD | 8.21 | 10.47 | 0.78 | -25.46 | 0.32 |
| B 靜態 TLT | 4.51 | 7.59 | 0.59 | -31.44 | 0.14 |
| C 利率條件 | 5.89 | 8.76 | 0.67 | -19.78 | 0.30 |
| D 動能切換 | 6.21 | 9.34 | 0.67 | -18.92 | 0.33 |
| E 五五對半 | 6.36 | 7.41 | 0.86 | -21.50 | 0.30 |
| F 波動率倒數 | 6.29 | 7.02 | 0.90 | -20.33 | 0.31 |
| G 靜態現金 | 2.96 | 4.73 | 0.63 | -17.84 | 0.17 |
從全樣本表面看,F(波動率倒數加權)跟 E(五五對半)的風險調整後報酬都比 A(靜態 GLD)高。乍看之下動態策略有效,至少對半 GLD/TLT 是有效的。
但這個結論禁不起跨期 OOS 與嚴格統計檢驗的考驗。
跨期 OOS:靜態 GLD 才是穩定的贏家
我們把樣本切成 5 個獨立期間,分別計算每個策略的風險調整後報酬,再看跨期平均:
| 策略 | OOS 平均 | OOS 標準差 | 5 期數值 |
|---|---|---|---|
| A 靜態 GLD | 1.118 | 0.87 | 1.15 / 0.18 / 0.42 / 2.35 / 1.49 |
| F 波動率倒數 | 0.854 | 0.95 | 1.29 / -0.25 / 0.03 / 2.07 / 1.13 |
| E 五五對半 | 0.797 | 0.97 | 1.29 / -0.37 / -0.04 / 1.94 / 1.17 |
| C 利率條件 | 0.777 | 0.77 | 1.55 / 0.77 / -0.29 / 1.46 / 0.40 |
| G 靜態現金 | 0.766 | 0.84 | 1.05 / 0.03 / 0.61 / 2.06 / 0.08 |
| D 動能切換 | 0.760 | 0.86 | 0.57 / 0.03 / -0.04 / 1.98 / 1.27 |
| B 靜態 TLT | 0.152 | 0.80 | 0.89 / -0.78 / -0.42 / 1.05 / 0.03 |
順位徹底翻轉 :全樣本最強的 F 在跨期 OOS 落到第 2,而最簡單的 A 反而第 1。F 主要敗在 2022 升息年——加入 TLT 的策略全部被 TLT 拖累,包含 F 跟 E。
進一步用「兩模型比較顯著」做檢定,把每個策略的日報酬序列與 A 靜態 GLD 直接配對比較:
- B(靜態 TLT)比 A 顯著 更差 (統計強度 統計強度=4.60,達顯著水準)
- D(動能切換)也比 A 顯著 更差 (統計強度=4.56,達顯著水準)
- C / E / F / G 與 A 的差異 未達嚴格統計檢驗門檻
換句話說:在嚴格的兩模型比較顯著門檻(門檻值 3.0)下, 沒有任何一個動態切換策略能宣稱顯著贏過靜態 GLD ,反而有兩個策略已經顯著輸了。
為什麼動態切換在最近這幾年特別痛?
把樣本切成「利率環境」三段,故事就清楚了:
| 環境 | 觀測天數 | A 靜態 GLD | B 靜態 TLT | C 利率條件 |
|---|---|---|---|---|
| 低利率 (<2%) | 1,255 | 0.70 | 1.24 | 1.43 |
| 中利率 (2–3.5%) | 2,106 | 0.55 | 0.62 | 0.42 |
| 高利率 (>3.5%) | 2,005 | 1.04 | 0.19 | 0.52 |
低利率時代(2010–2021 大半),TLT 的風險調整後報酬(1.24)的確比 GLD(0.70)高 — 這也是過去文獻會推薦長天期公債作為避險端的原因。 但 2022 之後我們進入高利率環境 ,這個表態徹底反過來:GLD 1.04 vs TLT 0.19,差了 5 倍。
更殘忍的是「利率上行 vs 下行」的分區:
- 利率上行 (2,653 日):A GLD = 0.40 ; B TLT = -0.44 (負值,賠錢);G 純現金 = 0.71
- 利率下行 (2,651 日):A GLD = 1.16 ; B TLT = 1.72 (最強)
結論很簡單 :TLT 強的環境是「利率下行」,TLT 在「利率上行」會幾乎注定賠錢。你只要在 2022 那種升息年押到 TLT,就直接吃整年雙位數虧損——任何含 TLT 的策略(B/C/D/E/F)2022 全爆掉:
| 策略 | 2022 升息年表現 |
|---|---|
| A 靜態 GLD | -7.15% |
| B 靜態 TLT | -25.56% (風險調整後 -2.11) |
| F 波動率倒數加權 | -15.04% |
| E 五五對半 | -16.36% |
| G 純現金 | -6.76% |
「那不是有 C 利率條件切換嗎?理論上應該躲掉 TLT 才對」
對,這是設計 C 的初衷。但實際數字告訴我們: 利率條件切換在 2022 還是吃了 -12.27% 虧損 ,而且它在 2024–2026 的近期表現也只有 0.64 的風險調整後報酬,遠輸給 A 的 1.78。
原因有兩層:
- 63 日利率變化判定的訊號 lag — 等到模型確認「利率上行」時,TLT 已經跌過了;等到模型判定「利率下行」時,TLT 反彈也過了。
- 利率方向不能可靠地預判 — 殖利率是市場共識下的價格,事前準確判斷它接下來 1–3 個月會上行或下行,需要的是宏觀預測能力,不是過去 3 個月的延伸推估。
K561 直接把這個「事前判斷利率方向」的命題打成 NEGATIVE: 過去 3 個月利率方向 ≠ 未來 3 個月利率方向 ,至少在現有 yfinance daily 樣本上是這樣。
子期間穩定性:過去複雜的策略只是過去的勝者
這份分區數字最有意思:
| 期間 | 最佳避險端 | 最差避險端 |
|---|---|---|
| 2010–2019 | B 靜態 TLT (1.17) | D 動能切換 (0.54) |
| 2020 COVID | C 利率條件 (1.79) | D 動能切換 (0.89) |
| 2021 低利率 | G 純現金 (1.79) | D 動能切換 (0.13) |
| 2022 升息 | A 靜態 GLD (-0.69,最不痛) | B 靜態 TLT (-2.11) |
| 2023 高利率 | G 純現金 (1.78) / A GLD (1.71) | B 靜態 TLT (0.87) |
| 2024–2026 當前 | A 靜態 GLD (1.78) | B 靜態 TLT (0.39) |
換句話說:
- 沒有任何一個避險端策略在所有期間都最好
- 在 2010–2019 那個「靜態 TLT 王朝」回測上去做策略選型,會讓你 2022 之後爆倉
- 唯一在最近三段期間(2022 / 2023 / 2024–2026)都站得住的避險端,是 A 靜態 GLD
跟既有研究對話
這個結果跟 VolPred 研究系統的幾個既有結論完全一致:
- K507 (動態 SPY-GLD 配置):靜態結構打敗動態
- K425 (殖利率水準驅動債股相關性):殖利率 > 4% 時公債避險功能瓦解,與本研究的高利率分區一致
- T19 (TLT 結構性斷點):2022 之後 SPY-TLT 相關性從 -0.42 跳到 +0.10,公債失去避險功能
- N176 (條件 TLT):在低利率時代 TLT 條件加碼 OK,但延伸到後 2022 樣本就失效
外部文獻的對照:
- Moreira & Muir (2017, JoF):volatility-managed portfolios 主結論——VT 結構本身已是 alpha 來源,避險端細節影響有限
- Baele et al. (2010, RFS):flight-to-safety 多數時候由 GLD 承擔而非 TLT
- Campbell, Sunderam, Viceira (2017, JoF):bond-equity 相關性是 inflation/deflation regime function,2022 之後通膨抬頭使公債變回 inflation bet 而非 deflation hedge
那實務上應該怎麼做?
K561 給出的建議直接而保守:
- 避險端維持 50% 靜態 GLD ,不嘗試動態切換 GLD/TLT
- 不去賭利率方向 ——這不是「保守」而是「當前可得資料無法支撐顯著的方向預測」的事實表態
- 如果一定要動態化, E 五五對半(25% GLD + 25% TLT) 是相對穩健的妥協(OOS 平均 0.80),但仍輸給 A 在嚴格統計檢驗門檻下也是 unsignificant
- 長期穩定性 > 單期間最佳化 :選 2010–2019 的最佳策略(B 靜態 TLT)會讓你在 2022 領 -25.56% 鉅額罰單
三個 caveat
研究誠實原則要求我們把 caveat 講清楚:
- 訊號與報酬的時序對齊 :本研究在每個交易日 i 用當日的 VIX、TNX、GLD/TLT 價格作為訊號,去配置同一日的部位。這個設定 接近 end-of-day rebalance(收盤訊號 → 收盤前最後一筆執行),但嚴格回測下應該採用
signal.shift(1)的明示 lag。 主線程後續若要把 K561 升級到出版級,需要重跑 lagged 版本驗證結論不變。 2. TLT 樣本長度限制 :TLT 從 2002 開始有資料,但本研究與 GLD(2004 起)取交集,沒涵蓋 1990 年代那種真正的低利率原始時代——若把樣本拉到 1990 之後,動態策略可能會更亮眼一些 - 避險端而已 :本研究只切換避險那 50%,沒動股票端的 12/VIX 規則。整套 VT 框架的 alpha 主要來自股票端的波動率目標機制
結論:boring works
K561 是一個 NEGATIVE 結果,但 negative 不等於沒價值。它告訴我們:
在動態擇時 vs 靜態配置的賽局裡,動態方法要勝出,必須先過嚴格統計檢驗門檻,而不是只在某個 in-sample 期間看起來漂亮。
K561 觀察到的 6 種動態切換策略,沒有任何一個跨過這道門檻。其中 2 個還顯著輸給靜態 GLD。所以結論是: 繼續用 50% SPY × 12/VIX + 50% GLD 這個無聊但長期穩定的避險端結構 ——這是經得起 5 個獨立 OOS 期間、3 種利率分區、6 個子期間檢驗的唯一一種配置。
研究上「找不到顯著的改進」也是真結論。把 boring 的事說清楚,比硬擠出一個過配的故事更有價值。
資料來源
- 價格資料:yfinance(SPY、GLD、TLT、^VIX、^TNX)
- 樣本期間:2004-11-18 到 2026-03-27(5,366 個交易日)
- 實驗腳本與結果:
experiments/k561/k561_bond_equity_switch.py+k561_bond_equity_switch_results.json - 嚴格統計檢驗門檻:3.0(兩模型比較顯著),10,000 次重抽樣比較
- 跨期 OOS 切片:5 個獨立期間
- 相關研究:K507(動態 SPY-GLD)、K425(殖利率水準)、N176(條件 TLT)、T19(TLT 結構性斷點)、K33(MOVE vs VIX for bonds post-2022)
- 文獻:Moreira & Muir (2017, JoF);Baele et al. (2010, RFS);Campbell, Sunderam, Viceira (2017, JoF)
實驗 ID: K561 。
延伸閱讀
詳情
- experiment_refs
- K561
相關文章
先讀正式關聯,若無則使用標籤與主題相似度補齊