市場廣度指標:衡量什麼,以及如何檢驗
市場廣度計算的是有多少檔股票參與指數的走勢,因此衡量的是參與度,而不是價格。對指數期貨策略而言,它是第二組資料,唯一能說明它有沒有用的檢驗,是在同一組 K 棒與成本下,比較同一條期貨規則加上與不加上廣度條件的結果。
作者 Soren Huang · 發佈 · 更新於 · 編輯原則
目錄
什麼是市場廣度?
市場廣度是計算指數中有多少檔股票參與某一波走勢,因此衡量的是參與度,而不是價格。廣度訊號要進入指數期貨策略,只能作為與期貨 K 棒並列載入的第二組資料,檢驗方式是跑同一條期貨規則,一次加上它、一次不加。
像 S&P 500 這類指數是依公司規模加權,因此少數幾檔大型股上漲,就可能把指數拉高,而大部分成分股其實在下跌。可以把它想像成體育場:指數是現場的聲浪有多大,廣度則是真正在喊的人有多少。少數幾個人大聲喊和全場一起喊,在價格圖上看起來一樣,在廣度圖上卻差很多。廣度屬於技術分析工具與指標中,從交易標的本身價格以外的東西計算出來的一類,這也是它比較難檢驗的第一個原因。
對做 ES 或 NQ 的交易者來說,這件事有一個很實際的含意。期貨 K 棒裡完全沒有廣度的計數,每一個廣度數字都必須由指數的現貨股票算出來,再當成獨立的資料串流帶進回測,下面的資料章節會說明這部分。
哪些市場廣度指標重要:騰落線、創新高減創新低、站上均線比例?
三個常見的廣度指標各自回答參與度的不同問題,所以應該每個問題只挑一個,而不是把三個全部疊上去。它們都由指數成分股的每日收盤價計算,但計算的東西不同。其中兩個常常會一致,只是因為它們用的輸入相同。
騰落線是每天上漲的股票數減去下跌的股票數,再逐日累加的總和。創新高減創新低是每天創 52 週新高的股票數減去創 52 週新低的股票數,通常以每日淨數來解讀,而不是累加。站上均線比例是收盤價高於自身均線(常用 50 日或 200 日均線)的成分股占比。
| 問題 | 騰落線 | 創新高減創新低 | 站上 50 日均線比例 |
|---|---|---|---|
| 每天計算什麼 | 上漲股數減下跌股數 | 創 52 週新高股數減創 52 週新低股數 | 收盤價高於自身 50 日均線的股數 |
| 線怎麼形成 | 逐日累加 | 每日淨數 | 成分股占比,0 到 100 |
| 它回答的問題 | 今天有多少檔上漲? | 有多少檔處於極端位置? | 有多少檔站在自身趨勢之上? |
| 強勢的讀法 | 線與指數一起創新高 | 淨數為正且持續擴大 | 占比高,並隨指數上升 |
| 弱勢的讀法 | 指數守住或上漲時,線卻下跌 | 指數接近高點時,新低持續增加 | 指數上漲時,占比反而下降 |
假設性範例
一個有 500 檔股票的指數。週一有 350 檔收漲、150 檔收跌,當日淨數為 +200,騰落線讀數為 200。週二有 220 檔收漲、280 檔收跌,淨數為 −60,線的讀數變為 140。若指數最大的成分股在這兩天都上漲,指數本身可能兩天都上漲;但週二騰落線下降,是因為大多數成分股沒有上漲。
在三個指標之下還有一個選擇:母體。交易所上市的所有股票與某一個指數的成分股,計算出來的結果可能不同,因為交易所清單包含指數不納入的基金與特別股。在蒐集資料前,先決定你指的是哪一個母體,並在整個檢驗中維持一致。
如何用市場廣度判斷趨勢健康度?
當指數與廣度序列一起創新高,趨勢健康;當指數創高時參與的股票卻越來越少,趨勢就脆弱。因此解讀時一定是比較兩條序列,而不是只看廣度的數字。單獨一個廣度數值沒有交易者能據以行動的尺度。騰落線在 140,或是一百倍的數字,在你問它比指數前一次高點時更高還是更低之前,都沒有意義。
實際的解讀方式是檢查日期。找出指數最近一次創新高的日期,再找出廣度序列最近一次創新高的日期。如果兩者落在同一天,或相隔幾根 K 棒之內,這一波走勢就有廣泛的參與。如果廣度的高點早了幾週,而現在線已經低於它,代表指數是靠較少的股票在撐。由於這個序列是日資料,這屬於波段交易的解讀;可檢驗的波段交易指標與它在同一時間尺度上運作,而當沖交易的最佳指標則是直接由期貨 K 棒計算,會在交易時段內更新,這是每天一次的廣度計數做不到的。
什麼是廣度背離,為什麼難以檢驗?
只有當回看期、差距大小,以及訊號觸發的時點都寫成確切的數字時,廣度背離才會成為可檢驗的規則,因為同一張圖在某個回看期下會顯示背離,在另一個回看期下卻沒有。廣度背離的定義是:在同一段視窗內,指數創出更高的高點,而廣度序列卻創出更低的高點。概念很簡單,模糊之處在於「更高」、「更低」和「同一段視窗」這幾個字。
拿同一張圖、同一個結束日期來看。在最近 20 根 K 棒內,廣度線可能創下比先前更高的高點,因此沒有背離。在 50 根 K 棒內,用來比較的高點換了一個,線現在低於它,於是有背離。在 100 根 K 棒內,較早的高點又更低,背離就消失了。市場本身沒有任何改變,改變的只是視窗。Lo、Mamaysky 與 Wang(2000)對一般的圖形型態也提出同樣的觀點:一個型態必須先轉換成電腦能每次以相同方式執行的確切演算法,才能被檢驗。
三個數字可以把這幅畫面轉成規則:
- 回看期,以 K 棒計,用來找出「先前的高點」。先定一個值,之後再測試它的鄰近值。
- 差距大小。廣度高點比先前高點只低了一個單位,那是雜訊。在第一次執行之前,就要決定最小的落差,例如先前高點的某個百分比。
- 訊號觸發的時點。是在指數創新高的那根 K 棒上?還是在它之後第一次收盤跌破短期均線時?這個選擇會把每次進場延後幾天,並改變結果。
三個數字固定之後,計算這條規則在整段歷史中產生了多少次訊號。日資料上的背離規則通常一年只出現幾次。事件這麼少,單一一年的好壞就會主導結果,因此在讀任何其他數字之前,都必須先檢查交易次數。
回測中的市場廣度需要哪些資料?
廣度序列是第二組資料串流,在能與 ES 或 NQ 的 K 棒合併之前,需要三樣東西:每個日期當時的指數成分股清單、由現貨收盤價計算出的計數,以及對齊到期貨交易日期。這三個部分各有一個常見錯誤,而每一個錯誤都會讓回測看起來比實際的規則更好。
- 每個日期的成分股清單。使用當天指數實際的成分股,而不是今天的清單。今天的清單只包含存活並成長下來的公司,用它計算出來的計數,會顯示過去的參與度比當時任何人能測量到的都還要強。
- 每檔成分股的每日收盤價。對一個約 500 檔股票的指數而言,這就是 500 條價格序列,都要做股票分割調整,而且每一條都有各自的跳空與錯誤報價需要清理。
- 計算計數。上漲股數、下跌股數、創 52 週新高與新低的股數,以及站上所選均線的比例,全部由同一組收盤價算出。
- 把計數標記到現貨收盤日期,並移到下一根期貨 K 棒。計數只有在現貨市場收盤後才存在,因此規則只能從下一根期貨 K 棒開始使用它。讓某根日線期貨 K 棒使用它當天的計數,等於是偷看了那根 K 棒開盤時還不存在的資訊。
- 與 ES 或 NQ 的日 K 棒合併,依對齊後的日期對應,並檢查一方開市、另一方休市的假日,是否讓兩條序列彼此錯位。
這項工作與委託流指標在回測前需要的準備屬於同一類:一組價格 K 棒所沒有的第二資料串流,準備的細心程度要和 K 棒本身一樣。期貨端的設定也要先弄對;回測 ES 與 NQ 前要先固定的五項設定說明了交易時段、轉倉與成本,這些都是廣度合併所依賴的部分。
為什麼只用價格的檢驗無法證明廣度有用?
只用指數期貨價格跑的回測,可以說明趨勢規則在扣除成本後是否成立,但無法說明廣度有沒有增加任何價值。因此下面的 ES 測試是廣度過濾器必須超越的基準,而不是支持廣度的證據。這次執行從未看過廣度序列,它得到的任何結果都屬於價格規則本身。
| 僅用價格的檢驗 | 價格加廣度的檢驗 | |
|---|---|---|
| 載入的資料 | 只有 ES K 棒 | ES K 棒加上廣度序列 |
| 規則能看到的東西 | 只有價格型態 | 價格型態加上參與度 |
| 正面結果證明了什麼 | 在這段歷史中,趨勢規則扣除成本後仍然成立 | 在這段歷史中,廣度過濾器改變了結果 |
| 它無法證明什麼 | 任何關於廣度的事 | 廣度在其他指數上也有效,但那些指數並未經過檢驗 |
下面的執行是以 AlphaPrime(Valynox)完成,測試 ES 日 K 棒,期間為 2019-01-02 至 2025-06-30,做多與做空,1 口,每筆交易收取 $20 手續費與 $25 滑價。這條規則只是替代品:以 Aroon 作為唯一的進場與出場條件,沒有停損、沒有停利、也沒有過濾器,因為若沒有上面描述的第二組資料串流,廣度本身無法被檢驗。所展示的候選策略,是搜尋從 1,024 組中保留下來的那一組(執行日期 2026-10-31),保留的理由是它的報酬與回撤的比例。事後挑選保留的那一組會讓它看起來更好,正如 Bailey、Borwein、López de Prado 與 Zhu(2014)對任何「從很多中挑最好」的結果所示,因此這些數字只描述這段歷史中的這一個策略,讀者不應把它們當作預期。
來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。ES 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $25。
| 項目 | 結果 |
|---|---|
| 淨利(已平倉) | $142,107.5 |
| 最大回撤 | $58,717.5 |
| 交易筆數 | 34 |
| 勝率 | 64.71% |
| 獲利因子 | 2.987 |
| 平均每筆 | $4,179.63 |
| 在場時間 | 91.22% |

