VALYNOXSTRATEGY RESEARCH TECHNOLOGY
AlphaPrimeAlphaPrime
策略學院 / 指標與訊號

波段交易指標:該用哪些、如何檢驗

波段交易者多半組合一個趨勢、一個動能和一個波動指標。沒有哪種組合預設就是最好。請在日 K 棒上,納入交易成本與跳空成交來比較各組合,再用建構時沒用過的資料檢驗。

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

目錄
  1. 波段交易者實際上會用哪些指標?
  2. 趨勢、動能與波動指標各自做什麼?
  3. 如何避免重複的指標?
  4. 為什麼日 K 棒、持有期間與隔夜跳空會改變檢驗方式?
  5. 哪種組合最好,又如何公平比較?
  6. 樣本外與推進分析檢驗如何搭配?
  7. 指標檢驗能告訴你什麼,不能告訴你什麼?
  8. 常見問題
  9. 參考文獻

波段交易者實際上會用哪些指標?

波段交易者多半用移動平均線判斷趨勢,用 RSI 或 MACD 判斷動能,用 ATR 或布林通道判斷波動。沒有哪一個指標是最好的。某個組合只有在扣除手續費與滑價後仍勝過較簡單的版本,在日 K 棒上以貼近實際的跳空成交來計算,且在建構時沒用過的資料上依然有效,才值得進一步研究。

波段交易是一種持倉數天到數週、捕捉價格一段走勢(即「波段」)的交易風格。它介於當沖與部位交易之間:當沖會在交易時段結束前平掉所有部位,部位交易則持有數個月。下面五個指標出現在大多數波段設定中,每個都有多數看盤平台採用的標準預設值。

指標角色衡量什麼常見預設值波段常見用法
移動平均線趨勢最近 N 根 K 棒的平均價格20、50 或 200 根 K 棒只順著趨勢方向交易
RSI動能最近上漲幅度與下跌幅度的比較,範圍 0–10014 根 K 棒在上升趨勢中買進回檔
MACD趨勢與動能快速與慢速指數移動平均線之間的差距12、26、9抓回檔之後的轉折時機
ATR波動K 棒的平均幅度,包含跳空14 根 K 棒設定停損距離與部位大小
布林通道波動以移動平均線為中心,依標準差(衡量收盤價通常偏離平均多遠的指標)決定距離所畫出的通道20 根 K 棒,2 個標準差找出價格過度延伸或波動平靜的時期

趨勢、動能與波動指標各自做什麼?

每種角色回答不同的問題,所以好用的波段設定會從每種角色各取一個指標。可以想成開車旅行:趨勢指標告訴你道路往哪個方向走;動能指標是車速表,顯示車子在加速還是減速;波動指標告訴你路有多顛簸,讓你知道該留多少空間。

  • 趨勢回答「往哪個方向?」常見的過濾條件是:只有收盤價在 50 日移動平均線之上才做多。
  • 動能回答「何時?」在上升趨勢中,RSI 短暫下探可以標示回檔進場點。
  • 波動回答「要多遠?」以 ATR 的倍數設定的停損,在劇烈的市場中放寬、在平靜的市場中收窄,讓你每筆交易承擔的風險相近。
每個角色一個指標:50 日均線等趨勢指標決定交易方向,RSI 拉回等動能指標決定何時進場,ATR 停損等波動指標決定停損放多遠 一個指標一個角色 方向、時機、停損距離 趨勢 哪個方向? 動能 何時? 波動 多遠?
每種角色一個指標:趨勢決定方向,動能決定時機,波動決定停損距離。

如何避免重複的指標?

同一類的兩個指標通常只是把同一個看法講了兩次,而不是兩個獨立的看法。許多指標由相同的輸入計算而來,所以會一起上升、一起下降。

  • RSI、隨機指標與威廉指標(Williams %R)都在衡量收盤價相對於近期價格走勢的位置。在多數圖表上,它們幾乎在同樣的 K 棒到達極端值。
  • MACD 與移動平均線交叉關係緊密。MACD 線等於 12 根 K 棒的 EMA 減去 26 根 K 棒的 EMA,所以它穿越零軸的時點,正好就是這兩條平均線交叉的時點。
  • 布林通道與 ATR都在衡量波動。一個用收盤價的標準差,另一個用真實波幅,但它們在相同的時期擴張與收縮。

簡單的檢查方式:計算兩個訊號在相同 K 棒上一致的頻率。如果幾乎總是一致,就拿掉一個。重複的指標會讓圖表看起來比實際更有把握。在檢驗時,它們還會增加參數,而每多一個參數,最佳化程式就多一個擬合雜訊的途徑。

