GugoPro Academy← 回到投資專題目錄
Category 13 · Trend & Breakout Playbook

趨勢追蹤與突破策略:
把「看法」寫成可驗證的規則

趨勢追蹤不是預測每一個轉折,突破也不是看到一根長紅就追價。本篇把市場環境、訊號定義、訂單執行、波動度部位、退出規則、假突破處理、回測與復盤寫成一份可檢查的 Playbook。所有案例都是可重算的教育假設,不提供即時訊號或個人化進出場建議。

9 個實質章節Donchian/MA/ATR含成本與滑價研究用途

先掌握五個核心判斷

一、先分清楚:趨勢追蹤、突破與動能不是同義詞

1.1 趨勢追蹤是在反應,不是在預言

趨勢追蹤(trend following)通常等價格已經呈現某種方向性後才提高曝險。它接受訊號具有延遲,換取規則容易描述、容易測試,也不必事前猜中轉折。最常見的代價是盤整市場中的反覆進出、訊號落後,以及在趨勢末段才退出。這種「小虧損很多次、少數大波段支付成本」的報酬形狀,和高勝率的均值回歸策略不同。

學術研究常把跨資產、按自身過去報酬判斷方向的 time-series momentum 放在趨勢追蹤脈絡中。Moskowitz、Ooi 與 Pedersen 的研究在股價指數、貨幣、商品與債券期貨的 58 個流動工具上,觀察到一至十二個月的報酬延續性;研究也指出更長期間可能出現部分反轉。[1] AQR 的長期歷史研究則把 time-series momentum 的資料回溯至 1880,用來檢驗趨勢追蹤是否只是在近幾十年偶然有效。[2] 這些都是歷史研究,不等於任何個人策略未來一定有利。

1.2 突破是訊號形式,策略仍要補齊上下文

突破(breakout)通常把目前價格與一段回看區間的高點、低點、通道或結構比較。價格穿越區間上緣可以產生多頭候選訊號,穿越下緣可以產生空頭候選訊號;但「穿越」本身沒有告訴你要用盤中價格還是收盤、在哪一根成交、停損放哪裡、遇到跳空怎麼辦,以及要在何時停止交易。因此突破只是規則的入口,不是完整策略。

1.3 先寫策略的報酬形狀

問題趨勢追蹤/突破常見回答要實際驗證的項目
勝率可能不高,因為盤整會反覆觸發失效。勝率、平均獲利、平均虧損與尾端分布。
獲利來源少數持有較久的趨勢段。移除最佳幾筆後是否仍能維持合理結果。
主要風險假突破、反轉、滑價與連續小虧損。連虧長度、MDD、回撤恢復時間與成本敏感度。
執行特徵可能追價,且成交價格不確定。訊號與成交延遲、價差、深度、未成交與跳空。

在這種報酬形狀下,也要計算損益兩平勝率:平均虧損絕對值 ÷(平均獲利+平均虧損絕對值)。如果策略依賴少數大獲利,損益兩平勝率只是理論門檻,仍要觀察實際交易的成本、滑價、連續虧損與最大回撤。

二、先判斷市場環境:同一條規則不會在所有市場都一樣

2.1 趨勢與盤整要用可觀察條件區分

「現在有趨勢」不能只寫成主觀感覺。可以用移動平均的相對位置、斜率、通道寬度、波動度狀態或近期高低點結構定義環境。例如教育用的環境條件可以寫成:SMA50 高於 SMA200 且 SMA200 近幾期沒有下降;這不是普遍最佳參數,而是一個可被回測、被推翻、也可以做敏感度分析的明確假設。若參數只在 49、203 之類的單一組合有效,應懷疑過度擬合。

2.2 市場選擇要把執行成本放在前面

選擇標的時,日成交量只是起點。要同時記錄買賣價差、深度、交易時段、事件時段、停損觸發時的可成交性、放空限制、合約乘數與報價幣別。小型股票、冷門期貨或週末流動性薄弱的加密市場,平靜時的歷史曲線可能掩蓋壓力時段的滑價。要把市場分組,而不是把不同產品的結果混成一個平均值。

2.3 趨勢追蹤適合用多市場觀察,但分散不等於無風險

跨股票指數、利率、外匯與商品的規則可以降低單一市場失效的依賴,但在流動性收縮或宏觀衝擊時,相關性可能上升。不同市場也有不同交易時段、跳空、保證金與轉倉規則。分散的正確做法是列出每個市場的風險單位、共同因子與最壞情境,而不是只增加標的數量。

環境趨勢、盤整、事件
標的流動性、契約、幣別
規則訊號、成交、退出
壓力滑價、跳空、連虧