其中有兩個數字說明了廣度過濾器必須做到什麼。六年半內只有 34 筆交易,樣本很小,因此任何會刪除交易的過濾器都會讓樣本更小,比較就會建立在極少的事件上。在場時間比例 91.22%,代表這條替代規則幾乎一直持有部位;一個在參與度疲弱時讓規則保持空手的廣度過濾器,大多只會把它移出市場而改變結果,問題就變成:它刪除的那些交易,平均來說是不是比較差的交易。
如何把廣度的想法轉成可檢驗的指數期貨規則?
把廣度規則寫成確切的過濾條件或進場條件,在同一組 K 棒與成本下,一次加上它、一次不加,並以執行前就設定好的門檻來判斷差異。兩次執行的其他條件都要保持相同:歷史資料、交易時段、手續費與滑價、下一根 K 棒成交。只要廣度條件以外的任何東西不同,結果的差異就無法歸因於廣度。
- 把廣度條件寫成確切的數字。例如:騰落線低於自身的 50 日均線,並以前一個現貨收盤價計算。
- 固定價格規則與成本。期貨的進場與出場、口數、每筆交易的手續費與滑價,全部寫下來。
- 單獨執行價格規則。這就是基準,和上面的 ES 執行一樣。
- 在同一組 K 棒上,執行加上廣度條件的價格規則。條件可以作為阻擋進場的過濾器,或作為出場條件,但第一次測試時不要兩者同時使用。
- 比較扣除成本後的平均每筆損益、最大回撤與交易次數。在三分之一的交易上平均每筆損益較高,與在大多數交易上較高,意義並不相同。
- 依照步驟 3 之前寫好的門檻來接受或拒絕。例如:過濾後的執行必須提高扣除成本後的平均每筆損益,且至少保留三分之二的交易。
假設性範例
只用價格的規則產生 120 筆交易,扣除成本後平均每筆 $600,最大回撤為 $30,000。加上廣度過濾器後產生 70 筆交易,扣除成本後平均每筆 $820,回撤為 $22,000。事先寫好的門檻要求平均每筆損益提高,且至少保留 80 筆交易。平均每筆損益確實提高了,但 120 筆中只剩 70 筆,因此過濾器未通過交易次數的門檻,必須回頭調整成較寬鬆的設定,並在尚未看過的資料上重新測試。
預期要測試不只一個廣度條件的回看期,也不只一個門檻,而且每一次嘗試都要計算在內。Sullivan、Timmermann 與 White(1999)指出,在同一段歷史上測試許多技術規則時,表現最好的那一條看起來不錯,有一部分是因為它是許多條中最好的,而一個在許多設定中搜尋出來的廣度過濾器也沒有兩樣。在第一次執行之前寫下及格線,才能讓比較保持誠實;而當過濾與未過濾的候選策略以相同的手續費、滑價與下一根 K 棒成交條件評估時,AlphaPrime 的策略檢驗中的門檻,就是這條及格線所在的地方。
一個具體的第一次測試是:從第二節的表格中選一個廣度指標,用一個回看期與一個門檻寫下它的條件,依照上面五個資料步驟建立序列,然後在與上面執行相同的期間,對 ES 日 K 棒跑這兩次回測。在閱讀任何一次結果之前,先寫下你願意接受的最少交易次數,以及扣除成本後平均每筆損益的最小改善幅度。
常見問題
簡單來說,什麼是市場廣度?
市場廣度是計算指數中有多少檔股票在上漲、下跌,或處於極端位置,而不是指數本身移動了多少。它回答的問題是「有多少股票參與了?」指數可能因為少數幾家大型公司上漲而上漲,廣度則顯示指數的其餘部分是否也跟著走。
如何解讀市場廣度指標?
一律把廣度序列與指數放在相同的日期上比較。找出指數最近一次的新高,並檢查廣度序列是否在同一時間也創了新高。如果有,參與度就是廣泛的;如果廣度的高點較早出現,而現在線已經較低,代表是較少的股票在撐住這一波走勢。單獨一個廣度數字沒有可用的尺度。
市場廣度能預測指數期貨嗎?
只用期貨價格跑的回測無法回答這個問題,因為期貨 K 棒中不含任何廣度計數。唯一有意義的檢驗,是在同一組 K 棒與成本下,一次加上與一次不加廣度條件的同一條期貨規則,並以執行前寫好的門檻來判斷。結果只適用於所測試的指數、期間與設定,不代表廣度本身。
市場廣度需要哪些資料?
你需要每個歷史日期當時的指數成分股清單、每檔成分股經股票分割調整後的每日收盤價,以及每天根據這些收盤價算出的計數。接著把計數標記到現貨收盤日期,並往後移動,讓期貨規則只能從下一根 K 棒開始使用它。若用今天的成分股清單去對應過去的日期,會高估過去的參與度,因為清單上只有存活下來的公司。
參考文獻
- Lo, A. W., Mamaysky, H., & Wang, J. (2000). Foundations of Technical Analysis: Computational Algorithms, Statistical Inference, and Empirical Implementation. The Journal of Finance, 55(5), 1705–1765.
- 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.
- Sullivan, R., Timmermann, A., & White, H. (1999). Data-Snooping, Technical Trading Rule Performance, and the Bootstrap. The Journal of Finance, 54(5), 1647–1691.

