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

技術分析工具與指標:哪些可以拿來檢驗?

只要把技術指標寫成帶有參數與成本的明確規則,就能加以檢驗。沒有哪個指標在一般情況下最好,因為結果取決於市場、K 棒週期與交易成本。唯一公平的裁判,是規則從未見過的資料。

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

目錄
  1. 技術指標的主要類別有哪些?
  2. 指標如何變成進場與出場規則?
  3. 交易有最好的指標嗎?
  4. 為什麼不能靠看圖表來評斷指標?
  5. 如何組合指標又避免訊號重複?
  6. 指標檢驗能告訴你什麼,又不能告訴你什麼?
  7. 常見問題
  8. 參考文獻

技術指標的主要類別有哪些?

大多數技術指標可分為四大類:趨勢、動能、波動與成交量。沒有哪個指標在一般情況下最好。任何一種指標都可以檢驗,前提是寫出帶有參數的明確進場與出場規則、納入交易成本,並用規則從未見過的資料檢查結果。

技術指標是對過去價格或成交量所做的計算,並畫在圖表上,例如最近 20 根收盤價的平均。每一類指標回答的是關於市場的不同問題。下表列出各類常見的指標,以及各類指標在規則中通常扮演的角色。

類別回答的問題常見例子在規則中的典型用途
趨勢價格往哪個方向走,力道多強?移動平均、ADX、唐奇安通道、Supertrend、MACD過濾:趨勢向上時才做多
動能價格最近變動得多快?RSI、Stochastic、Williams %R、CCI、變動率時機:在短暫拉回或一波強勢之後進場
波動價格波動有多大?ATR、布林通道、肯特納通道、標準差風險:設定停損距離、部位大小或突破寬度
成交量成交了多少量?OBV、VWAP、Chaikin 資金流量、成交量分布圖確認,或作為交易時段內的參考價

有些指標同時屬於兩個類別。MACD 由移動平均建構而成,所以衡量的是趨勢,但交易人也把它當作動能來看。其他技術分析工具,例如趨勢線、費波那契水位與圖形型態,通常是用手畫的。它們同樣可以檢驗,但必須先寫出電腦不需要靠你的主觀判斷就能遵循的明確規則。

每個指標在較短 K 棒週期上也各有典型的優點與失效之處。我們的指南當沖最佳指標:各自的作用與失效之處逐一說明。本文談的是如何檢驗其中任何一個。

四大指標家族排成 2 乘 2 方格:趨勢問方向,動能問變化速度,波動性問波動幅度,成交量問參與程度,每個家族各有三個範例指標;MACD 位於趨勢與動能之間的線上,因為它同時屬於兩者 每個家族一個問題 MACD 屬於兩個家族 趨勢 方向 MA、ADX、Donchian 動能 變化速度 RSI、Stochastic、CCI 波動性 波動幅度 ATR、Bollinger、Keltner 成交量 參與程度 OBV、VWAP、CMF MACD
四大指標類別。每一類回答關於市場的一個問題。MACD 屬於兩個類別。

指標如何變成進場與出場規則?

當你把指標寫成具有明確條件、明確動作與明確數字的規則時,它就變得可以檢驗。「RSI 看起來超賣」無法檢驗。「當 14 根 K 棒的 RSI 收盤低於 25 時,在下一根 K 棒開盤買進」則可以檢驗。參數是規則中由你選定的數字,例如 RSI 的長度或 25 這個水位。

  1. 選擇指標與其長度。例如 14 根 K 棒的 RSI。
  2. 寫出條件。使用水位(「收盤低於 25」)、交叉(「快線向上穿越慢線」)或比較(「收盤高於上軌」)。
  3. 寫出動作與成交價。如果條件在 K 棒收盤時檢查,就在下一根 K 棒開盤成交。用同一個收盤價來判斷又用它成交的規則,交易的是你實際上無法成交的價格。
  4. 寫出出場。使用反向訊號、固定的 K 棒數、以 ATR 為基礎的停損,或停利。
  5. 為每個參數設定範圍。例如 RSI 長度從 5 到 30。
  6. 加入成本與交易時段。手續費、滑價,以及規則可以交易的時間,應該放在第一次測試,而不是最後一次。

假設性範例

規則:當 RSI 收盤低於某個門檻時,在下一根 K 棒開盤買進,並在固定的 K 棒數之後出場。RSI 長度為 5、10、15、20、25 或 30(6 個值)。門檻為 15、20、25、30 或 35(5 個值)。出場為 5、10 或 20 根 K 棒之後(3 個值)。變體的數量是各參數值個數相乘:6 × 5 × 3 = 90 個變體。如果再加上一個使用 50、100 或 200 根 K 棒移動平均的趨勢過濾,就變成 90 × 3 = 270 個變體。每個變體都是一次獨立的測試,每一個都多了一次因運氣而看起來不錯的機會。

