跳至主要內容

吊燈停損詳解:跟著一筆交易算一遍

用一張七天的表格,把 ATR、停損線、只上不下這三件事一步步算出來。看完你就能自己複算回測裡的每一筆出場。

閱讀 7 分鐘

上一篇說了趨勢追蹤需要一條「只上不下」的停損線。這篇把這條線怎麼算,從頭到尾算一遍。

第一步:ATR 是什麼

ATR 的全稱是平均真實波幅,它回答一個問題:這檔股票平均每天會動多少錢?

先算單日的「真實波幅」TR,取三個數裡的最大值:

TR = max(今日最高 - 今日最低,
         |今日最高 - 昨日收盤|,
         |今日最低 - 昨日收盤|)

後兩項是為了處理跳空。如果今天開盤就比昨天收盤高出一大截,只看今天的高低點會低估實際發生的價格移動。

把 TR 做平滑(預設 14 天)就得到 ATR。ATR 的單位是元,不是百分比——這一點很重要:它讓停損距離自動適配標的的波動水準,你不需要為高波動的股票單獨放寬停損。

第二步:停損線的公式

停損線 = 持倉期間的最高價 - ATR × 倍數
生效停損 = 從進場至今算出的所有停損線裡的最大值

第二行是全部關鍵。停損線只會往上走。 價格回落時,「持倉期間的最高價」不變,但 ATR 可能變大,公式算出的數會變小——這時我們不採用它,繼續沿用之前更高的那個值。

我們的引擎用了兩個倍數:

  • entry_mult = 2.0:進場當天的初始停損,貼得近一些;
  • exit_mult = 3.0:之後每天的移動停損,放得寬一些,給趨勢留空間。

第三步:跟著一筆交易算七天

假設某檔股票在第 1 天滿足進場條件(收盤價站上 100 日均線,且創下 22 日新高),收盤價 101.00 元買進。

最高價收盤價ATR持倉最高價公式算出的線生效停損
1102.00101.004.00102.00102.00 − 2×4.00 = 94.0094.00
2106.00105.004.20106.00106.00 − 3×4.20 = 93.4094.00
3110.00109.004.50110.00110.00 − 3×4.50 = 96.5096.50
4109.00104.004.80110.00110.00 − 3×4.80 = 95.6096.50
5118.00117.005.00118.00118.00 − 3×5.00 = 103.00103.00
6119.00112.005.40119.00119.00 − 3×5.40 = 102.80103.00
7114.005.40119.00當日最低跌破 103.00,出場

逐行看幾個要點:

  • 第 1 天用的是 entry_mult = 2.0,所以停損是 102 − 8 = 94,而不是 90。初始停損更緊,是因為這一刻你對這筆交易還沒有任何浮盈作緩衝。
  • 第 2 天公式算出 93.40,比昨天的 94.00 低。我們不採用它,停損保持 94.00。這就是「只上不下」。
  • 第 4 天價格回落(收盤從 109 跌到 104),ATR 還變大了,公式算出 95.60。同樣低於前一日的 96.50,停損保持 96.50 不動。
  • 第 5 天大漲,持倉最高價抬到 118,停損一躍升到 103.00。此時這筆交易已經鎖定獲利:即使明天就被停損,出場價 103 仍高於進場價 101。
  • 第 7 天盤中最低跌破 103.00,觸發出場。

第四步:這筆交易的帳

  • 進場 101.00,出場 103.00,+1.98%
  • 期間最高收盤價 117.00,浮盈一度到 +15.8%
  • 也就是說,從最高點回撤到出場,交出了約 12 個百分點。

這一點必須講清楚,因為它是新手最容易失望的地方:移動停損一定會讓你交出一部分利潤。 它的設計目標不是在最高點賣出——沒有任何規則能做到那件事——而是保證你不必判斷頭部在哪裡,就能把大部分趨勢留在手裡。

代價與效益是同一枚硬幣:正因為停損放得夠寬(3 倍 ATR),第 4 天和第 6 天的回落才沒有把你洗出去,第 5 天的大漲你才吃得到。如果把 exit_mult 調到 1.5,第 4 天你就出場了,後面那段漲幅與你無關。

第五步:自己動手改一個參數

打開回測工具,用預設參數跑一次,記下交易次數、勝率、總報酬。然後只改一個參數:

  • **exit_mult 從 3.0 調到 2.0**:停損變緊,交易次數增加,單筆平均獲利下降。看看總報酬是變好還是變差。
  • **exit_mult 從 3.0 調到 5.0**:停損變鬆,被洗出的次數減少,但每次出場都要回吐更多。

你會發現兩個方向都不是單調變好的——存在一個區間,太緊和太鬆都更差。找到這個區間的大致位置,比記住某個「最佳值」有用得多。至於為什麼不該去追求那個最佳值,見《回測的三個陷阱》裡關於過度配適的部分。

常見疑問

停損用收盤價還是盤中價觸發? 我們的引擎用盤中最低價觸發,這與實單中掛停損單的行為一致,也更保守。用收盤價觸發會讓回測結果偏好看。

跳空低開穿過停損線怎麼辦? 按開盤價成交,實際虧損大於計畫虧損。停損是價格水準,不是保險合約,這個風險無法透過調參數消除,只能靠控制單筆部位來限制。

能不能加停利? 可以加,但趨勢追蹤的報酬高度集中在少數幾筆大賺上,設定固定停利會把這些交易提前截斷,通常會顯著降低總報酬。這也是這類策略預設不設獲利目標的原因。

本文僅用於量化技術研究與教育目的,不構成任何投資建議。歷史回測結果不代表未來報酬,交易風險由投資人自行承擔。

接下來

把回測面板從左到右讀一遍,每個指標是什麼、多少算好、什麼情況下它會騙你。附一份跑完回測就能用的核對清單。