在執行前,可以用交易前規則檢查器確認環境、事件、成本、部位與不交易條件都已書面化;這個完成度只代表流程完整,並不代表訊號有效。

三、建立突破規則:把「穿越」拆成觀察、確認與成交

3.1 Donchian 通道的可重算定義

以 N 根 K 線的 Donchian 通道為例,為了避免把當期資料偷放進門檻,先用前 N 根已完成 K 線計算上下界:

Upper_N(t) = max(High[t−N], …, High[t−1]) Lower_N(t) = min(Low[t−N], …, Low[t−1]) 多頭候選訊號:Close[t] > Upper_N(t) 空頭候選訊號:Close[t] < Lower_N(t)

若 N=20,`Upper20(t)` 就是當期收盤前 20 根已完成 K 線的最高價,不包含當期正在形成的 K 線。這個細節決定回測是否使用了未來資訊。你可以再加上波動度濾網或長期均線條件,但每一個濾網都要在資料契約中固定,並分別檢查增益是否只是參數探勘。

3.2 收盤確認與盤中穿越是兩個不同系統

若規則寫「當期收盤高於前 20 根最高價」,訊號最早在收盤時才知道;若用下一根開盤成交,至少要記錄一根 K 線的資訊延遲。若規則寫「盤中價格穿越通道上緣就掛停損買單」,則成交可能更早,但價格、跳空、未成交與滑價模型也完全不同。不能先用收盤確認的訊號,再用當期最低價或收盤價假設完美成交。

模型訊號成立時點常見成交假設主要偏誤
收盤確認/下一根成交收盤後才確認 Close 超過門檻。下一根開盤或可證明的延遲價格。若偷用當期收盤成交,會低估延遲與滑價。
盤中停損單價格觸及突破門檻。停損單觸發後轉市價;成交價不保證。忽略跳空、價差與部分成交。
收盤價篩選後限價收盤後決定。只在指定價或更好價格成交。若未成交仍當成持倉,會高估成交率。

Investor.gov 說明市價單通常保證執行但不保證成交價格,限價單有價格邊界但可能不成交,停損單達到 stop price 後會轉成市價單。[3] FINRA 也提醒報價延遲、執行時間與波動會造成實際成交價與看到的報價不同。[4] 因此突破交易的「訊號正確」與「能以理想價格成交」必須分開。

3.3 突破緩衝不是免費的改善

為了降低剛好碰到通道就反轉的情況,可以把門檻提高為 `Upper_N + buffer`,或要求收盤高於通道一定比例。緩衝越大,可能減少雜訊,也可能讓進場更晚、放棄一部分趨勢、增加追價距離。緩衝設定應用參數敏感度表呈現,而不是只挑一組最好看的結果。

四、訂單與執行:突破策略最容易在成交假設上自欺

4.1 訊號、送單、成交要有三個時間戳

交易日誌至少保存訊號形成時間、送單時間與成交時間。若訊號在 10:00:00 形成、10:00:02 送單、10:00:03 成交,這三個時間點才能讓你知道策略延遲、平台延遲與市場滑價各自發生在哪裡。只有一個「進場價」欄位,無法區分規則失效與執行偏差。

4.2 滑價與成本要按方向建模

多頭突破通常是在上漲時買入,進場不利滑價代表買得更貴;多頭停損出場在下跌時賣出,代表賣得更便宜。空頭突破則是開倉賣出較便宜,回補時買得更貴。手續費應按實際成交金額計算,固定費、稅費、借券費與轉倉成本另外列示,不能用一個模糊的「預估成本」代替所有摩擦。

多頭不利滑價:Entry_fill = Entry_signal × (1 + entry_slip) 多頭停損:Stop_fill = Stop_signal × (1 − exit_slip) 空頭不利滑價:Entry_fill = Entry_signal × (1 − entry_slip) 空頭回補:Stop_fill = Stop_signal × (1 + exit_slip) 淨期望值 = 勝率 × 平均淨獲利 + 失敗率 × 平均淨虧損

可先用交易期望值計算器做成本敏感度,再把實際完成交易的 R 結果貼入交易日誌分析器。前者測試計畫假設,後者分析已發生結果,不能互相取代。

4.3 不交易規則是執行設計的一部分

突破策略可以預先寫出不交易條件:價差超過上限、突破發生在流動性薄弱時段、距離停損太遠導致部位低於可操作最小量、重要事件前後沒有可接受的跳空處理方式、當日已達到損失上限,或訊號與交易所/券商規則不相容。這些條件不是用來事後挑掉虧損交易,而是要在發單前固定。

五、波動度與部位大小:讓風險預算先於「我有多看好」

5.1 ATR 是尺度,不是預測器

True Range 可以寫成當期最高低、跳空與前收之間最不利的距離,常見定義為:

