VALYNOXSTRATEGY RESEARCH TECHNOLOGY
AlphaPrimeAlphaPrime
策略學院 / 回測與檢驗

預期最大回撤:為何要預留比回測更深的回撤

實單最大回撤宜按回測數字的約 1.5 至 2 倍規劃,並對照交易重排後蒙地卡羅的第 95 百分位,以及帳戶必須保留的保證金。回測回撤只是一段期間、一種交易順序下的一個樣本;實單交易會多出時間,也會出現新的順序。

作者 · 發佈 · 更新於 · 編輯原則

目錄
  1. 與回測相比,實單交易應預期多大的最大回撤?
  2. 最大回撤如何計算?回測數字為何只是一個樣本?
  3. 為什麼交易越久,預期最大回撤越大?
  4. 如何用蒙地卡羅估計最大回撤?
  5. 應按回測回撤的幾倍規劃?
  6. 回撤多大時應停止策略?
  7. 常見問題
  8. References

與回測相比,實單交易應預期多大的最大回撤?

實單交易的預期最大回撤,會比回測數字更大:規劃時以其約 1.5 至 2 倍為準,再對照蒙地卡羅第 95 百分位與帳戶必須保留的保證金。回測回撤只是一段期間、一種交易順序下的一個樣本;實單交易會多出時間,也會出現新的順序。

把回測想成擲一次骰子。交易是骰子,落下的順序是這一擲的結果。同一組骰子再擲一次,最大回撤就會不同;擲得越久,最糟的那一段越深。要用自己的數字看這件事,最快的做法是把交易明細貼進免費的交易用蒙地卡羅模擬器,將模擬出的回撤分布與回測的單一數值對照。

回測與實單交易的比較:回測的交易順序固定、紀錄已經結束,回撤只是一個短樣本;實單交易有新的順序、紀錄持續增長,回撤通常是回測的 1.5 至 2 倍 實單交易的回撤更深 決定最深跌幅的因素 回測 實單 順序 固定 新的 長度 已結束 持續增加 回撤 1× 1.5–2× 回測是最小的情況。 所以:以其 1.5 至 2 倍規劃。
回測與實單交易在決定回撤的因素上的比較。回測固定了順序與長度;實單交易兩者都會改變,因此最深的跌幅通常更深。

本文要論證的主張很簡單:回測的最大回撤,接近應當假設的最好情況,而不是一般情況。以下各節說明原因、如何估計一般情況與壞情況,以及如何把這些數字轉成規劃用的大小,並在第一筆實單之前寫好停止規則。

最大回撤如何計算?回測數字為何只是一個樣本?

最大回撤是帳戶權益從高點跌到其後最低點的最大跌幅,計算到權益創下新高為止。可用金額,或以帳戶高點時的百分比表示。免費的最大回撤計算機可由權益序列算出,並顯示回復花了多久。用文字表示,公式只有一條:

最大回撤 = (迄今最高權益 − 當前權益) 的最大值

其中迄今最高權益是累計高點,也就是帳戶截至該根 K 棒的最佳水位;當前權益是該根 K 棒的帳戶價值;兩者之差是當下的回撤;最大回撤則是整段紀錄中最大的差額。回撤期間在權益升過舊高點的那根 K 棒結束,那就是回復點。

權益曲線上升到高點、下跌到低點,再回升創新高;最大回撤是從高點到低點的距離,並在創新高時結束 最大回撤:最深跌幅 自累計高點起算 最大回撤 高點 新高 直到創新高才結束。 所以:追蹤累計高點。
最大回撤是權益曲線上從高點到低點最深的一段跌幅,直到權益創新高才結束。

回測數字只是一個樣本,因為最大回撤取決於交易的順序,而回測只呈現一種順序。同樣的獲利與虧損換個排法,最深跌幅就不同,淨損益卻不變。回測中相隔數月的虧損,實單時可能連在一起。

假設性範例

十二筆交易:七筆獲利各 $6,000、三筆虧損各 $7,000、兩筆虧損各 $4,000。不論順序,淨損益都是 +$13,000。若每筆 $7,000 的虧損之間都隔著獲利,只有兩筆 $4,000 的虧損相鄰,最大回撤是 $8,000。若兩筆 $7,000 的虧損連在一起,是 $14,000。若三筆連在一起,是 $21,000。同一組交易,三種回撤;回測報告的,是歷史碰巧產生的那一種順序。

