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

融券回補會軋空嗎?27組測試先卡在可用樣本

融券回補日前買進高券資比股票,能抓到軋空行情嗎?我們固定提前天數、券資比與出場日期,測試二十七組參數。保留當時已入庫的停券事件後,中心設定沒有交易,十五格沒有樣本;有交易的鄰近設定也沒勝過同期含息0050。附公告可用時間、融券與借券差異、同期無停券配對、成本與研究程式,說明為何不能用事後日期推論獲利。

主要設定沒有交易樣本,尚不能判定是否有效

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

看比較結果
回補事件樣本少

融券回補日前五日的有交易鄰近設定、無停券配對組與0050日夏普比較

本文以反面教材為主。融券最後回補日前買進高券資比股票,本次27組參數沒有一組通過驗證;其中15組根本沒有可用交易,中心設定也是零筆。 有交易的五日前進場示例只有一件事件,日夏普0.21,無停券配對組為負0.18,同期0050為1.66。這一件事件不足以證明軋空策略有效,也不足以證明強制回補沒有價格效果。

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

這次最重要的發現是資料時間:表裡有多年前的回補日期,不代表當時的策略已經拿得到那筆公告。把這個差別保留下來,才知道回測究竟測到了什麼。

圖表可點開原尺寸;主要結論與數字也列在正文,手機不必只靠圖例閱讀。

融券回補、強制回補與軋空,有什麼不同

融券賣出是先借股票賣出,之後再買回或依規定還券;買回還券稱為融券回補。軋空通常指價格上升迫使空方回補,回補買盤又可能推升價格。前者是交易或還券動作,後者是價格與部位互相影響的市場過程,兩者沒有必然的一對一關係。

依證交所融資融券業務操作辦法第76條,得為融資融券的證券涉及停止過戶時,融券有停止賣出與還券期限。實際適用原因、日期與例外應以公告及券商通知為準。本文直接使用停券表的最後回補日,沒有自行拿股東會日期減去固定日曆天數。

名詞 本文的定義 容易混淆的地方
融券餘額 尚未了結的融券數量 不是全部市場空單
券資比 融券今日餘額除以融資今日餘額,乘100% 融資分母很小,也會讓比率很高
最後回補日 停券事件表記錄的還券期限 事件發生日不等於公告可取得日
軋空 空方回補與上漲互相推動的價格現象 有還券期限也可能沒有上漲
借券賣出 另一套借券來源與交易制度 本文沒有把借券餘額當融券餘額

如果關心的是融券餘額連續下降,而非公告日期,已有券資比等七種籌碼訊號回測。本文新增的是制度事件,不把連續訊號的結果直接套過來。另一種制度觸發研究是跌停反彈回測,兩種設計的事件時間也不同。

為什麼歷史回補日期不能直接往前買

本次資料快照包含39,407筆去重後、日期及入庫時間完整的停券事件,事件日期最早到2014年7月。但可觀測的入庫時間最早是2025年1月15日,許多舊事件是在那之後回填。若看到某股票2020年有回補期限,就讓策略在2020年提前買入,等於假設當時已拿到今天看到的資料版本。

為避免這個假設,研究只保留入庫時間早於訊號日期的事件,並額外留一天的保守間隔。回測從2025年1月16日開始,跑到2026年11月10日。這個日期代表本資料可驗證的範圍,沒有宣稱停券制度或市場公告從2025年才存在。

日期或欄位 用在哪裡 本次如何處理
最後回補日 計算預定進出場交易日 用交易日序列換算,不用日曆天硬減
入庫時間 判斷研究當時能否看到事件 必須早於訊號日,未提前可得就不做
融資券餘額 計算券資比與融券張數門檻 用訊號日資料,隔日開盤才執行
停券結束日 可能隨公告後續補齊 本策略不使用它決定進出場

入庫時間仍然不是完整的歷次公告版本庫。它可以擋掉明顯晚到的回填,卻不能復原所有歷史修訂,因此本研究的可用性限制不能被寫成「歷史公告效果已完整驗證」。這類問題可參考前視偏差:知道事件最後發生在哪一天,和當時知道未來會發生這件事,是不同的資訊條件。

27組條件在開跑前固定

中心設定是最後回補日前10個交易日開盤買進、券資比至少30%、融券餘額至少1,000張,於回補日後第二個交易日開盤賣出。另要求20日平均成交金額至少2,000萬元。訊號在買進前一個交易日形成,沒有用買進當天收盤才知道的餘額。

