跳至主要內容
台股研究 約 8 分鐘閱讀

跳空缺口:0050六十日回補九成,
四個設計沒過關

跳空缺口一定會回補嗎?我們用還原高低價檢查0050與台股向下完整缺口,分開計算五、二十、六十日的缺口回補率,再測回補後買進、避開回補後時段,以及缺口不補時先空手。四個設計共三十六組參數都沒穩定勝過含息0050。附觀察窗分母、未回補事件、成本與前後半段結果,區分缺口理論與能執行的交易。

這次沒有穩定贏過 0050

不用操作程式,直接看報酬、最大跌幅與比較結果。

看比較結果
未通過本次驗證

跳空缺口回補交易與避開時段四個設計的日夏普

點圖可查看原尺寸;完整數字也列在下方的研究下載區。 0050向下完整跳空缺口,在本次有完整觀察期間的樣本中,五日內回補 62.3%,六十日內回補 90.3%。但「回補後買進」的0050中心設定,日夏普只有 0.42,同期含息持有是 0.74。四個交易設計、三十六組參數沒有一個通過三項驗證,本文以反面教材為主。

本文提供研究結果,沒有推薦這些買賣規則。想自行重跑,可先 設定 FinLab 環境,再 下載研究程式(.py);其他檔案見 研究下載區。

跳空缺口、開盤跳空與缺口回補的差別

跳空缺口有不同口徑。開盤比昨天收盤低,日內價格仍可能和昨天大量重疊;本文採較嚴格的「完整缺口」:當日最高價低於前日最低價。因為要等當天最高價確定,最早也只能收盤後判斷,不會在開盤看到低開就當成完整缺口。

向下缺口的上緣是前日最低價。本文定義「回補」為缺口日之後的最高價碰到這個上緣,影線碰到也算;只回到缺口中間不算補完,缺口日自己不算回補日。向上完整缺口則是當日最低價高於前日最高價,方向相反;本次不重新跑向上不補的選股結果,直接保留先前融資、注意股與缺口研究的連結。

常見說法 本文如何處理 容易誤讀的地方
今天開低就是向下缺口 要到當日高價仍低於前日低價才成立 開盤價缺口與整日區間缺口是不同樣本
缺口已經回補 之後最高價至少碰到前日最低價 碰到上緣不等於收盤站穩
五天沒補就很弱 第五日收盤後才知道五天都沒補 不能在缺口當天就知道後面五天
缺口總有一天補 用固定五、二十、六十日觀察窗 沒有期限的說法無法形成有期限的交易

這次使用還原最高、最低價,避免除權息與分割造成純價格調整被當成交易缺口。還原價是歷史比較口徑,仍可能受上游資料修補影響;它不提供盤中成交順序,也不能回答碰到上緣時委託是否真的成交。

0050與個股缺口回補率

標的 觀察窗 缺口數 已回補 未回補 回補率
0050 5交易日 432 269 163 62.3%
0050 20交易日 427 346 81 81.0%
0050 60交易日 423 382 41 90.3%
流動性合格普通股 5交易日 97,927 52,008 45,919 53.1%
流動性合格普通股 20交易日 96,797 71,083 25,714 73.4%
流動性合格普通股 60交易日 96,060 81,515 14,545 84.9%

每個觀察窗的分母不同,因為資料尾端還沒走完五日、二十日或六十日的事件不納入該窗。已走完整個日曆交易日窗口但始終沒補的事件保留;股票後來下市、缺少後續報價,也不因為沒有回補而從分母消失。個股要求缺口當日符合流動性條件,0050不加這道篩選。

同一檔股票可以有多個缺口,每個事件各自對照自己的上緣,所以表中的事件不是獨立樣本。一段大跌可能同時產生多個缺口,同一次反彈也可能一次補回多個缺口。不能把事件數直接當成同樣多筆互不相關的交易,這次沒有對重疊事件做統計顯著性檢定。

0050及台股個股向下跳空缺口五二十六十日回補率 觀察越久,回補率越高,是累積事件定義的結果。六十日窗口仍有 41個0050缺口沒有補,因此數據不支持「一定會補」;即使後來某一天補上,也不能替前面資金等待、帳面下跌或其他投資機會的成本作保證。

回補率不能直接換成交易勝率

交易從什麼時間買進,決定投資人能拿到哪段報酬。若先等最高價碰到上緣才知道缺口已補,缺口下緣到上緣的反彈已經發生;本次還要等隔日收盤才能買,無法把那段已發生的漲幅算進報酬。若改成缺口剛出現就買,則是另一個進場規則,也要承受它沒有回補時的下跌。

Dahlquist與Bauer的《Technical Analysis of Gaps》討論缺口的不同研究方式,研究期間、缺口口徑與市場都必須分清;不能把其他市場的開盤缺口結論,當成台股完整缺口的回補機率。Lo、Mamaysky與Wang(2000)對技術型態的研究也以明確演算法為基礎,型態含有資訊與扣成本後能形成交易優勢,是兩個不同問題。