為什麼日 K 棒、持有期間與隔夜跳空會改變檢驗方式?

波段交易會經歷收盤、夜晚與週末,所以回測必須正確處理跳空與下一根 K 棒成交。當沖的檢驗可以忽略隔夜風險,波段的檢驗不行。AlphaPrime(Valynox) 回測可以選你要的資料週期,成交一律在下一根 K 棒,正好符合波段持倉過收盤和週末的測試需求。

  1. 決定由哪個交易時段的收盤形成日 K 棒。期貨會跨越多個交易時段。以全時段建構的日 K 棒,與只用日盤建構的日 K 棒,開盤、最高、最低價,以及在某些市場的收盤價都可能不同,指標值也就不同。
  2. 在下一根 K 棒執行。以今天收盤價計算出的指標,只能觸發下一根 K 棒的委託。如果檢驗在用來判斷的同一個收盤價成交,用的就是一個你實際上無法成交的價格。
  3. 跳空時以開盤價成交。如果價格開在你的停損之外,實際成交會在開盤價或其附近,而不是停損價。
  4. 處理合約轉倉。連續月序列把即將到期的合約接在一起。未經調整的轉倉會造成假跳空,可能觸發在實際交易的合約上從未發生過的移動平均線與 ATR 訊號。
  5. 預期交易筆數很少。日 K 棒的波段策略交易頻率遠低於日內策略,因此需要許多年的歷史資料,結果才有意義。

假設範例

一筆多單波段交易在 900 點進場,停損設在 860,也就是進場價下方 40 點。經過週末後,市場開在 830。把停損成交在 860 的回測,記錄的是 40 點虧損。貼近實際的檢驗會在開盤價成交,記錄 70 點虧損。經過許多筆交易,像這樣忽略跳空,會讓策略看起來比實際更平順。

假設的週末跳空:從 900 進場做多,停損設在 860,週一開盤 830,因此以停損價成交、顯示虧損 40 點並不真實,實際以開盤價成交會虧損 70 點 跳空會跳過你的停損 900 做多,週末跳空,假設情境 週五 週一 停損成交:−40(不真實) 開盤成交:−70(真實) 跳空以開盤價成交。 所以:跳空要以開盤價成交來模擬。
上面的假設範例:當價格開在停損之下,成交在開盤價,而不是停損價。

ATR 在這裡很有用,因為它的波幅包含了跳空。依ATR 設定停損與部位大小的停損,會為該市場常見的跳空留出空間。

哪種組合最好,又如何公平比較?

一般來說沒有最好的指標組合,只有在你的市場、K 棒週期與交易成本下表現最穩的那一個。要找出來,請用相同的資料、相同的執行規則與相同的交易成本檢驗每個組合,並且一定要納入一個簡單的基準。

基準通常就是只用趨勢過濾。如果加入 RSI 和布林通道後,扣除交易成本仍沒有明顯勝過「在 50 日平均線之上做多」,那些多出來的指標就只是裝飾。請以每個版本的淨平均每筆損益來評斷:

淨平均每筆損益 = 毛平均每筆損益 減去 一買一賣(來回)成本

毛平均每筆損益是扣除成本前的總結果除以交易筆數。一買一賣(來回)成本是進場與出場的手續費與規費,加上兩邊的滑價。多加的進場條件往往會增加波動較小的交易,而交易成本最先吃掉的就是小波動。

假設範例

以某個指數期貨十年的日 K 棒檢驗三個組合,每口一買一賣(來回)成本為 $40:

組合交易筆數毛平均每筆損益淨平均每筆損益保留期間的淨平均每筆損益
A:只用 50 日移動平均線過濾150$300$260$210
B:A 加上 RSI 回檔進場300$180$140$120
C:B 加上布林通道與 MACD600$90$50−$10

C 看起來最忙碌也最細緻,但扣除交易成本並放到沒看過的資料上,它是最弱的。最簡單的 A,在檢驗期間與保留期間的淨平均每筆損益都是最好的,所以它仍是要被超越的對象。B 加入 RSI 並沒有證明自己的價值,而 C 在沒看過的資料上失敗了。

三種組合每口的假設性平均每筆損益:A 僅用均線,毛利 300、淨利 260,保留資料上淨利 210;B 加入 RSI,分別為 180、140 和 120;C 再加入兩個指標,分別為 90、50 和負 10 美元 指標越多,優勢越少 每口平均每筆損益,美元,假設性 毛利 淨利 保留資料 300 260 210 180 140 120 90 50 −10 A:均線 B:+RSI C:+2 個 C 在未見資料上失敗。 所以:先打敗簡單基準。
上面的假設比較:指標越多,交易筆數越多、每筆的優勢越小,在沒看過的資料上的結果也最差。

