返回 López de Prado

研究評論 · 方法骨幹 · 研究 00

回測過度擬合與 Deflated Sharpe Ratio

在加密貨幣、股票與外匯約 92,500 個真實策略中,最佳者看似明星, 一旦把試驗次數算進去,便不過是擲銅板

若你嘗試眾多策略設定並只保留最佳者,勝出者的回測 Sharpe 會被選擇效應抬高,幾乎無法說明任何事。本研究建立並驗證了為這份膨脹定價的量化工具, False Strategy Theorem、Deflated Sharpe Ratio、Probability of Backtest Overfitting 以及有效試驗計數, 接著把它套用到三個真實、完整計入成本的語料庫,合計約 92,500 個策略:加密貨幣 50,000 個、美股 22,500 個、外匯 20,000 個。在這每一個資產類別中,單一最佳策略都無法越過多重檢定虛無,而下方的計算器讓你能在瀏覽器中重現其核心機制。

來源

Deflated Sharpe Ratio (2014)

Bailey & López de Prado · J. Portfolio Management 40(5)

程式碼與資料

lopez-de-prado-work-review / projects / 00

the claim

López de Prado 的主張

  • 若你嘗試眾多策略設定並只保留最佳者,勝出者的回測 Sharpe 會被選擇效應抬高,幾乎無法說明任何事, 因此任何回報的 Sharpe 都必須依試驗次數加以折減。
  • 他建立了為這份膨脹定價的工具:False Strategy Theorem(N 個無技巧試驗的期望最大 Sharpe,透過 Euler–Mascheroni 展開式)、Deflated Sharpe Ratio、Probability of Backtest Overfitting(CSCV),以及有效試驗計數。
  • 他的示範:對一條純隨機漫步在數千個參數節點上掃描,僅憑雜訊就能產生年化 Sharpe 高於 1,「任何堅持不懈的研究者,總能找到一個具備所欲 Sharpe ratio 的回測。」

our result

我們的發現

  • 套用到三個真實、完整計入成本的語料庫, 約 92,500 個策略,涵蓋加密貨幣(50,000)、美股(22,500)與外匯(20,000),每個資產類別中的單一最佳策略都落在其 False-Strategy-Theorem 虛無之下(加密貨幣 2.00 對 2.72、股票 3.21 對 10.89、外匯 1.78 對 7.70)。
  • 語料庫最佳者的 Deflated Sharpe 在加密貨幣為 0.029,在股票與外匯實質為 0.000, 全都遠低於 0.95 的門檻;沒有任何策略能在通縮後存活。
  • 有效試驗計數予以證實:名目試驗次數塌縮為約 434 / 39 / 26 個獨立押注。此一錯覺並非加密貨幣的怪癖, 它跨市場成立,而 DSR 正是日後每一項研究都必須越過的關卡。

三行說明結果

~92,500 個策略 · 3 個資產類別

最佳者在各處都低於虛無

三個真實、完整計入成本的語料庫, 50,000 個加密貨幣策略(20 個交易對)、22,500 個美股策略(9 檔 ETF)與 20,000 個外匯策略(8 個主要貨幣)。在每個資產類別中,語料庫的單一最佳者都落在 False-Strategy-Theorem 虛無之下:加密貨幣 2.00 對 2.72、股票 3.21 對 10.89、外匯 1.78 對 7.70。光憑運氣所能得到的,比實際找到的還高。

DSR < 0.95

沒有任何策略能在通縮後存活

語料庫最佳者的 Deflated Sharpe Ratio 在加密貨幣為 0.029,在股票與外匯實質為 0.000, 全都遠低於 0.95 的門檻。一旦誠實地計入選擇效應,即使是各市場中最強的策略,在統計上也與一次幸運的抽樣難以區分。

有效 N:434 · 39 · 26

跨市場、以 DSR 把關

彙總後,50,000 個加密貨幣試驗約值 434 個獨立押注、22,500 個股票試驗約值 39 個、20,000 個外匯試驗約值 26 個(特徵值參與比)。結論是以三個資產類別的 Deflated Sharpe Ratio 為關卡,而非單一回測。

大規模, 跨三個資產類別約 92,500 個真實策略

在加密貨幣、股票與外匯中同樣地,語料庫最佳者都低於其虛無