四個固定交易設計

  1. 回補後買個股: 缺口出現後d日內首次回補,回補當天給訊號,隔日收盤買進,持有h個交易日。
  2. 回補後買0050: 同一規則只用於0050。
  3. 避開0050回補後時段: 第二種的互補方向,其餘時間持有0050。
  4. 避開0050缺口未補時段: 第d日收盤仍未補,之後h日空手,其他時間持有0050。這是把「不補可能續跌」寫成避險假說,沒有做融券放空。

缺口事件重疊時取持有或避開時段的聯集,新事件可以延長期限,不會同一標的重複加倍買進。個股訊號在回補當日也要符合流動性門檻。d取三、五、十日,h取十、二十、四十日,中心五日與二十日,完整九格都公布。

主要測試結果

先看「年化報酬」:平均每年賺或賠多少;「最大回撤」是從高點最多跌多少。日夏普比較報酬與波動,數字越高越好,但不保證獲利。

  • 回補後買0050:年化報酬6.0%,期間最大跌幅50.5%。
  • 同期持有0050:年化報酬13.9%,期間最大跌幅52.4%。
  • 缺口六十日回補九成,四個交易設計的三十六組參數仍全部未通過。

完整逐項數字如下;手機可左右滑動表格比較。

設計 年化報酬 日夏普 最大回撤 前/後半段日夏普 9格贏0050 在場比例
回補後買個股 -4.5% -0.09 -79.9% -0.34/0.17 0/9 100.0%
回補後買0050 6.0% 0.42 -50.5% -0.06/0.86 0/9 73.3%
避開回補後時段 2.7% 0.33 -19.3% 0.31/0.37 0/9 26.6%
避開缺口未補時段 8.4% 0.69 -21.5% 0.46/0.94 0/9 55.8%
同期0050含息持有 13.9% 0.74 -52.4% 0.39/1.10 — 100%

中心設定的個股版共 34,302 筆交易、平均持有 181 檔;0050回補版 74 筆。回補後買0050的在場比例只有 73.3%,空手期間也納入日夏普與年化。下方互動報告是這個0050回補版;另一份下載報告是缺口未補就避開的中心版。

回測方法與判讀限制

資料截至 2026-11-09,重跑日為 2026-11-10,套件 finlab 2.3.8。期間從 2008-01-02 開始。基準採 etl:adj_close 的 0050 還原收盤價,包含配息與分割調整;停牌日沿用前一價格。基準用還原價比值計算買進持有,不經回測引擎,也不扣成本。所有表格與圖都用同一段交易日,起點淨值同為一;訊號還沒出現的空手日也保留。

項目 設定與限制
成交時間 當天收盤算訊號,隔一個交易日收盤成交;無法用今天的訊號買回今天的收盤
成本 sim() 預設手續費買賣各 0.1425%,賣出證交稅 0.3%,未打折;ETF 也沿用這個較高的股票稅率,沒有另切較低稅率
周轉率 本次未計算含價格漂移的實際成交金額周轉率,交易筆數不能直接換算周轉率;下方另列目標權重變化的月周轉估計
滑價與容量 未另外假設滑價,未估算策略容量;實際成交可能受漲跌停、成交量與委託影響
股票池 個股實驗用歷史四碼普通股,排除0開頭與91開頭代號;20日平均成交金額至少2,000萬元才能進場,保留下市股票,未另外排除金融、KY與全額交割股
權重 個股對當時持股等權,不限制檔數;0050設計只在持有0050與現金之間切換;現金報酬設為零
資料可得日 價量使用資料原有日期,當日高低價收盤後才完整可得;未使用個別投資人的策略或交易紀錄
樣本 全段樣本內,沒有樣本外或前瞻實盤驗證;切前後半段也不能替代樣本外

「贏」採日夏普:日報酬平均除以標準差,再乘以252的平方根,不扣無風險利率。每個設計換兩個參數、各取三個值,共九格,至少七格要高於同期0050;中心參數在交易日對半切的兩段,也各自要高於0050;全部用扣成本結果。平均有多少天持股,就是表中的在場比例。有現金的設計還要高於「每天固定維持同平均權重的0050、其餘現金」對照,避免把少投資帶來的較小波動誤認成擇時能力。這個固定權重對照不扣調倉成本。

通過上述三項後,還須拿掉中心參數報酬最好的一個日曆年,再次高於同期0050,才算通過本次整體檢查;這不能補救前面未過的項目。未通過者不設成公開策略,也不提供把它當成已驗證策略的 Studio 捷徑。若要理解含息與一般收盤價的差異,可看回測方法;量化交易指南則說明研究結果與實際執行的距離。

跳空缺口四個設計三乘三參數網格與0050日夏普差 跳空缺口四個中心設計和0050含息的同日起點淨值 跳空缺口回補交易與避險四設計的前後半段日夏普

