技術分析工具與指標:哪些可以拿來檢驗?
只要把技術指標寫成帶有參數與成本的明確規則,就能加以檢驗。沒有哪個指標在一般情況下最好,因為結果取決於市場、K 棒週期與交易成本。唯一公平的裁判,是規則從未見過的資料。
作者 Soren Huang · 發佈 · 更新於 · 編輯原則
技術指標的主要類別有哪些?
大多數技術指標可分為四大類:趨勢、動能、波動與成交量。沒有哪個指標在一般情況下最好。任何一種指標都可以檢驗,前提是寫出帶有參數的明確進場與出場規則、納入交易成本,並用規則從未見過的資料檢查結果。
技術指標是對過去價格或成交量所做的計算,並畫在圖表上,例如最近 20 根收盤價的平均。每一類指標回答的是關於市場的不同問題。下表列出各類常見的指標,以及各類指標在規則中通常扮演的角色。
| 類別 | 回答的問題 | 常見例子 | 在規則中的典型用途 |
|---|---|---|---|
| 趨勢 | 價格往哪個方向走,力道多強? | 移動平均、ADX、唐奇安通道、Supertrend、MACD | 過濾:趨勢向上時才做多 |
| 動能 | 價格最近變動得多快? | RSI、Stochastic、Williams %R、CCI、變動率 | 時機:在短暫拉回或一波強勢之後進場 |
| 波動 | 價格波動有多大? | ATR、布林通道、肯特納通道、標準差 | 風險:設定停損距離、部位大小或突破寬度 |
| 成交量 | 成交了多少量? | OBV、VWAP、Chaikin 資金流量、成交量分布圖 | 確認,或作為交易時段內的參考價 |
有些指標同時屬於兩個類別。MACD 由移動平均建構而成,所以衡量的是趨勢,但交易人也把它當作動能來看。其他技術分析工具,例如趨勢線、費波那契水位與圖形型態,通常是用手畫的。它們同樣可以檢驗,但必須先寫出電腦不需要靠你的主觀判斷就能遵循的明確規則。
每個指標在較短 K 棒週期上也各有典型的優點與失效之處。我們的指南當沖最佳指標:各自的作用與失效之處逐一說明。本文談的是如何檢驗其中任何一個。
指標如何變成進場與出場規則?
當你把指標寫成具有明確條件、明確動作與明確數字的規則時,它就變得可以檢驗。「RSI 看起來超賣」無法檢驗。「當 14 根 K 棒的 RSI 收盤低於 25 時,在下一根 K 棒開盤買進」則可以檢驗。參數是規則中由你選定的數字,例如 RSI 的長度或 25 這個水位。
- 選擇指標與其長度。例如 14 根 K 棒的 RSI。
- 寫出條件。使用水位(「收盤低於 25」)、交叉(「快線向上穿越慢線」)或比較(「收盤高於上軌」)。
- 寫出動作與成交價。如果條件在 K 棒收盤時檢查,就在下一根 K 棒開盤成交。用同一個收盤價來判斷又用它成交的規則,交易的是你實際上無法成交的價格。
- 寫出出場。使用反向訊號、固定的 K 棒數、以 ATR 為基礎的停損,或停利。
- 為每個參數設定範圍。例如 RSI 長度從 5 到 30。
- 加入成本與交易時段。手續費、滑價,以及規則可以交易的時間,應該放在第一次測試,而不是最後一次。
假設性範例
規則:當 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)中,策略生成會把研究想法轉成可檢驗的交易規則。你設定規則與指標、參數範圍、進場與出場條件,以及搜尋限制。
交易有最好的指標嗎?
沒有哪個指標是最好的,因為檢驗結果屬於一整套規則,在某一個市場、某一個 K 棒週期與某一組成本設定上得出,並不屬於指標本身。同一個 RSI,在某一種契約上可能得出有用的規則,在另一種契約上卻是虧損的規則。下表列出會改變結果的因素。
| 因素 | 為何會改變結果 | 要檢查什麼 |
|---|---|---|
| 市場 | 有些市場會長時間走趨勢,有些則在區間內來回震盪。買進弱勢的規則在區間內表現良好,但在強勢趨勢中可能連續虧損數個月。 | 在相信某條規則適用於多個市場之前,先分別檢驗每個市場。 |
| K 棒週期 | K 棒越短,交易越多,但每筆的波動越小,所以成本佔每筆交易的比例更大。 | 比較平均每筆損益與一買一賣(來回)的成本。 |
| 成本 | 每筆交易的微小優勢,在扣除手續費與滑價後就消失了。 | 把滑價加倍再重跑一次測試。 |
| 期間 | 高波動與低波動的年份,獎勵的是不同的規則。 | 逐年檢視結果,而不只看總和。 |
| 在規則中的角色 | 用作過濾的指標,與同一個指標用作進場觸發時,表現並不相同。 | 把每種角色當成各自的變體來檢驗。 |
成本檢查在較短的 K 棒週期上最為重要。我們的文章回測中的交易成本:手續費、滑價與平均每筆損益說明了如何設定。把每個指標變體都丟進 AlphaPrime 的含手續費與滑價的回測,短週期規則的成本檢查就用同一套假設。
為什麼不能靠看圖表來評斷指標?
憑肉眼判斷會失敗,因為人們記得有效的訊號,卻略過無效的。這就像只憑自己記得的晴天來評斷氣象預報員。書本或影片中的圖表範例,通常是因為訊號有效才被挑選出來的。對每一根 K 棒都做測試的規則,則會把每一個訊號都算進去,不論好壞。
如果你在同一份資料上選擇參數,即使檢驗了每個訊號也仍然不夠。樣本內(IS)資料是用來建立並調整規則的那一段歷史。樣本外(OOS)資料則是你在建立規則與調整參數時規則沒有見過的歷史。一條規則若能在樣本外資料上保留合理比例的樣本內結果,就比做不到的規則更可信。推進分析會在整段歷史上反覆進行這種切分。
資料窺探是指在同一份資料上測試許多變體,然後把最好的那一個當作唯一的一次測試。White(2000)提出一種檢定,用來問:在把搜尋規模納入考量之後,眾多模型中最好的那個是否仍然勝過基準。Sullivan、Timmermann 與 White(1999)把這個想法應用在一大批技術交易規則上。他們原始樣本中表現最好的規則,在他們後來測試的期間並沒有維持其績效。夏普比率是平均報酬除以報酬上下波動的幅度。Harvey 與 Liu(2015)說明了如何根據背後的測試次數,調降回測的夏普比率。
| 檢查 | 好的跡象 | 壞的跡象 |
|---|---|---|
| 樣本外結果 | 保留樣本內結果中合理的比例 | 樣本內看起來很強,樣本外卻持平或為負 |
| 鄰近參數 | 長度 12、14 與 16 給出相近的結果 | 只有某一個精確的值有效 |
| 交易筆數 | 交易夠多,不會由一兩筆大單決定總結果 | 只有寥寥幾筆交易,或獲利來自單一筆交易 |
| 成本 | 滑價加倍後仍為正 | 成本小幅增加就轉為負 |
如何組合指標又避免訊號重複?
組合來自不同類別的指標,因為同一類別的指標大多是在重複彼此。重複的訊號是指第二個條件在第一個條件成立時幾乎總是成立,所以它增加了一個參數,卻沒有帶來新的資訊。RSI 與 Stochastic 都是對同一組價格所做的動能計算。同時要求兩者,就像問兩位讀同一份報紙的朋友。
- 讓每個指標只負責一項工作。常見的結構是用趨勢指標判斷方向、用動能指標抓時機、用波動指標決定停損或部位大小。
- 衡量重疊程度。計算條件 A 成立的 K 棒數。接著計算其中有多少根同時也滿足條件 B。如果 B 幾乎總是與 A 同時成立,B 就是多餘的。
- 在有與沒有額外條件的情況下各測一次。只有在樣本外結果改善時才保留它,而不只是樣本內結果改善。
- 留意交易筆數。每個過濾都會減少交易。交易太少時,結果可以用運氣來解釋。
- 計算參數個數。如同上面的例子,每多一個指標,變體數量就會倍增,也讓搜尋有更多空間去擬合雜訊。
指標檢驗能告訴你什麼,又不能告訴你什麼?
指標檢驗告訴你的是:一條明確的規則在扣除成本後,於過去資料以及它沒見過的資料上表現如何。它不會告訴你這條規則明年會如何表現。把通過檢驗視為繼續研究這條規則的理由,而不是它有效的證明。
- 它能顯示一條規則在扣除手續費與滑價後是否有優勢、該優勢在樣本外資料上是否維持,以及鄰近的參數值是否表現相同。
- 它能顯示新增的指標是改變了結果,還是只多加了一個參數。
- 它無法顯示市場會持續像過去那樣運作。市場會改變,一條有效多年的規則也可能失效。
- 它無法為指標本身評分。一條失敗的 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.