Fig. 1:跨三個資產類別的多重檢定錯覺。左:在加密貨幣、美股與外匯中,語料庫單一最佳的年化 Sharpe(加密貨幣 2.00、股票 3.21、外匯 1.78)落在 False-Strategy-Theorem 虛無(2.72、10.89、7.70)之下。右:名目試驗次數(50,000 / 22,500 / 20,000)塌縮為數百個或更少的有效獨立押注(434 / 39 / 26)。沒有一個能越過通縮後的顯著性門檻。

此工具是在一個乾淨的格點(見下)上建立並自我測試的,但真正的考驗在於大規模、且在不只一個資產類別中進行。三個語料庫承載了裁決:50,000 個經深度 walk-forward 最佳化的加密貨幣策略,涵蓋 20 個永續合約交易對;22,500 個美股策略,涵蓋 9 檔 ETF;以及 20,000 個外匯策略,涵蓋 8 個主要貨幣, 合計約 92,500 個策略。每一個都計入了實際成本:加密貨幣含手續費、滑價與資金費;股票與外匯則經過一層真實性處理,含按時段的價差、佣金、外匯展期/三倍週三換匯並於週末強制平倉,以及股票賣空借券。

在這三者中,語料庫的單一最佳者都落在 False Strategy Theorem 對無技巧試驗的期望最大值之下,且沒有一個能越過 0.95 的 Deflated-Sharpe 門檻。股票偏高的最佳 Sharpe 3.21 是被相關試驗挖掘出的 long-beta 指數型 ETF 漂移, 仍遠低於其虛無 10.89(DSR 0.000),且 22,500 個試驗僅約值 39 個獨立押注。此一錯覺並非加密貨幣的怪癖;它跨資產類別成立。

市場策略數最佳 SRE[最大] 虛無DSRPBO 中位數有效試驗
加密貨幣20 個交易對50,0002.002.720.0290.28434
美股9 檔 ETF22,5003.2110.890.0000.0039
外匯8 個主要貨幣20,0001.787.700.0000.00526

最佳 SR 與 E[最大] 虛無皆為年化;DSR 採用名目試驗次數搭配試驗 Sharpe 的經驗離散度(保守)。在每個市場中,單一最佳者都低於其 False-Strategy-Theorem 虛無,且 Deflated Sharpe 遠低於 0.95 門檻。

加密貨幣詳解, 50,000 個策略、20 個交易對

加密貨幣語料庫由 20 個永續合約交易對各 2,500 個經深度 walk-forward 最佳化的策略組成, 合計 50,000 個策略,結構上多樣,並讀自已計入成本的生產逐筆交易帳本(手續費 5 bp、滑價 3 bp、資金費 1 bp)。

語料庫最佳者年化後的 Sharpe 為 2.00。這看似一顆明星。但 False Strategy Theorem 指出,50,000 個無技巧試驗的期望最大 Sharpe 為 2.72, 比所找到的還 。該語料庫最佳者的 Deflated Sharpe Ratio 為 0.029,對照 0.95 的門檻。這 50,000 個策略僅承載 434 個獨立押注,而各交易對的回測過度擬合機率中位數為 0.28。一旦把試驗次數算進去,即使是 50,000 個之中最強的策略,也不過是擲銅板。

Fig. 2:50,000 個策略的加密貨幣年化 Sharpe 分布。語料庫最佳者(Sharpe 2.00)位於 False-Strategy-Theorem 虛無條(2.72)的左側, 50,000 個無技巧試驗的期望最大值,比實際找到的最佳策略還高。

策略數

50,000

2,500 × 20 個交易對

語料庫最佳 Sharpe

2.00

年化、扣除成本後

E[最大] 虛無 (N=50k)

2.72

False Strategy Theorem

Deflated Sharpe

0.029

門檻為 0.95

各交易對 PBO 中位數

0.28

CSCV

有效試驗

434

/ 50,000

Fig. 3:各交易對的回測過度擬合機率(左)與有效獨立試驗數(右)。PBO 聚集在其 0.28 中位數附近,而各交易對名目的 2,500 個試驗塌縮為數百個有效押注, 在整個語料庫彙總後,50,000 個試驗約值 434 個。

正是有效試驗計數讓裁決在此規模下保持誠實。同一交易對內的策略彼此相關,因此各交易對名目的 2,500 個試驗僅值數百個獨立押注;在全部 20 個交易對彙總後,50,000 個策略塌縮為 434 個。虛無被餵以這個有效計數, 若把全部 50,000 個都當成獨立,只會讓所發現的最佳者看起來更容易靠運氣找到。

下方數字按交易對列出,直接取自生產帳本。在通縮之後,沒有任何交易對的最佳者能越過自身的虛無。

