回測第一名,就是該買的那個嗎?

回測會給出一個名次,而且那個名次通常很清楚:這一段期間,這個標的年化報酬最高。問題不在那個數字是不是算錯了——它多半沒錯——而在它回答的是哪一個問題。

回測回答的是過去哪一個贏,投資要回答的是今天這個價格下哪一個划算左邊是後照鏡:過去哪一個報酬高,這是已經實現、可以直接量的結果。右邊是擋風玻璃:今天這個價格下,未來的期望報酬各是多少,這需要另外的證據。把左邊的答案當成右邊的答案,是最常見的推論錯誤。後照鏡看得很清楚,擋風玻璃還是要自己看後照鏡過去哪一個報酬比較高已經實現,可以直接量回測能回答的就到這裡擋風玻璃今天這個價格下,未來期望報酬各是多少這需要另外的證據兩個問題的答案可以完全不同——過去的好消息已經反映在今天的價格裡
回測能回答的是左邊那一格。投資要下的決定在右邊那一格。

名次有很大一部分是起訖點給的

拿同一組序列、同一個組合,只把「什麼時候開始投入」往前後挪,年化報酬會變成什麼樣子:

不同起始年與持有年數的年化報酬橫軸是開始投入的年份,縱軸是持有年數,每一格是那個組合的年化報酬。持有 10 年時,最好的起點 14.3%、最差 3.8%;持有 15 年時,最好的起點 11.2%、最差 5.4%;持有 20 年時,最好的起點 9.3%、最差 7.4%。2004200520062007200820092010201120122013201420152016持有 10 年6.76.24.53.85.310.66.77.812.56.98.29.914.3持有 15 年5.86.98.88.65.411.28.28.8持有 20 年7.48.09.3開始投入的年份(格內為年化報酬 %)
全台股(實質美元)在不同起始年、不同持有年數下的年化報酬。持有十年時,最好的起點是 14.3%,最差的是 3.8%——同一個資產、同一段歷史,差 +10.5 pp。
資料:臺灣證券交易所報酬指數、主計總處 CPI、FRED 匯率,本站換算與計算

持有十年的那一列差了 +10.5 pp,持有二十年還差 +1.9 pp。這裡面沒有任何一格是錯的,它們全都是真實發生過的十年。

所以「年化 X%」這句話,單獨拿出來是不完整的:它同時描述了資產,也描述了選了哪一段。而選哪一段這件事,事前沒有人有得選。

這組資料還有一個更直接的例子。全期間的年化報酬是全台股比較高,但把同一段歷史切成所有重疊的十年視窗、看中位數,全台股是 7.7%,全美股是 9.3%——換一個統計量,名次就換邊了。兩個數字都對,因為它們回答的是不同的問題:一個問「從頭抱到尾拿到多少」,一個問「隨便挑一個起點,典型會拿到多少」。

事後的贏家,事前認不出來

今天回頭看,台灣的故事講起來非常順:電子代工起飛、半導體供應鏈成形、台積電成為全球關鍵企業、指數長期上行。每一步都是真的。

但這條因果鏈是倒著建起來的——先知道結局,再回去找解釋。真正要檢驗的是另一個方向:在 1995 年、2005 年、2015 年的每一個當下,有沒有一套可靠的方法能事先指出「未來三十年這裡會是贏家」。

檢驗方法很簡單:把同一套推理套到其他市場上。丹麥、澳洲、瑞典、美國——每一個都有一段漂亮的長期紀錄,每一個都能事後配上一組體質理由。如果那套推理對每一個歷史贏家都成立,那它就沒有篩選能力,它只是在描述已經知道的結局。

還有一層更難處理的:能拿到完整長期資料的市場,本身就是活下來的那些。 二十世紀有數個股市長期關閉或實質歸零,它們不會出現在任何回測的排行榜裡,因為它們的序列從來沒被續下去。用還在的市場推論「股市長期一定如此」,等於只看倖存者的成績單。

二三十年的名次,幾乎沒有解析度

假設兩個市場的年化報酬真的差了 3 個百分點,追蹤誤差 15%。要在統計上把「這是能力或結構性差異」和「這是運氣」分開,需要的資料長度是:

T(2TEα)2T \approx \left(\frac{2\,\mathrm{TE}}{\alpha}\right)^2

代進去大約要一百年。這不是保守估計,這只是把估計誤差寫出來而已——期望報酬的標準誤是 σ/T\sigma/\sqrt{T},分母是時間長度,所以把年資料換成月資料、日資料,一點幫助都沒有。完整的算法在連續五年打敗大盤

換句話說:二十年、三十年的回測名次,本來就不足以支撐「這個差距會延續」這個結論。它不是弱證據,它是幾乎沒有解析度的證據

排行榜第一名還有一個結構性問題

回測是在一個已經知道結果的樣本裡挑最好的那個。挑的動作本身就會製造超額報酬——候選越多,第一名的成績越亮眼,而且其中運氣的成分越大。

這跟基金排行榜是同一件事:每年都有人排第一,而每年的第一名不是同一個人。看到某個標的在某段期間排第一,能推出的只有「它在那段期間排第一」。

如果照排行榜第一名買就能解決投資問題,那投資裡就沒有任何東西需要學。 每天把第一名買下來就好了。這件事之所以行不通,正是因為排行榜描述的是已經發生的事,而價格已經把已經發生的事算進去了——這是本益比很高,現在還能買嗎在處理的問題。

回測還是有用,只是用途不同

這篇不是在說回測沒有價值。站上就有一整組回測頁。它們有用的地方是:

  1. 檢驗一個機制是不是真的存在。 例如再平衡溢酬、波動拖累的量級、序列報酬風險——這些是結構性的,不依賴哪一段特別好。
  2. 量出最壞的情況長什麼樣。 回撤有多深、回本花多久、最差的十年是什麼樣子。這些數字用來檢查自己撐不撐得住,不用來挑贏家。
  3. 拆掉錯誤的直覺。 例如「創新高不能進場」「一次投入比較危險」這類說法,回測可以直接證偽。

不能用的地方只有一個:拿名次當成未來期望報酬的估計。

這份計算能說到哪裡

  • 起點敏感度用的是 2003-02 到 2026-07 的月頻序列,實質美元計價。樣本只有 23.5 年,涵蓋的完整循環很少。
  • 滾動十年的視窗彼此高度重疊,相鄰兩個只差一個月。那個分布描述的是「歷史上任選一個起點會遇到什麼」,不是未來的機率分布,也不能拿去算信賴區間。
  • 顯著性那條式子是常態近似下的粗略量級,不是精確的檢定;它要說明的是量級——需要的資料長度遠超過一般人的直覺。
  • 本文不預測任何市場,也不對任何特定商品給出建議。

圖表由本站依公開資料或文中公式重算;資料來源與共用假設見方法論