變體的數量成長得很快。要以人工測試 270 個變體,每個都含成本與樣本外檢查,所花的時間遠超過大多數交易人能負擔的程度。因此,系統化交易人會讓軟體來撰寫並執行規則。在 AlphaPrime(Valynox)中,策略生成會把研究想法轉成可檢驗的交易規則。你設定規則與指標、參數範圍、進場與出場條件,以及搜尋限制。

六個步驟將指標變成可檢驗的規則:指標 RSI 14、條件低於 25、動作為下一個開盤進場、10 根 K 棒後出場、參數範圍如 RSI 長度 5 到 30,以及用未見過的資料測試 六步驟打造可檢驗的規則 假設的 RSI 規則 1 指標 RSI 14 2 條件 低於 25 3 動作 下一個開盤 4 出場 10 根 K 棒 5 範圍 RSI 5–30 6 測試 未見資料 每一步都補上一個明確細節。 所以:含成本用未見資料測試。
從指標到可檢驗的規則:每一步都加入電腦能夠檢查的明確內容。

交易有最好的指標嗎?

沒有哪個指標是最好的,因為檢驗結果屬於一整套規則,在某一個市場、某一個 K 棒週期與某一組成本設定上得出,並不屬於指標本身。同一個 RSI,在某一種契約上可能得出有用的規則,在另一種契約上卻是虧損的規則。下表列出會改變結果的因素。

因素為何會改變結果要檢查什麼
市場有些市場會長時間走趨勢,有些則在區間內來回震盪。買進弱勢的規則在區間內表現良好,但在強勢趨勢中可能連續虧損數個月。在相信某條規則適用於多個市場之前,先分別檢驗每個市場。
K 棒週期K 棒越短,交易越多,但每筆的波動越小,所以成本佔每筆交易的比例更大。比較平均每筆損益與一買一賣(來回)的成本。
成本每筆交易的微小優勢,在扣除手續費與滑價後就消失了。把滑價加倍再重跑一次測試。
期間高波動與低波動的年份,獎勵的是不同的規則。逐年檢視結果,而不只看總和。
在規則中的角色用作過濾的指標,與同一個指標用作進場觸發時,表現並不相同。把每種角色當成各自的變體來檢驗。

成本檢查在較短的 K 棒週期上最為重要。我們的文章回測中的交易成本:手續費、滑價與平均每筆損益說明了如何設定。把每個指標變體都丟進 AlphaPrime 的含手續費與滑價的回測,短週期規則的成本檢查就用同一套假設。

為什麼不能靠看圖表來評斷指標?

憑肉眼判斷會失敗,因為人們記得有效的訊號,卻略過無效的。這就像只憑自己記得的晴天來評斷氣象預報員。書本或影片中的圖表範例,通常是因為訊號有效才被挑選出來的。對每一根 K 棒都做測試的規則,則會把每一個訊號都算進去,不論好壞。

如果你在同一份資料上選擇參數,即使檢驗了每個訊號也仍然不夠。樣本內(IS)資料是用來建立並調整規則的那一段歷史。樣本外(OOS)資料則是你在建立規則與調整參數時規則沒有見過的歷史。一條規則若能在樣本外資料上保留合理比例的樣本內結果,就比做不到的規則更可信。推進分析會在整段歷史上反覆進行這種切分。

資料窺探是指在同一份資料上測試許多變體,然後把最好的那一個當作唯一的一次測試。White(2000)提出一種檢定,用來問:在把搜尋規模納入考量之後,眾多模型中最好的那個是否仍然勝過基準。Sullivan、Timmermann 與 White(1999)把這個想法應用在一大批技術交易規則上。他們原始樣本中表現最好的規則,在他們後來測試的期間並沒有維持其績效。夏普比率是平均報酬除以報酬上下波動的幅度。Harvey 與 Liu(2015)說明了如何根據背後的測試次數,調降回測的夏普比率。

檢查好的跡象壞的跡象
樣本外結果保留樣本內結果中合理的比例樣本內看起來很強,樣本外卻持平或為負
鄰近參數長度 12、14 與 16 給出相近的結果只有某一個精確的值有效
交易筆數交易夠多,不會由一兩筆大單決定總結果只有寥寥幾筆交易,或獲利來自單一筆交易
成本滑價加倍後仍為正成本小幅增加就轉為負
三種版本的假設長條圖:樣本內結果分別為 100、80 和 60 單位,樣本外結果分別為 −10、40 和 45 單位,因此樣本內的贏家反而是樣本外的輸家 回測贏家輸了 各版本淨損益(單位) 樣本內 樣本外 示意 100 −10 80 40 60 45 A B C 樣本內贏家在新資料上輸了。 所以:依樣本外結果挑選。
假設性範例:樣本內看起來最好的變體,在未見過的資料上可能是最弱的。要依樣本外檢查來選擇,而不是依最好的回測。

如何組合指標又避免訊號重複?