四張參數小圖的每格都是扣成本日夏普減去同期0050;本次全部為負,三十六格裡沒有一格勝出。淨值圖也把回補後持有、兩種避開時段及個股版放在同一條0050基準旁。前後兩段使用同一批交易日對半切,沒有把特定崩盤前後挑成兩段,不能因為某段空手看起來躲過下跌,就忽略其他時期少參與的上漲。

Sullivan、Timmermann與White(1999)提醒技術規則的多重搜尋問題。本次結果公布整張網格,也沒有再改成「只挑大缺口」「量增才買」來使成績好看。缺口大小、成交量與市場趨勢可能是後續問題,但需要新的事前設定;目前數字不替那些尚未執行的設計背書。

常見問題

缺口理論是不是說缺口一定回補?

不同型態的解釋不同,也沒有一個有限觀察期能保證全部回補。本文五、二十、六十日都保留未回補事件,不能用「遲早」把沒有期限的等待包裝成交易規則。

向上跳空和向下跳空可以混算嗎?

不宜。方向、門檻與進場機制不同。本次只新增向下缺口;向上不補結果保留在既有研究,不把兩批日期不同的數字拼成一個勝率。

除息留下的缺口也算嗎?

本次用還原高低價,配息與分割調整造成的價格差已經調整。一般未還原K線看到的除息缺口,不一定符合這次事件定義。

缺口三日不補就會續跌嗎?

這次三、五、十日未補的0050避險版本都沒有勝過基準,沒有支持照這句話直接離場。這也不等於未補缺口之後每次都會上漲,只能解讀為整套規則未通過。

影線碰到就算回補,為何隔天才買?

當天的最高價要到收盤後才完整知道。本文不假設事先掛單正好成交於上緣,也沒有用日線推測盤中先後順序。

缺口交易還要考慮什麼?

要看滑價、周轉率、市場限制與等待成本。可比較道氏兩指數回測與葛蘭碧買賣點如何處理確認延遲;研究步驟則見程式交易指南。

用Python分開事件日與持有日

下載完整研究程式並存為 research.py 後,這段使用相同的首次回補函式,重現0050中心設定。fills只在回補確認日為真;滾動二十日把事件展成持有時段,成交仍由回測引擎延後一個交易日處理。

顯示程式碼
from finlab import data
from finlab.backtest import sim
from research import gap_events
 
high = data.get("etl:adj_high")[["0050"]].loc[:"2026-11-09"]
low = data.get("etl:adj_low")[["0050"]].loc[:"2026-11-09"]
close = data.get("etl:adj_close")[["0050"]].loc[:"2026-11-09"]
fills, unfilled = gap_events(high, low, close.notna(), delay=5)
position = fills.rolling(20, min_periods=1).max().eq(1)
report = sim(
    position.loc["2008-01-02":],
    retain_initial_cash=True,
    end_date="2026-11-09",
    upload=False,
)

目標權重變化與月周轉

下表將每日目標等權部位的變化取絕對值,買進與賣出相加後按月加總。持股從零到滿倉計100%,再全部賣出另計100%;只轉換同一檔持股的期間不重複計算。這是不含價格漂移的目標權重周轉估計,並非回測引擎實際成交金額除淨值;平均包含空手月份,資料最後不足一個月也納入。交易筆數則可能同時包含許多檔股票,不能拿來替代周轉率。

中心設計 平均每月雙邊周轉 單月最高
回補後買個股 292.5% 524.5%
回補後買0050 64.8% 200.0%
避開回補後時段 65.2% 200.0%
避開缺口未補時段 59.9% 200.0%

下載與重跑

只想看結果,不用安裝軟體或執行程式。 下方兩份互動網頁可查看歷年報酬與最大跌幅;要自行重跑全部研究,再選擇下載Python程式。

選擇性:自行重跑完整研究

  1. 下載共用研究程式,存成 research.py。
  2. 依FinLab設定流程準備環境,安裝finlab、numpy與pandas,依套件指示登入。資料權限依登入帳號而定。
  3. 在程式所在資料夾執行:
顯示程式碼
python research.py --out results

這個命令會跑三個主題、十八個設計的全部162組,並非只跑本文。輸出的 results/metrics.json 包含完整參數與統計,各設計另有具名的互動HTML報告與每日淨值CSV;程式不會部署或下單。

兩份互動報告對應表格具名的兩個中心設計,沒有從九格中挑最好者。報告內建市場線不替代本文依同期0050還原價算出的對照表。後續資料修補或套件更新可能使重跑數字小幅不同;本文保留這次執行的數字與日期。

投資有風險,過去績效不代表未來表現。本文僅供教學與研究參考,不構成投資建議,不推薦買賣任何個股。最大回撤、空手機會成本與交易成本請一併評估。

最後更新:2026-11|回測區間:2008-01-02~2026-11-09|作者:FinLab 量化研究團隊。團隊以歷史資料與可重跑程式研究台股及美股策略。

FinLab AI

想建立自己的策略?

用自然語言描述你的選股想法,AI 自動驗證、回測、給你答案

免費開始

更多技術指標研究

查看全部