年化 Sharpe 1.0 的日線策略,需要 684 個交易日、大約 2.71 年的紀錄,才能說「真實 Sharpe 大於零」的機率達到 95%。如果 Sharpe 是 0.5,這個數字變成 10.8 年。
多數人判斷一支策略的方式是先看 Sharpe 有沒有過 1,再看最大回撤能不能接受。這兩個數字都不會告訴你,眼前這段紀錄有多少是技巧、多少是樣本不夠長造成的錯覺。Probabilistic Sharpe Ratio(PSR)處理的就是這件事:它不問「Sharpe 是多少」,改問「在這段長度、這種報酬分布下,真實 Sharpe 大於某個基準的機率是多少」。輸出從一個點估計變成一個機率,而且順帶給出一個很實用的副產品,最短紀錄長度(Minimum Track Record Length,MinTRL)。
這篇拆四件事:PSR 的公式在懲罰什麼、MinTRL 怎麼算與怎麼讀、資料頻率為什麼會改變同一支策略的判決、以及 PSR 建立在什麼假設上、什麼時候它會給出漂亮但無效的答案。
先回答核心問題:PSR 把 Sharpe 換成什麼
Sharpe 比率是一個估計量,不是一個常數。你用 126 天的報酬算出來的 1.5,跟用 1,260 天算出來的 1.5,背後的不確定性差了一個數量級。傳統做法是報一個數字,然後靠經驗判斷它可不可信,這個判斷通常沒有標準。
Bailey 與 López de Prado 在 2012 年的 The Sharpe Ratio Efficient Frontier 裡把它寫成機率:
PSR(SR*) = Φ[ (SR̂ − SR*) × √(T−1) / √(1 − γ₃·SR̂ + (γ₄−1)/4 × SR̂²) ]
SR̂ 是觀測到的每期 Sharpe(非年化),SR* 是你要打敗的基準,T 是觀測數,γ₃ 是報酬偏度,γ₄ 是峰度(非超額,常態為 3),Φ 是標準常態的累積分布函數。
一句白話翻譯:分子是「你的成績領先基準多少,乘上樣本有多長」,分母是「這段紀錄有多不可靠」。PSR(0) > 0.95 的意思是,有 95% 的信心說這支策略的真實 Sharpe 大於零。
基準 SR* 是可以自己設的,這一點常被忽略。設 0 是問「有沒有技巧」,設 1.0 是問「有沒有贏過一個合理的門檻」。兩者的難度差距非常大,後面的數字會說明。
分母在懲罰什麼:長度、偏度、峰度
三個輸入,三種懲罰。
樣本長度 T。它在分子,開根號成長。要把信心翻倍,需要的資料是四倍,不是兩倍。這條關係限制了所有短紀錄能宣稱的東西。
偏度 γ₃。負偏會讓分母的 −γ₃·SR̂ 變成加項,分母變大,機率變小。這符合直覺:一支平常穩定小賺、偶爾一次巨虧的策略,它的歷史標準差沒有把那個尾巴充分定價,Sharpe 因此被高估。PSR 直接把這個高估扣回去。
峰度 γ₄。肥尾同理,(γ₄−1)/4 × SR̂² 這一項隨峰度上升,也隨 Sharpe 平方上升。Sharpe 越高、尾巴越肥,懲罰越重。
加密市場的策略有很多長這個樣子。資金費率套利、網格、賣波動、做市,共同結構都是「大部分時間收取小額且穩定的收益,少數時候承受一次結構性衝擊」。這類報酬序列的偏度為負、峰度遠高於 3,用未修正的 Sharpe 評估會系統性偏樂觀。
一個具體情境。阿凱在 2026 年 2 月開始跑一組 delta-neutral 的資金費率套利,六個月下來 126 個交易日,年化 Sharpe 2.0,最大回撤 3%,看起來相當漂亮。他準備把倉位放大三倍。把日報酬的偏度 −2.0、峰度 15 代進 PSR,結果是 0.891;即使假設報酬常態,也只有 0.920。兩個都沒過 0.95。翻成人話:以這段長度,統計上還無法排除「真實 Sharpe 是零、這半年只是運氣」的可能性。他加倉的那個月碰上一次資金費率反向加上現貨閃崩,單日抹掉將近四個月的累積收益。
這裡要講清楚一件事,PSR 沒有預測那次事件,它預測不了。它給出的訊息只有一個:這段紀錄的長度撐不起他準備做的決策規模。
如果你對回測過擬合的完整地圖還不熟,回測過擬合的九種死法那篇可以先看,本文只處理「樣本長度與分布形狀」這一條線。
MinTRL:把「要跑多久」算出來
PSR 的公式可以反解。固定信心水準,問 T 至少要多大,得到最短紀錄長度:
MinTRL = 1 + [1 − γ₃·SR̂ + (γ₄−1)/4 × SR̂²] × [ Z_α / (SR̂ − SR*) ]²
Z_α 是信心水準對應的常態分位數,95% 時是 1.6449。這條式子把一個模糊的問題(「這支策略要觀察多久才算數」)變成算術。
日線資料、95% 信心、基準設為零,結果如下:
| 觀測到的年化 Sharpe | 常態報酬 | 偏度 −1.5、峰度 8 |
|---|---|---|
| 0.5 | 2,730 日(10.8 年) | 2,862 日(11.4 年) |
| 0.8 | 1,068 日(4.2 年) | 1,152 日(4.6 年) |
| 1.0 | 684 日(2.7 年) | 752 日(3.0 年) |
| 1.5 | 305 日(1.2 年) | 352 日(1.4 年) |
| 2.0 | 173 日(0.7 年) | 208 日(0.8 年) |
| 3.0 | 78 日(0.3 年) | 103 日(0.4 年) |
三個讀法。
第一,門檻隨 Sharpe 平方反比縮短。Sharpe 從 1.0 升到 2.0,需要的紀錄從 684 日掉到 173 日,差四倍。這解釋了為什麼高頻與短週期策略比較容易在統計上站住腳:不是它們比較穩,是它們的 Sharpe 高到讓樣本需求變小。
第二,Sharpe 0.5 需要將近 11 年。多數宏觀配置型、擇時型策略的真實 Sharpe 就落在這個區間,這代表用三年、五年的紀錄去論證它們有效,統計上根本不夠。這不是說那些策略沒用,是說在那個樣本長度下,數據無法區分它跟運氣。
第三,偏度與峰度在日線資料上的懲罰其實不算重,大約多要一到兩成的時間。這一點跟直覺相反,也是下一節的重點。
這類計算不需要自己造輪子,原論文附了參考實作,二十行 Python 可以寫完。我們在 Lab 社群維護的驗證腳本裡把 PSR、MinTRL 跟 DSR 串成同一份報表,跑完一次回測就一起輸出。
資料頻率會改變判決:同一支策略,日線與月線的門檻不同
上一節的懲罰之所以看起來輕,是因為分母裡的 γ₃ 與 γ₄ 都乘在 SR̂ 上,而 SR̂ 是每期的 Sharpe。日線的每期 Sharpe 很小(年化 1.5 換算成日頻只有 0.094),非常態項幾乎被壓掉。換成月頻,同樣的年化 Sharpe 對應的每期值大了將近五倍,懲罰整個放大。
原論文的例子很清楚。觀測到年化 Sharpe 2.0,要證明它大於 1.0,95% 信心:
| 資料頻率 | 常態報酬 | 實際動差(偏度 −0.72、峰度 5.78) |
|---|---|---|
| 日線 | 2.73 年 | 不適用 |
| 週線 | 2.83 年 | 不適用 |
| 月線 | 3.24 年 | 4.99 年 |
右欄那組動差不是假設值,是 HFR 綜合避險基金指數月報酬的實際統計量;動差本身跟頻率綁定,所以只填在月線那一列。同一個年化 Sharpe,換成月頻加上真實的分布形狀,需要的紀錄從 2.73 年拉長到 4.99 年,多了 83%。
這推出一個違反直覺、但很實用的結論:在 IID 假設不被破壞的前提下,用最高可得頻率報告績效,對報告者是有利的。 月報酬紀錄不只是資訊比較少,它會在 PSR 裡吃到更重的非常態懲罰。很多基金報月報酬是產業慣例,不是統計上的最佳選擇。
反過來看,這也提供了一個檢視外部績效報告的角度。如果一份策略報告只給你月報酬,而策略本身是日內或日頻運作的,這個頻率的降階本身就值得問一句為什麼。
同一份 HFR 資料還有一個結論值得記住。原作者用 2000 到 2011 年、134 個月的資料檢驗各類避險基金指數,多數風格的 PSR(0) 過關,也就是「Sharpe 大於零」有統計支持;但把基準提高到 0.5,十一年的紀錄之下只剩九個風格站得住。基準從 0 移到 0.5,淘汰掉大半。
PSR 的失效條件:它建立在什麼假設上
PSR 的數學很乾淨,代價是假設。三個地方會讓它失效。
一、IID 假設:自相關會讓輸入本身就是錯的
PSR 假設報酬獨立同分布。真實策略常常不是。報酬序列一旦有正自相關,用 √252 或 √12 年化就是錯的,而且是往高估的方向錯。
Lo 在 2002 年的 The Statistics of Sharpe Ratios 把這個修正寫清楚了。以 AR(1) 為例,自相關係數 0.2 會讓天真年化高估 22%,0.3 高估 36%,0.5 高估 73%。他在實證裡發現,避險基金的年化 Sharpe 因為月報酬序列相關最多被高估 65%;其中一支不動產抵押證券基金的 Sharpe 從 4.03 修正到 2.44。反方向也存在,一支風險套利基金因為負自相關,修正後從 3.25 升到 3.83。
具體會怎麼出事。某個做 DeFi 收益聚合的團隊,月報酬序列自相關約 0.3,用 √12 年化得到 Sharpe 2.2。按 Lo 的公式修正後只剩 1.6。他們把 2.2 餵進 PSR,得到一個很好看的機率。問題是 PSR 只會誠實地檢定你給它的數字,餵進去的 Sharpe 本身高估了 36%,出來的機率就一起錯。
自相關的來源通常有兩種:持有期跨越多個觀測期(部位沒平就會製造序列相關),以及報酬平滑化(標的流動性差、估值靠模型而非成交價)。鏈上收益型策略、鎖倉型產品、非流動性代幣部位,三種來源常常同時存在。用 PSR 之前先檢查報酬序列的自相關,這一步不能跳。
二、PSR 不管你試了幾次
PSR 回答的是「這一組報酬序列有多可信」,它完全不知道你為了得到這組序列試過幾百組參數。從 200 次掃描裡挑出最好的那一支,它的 PSR 一樣會很漂亮,因為公式裡沒有任何一項描述搜尋過程。
這正是 Deflated Sharpe Ratio 補上的缺口。DSR 的做法是把 PSR 裡的基準 SR* 換成「N 次純雜訊嘗試的期望最大 Sharpe」,門檻墊高之後再算同一條公式。兩者的分工可以這樣記:
| 工具 | 校正什麼 | 需要的輸入 |
|---|---|---|
| PSR | 樣本長度、偏度、峰度 | 報酬序列 |
| DSR | 上述加上選擇偏誤 | 報酬序列 + 誠實的試驗次數 N |
實務上兩個一起跑,先看 PSR 確認樣本撐不撐得起這個 Sharpe,再看 DSR 確認扣掉搜尋膨脹之後還剩多少。完整機制在 Deflated Sharpe Ratio 的完整拆解寫過;試驗次數怎麼數才誠實,選擇偏誤與多重測試那篇有展開。
三、高階動差本身也是估計值
偏度與峰度的估計誤差比平均數和標準差大得多,而且對極端值極度敏感。用 126 個觀測估出來的峰度 15,換一段樣本可能變成 8,也可能變成 30。這代表短樣本下的 PSR 修正項本身帶有相當大的不確定性。
原作者也提醒過,公式建立在漸近分布上,中央極限定理一般要求超過 30 個觀測才穩。所以即使 MinTRL 算出來只要 78 個交易日,用來估動差的序列還是應該更長。MinTRL 是下界,不是目標。
剩下的邊界要一次講完:PSR 不看 regime,全部績效由一段特定行情撐起它照樣放行;不看成本,滑價與手續費估錯的話它只是精確地檢定一個錯的數字;也不看資料怎麼來的,前視偏誤造成的虛假報酬在 PSR 眼中跟真報酬毫無區別。這些威脅各自有對應的工具,穩健性測試的六個維度那篇整理過對照表。
放進工作流:四個動作
上線前,用 MinTRL 決定觀察期。 策略進實盤之前,用回測的 Sharpe 與動差算一次 MinTRL,把它寫進加碼規則。紀錄長度沒到之前,倉位不放大。這件事把「感覺跑得不錯」換成一個具體的日期,避免用三個月的順風期做十倍槓桿的決定。
報告時,報 PSR 而不是報 Sharpe。 對內對外都一樣。「年化 Sharpe 1.8」是一個沒有上下文的數字;「年化 Sharpe 1.8,PSR(0) = 0.97,PSR(1.0) = 0.71,樣本 3 年日頻」才是可以被檢驗的陳述。第二個括號通常是關鍵,很多策略贏得過零,贏不過 1.0。
實盤中,讓 PSR 滾動更新。 PSR 隨著紀錄變長會自然上升,這是它作為監控指標的價值:如果一支策略跑了兩年,PSR 卻停在原地或下滑,代表新增的報酬沒有支持原本的假設,這比單看資金曲線敏感。
宣稱時,守住檢定支持的邊界。 PSR(0) 過關只代表「大於零」有證據,不代表「Sharpe 是 1.8」有證據。這兩句話的距離很大,多數績效簡報就是在這個距離裡失真的。
阿凱後來的做法是把 MinTRL 直接寫進上線清單:新策略的觀察期以 MinTRL 為準,不足就只跑基礎倉位。那組資金費率套利需要 224 個交易日,他跑到第 126 天就加倉,差的那 98 天是後來那筆虧損的價格。
結論:Sharpe 是一個數字,PSR 是一個帶信心水準的陳述
收斂成三點。
第一,任何 Sharpe 值離開了樣本長度就無法解讀。年化 1.0 需要 2.7 年、0.5 需要 10.8 年,這是統計事實,不是保守與否的態度問題。
第二,PSR 的懲罰來自三個地方:樣本長度、負偏、肥尾,而且非常態的懲罰隨資料頻率降低而放大。同一支策略,月頻報告要比日頻報告多跑八成的時間才過得了同一道門檻。
第三,PSR 有明確的邊界。它假設 IID,所以自相關要先檢查;它不知道你試了幾次,所以要搭配 DSR;它的高階動差在短樣本裡本身就不穩,所以 MinTRL 是下界。
回測與實盤驗證的目的不是證明策略會賺,是在投入真錢之前把不確定性標價。PSR 做的正是這件事:它把「這支策略看起來不錯」翻譯成一個可以被反駁的機率,以及一個明確的日期。
這類量化驗證與市場微結構的拆解,我每週在電子報整理一次。想拿到可以直接跑的 PSR、MinTRL 與 DSR 腳本,並且用自己的策略逐關演練,Lab 裡見。




