資料說明|結算日那天,價差為什麼看起來怪怪的
今天想跟大家聊聊「結算日」
每個月的第三個星期三
台指期的近月合約在這一天到期
平常看起來很正常的數字
到了這一天,常常會怪怪的
這篇不講結算日的行情
只講資料
整理期交所資料這段時間,我在結算日踩過三個坑
先定義
結算日,是台指期近月合約的最後交易日
這一天,到期的那個合約只交易到 13:30
之後就用「最後結算價」把所有還沒平倉的部位結掉
最後結算價怎麼來的?
期交所的規定是
取結算日當天,加權指數收盤前 30 分鐘的簡單算術平均
所以結算價不是期貨自己的收盤價
是現貨最後半小時的平均
坑一:「近月」突然換人
結算日之前,近月是這個月的合約
結算日當天,這個月的合約下午就到期了
從這一天開始,真正有意義的「近月」變成下個月
如果程式沒有處理
就會出現一個很奇怪的跳動
拿 2026 年 9 月來看(收盤對收盤的價差)
| 日期 | 近月合約 | 近月價差 | 次月價差 |
|---|---|---|---|
| 9/14 | 9 月 | -83 | +39 |
| 9/15 | 9 月 | +96 | +229 |
| 9/16 結算日 | 10 月 | +229 | +351 |
| 9/17 | 10 月 | +157 | +325 |
9/15 到 9/16,近月價差從 +96 跳到 +229
看起來像是「價差一天擴大 133 點」
其實不是
9/15 那天,10 月合約的價差本來就是 +229 了
跳的不是行情,是「近月」從 9 月換成了 10 月
不同到期日的合約,價差本來就不一樣
遠一點的合約,中間要經過的除息、資金成本都不同
所以畫長期的價差走勢時,每個月結算日都會有一個台階
坑二:結算價寫成 0
這個是我自己的 bug
期交所每天公布的期貨行情裡
結算日當天,到期的那個合約,「結算價」欄位是 0
最後結算價會另外公布
程式照抄
網站的籌碼日報就寫出了
「大台近月結算 0,較前一交易日 -45,592 點(-100%)」
2026 年 6/17、7/15、8/19、9/16,四個結算日全部中
一直到 10 月 18 日寫文章、整理資料的時候才發現
現在已經修好了
結算價是 0 的合約不列,近月直接改用下一個月
跟價差頁的規則一樣
坑三:「9/16 的夜盤」其實是 9/15 晚上
這個坑不只結算日有,但結算日最容易踩
期交所的夜盤,是下午 3 點開始,交易到隔天凌晨 5 點
這一段夜盤,期交所把它算在「下一個交易日」
所以期交所資料裡
「交易日 9/16、盤後時段」的那幾筆
其實是 9/15 晚上到 9/16 凌晨成交的
結算日的到期合約,資料上也會有一筆「9/16 盤後」
它是結算前一晚的夜盤
不是結算之後還在交易
如果用「日曆日」去切資料
就會把同一天晚上的交易,分到兩個不同的日期
算成交量、算對帳,都會兜不起來
我學到的事
結算日這種「每個月只發生一次」的日子
最容易被測試漏掉
平常的日子程式跑得好好的
一個月才出現一次的特殊狀況,很容易被平均掉、被忽略
所以之後的做法是
每個月結算日過後,特別打開那天的日報看一次
程式裡也加了一個測試,專門模擬「到期合約結算價是 0」的情況
我是李阿財,我們下次見