分批出場:部分出場在回測中改變了什麼
分批出場是把兩種以上的出場規則,各自套用在部分口數上的組合。每口平均獲利會落在這些規則的最佳與最差之間,交易結果的分散程度會縮小,而成本只在每多一張委託都要付出自己的滑價或單筆手續費時才會上升。每個批次都應當成獨立的出場規則單獨測試,並扣除成本後比較。
作者 Soren Huang · 發佈 · 更新於 · 編輯原則
目錄
分批出場能勝過一次全部出場嗎?
分批出場並不會讓每口平均獲利,超過同一批進場點上最好的單一出場規則。它縮小的是交易結果的分散程度,而且只有在每一筆額外的出場委託都要付出自己的滑價或單筆手續費時,才會增加成本。這種做法是否適合你的市場,要靠把每個批次當成獨立的出場規則來測試,才會知道。
想像兩輛車走同一條路回家,一輛五點出發,一輛七點出發。把全家人平分到兩輛車上,並不會讓大家比快的那輛車更早到家。它只是把兩段抵達時間平均起來,並確保一次塞車不會讓所有人都被卡住。分批出場的道理也一樣:它把兩種出場規則的結果平均起來,縮短最壞的情況,但代價是多開了一輛車。
本文有一個主張貫穿全篇,你可以用自己的交易來驗證:分批出場後的部位,不是一個新而更好的出場方式,而是多種出場規則的組合,而這些規則本來也可以逐一單獨測試。換個角度看,「我該不該先獲利了結?」就變成「這幾種出場規則,各自該分到多少口?」,而後者是有可以量測的答案的。
在期貨部位中,分批出場是什麼意思?
分批出場是把兩口以上的部位,分成兩個批次以上,在不同價格或時間平倉。每個批次實際上都是一條獨立的出場規則,只套用在部分部位上。例如一位交易者做多三口 ES,可能在第一個目標價賣掉一口,在第二個目標價再賣一口,最後一口則持有到移動停損被觸發。通常把前面幾個批次稱為分批停利,最後一個批次則常被稱為尾單(runner)。
每個批次都包含三個部分,回測時三者都必須明確寫下來:
- 口數:這個批次要出掉幾口。
- 觸發條件:什麼價格、指標或時間會讓這個批次出場,例如固定跳動點數的目標、同時決定部位大小的 ATR 移動停損,或是收盤前的時間出場。
- 委託類型:目標價用限價單,保護性出場用停損單,時間出場用市價單。委託類型會決定這個批次在實單中如何成交,最後一節會說明。
既然每個批次都是一條規則,期貨策略的固定、ATR、時間或移動停損選擇就要分別套用在每個批次上。第一批可以設定很近的停利目標,第三批則可以用寬的移動停損;兩者雖然共用同一個進場點,但其實是兩套策略。
在相同進場點上,把一次出場拆成兩次,會改變什麼?
在相同進場點上,把一次出場拆成兩次,會改變三件事:出場委託的筆數、最大獲利單的大小,以及每筆交易的權益波動幅度。它不會改變進場、在第一批出場前就被停損的虧損單,也不會改變每口的手續費。下表比較同一個三口進場點上的三種出場設計。
| 變動項目 | 全部在目標價出場 | 全部在移動停損出場 | 一半在目標價、一半在移動停損出場 |
|---|---|---|---|
| 出場委託筆數 | 1 | 1 | 2 |
| 最大獲利單的大小 | 中等(受目標價限制) | 最大 | 介於兩者之間 |
| 一般虧損單的大小 | 整個部位 | 整個部位 | 整個部位,除非第一批已先出場 |
| 每筆交易的權益波動 | 中等 | 最大 | 最小 |
| 每口手續費 | 相同 | 相同 | 相同 |
| 每筆委託的滑價與費用 | 一筆委託 | 一筆委託 | 兩筆委託 |
為了讓這點更具體,以下是一個讀者可能會拆成批次的單一出場、單口基準範例。AlphaPrime(Valynox)在 ES 日 K 上執行了一次搜尋,期間為 2019-01-02 至 2025-06-30,做多做空皆可,每次一口,每筆交易手續費 20 美元、滑價 25 美元。這次測試用的是替代規則,不是分批出場:唯一的進場與出場條件是成交量分布的成交量規則,沒有停損、沒有停利,也沒有任何過濾條件。下方結果是從搜尋嘗試的 1,024 組候選策略中,依報酬相對於回撤所挑出的那一組;事後才挑選保留下來的那組,會讓數字看起來比實際更好。
來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。ES 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $25。
| 項目 | 結果 |
|---|---|
| 淨利(已平倉) | $183,480 |
| 最大回撤 | $30,695 |
| 交易筆數 | 181 |
| 勝率 | 66.85% |
| 獲利因子 | 1.9 |
| 平均每筆 | $1,013.7 |
| 在場時間 | 62.42% |
請把這個方塊當成拆分的起點,而不是拆分的結果。這次測試只用一口,181 筆交易每筆都只有一次出場,所以表中每個數字都屬於單一出場規則。如果你做的是兩口,並讓其中一口提早出場,第二批就需要自己的規則,而這條規則在這裡並未測試。在動出場設計之前,你應該先看權益曲線上的回撤,以及樣本外區段的表現。
應該把幾口拆成幾個批次?
口數決定了可以拆出哪些批次,所以部位大小決定了分批出場是否可行。一口無法拆分。兩口可以拆成兩個一口的批次。三口可以拆成 1+2 或 1+1+1。十口則幾乎可以做任何安排,例如 3+3+4。在規劃批次之前,請先用免費的部位大小計算機,確認你的帳戶風險與停損距離允許多少口;答案常常只有一口或兩口,這時計畫只能做一次拆分。
微型合約會改變這個算法。只要交易所有掛牌微型合約,一口標準合約的部位就能拆成數個較小的方塊,因此原本只能持有一口 E-mini 的交易者,可以用微型合約持有同等部位並加以拆分。CME Group 掛牌的 Micro E-mini 股價指數期貨,規模為 E-mini 合約的十分之一。交易所可能調整合約規格與價值,所以請查閱交易所的合約頁面;在進行任何部位大小測試之前,請依照回測中的期貨合約規格與轉倉所述,設定好乘數與轉倉規則。
在測試部位大小規則之前,先確定批次計畫,因為在進出場完全相同的情況下,單單部位大小就會左右結果。下方的第二個方塊,展示了上方方塊中同樣的 181 筆 ES 交易,在九種資金管理方法下的結果,資金為 100,000 美元,最多十口。每一列的進出場都相同,只有每筆交易的口數不同,所以列與列之間的差異完全來自部位大小。這些列都不是分批出場的結果,因為每個部位仍然是一次出場。
來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。與上表同一批交易,初始資金 $100,000,上限 10 口。
| 方法 | 淨利 | 最大回撤 | 平均口數 |
|---|---|---|---|
| 固定口數 | $557,680 | $91,845 | 3 |
| 固定名目 | $465,593 | $85,900 | 2.5 |
| 權益百分比 | $1,429,843 | $305,870 | 7.07 |
| 固定風險額 | $438,230 | $92,625 | 2.69 |
| 固定比例風險 | $1,352,068 | $305,870 | 6.93 |
| 波動率目標 | $438,230 | $92,625 | 2.69 |
| 固定比率法 | $1,076,305 | $305,870 | 5.27 |
| 權益曲線交易 | $409,193 | $72,808 | 2.39 |
| 凱利 | $420,968 | $171,370 | 2.67 |
其中兩列說明了這一點。固定口數平均持有 3 口,淨損益 $557,680,最大回撤 $91,845;權益百分比平均持有 7.07 口,淨損益 $1,429,843,最大回撤 $305,870,而進出場完全相同。如果光是部位大小就能讓回撤差這麼多,那麼在會變動的部位大小上再測試批次計畫,就會把兩種效應混在一起,事後無法區分。應該先決定批次,再測試部位大小;或是先決定部位大小,再測試批次。兩者絕不同時進行。
分批出場會降低獲利嗎?期望值與平滑度
分批出場不會讓每口獲利低於其批次規則中最差的那一條,也不會高於最好的那一條;它會落在兩者之間,權重取決於每條規則分到多少口,同時交易結果的分散程度會縮小。期望值是指扣除成本後,許多筆交易的平均單筆結果。交易結果的分散程度就是標準差,代表單筆結果通常離平均值有多遠。分批出場是拿最佳規則的期望值,去換取較小的標準差。
值得記住的一個公式是:
分批後部位的每口期望值 =(批次 1 的口數 × 規則 1 的期望值 + 批次 2 的口數 × 規則 2 的期望值)÷ 總口數
這裡的規則 1 的期望值,是指如果所有口數都依批次 1 的規則出場,扣除成本後每口的平均獲利;規則 2 的期望值則是批次 2 規則的相同數字;權重就是各批次持有的口數。加權平均值不可能大於其中最大的輸入值。因此,如果單獨來看移動停損規則比較好,把一半口數交給固定目標,每口平均就會下降;如果固定目標比較好,保留尾單就會使平均下降。拆分只能在分散程度上取勝,平均值上則不可能。
假設範例
假設在同樣 200 個進場點上,所有口數都在固定目標出場,扣除成本後每口平均 150 美元;所有口數都在移動停損出場,扣除成本後每口平均 250 美元。一半一半的拆分,平均為(1 × 150 + 1 × 250)÷ 2 = 每口 200 美元。移動停損的結果標準差為 900 美元,有少數非常大的獲利單;一半一半的結果標準差約為 600 美元,因為每筆獲利單都有一半在目標價被限制住了。這個拆分以每口 50 美元的期望值,換取分散程度減少三分之一。
每口 50 美元的代價,是否值得換取較小的分散程度,取決於你能承受多大的回撤,以及你的優勢需要多少筆交易才值得信任;如何以數字定義交易優勢,以及需要多少筆交易一文涵蓋了這個計算。較誠實的比較方式是三列數字,全部扣除成本後計算:規則 1 單獨使用、規則 2 單獨使用,以及拆分後的每口期望值與交易結果標準差。如果拆分後的期望值,比某一條單獨規則低,而且低的幅度超過你因分散程度縮小而獲得的好處,那麼比較簡單的答案就是用全部口數交易較好的那條規則。
多幾次出場會增加手續費嗎?
不論三口是一次委託出場,還是分成三次出場,每口手續費都相同。因此,只有在券商按每筆委託或最低單筆收費收取費用,或是每筆委託都要付出自己的滑價時,額外的出場才會增加成本。測試拆分時,這兩項才需要加入回測的成本設定;每口的費用項目則不會改變。
差異大多藏在滑價裡。三口部位一次市價出場,只跨越一次買賣價差。三次分開出場則要跨越三次,而且發生在三個不同時點;在快速行情中觸發的停損批次,付出的滑價會比已經掛在目標價等待成交的停利批次更多。如果回測是依口數計算滑價,那麼一次出場和三次出場的結果不會有任何差別;如果回測是依委託筆數計算,或對停損單與限價單收取不同的滑價,差異就會顯現出來。在比較之前,請先決定哪種模型最符合你的成交情況。
假設範例
三口,每口每邊手續費 2.50 美元,若券商適用單筆最低收費則每筆委託收 1.00 美元,每筆出場委託的滑價為 12.50 美元。一次出場:手續費 7.50 美元、單筆最低收費 1.00 美元、滑價 12.50 美元,出場端合計 21.00 美元。三次各出一口:手續費仍是 7.50 美元、單筆最低收費 3.00 美元、滑價 37.50 美元,合計 48.00 美元。手續費沒有變動;但每筆委託的費用,讓出場成本增加了一倍以上。
請以券商對帳單上的數字為準,而不要用費率頁面的數字。統計一次典型一買一賣會產生多少筆委託,再把費用除以這個筆數;結果就能告訴你,券商收的是純每口費用,還是另外加了每筆委託的費用。接著,請在 AlphaPrime 的回測設定中輸入每筆交易的手續費與滑價,並採用下一根 K 棒成交的方式,確保每個候選策略都以相同方式計費;如果你測試的設計,出場委託比基準更多,就要調高滑價的設定。
回測無法告訴你部分成交的哪些情況?
K 棒回測會以出場價,把每個批次全數成交,但限價目標批次可能只會部分成交,甚至完全不成交,因為價格可能只是碰到它的價位;停損批次則會以市價單成交,成交價是當時可得的價格。以 K 棒為基礎的回測看不到價位上的排隊情況,因此無法告訴你三口部位實際上有多少口在目標價出場。
原因在委託類型。限價單只會以指定價格或更好的價格成交,美國證券交易委員會(SEC)的投資人公告〈了解委託類型〉指出,如果價格始終沒有到達限價,或是同一價位上有其他委託排在你前面,這筆委託就可能完全不會成交。停損單則相反,一旦達到停損價,就會轉為市價單,並以下一個可得的價格成交,這個價格可能比停損價更差。因此,在分批出場的部位中,目標批次是比較樂觀的一類,而停損批次則是 K 棒回測最能公允模擬的一類,前提是成交價採用下一根 K 棒,而不是觸發價。
以下三個步驟可以讓測試更誠實:
- 把每個批次寫成獨立的策略,使用相同的進場點,各為一口。批次 1 寫成「依規則進場,在目標價出場」;批次 3 寫成「依規則進場,在移動停損出場」。每個策略各自計算扣除成本後的期望值與標準差。
- 停損類出場以下一根 K 棒計價,而不是以觸發價計價。在 K 棒收盤時觸發的停損,最好也只能以下一根 K 棒的開盤價成交;在 K 棒內部被觸發的停損,則會成交在超過停損價的某個價位。
- 把限價目標批次視為樂觀結果,並讀兩次:第一次按回測顯示的結果看;第二次則加上一條規則,即只有當價格穿越價位至少一跳動點,才算目標價成交。兩種讀法之間的差距,就是 K 棒無法看見的部分成交風險。
你的下一步很小也很具體:拿你目前的單一出場策略,保持進場不變,並把你想用在尾單上的出場規則,寫成一個只有一口的第二策略。兩者使用相同的手續費與滑價進行回測,然後把兩組期望值與兩組標準差,套用期望值章節中的公式並排比較。如果兩者的加權平均,比較好的單一規則低出的幅度,超過你因分散程度縮小而獲得的好處,那麼在還沒拆分任何一口之前,你對這個市場的答案就已經出來了。
常見問題
分批出場比一次全部出場更好嗎?
兩者之間沒有一定的贏家。分批出場是兩條或以上出場規則的口數加權平均,因此每口期望值會落在這些規則的最佳與最差之間。它改變的是交易結果的分散程度(會縮小),以及出場成本(在每筆委託都要付出自己的滑價或單筆最低收費時會上升)。請在相同進場點上,單獨測試每條批次規則,並在扣除成本後比較。
分批出場會降低獲利嗎?
相較於相同進場點上最好的單一出場規則,分批出場會降低每口獲利;相較於最差的那一條,則會提高。在假設範例中,一半一半拆分 150 美元的規則與 250 美元的規則,每口平均為 200 美元。代價是交易結果的標準差較小,每筆交易的權益波動也較小。這是否值得以較低的平均值換取,取決於你能承受多大的回撤。
我需要多少口才能分批出場?
至少兩口,因為一口無法拆分。兩口允許一次拆分,三口允許 1+2 或 1+1+1,十口則幾乎可以做任何安排。如果你的帳戶風險與停損距離,只允許一口標準合約,而交易所有掛牌微型合約,那麼微型合約能以更多方塊持有同樣的金額部位。在測試部位大小規則之前,先確定批次計畫,因為在相同交易上,單單部位大小就會改變淨損益與回撤。
部分出場會增加手續費嗎?
不論合約是一次委託出場還是分成數次,每口手續費都相同。只有在券商收取每筆委託或單筆最低收費,以及每筆委託都要付出自己的滑價時,額外的出場才會增加成本。請檢查券商對帳單中是否有每筆委託的費用項目;當某個設計的出場委託比單一出場基準更多時,請在回測中調高滑價設定。
回測能顯示目標委託的部分成交嗎?
K 棒回測做不到。它會以出場價將每個批次全數成交,但實單中的限價目標單,當價格只碰到價位一次並轉向時,可能只會部分成交,甚至完全不成交。停損批次觸發時會轉為市價單,若以下一根 K 棒計價,模擬會更公允。請把限價目標批次視為樂觀結果,並以一跳動點穿越規則進行第二次測試。
參考資料
- U.S. Securities and Exchange Commission. Understanding Order Types (Investor Bulletin). https://www.investor.gov/introduction-investing/general-resources/news-alerts/alerts-bulletins/investor-bulletins-14
- U.S. Securities and Exchange Commission. Stop, Stop-Limit, and Trailing Stop Orders (Investor Bulletin). https://www.investor.gov/introduction-investing/general-resources/news-alerts/alerts-bulletins/investor-bulletins-15
- CME Group. FAQ: Micro E-mini Equity Index Futures. https://www.cmegroup.com/articles/faqs/frequently-asked-questions-micro-e-mini-equity-index-futures.html