組合來自不同類別的指標,因為同一類別的指標大多是在重複彼此。重複的訊號是指第二個條件在第一個條件成立時幾乎總是成立,所以它增加了一個參數,卻沒有帶來新的資訊。RSI 與 Stochastic 都是對同一組價格所做的動能計算。同時要求兩者,就像問兩位讀同一份報紙的朋友。

  1. 讓每個指標只負責一項工作。常見的結構是用趨勢指標判斷方向、用動能指標抓時機、用波動指標決定停損或部位大小。
  2. 衡量重疊程度。計算條件 A 成立的 K 棒數。接著計算其中有多少根同時也滿足條件 B。如果 B 幾乎總是與 A 同時成立,B 就是多餘的。
  3. 在有與沒有額外條件的情況下各測一次。只有在樣本外結果改善時才保留它,而不只是樣本內結果改善。
  4. 留意交易筆數。每個過濾都會減少交易。交易太少時,結果可以用運氣來解釋。
  5. 計算參數個數。如同上面的例子,每多一個指標,變體數量就會倍增,也讓搜尋有更多空間去擬合雜訊。
30 根 K 棒的時間軸:RSI 低於 25 與 Stochastic 低於 20 在第 4、11、19、26 根 K 棒同時觸發,因此第二個條件是多餘的;而趨勢濾網僅在第 1 至 15 根 K 棒成立,提供不同的資訊 同類指標,訊號相同 各條件成立之處,共 30 根 K 棒 RSI < 25 Stoch < 20 多餘 趨勢向上 新資訊 同類訊號會同時觸發。 因此:改加入其他類的濾網。
兩個動能震盪指標在相同的 K 棒上觸發,沒有增加任何東西。來自另一個類別的趨勢過濾,則會改變被採用的訊號。

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

指標檢驗告訴你的是:一條明確的規則在扣除成本後,於過去資料以及它沒見過的資料上表現如何。它不會告訴你這條規則明年會如何表現。把通過檢驗視為繼續研究這條規則的理由,而不是它有效的證明。

  • 它能顯示一條規則在扣除手續費與滑價後是否有優勢、該優勢在樣本外資料上是否維持,以及鄰近的參數值是否表現相同。
  • 它能顯示新增的指標是改變了結果,還是只多加了一個參數。
  • 它無法顯示市場會持續像過去那樣運作。市場會改變,一條有效多年的規則也可能失效。
  • 它無法為指標本身評分。一條失敗的 RSI 規則說明的是這條規則在這個市場上失敗,並不表示 RSI 在任何地方都沒用。
  • 它無法抵消大規模搜尋的影響。如果你測試了數百個變體並保留最好的那個,即使通過樣本外檢查,其結果有一部分仍是運氣。

AlphaPrime 的策略檢驗以相同的標準對每個候選策略執行這些檢查。它提供基礎、標準與完整檢驗、推進分析,以及由你設定的門檻。

如果你使用 AlphaPrime,這代表:把你的指標想法寫成帶有參數範圍的規則,讓 AlphaPrime 以手續費、滑價與下一根 K 棒成交來評估每個變體,並只保留在從未見過的資料上仍站得住腳的規則。

常見問題

最受歡迎的技術分析指標有哪些?

移動平均、RSI、MACD、Stochastic、布林通道、ATR 與 VWAP 是使用最廣泛的指標之一。它們涵蓋趨勢、動能、波動與成交量這幾類。受歡迎程度顯示的是交易人使用某個指標的頻率,並不代表以它建立的規則在扣除成本後能賺錢。

哪個技術指標最準確?

沒有哪個指標在一般情況下是準確的,因為指標只描述過去的價格。人們所說的準確,通常是指某條規則的勝率。若不看獲利與虧損的大小以及成本,勝率沒有太大意義。比較規則時,要看樣本外資料上扣除成本後的結果。

免費的技術分析工具夠用嗎?

大多數看盤平台都內建標準指標,而且計算方式眾所周知,所以指標本身很少是問題所在。比較困難的部分是檢驗。你需要明確的規則、貼近現實的成本,以及在規則沒見過的資料上做檢查。

一個交易策略應該使用幾個指標?

只用想法所需的最少數量,並讓每個指標負責不同的工作。常見的結構是一個指標看方向、一個抓時機、一個管風險。每多一個指標都會增加參數並減少交易,所以只有在它改善樣本外結果時才保留。

技術指標能預測價格嗎?

指標並不預測。它們把過去的價格與成交量,彙整成規則可以使用的形式。檢驗可以顯示一條規則在過去資料中具有統計上的優勢,但無法保證這個優勢會持續。

參考文獻

  • Harvey, C. R., & Liu, Y. (2015). Backtesting. The Journal of Portfolio Management, 42(1), 13–28.
  • Sullivan, R., Timmermann, A., & White, H. (1999). Data-Snooping, Technical Trading Rule Performance, and the Bootstrap. The Journal of Finance, 54(5), 1647–1691.
  • White, H. (2000). A Reality Check for Data Snooping. Econometrica, 68(5), 1097–1126.