期貨結算價 vs 收盤價:你的日 K 用哪一個
結算價是交易所每日公布的官方價格,由收盤前一段短時間的成交計算而來;收盤價只是最後一筆成交。日 K 回測的成交價以實際成交價計算,而未平倉部位的對帳損益與保證金則隨結算價變動,因此在相信日 K 回測結果之前,先確認你的日 K 是用哪一種價格。
作者 Soren Huang · 發佈 · 更新於 · 編輯原則
期貨結算價與收盤價:差在哪裡?
期貨結算價與收盤價的差別在於:結算價是交易所依公布方法,根據收盤前一段短時間的成交計算出的官方每日價格;收盤價則只是該時段最後一筆成交。日 K 可能放入其中任何一個,所以回測在讀取訊號或損益之前,必須先確認 K 棒裡放的是哪一種價格。
結算價(settlement price)是交易所在每個交易時段結束後公布的數字,結算所用它在帳戶之間進行現金收付。收盤價則是交易時段結束前最後一筆成交的價格。大多數日子兩者只相差幾個跳動點;在成交稀少的日子,兩者的差距可能更大,因為結算價是一個計算結果,而最後成交價只是一個價格點。回測是用過去的價格重播規則,也就是交易回測是什麼所說的做法,因此它會繼承日 K 所含的價格,卻不知道那是哪一個價格。
| 問題 | 結算價 | 最後成交價(收盤) |
|---|---|---|
| 由誰決定 | 交易所,依公布的公式 | 市場:最後一筆成交的買賣雙方 |
| 何時確定 | 收盤計算時段結束後 | 最後一筆成交時 |
| 用途 | 未平倉部位的保證金與每日損益 | 圖表與多數回測成交 |
| 兩者是否可能不同 | 可能,通常相差幾個跳動點 | |
期貨結算價是怎麼算出來的?
交易所是以收盤前一段短時間內的成交來建立每日結算價,而不是只取最後一筆成交。常見的方法是以該時段成交的成交量加權平均;成交稀少時,交易所改用買賣價的中間價,或依遠月與主力月份的價差推算遠月價格。確切的時段與方法公布在交易所的商品頁面上,而且交易所會不定期調整,因此請以該市場目前的規則為準。
最後結算價(final settlement price)是另一天、另一個用途的數字。最後結算價用於在到期日結清每一口未平倉的契約,它來自標的指數,而不是來自期貨成交。台指期的最後結算價由交易所在最後結算日的最後 30 分鐘內依指數公布;免費的台指期結算日工具列出這些日期,台指期結算日說明則介紹最後價格如何決定。
為什麼用結算價計算保證金與每日盯市?
結算所每天依結算價在帳戶之間移轉現金,因此未平倉部位的每日損益與任何保證金追繳都依結算價計算,而不是依最後成交價。盯市(mark-to-market)是以結算價對每一口未平倉契約進行每日重估,當日與前一日的差額以現金收付。單一筆最後成交可能被一張小單推動;一段時間的平均值較難被推動,這就是交易所用它來結算金錢的原因。
假設性範例
你在週一以 18,000.00 買進一口 NQ。週一結算價為 18,040.00:40 點 × 20 美元 = 入帳 800 美元。週二結算價為 18,010.00:扣款 600 美元。週三最後成交價為 18,050.00,但結算價是 18,049.50:入帳 790 美元,而非 800 美元。圖表顯示 18,050.00;對帳單依 18,049.50 變動。這 10 美元的差距是兩個 NQ 跳動點。
對日線策略來說,這個差異有多大?
對日線策略而言,成交價與記帳價是兩件不同的事,兩者之間的差距通常只有幾個跳動點,它會改變每日權益曲線,但不會改變已平倉交易的結果。日線規則以 K 棒收盤價作為訊號,並以實際成交價成交;對帳單則在當晚以結算價計算未平倉部位的市值。已平倉的獲利只來自成交價,因此結算價改變的是每日未平倉權益的走勢與你每天看到的回撤,而不是已結束交易的獲利。NQ 的一個跳動點為 0.25 點,價值 5.00 美元,因此兩個跳動點的差距是每口每天 10 美元;免費的期貨合約計算機可為其他契約換算這個差距。AlphaPrime(Valynox)在回測中,會以下一根 K 棒成交每一筆日線委託,並在每次評估中計入手續費與滑價,因此這個差距中成交的部分已經反映在結果裡;結算價的部分則屬於對帳單。
以下的回測顯示,當一個日線策略幾乎每天都留有未平倉部位時,會是什麼樣子。它以 2019-01-02 至 2025-06-30 的 NQ 日 K 進行測試,多空皆做,每次一口,唯一的進出場規則是 K 線型態(Candlesticks)規則,沒有停損、停利或過濾條件。這是一個以標準指標建構的替代規則,並非結算價問題本身。候選策略是搜尋從它所試的 1,024 個中,依報酬與回撤挑出並保留下來的那一個;事後才挑出保留的策略會讓結果好看,而這裡並不代表此規則真的賺到這些錢,也不代表讀者可以預期同樣的結果。
來源:AlphaPrime 產品引擎(CPU),2026-10-31 執行。NQ 日線,2019-01-02 至 2025-06-30,多空都做,1 口,每筆手續費 $20、滑價 $10。
| 項目 | 結果 |
|---|---|
| 淨利(已平倉) | $182,005 |
| 最大回撤 | $131,125 |
| 交易筆數 | 64 |
| 勝率 | 54.69% |
| 獲利因子 | 1.759 |
| 平均每筆 | $2,843.83 |
| 在場時間 | 93.88% |
在場時間為 93.88%,代表在這段期間幾乎每個晚上部位都以結算價計價;券商對帳單所顯示的每日未平倉權益走勢,與圖表以收盤價計算的走勢,每天相差數個跳動點。如果這幾個跳動點對你的規則很重要,那代表你其實是在收盤時段內交易,而日 K 無法呈現這一點;高頻資料回測與期貨逐筆資料回測說明了更細的 K 棒能提供什麼。
如何確認你的資料商提供的是哪一種價格?
將你的日 K 收盤價與交易所公布的結算價比對數個日期,確認資料商是否另外提供結算價欄位,並在信任任何日線回測結果之前,把回測的時段與成交價設定為與之相符。資料商通常以三種方式提供每日收盤價,而檔案本身很少註明是哪一種。
- 挑選五到十個日期,包括一個平靜的日子與一個波動的日子。
- 記下交易所的結算價,來源為每日公告或結算價頁面。
- 將你的 K 棒收盤價寫在旁邊。如果每次都相符,代表收盤價就是結算價;如果相差幾個跳動點,代表它是最後成交價。
- 尋找獨立的結算價欄位,可查看資料商的文件或檔案欄位。
- 設定回測以配合:以最後成交價或下一開盤價成交,並在有該欄位時以結算價計算未平倉部位。
| 問題 | 收盤價 = 最後成交價 | 收盤價 = 結算價 | 獨立的結算價欄位 |
|---|---|---|---|
| 日 K 收盤價包含什麼 | 最後一筆成交 | 交易所計算出的價格 | 最後一筆成交 |
| 是否有結算價可用 | 沒有 | 有,即為收盤價 | 有,在獨立欄位中 |
| 回測應如何設定 | 以最後成交價或下一開盤價成交 | 以下一開盤價成交,因為結算價並非可成交的價格 | 以實際成交價成交;未平倉部位以結算價計價 |
股票與 ETF 沒有每日結算價;它們的官方收盤價就是交易所的收盤價,因此沒有這個問題,台股與 ETF 回測指南即有說明。對期貨而言,現在就做五個日期的檢查:打開你的日 K 檔案,把每個收盤價寫在交易所結算價旁邊,然後將回測的成交價設定為該 K 棒實際所含的價格。
常見問題
日 K 的收盤價是結算價還是最後成交價?
這取決於資料商,而且檔案通常不會說明。有些資料商把最後成交價放在收盤欄位,有些放的是交易所結算價,也有些將兩者分別放在不同欄位。比對幾個日期與交易所公布的結算價,就能確認你拿到的是哪一種。
如果我每天收盤前就把部位全部平倉,結算價還重要嗎?
對你的現金流而言不重要,因為每日盯市只適用於結算時仍未平倉的部位。但對你的資料仍然重要:如果資料商的收盤價是結算價,那麼把日收盤價當作訊號的規則,讀的就是一個從來不是單筆成交的價格。這種情況下,請把成交設定為下一根 K 棒的開盤價。
什麼是最後結算價?
最後結算價(final settlement price)是期貨契約到期時,用來結清所有未平倉契約的價格。它在最後結算日依標的指數計算,而不是來自期貨成交,因此與每日結算價是不同的數字。交易所的商品頁面會說明每個市場的確切方法。
回測計算損益時應該用哪一個價格?
成交應使用實際成交價:也就是最後成交價,或是更貼近實際的訊號後下一根 K 棒的開盤價。如果你的資料提供結算價,就用它在每天結束時計算未平倉部位的市值,因為這正是券商對帳單的做法。無論哪一種方式,已平倉的獲利都來自成交價。
參考資料
- CME Group. E-mini Nasdaq-100 Futures Contract Specs. https://www.cmegroup.com/markets/equities/nasdaq/e-mini-nasdaq-100.contractSpecs.html
- Taiwan Futures Exchange. Mini-TAIEX Futures. https://www.taifex.com.tw/enl/eng2/mTX