參數 中心值 相鄰值
提前進場交易日 10日 5、10、15日
最低券資比 30% 20%、30%、40%
最後回補日後出場天數 2日 0、2、5個交易日
融券餘額 至少1,000張 全部固定
流動性與權重 均成交額2,000萬元,單檔上限10% 全部固定

三個主要參數全排列共27組,至少19組日夏普要高於同期0050,才達到七成門檻。這個標準沒有因為事件少就改寬,也沒有在看完結果後把融券餘額降到更容易產生交易的數字。研究股票池採歷史價格表中的四碼普通股編碼,排除0與91開頭;金融股、KY股、全額交割股未另排除,這套編碼篩選也可能漏掉其他代號的普通股。

融券回補27組鄰近參數的熱圖,15格明確標示無交易而非零夏普

有交易的12格,日夏普都低於同期0050;其他15格沒有事件,圖上直接標示「無交易」。沒有日報酬波動,就沒有可估計的夏普,不能把它寫成觀測到夏普為零的策略。下載結果為了讓驗證程式統一判定,無交易格以零作內部數值標記,另附說明;本文表格則用破折號表示。

三項驗證沒有通過,原因先是樣本不足

主要設定沒有交易,無法判定制度有效或無效。有交易的鄰近設定,也未形成穩定優勢。 中心設定就是開跑前選定的主要條件,並非看完結果挑出的一組。

檢查 主要設定的結果
參數高原 0/27(15格無交易)
前後半段 兩段均無交易
預設成本 無成交,不能估計成本影響
平均權重 股票權重0%,相當於現金
移除最好年 無獲利年度可供判斷

同期0050前後半段的日夏普分別為1.36、1.95;主要設定兩段沒有交易,無法驗證跨時間的優勢。預設成本已保留,但無成交不等於證明成本低;主要設定的固定權重對照也是現金,不能把現金曲線當成擇時成果。無交易也讓移除最佳年度的檢查失去實證意義。

融券回補在5、10、15日前進場、三種券資比門檻下的合格事件筆數

圖中固定回補日後第二日出場。提前五日的三個券資比門檻各一件,提前十日都沒有,提前十五日只有20%門檻一件。同一事件反覆出現在不同門檻、不同出場設定中,不能把12個有交易參數格說成12件獨立事件。

這項結果限制了主張範圍:目前這組資料、門檻和可用時間不足以支持部署策略。它沒有否定所有強制回補事件,也沒有把零筆交易當成零報酬的充分證據。若要回答更早年度的公告前行情,必須另外找到當時已發布且保存版本的公告,先補齊可得日,再把它當新的研究設計。

有交易的鄰近設定與無停券配對

為讓讀者看得到實際交易與報告,以下另列已登記網格中的五日前進場、券資比30%、回補後二日出場。它只用來展示一件事件的樣貌,中心設定仍是十日;沒有因為它有交易就改用它認定策略通過。

對照組在同一訊號日,從同樣滿足融券、券資比與流動性條件的股票中,依券資比差距由小到大配對;排除已知在該持有期間有停券事件者,同日不重複配對。兩組用相同的進出場日期與權重上限。這只控制了時間與券資比等篩選條件,沒有控制產業、市值或所有消息差異。

組別 合格事件/配對數 年化報酬 日夏普 最大回撤
五日前進場的停券事件示例 1 0.33% 0.21 -2.69%
同期無停券配對示例 1 -0.18% -0.18 -1.16%
同期0050含息 持續持有 50.4% 1.66 -27.4%

兩個示例的年化,是以2025-01-16至2026-11-10整段帳戶淨值計算,包含大量閒置現金,沒有把單筆報酬外推成可重複的年化機會。示例事件組雖高於配對組,僅一對觀測不能建立顯著差異,更不能推論是回補制度造成上漲。

互動報告對應上述五日前示例;無停券配對報告也可開啟。報告和中心設定是兩個明確標示的用途,沒有把樣本較少的曲線藏起來。

融券回補中心設定現金路徑、有交易鄰近設定、配對組及0050共同起點的淨值

中心設定維持現金,兩條示例曲線也大部分時間沒有持股,0050則持續承擔市場波動。圖上所有線都從同一日的1起算;不能因示例的最大回撤較小,就跳過股票權重差異宣稱風險控制優於0050。

