BlaveClaw 回測輸出的六個數字——各自代表什麼,哪些真正值得信賴。
btc_sma_cross 策略(BTCUSDT 1h,SMA45/SMA100,2022–2026)的回測結果如下:
這個策略的報酬是買入持有的兩倍多——但期間也出現了 −42.6% 的最大回撤。能不能接受完全取決於你的風險承受度,以下的指標說明會幫你思考清楚。
Sharpe ratio = 年化報酬 ÷ 年化波動度(上行和下行都算)。它回答的問題是:每承擔一單位總風險,能換到多少報酬?
| Sharpe | 解讀 |
|---|---|
| < 0 | 風險調整後虧錢 |
| 0 – 0.5 | 偏弱,幾乎無法補償風險 |
| 0.5 – 1.0 | 趨勢策略可接受(SMA 範例落在這裡) |
| 1.0 – 1.5 | 好 |
| > 1.5 | 強——若回測期短,要帶著懷疑去看 |
Sortino ratio 和 Sharpe 類似,但只把下行波動算作風險,上漲的波動不罰。它回答:每承擔一單位壞的波動,能換到多少報酬?
SMA Cross 的 Sortino(0.72)和 Sharpe(0.77)相近,代表這個策略的波動是對稱的。如果 Sortino 遠高於 Sharpe,代表策略有大幅獲利但回撤受控——這是更理想的分布。
| Sortino 與 Sharpe 的關係 | 意義 |
|---|---|
| Sortino ≈ Sharpe | 報酬對稱,上行和下行波動相近 |
| Sortino >> Sharpe | 報酬正偏——大幅獲利、小幅虧損(理想) |
| Sortino << Sharpe | 報酬負偏——小幅獲利、偶爾大幅虧損(危險) |
最大回撤是整個回測期間,資產淨值從高點到低點最大的跌幅。淨值從 $100,000 跌到 $57,380 再回升,MDD 就是 −42.6%。
MDD 重要,是因為它衡量的是你需要承受多大的痛苦才能撐過去。現實中大多數人會在回升前就停掉策略。
Omega ratio = 超過門檻(通常為 0)的總報酬 ÷ 低於門檻的總虧損。不像 Sharpe 只看均值和標準差,Omega 捕捉完整的報酬分布。
| Omega | 解讀 |
|---|---|
| < 1.0 | 整體虧損 |
| 1.0 – 1.1 | 微利——扣掉真實成本後很容易轉虧 |
| 1.1 – 1.3 | 扎實 |
| > 1.5 | 強——或可能過擬合 |
SMA Cross 的 Omega = 1.04,只比 1.0 略高。加上四年共支付了本金 22% 的手續費,真實世界的優勢相當薄。這對趨勢追蹤策略來說是正常的——這類策略的品質主要看 Sharpe 和 Sortino,Omega 偏低不代表策略有問題。
前視偏差(Lookahead Bias): 在決策時用了當時不存在的資料。BlaveClaw 的下一根開盤執行機制可以防止這個問題,但自訂指標計算還是可能引入——例如用整段歷史資料的平均值來計算 Z-score。
忽略熱身期(Warm-up Period): SMA(100) 這樣的指標需要 100 根 K 棒才有意義。前 100 根應該排除在績效計算之外。BlaveClaw 的 WARMUP 參數會自動處理這件事。
在全部資料上最佳化: 如果你用所有可用資料掃描參數,再回頭用同一段資料報告績效,你報告的是訓練誤差,不是泛化能力。至少留 20–30% 的資料做樣本外驗證。
忽略手續費: btc_sma_cross 四年下來支付了本金 22% 的手續費。頻率更高的策略,手續費很容易吃掉所有 alpha。用 FEE = 0.0005(Binance maker/taker 0.05%)作為現實的基準。
把總報酬和風險調整後報酬混為一談: MDD −80%、報酬 200% 的策略,不比 MDD −15%、報酬 80% 的策略「更好」。前者大多數真實用戶會在最低點附近恐慌出場。