假設性範例:同樣十二筆交易排成三種順序,最大回撤分別約為八千、一萬四千與兩萬一千美元,取決於三筆最大虧損是分散、連續兩筆,還是連續三筆;淨損益維持不變 同樣交易,三種回撤 三筆大虧損的位置 分散 $8k 連續 2 筆 $14k 連續 3 筆 $21k 每種順序淨損益相同。 所以:測試其他交易順序。
同樣十二筆交易的三種順序。淨損益相同,最大回撤不同。回測呈現的只是其中一條曲線。

為什麼交易越久,預期最大回撤越大?

預期最大回撤會隨交易紀錄變長而增加,因此即使優勢不變,交易十年的策略,預期會比交易三年的同一策略出現更深的最糟一段。道理與連續虧損相同:公平硬幣擲得越久,見過的連續反面就越長。紀錄越長,不好的排列就有越多機會出現。

Magdon-Ismail 與 Atiya(2004)針對平均穩定上升、周圍帶有隨機雜訊的價格路徑推導出結果:紀錄越長,預期最大回撤持續上升,起初很快,等平均漲幅開始壓過雜訊後轉慢。沒有優勢的策略,回撤大致隨時間的平方根增加;具正向優勢的策略增加得較慢,但仍在增加。每筆交易的期望值可以完全不變,最深跌幅卻越來越深。

示意:預期最大回撤對交易年數作圖,起初上升很快、之後轉慢,越過回測單一數值的水平線後仍繼續上升 回撤隨時間增加 示意:優勢不變,紀錄更長 回測 預期值 交易年數 紀錄越長,最深跌幅越深。 所以:規劃要超過回測值。
預期最大回撤與交易年數的關係。回測的單一數值是一條水平線;預期值越過它後持續上升。

這一點重要,因為回測涵蓋固定的區間,實單交易則沒有。若回測橫跨六年,而你打算再交易同一規則六年,合併後的紀錄就是十二年,十二年紀錄中的最深跌幅,平均而言比前後任一個六年更深。把回測回撤當作中途讀到的數字,而不是結論。

如何用蒙地卡羅估計最大回撤?

蒙地卡羅回撤檢驗會把回測交易重排或重抽許多次,算出每個新順序的最大回撤,再報告這些數值的分布;這個分布的第 95 百分位,比單一的回測數字更適合拿來規劃。這個方法以賭城命名,因為它以產生大量隨機結果來回答問題,而不是解方程式(Metropolis 與 Ulam,1949)。第 95 百分位是每 100 次模擬中有 95 次低於它的數值。產生模擬的方式有兩種:

  1. 重排(排列)。保留每一筆交易,只改變順序。每次模擬的淨損益都與回測相同,回撤則不同。這分離出回測偶然固定下來的那一件事:順序。
  2. 放回重抽(自助法)。從明細中隨機抽取交易,允許重複,直到長度與原本相同(Efron,1979)。有些模擬會抽到兩次最大虧損、一次最大獲利都沒有,因此淨損益也會變動。交易筆數少時,這會得出更寬、通常也更中肯的分布。

兩種方法都假設一筆交易不受前一筆影響。若虧損集中出現在特定的市場狀態,真實的順序比洗牌更集中,模擬出的分布可能比現實更窄。因此應把第 95 百分位當作規劃的下限而非上限,並與下一節的倍數搭配使用。設定這類檢驗的步驟,以及讓它失去意義的錯誤,見蒙地卡羅回測與真實的最大回撤。

為了呈現這種分布的樣子,本文使用一次 AlphaPrime(Valynox)在 NQ 日 K 上的實際回測,期間 2019-01-02 至 2025-06-30,多空皆做,一口,每筆交易都計入手續費與滑價。規則只是替身:它唯一的進出場依據是效率自適應移動平均(Efficiency-Adaptive Moving Average)規則,並非本文主題,只是用來餵進回撤檢驗的一份交易明細。這次回測是搜尋在試過的 1,024 組中留下的那一個候選策略,依報酬相對回撤挑選。看過結果才選留下的那一個,會讓它顯得比較好:一千個變體中,報酬相對回撤最好的那個,多少是因為交易剛好落在較有利的順序,所以它實際的回撤應落在自身蒙地卡羅分布偏有利的一側。Bailey 等人(2014)對這種效應有詳細說明。這裡的內容既不表示這條規則賺到了這筆錢,也不表示讀者可以預期同樣的結果。

來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。NQ 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $10。

項目結果
淨利(已平倉)$193,250
最大回撤$116,210
交易筆數59
勝率64.41%
獲利因子1.751
平均每筆$3,275.42
在場時間92.15%