交易對T(根 K)最佳 SRPBO有效試驗
AAVE1,7720.960.25327
ALGO6262.000.27211
APE1,2510.840.47274
ARB6261.600.50166
ATOM6261.880.32180
AVAX1,7721.170.35332
BCH2,0850.840.14411
BNB1,5630.810.15186
BTC2,8170.620.19234
DOGE2,1890.800.29357
DOT6261.920.48193
ETC6261.210.62173
ETH2,9210.900.22339
LINK2,3980.990.19510
LTC2,8160.650.13445
NEAR1,7720.900.39367
SOL1,4571.250.24427
TRX2,6070.770.27292
UNI1,7721.170.36444
XLM6261.750.49193

最佳 SR 為各交易對的最佳樣本內年化 Sharpe;有效試驗為試驗回報相關矩陣的特徵值參與比。彙總語料庫:最佳 2.00 對虛無 2.72、DSR 0.029、434 個有效試驗。

股票與外匯, 大規模下的相同景象

Fig. 4:美股, 涵蓋 9 檔 ETF 的 22,500 個策略。語料庫最佳者(Sharpe 3.21)是被相關試驗挖掘出的 long-beta 指數型 ETF 漂移,卻遠低於 False-Strategy-Theorem 虛無(10.89):DSR 0.000,22,500 個中僅約 39 個有效獨立押注。
Fig. 5:外匯, 涵蓋 8 個主要貨幣的 20,000 個策略。語料庫最佳者(Sharpe 1.78)遠低於 False-Strategy-Theorem 虛無(7.70):DSR 0.000、PBO 中位數 0.005,20,000 個中僅約 26 個有效獨立押注。

一個受控的示例

相同的機制,被隔離在一個乾淨的小格點上, 一個結構族、每個工具 136 個試驗, 因此唯一變動的是選擇,而非策略構想本身。

在上方約 92,500 個策略的跨市場運行之前,此工具是在一個刻意保持乾淨的小格點上建立並驗證的:對每個工具掃描 136 組(快、慢)回看期的單一雙均線交叉,涵蓋加密貨幣、股票與外匯。這是語料庫在大規模下所呈現之相同效應的受控示例, 小到足以對每個試驗進行推理,並親眼看著勝出者落在自身的運氣門檻上。從此以後,唯有在誠實計入試驗次數後越過 Deflated Sharpe Ratio,一項結果才算「真實」。

一項發現必須越過的門檻

False Strategy Theorem 給出 N 個無技巧試驗在 T 個觀測值上的期望最大 Sharpe。只要試驗夠多,任何目標 Sharpe 都能靠運氣達成,因此唯一誠實的問題是:一個回測能否越過 它自己的 運氣門檻。此計算器直接實作該定理, 帶有 Euler–Mascheroni 修正的反標準常態 CDF 展開式, 並把第二個面板固定在本研究各市場的真實中位數上。拖動 N 與 T,看著門檻升高;載入 50,000 個策略的語料庫,可看到 5 萬個之中的最佳者落在其虛無之下(E[最大] ≈ 2.72),或載入小的 N=136 格點,在受控示例上看到相同效應。

示範, False Strategy Theorem / Deflated Sharpe

選擇你嘗試了多少組設定(N)以及你擁有多少個觀測值(T)。計算器會回傳你光憑運氣就應預期會撞見的 Sharpe, 也就是真正的 edge 必須越過的門檻。接著用它來檢驗你自己回測的 Sharpe。

虛無下的 E[最大 SR]
N, 試驗次數50,000
1101001k10k100k
T, 觀測值(K 棒)1700
你的年化 Sharpe2.00
運氣門檻, E[最大 SR],年化
1.632
你的 Sharpe 對門檻
+0.368
DSR 式 p(edge 為真)
0.83
年化 SHARPE, 你的回測對運氣門檻0.00.51.01.52.0運氣門檻1.632你的 SR2.00N=50,000 · T=1,700 · 越過門檻
大規模, 語料庫單一最佳者對其自身虛無,按資產類別
市場最佳 SRE[最大] 虛無DSRPBO
加密貨幣(50k · 20 個交易對)2.0012.7210.030.28
美股(22.5k · 9 檔 ETF)3.20610.8860.000.00
外匯(20k · 8 個主要貨幣)1.7797.7010.000.01

在三個資產類別約 92,500 個真實、完整計入成本的策略中,語料庫單一最佳者的 Sharpe(紅)在各處都落在其運氣門檻(琥珀)之下, 加密貨幣 2.00 對 2.72、股票 3.21 對 10.89、外匯 1.78 對 7.70, 而 Deflated Sharpe 從未接近 0.95 門檻。載入語料庫 (N=50k) 以在上方圖表中追蹤加密貨幣的情形。