TR_t = max( High_t − Low_t, |High_t − Close_{t−1}|, |Low_t − Close_{t−1}| ) ATR_N = N 期 TR 的平均或指定平滑值

ATR 反映近期價格活動範圍,適合用來把停損距離或部位風險標準化;它不是方向預測,也不保證下一期一定在 ATR 範圍內波動。高波動時同一部位數量的貨幣風險會變大,若不調整部位,策略的風險曝險會隨市場狀態膨脹。

5.2 可重算部位案例

虛構教育案例:前 20 根 K 線最高價是 100,當期收盤突破至 101;ATR20=4,規則設定停損為進場價下方 2×ATR,因此 Stop=93。帳戶風險預算設定為 NT$1,000,乘數為 1,先不計成本時,每單位風險為 101−93=8,最大整數部位為 floor(1,000÷8)=125 單位。這不是任何市場的即時資料,也不表示 2×ATR 是普遍適合的距離。

若再假設每單位變動成本合計為 NT$0.20,簡化後每單位風險變成 8.20,最大整數部位變為 floor(1,000÷8.20)=121 單位,預估風險為 NT$992.20。這個差異說明「先算價格距離再忽略成本」會讓部位略微超過真實風險預算。使用實戰交易計畫與部位檢查器時,仍要自行核對實際乘數、費率、稅費、最小跳動與跳空風險。

5.3 乘數、最小交易單位與總曝險

期貨、差價合約、選擇權與加密衍生品不應直接套用現貨每股模型。每點乘數、保證金、到期、強平、借券、幣別與最小下單單位都會改變最壞損失。即使每筆交易都只使用帳戶 1% 風險,多個同向市場仍可能在同一個宏觀事件中同時觸發退出;部位檢查必須延伸到組合層級。

CME Group 的教育內容把部位與風險管理放在交易前流程,強調先考慮可承受虧損與適當部位,而不是先決定想買多少。[5] 這裡的風險預算是研究模型,不是對個人可承受損失的診斷。

六、退出、停損與持倉管理:不要把成功交易的尾端剪掉

6.1 固定目標與趨勢退出的取捨

固定目標容易計算,但可能提早結束長趨勢;以 N 日低點、ATR 追蹤停損或均線跌破退出,可能保留更長的獲利尾端,卻會回吐部分浮盈。兩者不是誰一定更好,而是兩種不同報酬形狀。若原本研究的是趨勢追蹤,後來加上很近的固定目標,實際上可能已變成另一套策略,不能用原本的命名掩蓋規則改變。

6.2 停損必須是失效定義,不是情緒開關

停損可以基於價格結構、通道反向突破、ATR 距離或時間條件,但必須在進場前寫下。把停損越移越遠,會改變原來的風險預算;把停損移到保本,也可能增加短期雜訊洗出。每次移動停損都要在歷史規則中預先定義,並在交易日誌中標記「規則內」或「臨時修改」。

6.3 加碼與部分出場要重新計算總風險

趨勢變好後加碼不是免費的。新的 Entry、Stop、數量與原有持倉應合併計算最壞情境;部分出場後的平均獲利與剩餘曝險也會改變。如果只記最後一個平均價格,復盤就無法知道每段風險是如何累積。可以把每個 fill 拆成一筆事件,並以組合層級檢查總風險與最大回撤。

6.4 交易與風險停機條件

七、假突破與失效模式:把「沒有賺錢」拆成可改善的原因

7.1 假突破的結構

假突破不是單純「突破後下跌」四個字。至少要先定義觀察期:突破後若在 M 根 K 線內重新收回通道,或觸發原本的結構停損,才算該規則的失敗。不同的 M、收盤確認與退出方式會得到不同失效率。若一看到突破後回落就主觀標記假突破,研究結果會混入事後資訊。

失效來源可觀察跡象Playbook 對策
盤整雜訊通道反覆被穿越,方向延續短。檢查環境濾網、提高確認條件,並測試成本敏感度。
事件跳空開盤直接越過門檻或停損。事前規定事件持倉、最大滑價與不交易時段。
流動性收縮價差擴大、深度下降、部分成交。記錄可成交數量,將未成交與不利成交分開。
參數過度貼合只有一組 N、buffer 或 ATR 倍數有效。做鄰近參數、跨市場、樣本外與 walk-forward 測試。
規則漂移交易者臨時移停損、追價或跳過訊號。交易前檢查與交易後日誌分開標記,不用結果合理化。

7.2 突破失敗不等於立刻反向

原本的多頭突破失效,只代表多頭假設未被支持;它不自動證明空頭策略已成立。若要反向交易,必須另寫空頭的訊號、成交、部位、停損與成本契約。否則把多頭出場和空頭進場綁在一起,會無意間增加交易頻率與滑價。