上方框內有兩點會影響蒙地卡羅結果。這次回測在六年半內有 59 筆交易,持倉時間占 92.15%,因此單筆交易可持續數月,少數幾筆就決定了回撤。由 59 筆交易建立的分布很寬,因為重排一份短明細,大虧損的位置會大幅移動。另外,實際最大回撤 $116,210 對淨損益 $193,250,是歷史所產生的那一種順序。分布本身不屬於回測:它來自把這次回測的 59 筆交易結果貼進免費的交易用蒙地卡羅模擬器,模擬器會將明細重排許多次,並畫出每個新順序的最大回撤,因此下圖顯示的是,同樣這 59 筆交易的其他順序中,有多少比回測呈現的那一種更深或更淺。

重排 59 筆交易所得的最大回撤直方圖:回測回撤是寬廣分布中的一個值,第 95 百分位落在更右側 寬幅分布中的一種順序 示意:重排 59 筆交易 回測 一種順序 第 95 百分位 最大回撤 回測只是一個樣本。 所以:以第 95 百分位規劃。
上述回測的 59 筆交易,在免費蒙地卡羅模擬器中重排所得的最大回撤分布。請看實際的回測回撤落在分布中的哪個位置,以及第 95 百分位在它右側多遠。

建立這個分布所用的實際回撤,可在同一次回測的權益曲線上看到,就是低於累計高點的最深一段。在 AlphaPrime,績效報表的回撤面板直接畫在每個候選策略的權益曲線下方,因此你據以規劃的數字,與產生交易明細的是同一次回測,而不是另外算出來的。

蒙地卡羅分布所依據的那一次回測的權益曲線與回撤。最深的凹陷就是那個單一回測樣本,分布則讓它有了參照。
蒙地卡羅分布所依據的那一次回測的權益曲線與回撤。最深的凹陷就是那個單一回測樣本,分布則讓它有了參照。 NQ · 日 K · 2019-01-02 至 2025-06-30 · CPU 引擎回測

應按回測回撤的幾倍規劃?

實務上的規劃大小是回測最大回撤的 1.5 至 2 倍,並對照蒙地卡羅第 95 百分位與帳戶必須保留的保證金;交易筆數少,或候選策略是從眾多變體中挑出來時,倍數應往 2 倍甚至更高。倍數是經驗法則;百分位是用自己的交易測得的數字;保證金檢查則讓帳戶在回撤最深處仍能交易。三者並用,取最大者規劃。

條件倍數偏向 1.5倍數偏向 2 以上
回測的交易筆數數百筆交易約 100 筆以下
候選策略如何選出一個想法,只測一次眾多變體中的最佳者
蒙地卡羅第 95 百分位低於回測值的 1.5 倍高於回測值的 1.5 倍
虧損依市場狀態集中虧損分散在各年虧損集中在一段期間
計畫的實單期間短於回測長於回測

保證金檢查放在最後,是最硬的限制。在規劃回撤的最深處,帳戶仍須高於持倉所需的維持保證金,否則部位會在最糟的時刻被減碼。如何看這個比率並據以決定帳戶資金,見期貨風險指標的計算與以回撤決定資金規模。交易所與期貨商會調整保證金水準,決定部位大小前,請以交易所合約頁的最新數字為準。

假設性範例

帳戶 $100,000。回測最大回撤 $20,000,共 180 筆交易。1.5× 的規劃水準是 $30,000,2× 是 $40,000。將 180 筆交易做蒙地卡羅重排,第 95 百分位為 $34,000,高於 1.5× 水準,因此規劃採 2×,即 $40,000。假設持有部位所需保證金為 $25,000。回撤跌到 $40,000 的最深處,帳戶剩 $60,000,高於保證金且仍有餘裕,所以可以做一口。若帳戶只有 $60,000,同一策略在回撤規劃為 $40,000 時只剩 $20,000,低於保證金,就必須縮小部位大小,或等資金增加後再上線。

假設性的十萬美元帳戶:回測回撤兩萬美元,1.5 倍為三萬,蒙地卡羅第 95 百分位為三萬四千,2 倍為四萬;規劃採最大的四萬,保證金區間仍未被觸及 依最大值規劃 假設 $100k 帳戶 回撤 保證金 回測 $20k 1.5× $30k MC 第95 $34k 規劃:2× $40k 依最大值規劃:$40k。 所以:保證金須留有餘裕。
對照同一個帳戶的回測回撤、兩個規劃倍數與蒙地卡羅第 95 百分位。規劃採最大者,右側的保證金區間必須保持空出。

多個策略在同一帳戶執行時,規劃應以合併後的權益曲線為準,而不是逐一看各策略。時間上重疊的回撤會相加,合併後最糟的一段,才是你實際要承受的;投資組合回測與合併後的回撤說明如何測量。