你測試了多少種組合,與哪一種勝出同樣重要。Sullivan、Timmermann 與 White(1999)指出,當許多技術交易規則在同一份資料上檢驗時,其中最好的那個可能純粹因為運氣而看起來很強。請記錄你試過的每一個版本。在 AlphaPrime中,策略生成讓你把指標、參數範圍以及進場與出場條件設為搜尋空間,而 AlphaPrime 的回測會用相同的手續費、滑價、下一根 K 棒執行與交易時段評估每個候選策略。

樣本外與推進分析檢驗如何搭配?

你在某一段歷史上挑出的組合,必須用它沒看過的歷史來檢驗。樣本外資料是指策略的規則與設定並非依據它所挑選的資料。推進分析是一種檢驗,會反覆在一段歷史窗口上調整策略,然後在下一個窗口上原封不動地交易。

  1. 在看任何結果之前,先固定指標類型、參數範圍、交易成本與排名指標。
  2. 保留最近的一段歷史,不要動它。
  3. 對其餘部分執行推進分析。讓每個樣本內窗口長到足以包含有用的交易筆數,通常至少 30 到 50 筆。以日 K 棒來說,這代表窗口要有好幾年。
  4. 檢查有多少個樣本外窗口是正的、所選參數在各窗口之間是否相近,以及結果在滑價加倍後是否仍然成立。
  5. 最後才執行保留的期間,而且只跑一次。

推進分析與窗口選擇的指南對窗口有更詳細的說明。AlphaPrime 的策略檢驗包含推進分析,有基礎、標準與完整等級,也可自訂門檻。Bailey、Borwein、López de Prado 與 Zhu(2014)說明了這一步為何重要:試驗次數夠多之後,即使策略沒有優勢,也很容易找到極好的樣本內結果。

指標檢驗能告訴你什麼,不能告訴你什麼?

謹慎的檢驗可以排除某個組合,但不能證明某個組合未來會有效。請用結果來縮小名單,而不是預測報酬。

謹慎的檢驗能告訴你謹慎的檢驗不能告訴你
每筆交易的優勢是否足以涵蓋貼近實際的交易成本該優勢明年是否會持續
新增的指標是否比較簡單的基準更好這個型態為何存在,或是否只是運氣
過去的回撤與跳空虧損有多大下一次回撤的大小
結果在規則建構時沒用過的資料上是否成立你的歷史中沒有出現過的市場狀態會如何表現

如果你使用 AlphaPrime,這代表:每種角色各定義一個指標作為搜尋空間,在每次評估中都保留交易成本(一律以下一根 K 棒成交),並讓推進分析檢驗決定哪些組合留在策略資料庫中。請拿每個結果與你也測試過的最簡單基準比較。

常見問題

波段交易最好的指標是什麼?

沒有哪一個指標適用於所有市場與 K 棒週期。多數波段交易者會組合趨勢指標(例如移動平均線)、動能指標(例如 RSI 或 MACD)與波動指標(例如 ATR)。合適的組合,是在你自己的市場中,扣除交易成本並在樣本外資料上勝過簡單基準的那一個。

波段交易策略該用幾個指標?

兩到三個很常見:一個管趨勢、一個管時機、一個管停損距離。每多一個指標,就多一些參數,也多一些擬合雜訊的途徑。只有在它衡量了其他指標沒有衡量的東西,並且在公平比較中改善了淨平均每筆損益時,才加入它。

波段交易指標用哪個 K 棒週期最好?

日 K 棒是最常見的選擇,因為波段交易持續數天到數週。有些交易者會用 4 小時或 60 分鐘 K 棒來抓進場時機。無論用哪個 K 棒週期,都要以下一根 K 棒執行、貼近實際的跳空成交,以及對每個版本相同的交易成本來檢驗。

為什麼波段交易的回測需要這麼多歷史資料?

日 K 棒的波段策略交易筆數相對較少,所以短短的歷史資料樣本太小,無法判斷。推進分析的每個窗口也需要足夠的交易筆數,以日 K 棒來說,代表每個窗口要好幾年。更長的歷史也涵蓋更多趨勢、盤整與高波動的時期。

參考文獻

  • Sullivan, R., Timmermann, A., & White, H. (1999). Data-Snooping, Technical Trading Rule Performance, and the Bootstrap. The Journal of Finance, 54(5), 1647–1691.
  • 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.