在 N=50,000 個試驗與 T=1,700 個觀測值下,運氣門檻為 1.632(年化)。你 2.00 的 Sharpe 越過了它, 必要但不充分;完整的 DSR 還會因偏度、峰度與相關試驗而折減。

此工具曾以 Monte Carlo 進行自我測試:公式與模擬的吻合度約達 1e-3 並收斂(N=10:0.050 對 0.048;N=100:0.080 對 0.080;N=1000:0.103 對 0.103)。在一個構造的範例中,無技巧的勝出者通縮為 DSR 0.32,而真正的逐根 K edge 則通縮為 0.87, 此統計量盡了其職責。

Fig. 6:受控 MA 格點示例(136 個試驗)。最佳樣本內 Sharpe(觀測值)對無技巧試驗的期望最大 Sharpe(False-Strategy-Theorem 虛無)。在每個市場中,所觀測到的最佳者都等於或低於虛無, 那看似的 edge 不過是 136 個試驗靠運氣買來的。

在小格點中,最佳者同樣等於或低於運氣

在這三個市場中,136 取其最佳的樣本內 Sharpe 中位數都落在 False-Strategy-Theorem 對無技巧試驗的期望之下。外匯最為鮮明:136 取其最佳的 Sharpe 中位數為 0.53,對照虛無 1.06, 你靠運氣本應做得比這更好。微弱的趨勢加上價差,使外匯的通縮後顯著性成為三者中最低。

沒有任何策略能在通縮後存活

Deflated Sharpe Ratio 是在針對試驗次數、其離散度,以及回報的偏度與峰度加以修正後,勝出者的真實 Sharpe 超過「虛無下期望最大」基準的機率。各處的 DSR 中位數介於 0.10–0.44,對照 0.95 的顯著性門檻。與此並列,Probability of Backtest Overfitting 在加密貨幣達到 0.70:最佳的樣本內設定,在樣本外更可能是低於中位數的表現者。

Fig. 7:受控 MA 格點示例(136 個試驗)。各工具的 Deflated Sharpe Ratio(左)與 Probability of Backtest Overfitting(右)。沒有任何工具的 DSR 接近 0.95 門檻;加密貨幣 0.70 的 PBO 中位數說明樣本內的勝出者在樣本外通常落在後半段。
Fig. 8:受控 MA 格點示例(136 個試驗)。在試驗格點上的樣本內對樣本外 Sharpe。你當初在樣本內會挑的設定,並非在樣本外勝出的那個, 這是對雜訊進行選擇的教科書式特徵。

樣本內不等於樣本外

把每個試驗的樣本內 Sharpe 對其樣本外 Sharpe 作圖,便使過度擬合無所遁形:最佳的樣本內點,離最佳的樣本外點相去甚遠。你當初據以挑選的排名並不能延續。

136 個試驗 ≈ 3 個獨立押注

這個格點感覺像是 136 次檢定,但這些策略約有 55% 兩兩相關,因此有效獨立試驗數, 試驗回報相關矩陣的特徵值參與比, 約為三。這正是為何虛無必須被餵以有效計數而非名目計數的原因:把全部 136 個都當成獨立,會 低估 找到那個最佳抽樣有多容易。

Fig. 9:受控 MA 格點示例(136 個試驗)。各工具的名目試驗對有效試驗。一旦計入試驗間的相關性,這個 136 點的格點便塌縮為約三個獨立押注。

以年數表達的結論

Deflated Sharpe Ratio 以機率為這份膨脹定價;Minimum Track Record Length(MinTRL)與 Minimum Backtest Length(MinBTL)則以時間為它定價。MinTRL 是讓最佳 Sharpe 能有把握地越過其多重檢定門檻所需的歷史長度;MinBTL 則是這樣一個長度的下界,低於它時,一個無技巧、做了那麼多試驗的搜尋,預期僅憑運氣就能產生與所觀測到的同樣高的 Sharpe。

在三個市場中 MinTRL 都是無限:最佳 Sharpe 已位於其門檻之上不及之處(即等於或低於門檻),因此沒有任何有限的歷史能讓它在那條基準前可信。MinBTL 是同一個經緊縮後的結論,只是以年數表達。加密市場的搜尋需要約 4.5 年的歷史來支撐 50,000 次試驗,但實際僅以約 2.5 年運行;外匯需要約 5.1 年,卻僅以約 3.7 年運行。這些搜尋對於它們所擁有的歷史而言,根本太過寬廣。