7.3 研究日誌要記錄「規則錯」還是「執行錯」

一筆虧損可能是策略在盤整環境自然付出的成本,也可能是訊號計算錯誤、下單晚了、部位過大或停損沒有按原規則執行。交易日誌至少要有策略標籤、環境標籤、計畫/實際成交、滑價、規則遵守、結果 R、持有期與退出原因。用交易日誌分析器查看總體統計後,再按環境與規則遵守程度分組。

八、回測驗證:先建立資料契約,再看績效曲線

8.1 最小回測契約

8.2 趨勢策略要看分布,不只看 CAGR

如果全部累積報酬來自兩筆極端大獲利,策略的實際持有體驗可能長期不穩。要查看月度或交易層級分布、最差連虧、最大單筆損失、尾端獲利占比、回撤持續時間與恢復速度。把最佳交易移除或把成本加倍,是辨識策略是否依賴偶然事件的簡單壓力測試。

8.3 樣本外與 walk-forward

可把資料分成固定研究窗與後續測試窗:在研究窗決定 N、buffer、ATR 倍數或環境濾網,再完全不修改地執行下一段測試;窗格向前移動後重複。若每次看完測試結果又回頭調參,下一段就不再是乾淨的樣本外。回測最重要的輸出不是「最好參數」,而是規則在不同時間與環境的脆弱處。

若要把訊號與特徵串成可審計流程,可延伸閱讀量化研究工作台回測與過度擬合文章技術指標邊界文章。本文不把任何回測結果包裝成即時交易訊號。

8.4 權益曲線與回撤要與交易日誌互相核對

交易層級的 R 序列、資金權益曲線與資產價格曲線是三個不同層次。價格上漲不代表策略一定獲利,策略獲利也不代表回撤可承受。可用風險報酬與最大回撤分析工具分析貼入的權益或報酬序列,再回到日誌核對最大回撤是由哪些交易、環境與執行偏差造成。

九、可直接複製的趨勢追蹤與突破 Playbook 表

下表不是推薦參數,而是一個要求自己填滿的研究模板。若其中任何欄位只能寫「看盤決定」或「視情況」,就代表規則尚未達到可驗證程度。

模組必填規則可重算欄位失效/停機條件
市場與標的市場、交易時段、幣別、流動性與契約規格。價差、深度、乘數、最小單位、費率。規格改變、流動性低於門檻、事件風險無法處理。
環境濾網趨勢/盤整判定與參數,明確資料截止。MA 位置、斜率、ATR、通道寬度。只在單一參數或單一市場有效。
突破訊號觀察窗 N、Close/盤中、突破緩衝。Upper、Lower、訊號時間。資訊洩漏、重複訊號、資料缺口。
成交執行訂單類型、延遲、允許滑價、未成交處理。送單/成交時間、預期/實際價格。跳空、部分成交、停損成交價無法證明。
部位與風控單筆風險預算、ATR 停損、總曝險。每單位風險、整數部位、使用率。總風險超限、保證金不足、同向曝險過高。
退出與復盤固定目標或追蹤退出、時間退出、規則遵守。實現 R、持有期、MDD、連虧。規則外修改、環境轉換、回撤超出研究區間。
執行順序:先用交易前規則檢查器確認欄位已填,再用部位檢查器反推數量,用期望值工具做成本敏感度;交易完成後,把結果貼到交易日誌分析器,最後用最大回撤工具檢查資金路徑。
Practice desk

把規則寫下來,再決定是否值得測試

第 13 類的工具不是替你選標的,而是把成本、部位、已完成交易與回撤拆成可核對資料。

開啟交易前檢查 →

來源與資料邊界

趨勢追蹤的研究背景採公開學術與研究機構資料;訂單執行與交易前風險採 Investor.gov、FINRA 與 CME Group 教育資料。來源用於定義概念、研究背景與執行風險,不支持特定標的、參數、方向或報酬預測。本文所有價格、ATR、部位與成本案例均為可重算的教育假設,不是即時行情。

References

  1. Moskowitz, Ooi & Pedersen, “Time series momentum,” Journal of Financial Economics, 2012.
  2. Hurst, Ooi & Pedersen, “A Century of Evidence on Trend-Following Investing,” AQR.
  3. Investor.gov, “Types of Orders.”
  4. FINRA, “Order Types.”
  5. CME Group, “Position and Risk Management.”

投資風險免責聲明

本頁內容、計算器與示例僅供教育、研究與情境估算,不構成投資、交易、投注、稅務、法律或其他個人化金融建議。金融市場與個別制度可能快速變化,請核對最新官方資料並自負決策責任。過去表現、模型輸出或模擬結果不代表未來結果。