回補買盤為什麼未必形成可用優勢

最後回補日期是公開制度,其他投資人也能提前因應。空方可以在期限前逐步減倉,部分還券也不等於在最後一天集中以市價買回;股價同時還受營運、估值與整體市場影響。券資比高更不等於空單一定足以推動價格,因為比率沒有直接衡量市場可交易籌碼的深度。

Jones與Lamont(2002)研究美國歷史借券成本與放空限制,指出限制放空和後續報酬的關係值得注意。市場、年代與借券制度都不同,這篇文獻無法直接證明台灣最後回補日前適合買進。Lamont(2012)則研究公司對抗放空者的行為,包含可能製造軋空的措施;那也不是台灣定期停止過戶的同一種事件。

這些文獻提供機制背景,本文不拿它們補上缺少的樣本。對多重測試的疑慮,可再看Harvey、Liu與Zhu(2016):當測試很多條件時,少數較漂亮的結果尤其需要獨立驗證。讀者若想把事件研究放進更完整的選股流程,可以從股票選股指南比較不同資料來源的用途。

回測方法與限制

項目 本次做法
快照 資料截至2026-11-10;2026-11-11重跑,finlab 2.3.8、pandas 3.0.6
成交與權重 隔日開盤買賣、等權,單檔上限10%,不足留現金;未額外計現金利息
成本 sim預設每邊手續費0.1425%,賣出證交稅0.3%;沒有為通過驗證而設零成本
滑價與成交限制 未額外設定滑價,未模擬停板排隊或延後出場,未估算容量
周轉率 中心設定無交易,平均與單月最高目標權重周轉率均為0;無法據此估計可用交易頻率
基準 etl還原收盤價的0050,純算術含息、不扣成本,期間和策略一致
樣本內外 全段樣本內,沒有獨立樣本外;前後切半無法補足零交易問題

尤其要留意:歷史價格資料雖納入有紀錄的下市股票,仍不代表公告與餘額資料也同樣完整。入庫限制減少明顯前視,沒有消除所有資料選擇偏差。回測與可執行交易的差距,另見回測常見限制;處置期間的制度變化則可比較處置股時點研究。

常見問題

融券回補一定會漲嗎?

不一定。還券是期限要求,價格方向要看實際供需。本研究的有交易格都沒贏0050,樣本又少,無法建立可重複的交易優勢。

券資比多少才會軋空?

沒有經本次研究驗證的通用門檻。20%、30%、40%是事前固定的測試值,不能因為某一件事件上漲,就把其中一個數字當安全線。

為什麼十日前沒有交易,十五日前反而有一件?

因為券資比、融券餘額和流動性都在各自訊號日重新判斷。不同日期可能滿足不同條件,且必須同時通過事件已入庫的限制,事件數不必隨提前天數單調變化。

表中有十多年資料,為什麼不直接測十年?

回填事件日期沒有證明當時可取得。本文保留可觀測入庫時間的限制,避免把今天的完整表格當成十年前已知資訊。

融券和借券可以合併算空單嗎?

兩者來源與制度不同,不能直接用同一張餘額表代替。本文只測融資融券資料,不對全部空方部位下結論。

這個研究可以直接拿來實單嗎?

不適合。中心設定沒有樣本,示例也只有一件事件。先依程式交易研究流程核對時間、條件與樣本,沒有足夠證據前,不把研究報告當交易訊號。

研究程式與下載

下載的程式預設保留十日前中心設定。若要重現本文互動示例,使用下列明確參數;程式只做研究,不把回測上傳到個人帳號。

顯示程式碼
from strategy import build_report
 
report = build_report(lead=5, ratio_min=30, lag=2)
report.to_html("report_strategy.html")
檔案 內容
strategy.py 事件日期與回測程式
metrics.json 27組設定與樣本數
data.csv 每日結果與0050對照

FinLab量化研究團隊以公開資料與套件執行研究,保留失敗結果與資料限制,供讀者重跑和比較,沒有推薦個股。

投資有風險,過去績效不代表未來表現。本文僅供研究與教學參考,不構成投資建議;還券期限、公告變更與成交限制都可能影響實際結果。

最後更新:2026-11|回測區間:2025-01-16至2026-11-10|作者:FinLab量化研究團隊(經量化研究員審閱)

FinLab AI

想建立自己的策略?

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

免費開始

更多籌碼面研究

查看全部