Fig. 10:所觀測到的歷史長度,對照足以信任各搜尋之最佳結果所需的長度(對數刻度,年)。加密與外匯都不及其名目 N 的 MinBTL(約 4.5 年對 2.5 年,5.1 年對 3.7 年);只有以將近二十年資料運行的美股越過其基準,但其最佳結果仍未通過緊縮檢定,因為其門檻太高。在所有市場中 MinTRL 皆為無限。
市場最佳 SRE[max] 門檻歷史(年)MinTRL(年)MinBTL(年)
加密ALGO2.002.722.48infinite4.49
美股QQQ3.2110.8919.35infinite1.60
外匯USDJPY1.787.703.71infinite5.12

Sharpe 比率為年化值;MinBTL 採用名目試驗數。只要最佳 Sharpe 等於或低於其門檻,MinTRL 即為無限。MinBTL 是以所需歷史年數表達的 Deflated Sharpe Ratio 結論:加密與外匯都遠不及各自所需的年數。

按市場彙總, 受控 MA 格點示例(136 個試驗)

小型受控格點各市場的中位數值,扣除成本後,於資訊驅動的 K 棒上計算。 最佳 SR 為最佳樣本內年化 Sharpe;E[最大] 虛無 為 False-Strategy-Theorem 對無技巧試驗的期望;DSR 為 Deflated Sharpe Ratio;PBO 為 Probability of Backtest Overfitting;最後一欄為名目 → 有效試驗。

市場最佳 SRE[最大] 虛無DSRPBO試驗
加密貨幣(8 個永續)0.620.660.440.70136 → 3
股票(7 檔 ETF)0.310.440.320.38136 → 3
外匯(8 個主要貨幣)0.531.060.100.37136 → 3

跨市場的一致性正是此示例的重點:多重檢定效應並非加密貨幣的怪癖;股票與外匯在乾淨格點上同樣呈現它。而本頁頂端約 92,500 個策略的運行,則是同一課題在大規模下的呈現, 在三個資產類別中進行真實、完整計入成本的搜尋,即使是數萬個之中的單一最佳策略,也無法越過其虛無。

方法

  • 每個工具一個結構族:在一組(快、慢)回看期格點上掃描的雙均線交叉, 各 136 個試驗, 因此唯一變動的是選擇,而非策略構想本身。
  • 資訊驅動的 K 棒:加密貨幣與股票用 dollar bars(股票限於正常交易時段)、外匯用 tick bars,並對換手套用實際的非零成本(加密貨幣每單位 7 bp、股票 2 bp、外匯 1 bp)。
  • 每個試驗的逐根 K 淨回報序列餵入工具,工具回傳最佳樣本內年化 Sharpe、Deflated Sharpe Ratio、Probability of Backtest Overfitting(CSCV,924 個切分)以及有效獨立試驗數。
  • False Strategy Theorem 提供虛無:N 個無技巧試驗的期望最大 Sharpe。一個被發現的 Sharpe 唯有越過該門檻才值得關注, 接著 DSR 會再因偏度、峰度與相關試驗而進一步折減它。
  • 透過試驗回報相關矩陣的特徵值參與比進行有效試驗計數:相關的試驗並非獨立,因此虛無被餵以有效計數,而非名目計數。

註記與限制

兩次運行都刻意一無所獲, 而這正是發現。受控格點(一個結構族、每個工具 136 個試驗)隔離了機制;約 92,500 個策略的跨市場運行則顯示它在與真實、完整計入成本、每個工具數千個相關試驗的搜尋接觸後依然成立,涵蓋加密貨幣、股票與外匯。CSCV 使用十二個區塊(924 個組合)。DSR 採用名目試驗次數搭配試驗 Sharpe 的經驗離散度,此為保守做法:若餵以有效計數,會略微 提高 DSR,而「不顯著」的裁決無論如何都成立。

可重現性

此工具、其自我測試以及大規模運行,皆收錄於配套儲存庫 lopez-de-prado-work-reviewprojects 00。本頁的計算器是自足的:False-Strategy-Theorem 公式與各市場中位數都編碼於元件中,因此它所示範的機制在每次載入時都能精確重現。

引用

參考文獻

此處所評論工具的主要來源:

另請參閱

貫穿本研究的選擇紀律主題,在 The edge is in the process 中以敘事方式展開,而更廣泛的工作成果見於 Research