Backtest
每年再平衡有用嗎?用 155 年的股債資料直接算
資料與計算:Yu Lab期間 1871-02 – 2026-08 在 1871 年以來的美國股債資料上,再平衡把波動與最大回撤壓下來了,但沒有把報酬拉上去——這段期間股票遠勝債券,不再平衡的組合因此一路漂移成幾乎全股,報酬反而更高。
再平衡常被說成「低買高賣的自動機制」。把 1871 年以來的美股與美債逐月跑一次,年、季、月與完全不動四種做法並排,可以看到它真正改變的是什麼,以及沒有改變的是什麼。
主要結果 1871-02 – 2026-08(156 年,月頻)
| 組合 | 年化報酬 | 年化波動 | 最深回撤 | 自谷底回本 | 1 元變成 | 期末權重 |
|---|
| 每年再平衡 | 5.61% | 8.93% | 48.4% 1932-06 | 3.2 年 | 4866.0 | 63% / 37% |
| 每季再平衡 | 5.54% | 9.07% | 50.0% 1932-06 | 3.2 年 | 4377.4 | 61% / 39% |
| 每月再平衡 | 5.46% | 9.07% | 50.4% 1932-06 | 3.2 年 | 3902.5 | 61% / 39% |
| 完全不再平衡 | 6.76% | 12.66% | 71.1% 1932-06 | 4.3 年 | 26233.6 | 100% / 0% |
全部為實質(已扣通膨)總報酬,未計費用、交易成本與稅。 回撤以月底值量測,因此比逐日量到的淺。 主角組合的夏普比率為 0.59,以實質國庫券為無風險利率,自 1926-08 起算。
1 元的成長
1871-02 到 2026-08。縱軸為對數刻度——成長倍數是三到四位數,線性刻度會把早期壓成貼著底的一條線。資料:美股(實質總報酬)、美國長期公債(實質總報酬)
回撤:跌多深、跌多久、回本多久
每年再平衡距離歷史高點的跌幅。最深 48.4%,自 1929-09 跌到 1932-06(2.8 年),1935-08 回到前高,花了 3.2 年。各組合最深的一次回撤,以及發生在哪個月。從谷底回到前高所花的時間。年化報酬看起來平順,等待的時間不是。風險與報酬的歷史取捨
每一點是一種配置在這段歷史上實際走出來的(波動, 年化報酬)。這是已經發生的結果,與用估計值畫出來的效率前緣意義不同。換一個起點,結論就換一個
一般回測報一個年化報酬,而那個數字幾乎完全由起始年決定。 下面把每一個可能的起始年與持有年數攤開——同一個組合、同一份資料, 格子裡的數字差距就是「挑起點」能製造出來的空間。
持有 10 年:最好的起點年化 13.4%、最差 -3.8%,相差 17.2 個百分點;持有 20 年:最好的起點年化 10.5%、最差 -0.1%,相差 10.6 個百分點;持有 30 年:最好的起點年化 7.9%、最差 2.4%,相差 5.5 個百分點。只收每年 1 月起算且視窗完整落在資料內的組合。滾動 10 年的分布
歷史上任選一個起點、持有 10 年,年化報酬會落在哪裡。 每一列的兩端是第 10 與第 90 百分位,圓點是中位數,取自 1748 個重疊視窗。
每年再平衡的中位數 5.6%,最差的一個視窗 −3.8%,最好的 15.4%;10% 的視窗年化報酬為負。算術平均與實際拿到的複利
這段期間 每年再平衡 的月報酬算術平均年化後是 6.03%, 實際的年化複利只有 5.61%,差距 0.42 個百分點。 這個差距來自波動本身,與費用和稅無關。教科書上的近似式
g≈μ−2σ2 在這組資料上給出 5.63%,與實際的 5.61%相差 0.02 個百分點。 這條式子平常只是課本上的一行,這裡是它在 156 年真實資料上的誤差。
這個回測最容易誤導的地方
下面每一條都由這一次計算的結果算出來,換一組資料或一個配置就會換一組警示。
關鍵換一個起點,結論就換一個
同樣持有 30 年,最好的起點年化 7.9%、最差的 2.4%,差距 5.5 個百分點。任何只報一個年化報酬的回測,都是在報「作者挑的那個起點」。
進場時機能決定多少 →關鍵單一國家的長序列帶有倖存者偏誤
今天還能拿到完整長期資料的股市,本身就是活下來的那些。二十世紀有好幾個市場歸零或長期關閉,它們不會出現在任何回測裡。用單一國家的歷史推論「股市長期一定如此」,等於只看贏家的成績單。
本國偏誤 →注意這個回撤是用月底值量的
最深 48.4%,發生在 1929-09 到 1932-06。月頻量到的回撤一定比逐日淺——盤中與月中的低點看不到。實際承受的跌幅比這個數字更深,而不是更淺。
風險不只是波動 →注意滾動視窗不是獨立樣本
1748 個 10 年視窗彼此高度重疊,相鄰兩個只差一個月。所以那個分布描述的是「歷史上任選一個起點會遇到什麼」,不是「未來的機率分布」,也不能拿去算信賴區間。
樣本數的錯覺 →注意沒有扣任何成本與稅
這裡算的是指數或資產類別的報酬,沒有內扣費用、交易成本、價差與稅。實際能拿到的報酬一定低於這個數字,而且再平衡越頻繁,差距越大。
費用的長期影響 →
計算前提
- 使用 美股(實質總報酬)、美國長期公債(實質總報酬) 的月頻總報酬序列,期間取各序列的共同區間 1871-02 – 2026-08。
- 年化報酬為幾何平均;年化波動由月報酬的樣本標準差乘以十二的平方根得到。
- 夏普比率以月頻超額報酬計算後再年化,無風險利率為美國國庫券的實質報酬。
- 再平衡在該月報酬發生之後執行,最後一個月不再平衡(不會改變結果)。
- 不再平衡時各部位各自複利,權重隨相對績效漂移,期末權重列在主要結果表裡。
- 起點敏感度只收每年 1 月起算、且視窗完整落在資料內的組合。
未計入
- 內扣費用、交易成本、買賣價差與稅。實際報酬一定低於這裡的數字,再平衡越頻繁差距越大。
- 月內的高低點。最大回撤以月底值量測,比逐日量到的淺。
- 個別標的的追蹤誤差。這裡算的是資產類別或指數,不是任何一檔基金或 ETF。
來源
公式
年化報酬為期末除以期初、開 12/n 次方再減一;最大回撤為路徑上距離此前最高點的最大跌幅。兩式的完整寫法列在
回測總覽。
分位數
線性內插(等同 R 的 type 7 與 numpy 的預設)。滾動視窗彼此重疊,不構成獨立樣本。
資料與制度都可能更新。發現有誤或已過期,請回原始來源核對,並參考方法論了解模型如何運作。
這頁的數字從哪裡來
- 發布
- Robert J. Shiller, Yale University
- 涵蓋期間
- 1871-01 – 2026-08
- 單位
- 指數為相對值;CAPE 為倍數;gs10 為百分比;fwd10Stock 為小數形式的年化報酬。
- 本站擷取
- 可再散布
- 是——原始檔可轉載
- 使用條款
- Shiller 公開提供本資料供學術與一般使用。本專案保存的是欄位子集的衍生檔,並保留抓取腳本。
拿這份資料下結論之前要知道的 4 件事
- 1871–1926 的股利與盈餘是內插與重建值,不是即時揭露的數字。
- 最新幾個月的盈餘可能是估計值,CAPE 會隨後續修正而變動。
- fwd10Stock 在最後十年為空值(未來還沒發生)——回測時必須注意這是 look-ahead 的邊界。
- 「實質」以美國 CPI 平減,對台灣讀者而言不是自己的實質報酬(§2.3、§19.9)。
引用這一頁
頁面上的年化、回撤與重訂基期是本站依所選期間即時計算的,原始機構沒有發布過那幾個數字, 所以引用的對象是這一頁,原始來源列在同一段裡。轉載圖表請一併保留來源那一行。
Yu Lab,〈每年再平衡有用嗎?用 155 年的股債資料直接算〉,Yu Lab,https://yulab.tw/backtest/rebalancing(擷取於 2026-09-06)。原始資料:Robert J. Shiller, Yale University《Online Data — U.S. Stock Markets 1871–Present and CAPE Ratio》(1871-01 – 2026-08)。