回撤多大時應停止策略?

交易開始前就寫好停止水準,設在規劃回撤之上,而非回測數字上;回撤超過它,代表應暫停並重新檢驗,而不是臨時重新調整參數。把停止點設在回測最大回撤,健康的策略也會相當頻繁地觸發,因為前面各節已說明回測數值接近預期範圍中有利的一端。停止點設在規劃水準再加一小段緩衝,只有在策略出現蒙地卡羅分布說不太可能發生的狀況時才會觸發,這正是你要的訊號。

  1. 實單前先設好停止水準。取上一節的規劃回撤,再加一段緩衝,例如一筆平均虧損交易,這樣單一一筆交易不會自己觸發停止。把數字連同日期寫下來。
  2. 每週對照實單回撤。用實單權益算出累計高點與當前回撤,單位與規劃相同。日 K 策略每週檢查通常足夠;日內策略則需每日檢查。
  3. 觸及水準就暫停。不再接受新訊號,依出場規則平倉。部位持有期間不要更改任何參數。
  4. 重新啟動前,先用新資料重新檢驗。把不變的規則跑在回測結束後新增的 K 棒上,並將結果與先前設定的門檻比較。在新資料上通過同樣檢驗的策略可以重新啟動;未通過的,就以新候選策略的身分回到研究。策略檢驗中的推進分析與門檻步驟,正是為這類複查而設。
事先寫好的回撤停止規則有四個步驟:把水準設在規劃之上、每週追蹤實單回撤、觸及水準時暫停、用新資料重新檢驗;重新調整參數不是其中一步 先寫好停止規則 重新調整參數不在步驟內 設定 高於規劃值 追蹤 每週 暫停 觸及時 重新檢驗 用新資料
事先寫好的回撤停止規則:設定、追蹤、暫停、重新檢驗。重新調整參數不在步驟之列。

選擇暫停而非重新調整,原因與樣本外檢驗後要固定規則相同:因為實單曲線難看就改設定,會把實單資料變成調校資料,下一個回撤數字的意義就比上一個更低。暫停的代價是一段時間離場;重新調整的代價,是你再也無法判斷這個策略究竟有沒有效。

下一步只要十分鐘:從目前的回測匯出交易明細,貼進第一節連結的免費蒙地卡羅模擬器,讀出最大回撤的第 95 百分位,再與回測數字的 1.5 倍和 2 倍比較。三者中最大的那個,就是第一筆實單之前要放在保證金需求旁邊的數字。

常見問題

最大回撤如何計算?

記錄帳戶迄今達到的最高權益。每根 K 棒都以這個累計高點減去當前權益,得到的就是當下的回撤。最大回撤是整段紀錄中這些值的最大者,以金額或占高點的百分比表示。權益創新高時才會結束。

我應按回測最大回撤的幾倍規劃?

常見的規劃範圍是回測數字的 1.5 至 2 倍。回測少於約 100 筆交易、策略是從眾多變體中挑出最佳者,或交易的蒙地卡羅重排使第 95 百分位高於 1.5 倍水準時,倍數往 2 倍以上調整。接著檢查帳戶在規劃回撤的最深處,仍高於所需保證金。

蒙地卡羅檢驗能預測真實的最大回撤嗎?

不能。它呈現的是同樣的交易以不同順序可能產生的最大回撤範圍,比單一回測數值更寬。這個範圍的第 95 百分位是規劃用的數字,不是預測。由於這個方法假設交易彼此獨立,對虧損集中在單一市場狀態的策略,可能低估回撤,所以應與倍數並用,而不是取代倍數。

什麼時候回撤應該停止策略?

當實單回撤跨過交易開始前寫下的水準,而這個水準設在規劃回撤之上,而不是回測數字。跨過它,代表策略正在做它自己的交易分布說不太可能發生的事。暫停新訊號,依策略自身規則出場,並用回測結束後新增的資料重跑不變的規則,再決定是否重新啟動。

References

  • Magdon-Ismail, M., & Atiya, A. F. (2004). Maximum Drawdown. Risk, 17(10), 99–102.
  • Metropolis, N., & Ulam, S. (1949). The Monte Carlo Method. Journal of the American Statistical Association, 44(247), 335–341.
  • Efron, B. (1979). Bootstrap Methods: Another Look at the Jackknife. The Annals of Statistics, 7(1), 1–26.
  • Bailey, D. H., Borwein, J., López de Prado, M., & Zhu, Q. J. (2014). Pseudo-Mathematics and Financial Charlatanism: The Effects of Backtest Overfitting on Out-of-Sample Performance. Notices of the American Mathematical Society, 61(5), 458–471.