Kalshi 上的滑價:為什麼你的成交比看到的價格更差
滑價不是 Kalshi 的怪癖,也不是一個 bug。它是當你想要的量,大於在你看到的價格上掛著的量時所發生的事——而且在一個從 0 報價到 1 的市場上,單一個 tick 佔的比例,遠比你在其他地方交易過的市場都要高。
Kalshi 上的滑價,是你決定交易時看到的價格,與你實際付出的平均價格之間的差距。它之所以發生,是因為顯示的價格只對掛在那個價位的數量有效;一旦你的訂單超出那個數量,剩下的部分就會在更差的價階上成交。在報價介於 0 到 1 之間的合約上,單一一美分的跳動,佔了部位相當大的比例。
一美分的跳動比看起來更大
這是從股票市場過來的人最驚訝的部分。如果一檔 200 美元的股票滑一美分,那是 0.005%,沒有人會注意到。Kalshi 合約以 0 美元或 1 美元結算,因此交易區間大約在 0.01 到 0.99 之間,而它的最小跳動同樣是一美分。
以 0.33 買進一份合約,滑一美分到 0.34,你就為同一個部位多付了 3%。如果你策略的優勢是每份合約兩到三美分——在預測市場裡這是相當體面的優勢——單單一個 tick 的滑價,就可能吃掉優勢的三分之一到全部。
這就是為什麼那些以前從沒想過執行成本的交易者,一到 Kalshi 就開始認真思考它。市場並沒有變得更不友善;只是分母變小了。
yes/no 訂單簿如何造成滑價
Kalshi 顯示兩側,而且兩側都是買價。有買進 yes 的買價,也有買進 no 的買價。沒有獨立的一份 yes 賣價清單,因為在價格 p 上買進 no 的買價,在算術上就等於一個在 1 − p 賣出 yes 的賣價。
這代表買進 yes 時你穿越的價格,來自 no 那一側。在一份從 BTC 15 分鐘市場記錄下來的真實訂單簿裡,最佳 yes 買價掛在 0.32,最佳 no 買價掛在 0.67——因此隱含的 yes 賣價是 1 − 0.67 = 0.33。這個市場的價差只有一美分,而買方付出的是 0.33,而不是他們可能誤以為「就是這個價格」的 0.32。
只看訂單簿的一側,或只看最後成交價,會把這一切完全隱藏起來。第一個讓人意外的地方,往往根本不是滑價,而是價差本身——在心裡錨定在買價,實際上卻付了賣價。
一份真實的 Kalshi 訂單簿實際上長什麼樣子
泛泛而談的滑價解釋,沒辦法告訴你那裡究竟有多少深度,因為那是一個量測值,不是一個定義。在 DepthFeed 記錄下來的封存資料中,旗艦的 BTC 15 分鐘市場,兩側合計通常呈現一美分的價差、約 96 個價格檔位,以及大約 156,000 口合約的掛單深度,數據截至 2026 年 6 月 21 日量測。
這麼深的一本簿,聽起來滑價應該不可能發生,對小額訂單來說,幾乎確實如此。問題在於分布:掛單量並不是平均分散在這些價階上的。它會聚集,而緊貼在最優價後面的那幾檔,經常比總量所暗示的要薄得多。總深度告訴你市場有流動性;最前面幾檔的形狀,才告訴你你的訂單實際上會花多少錢。
一個基於真實價階的實作範例
拿上面記錄的那本簿來看。把 no 側換算成 yes 賣價,大約在 0.33 有 635 口合約可用,在 0.34 有約 1,351 口,在 0.35 有約 2,645 口。
買進 2,000 口 yes 合約。前 635 口以 0.33 成交,接下來的 1,351 口以 0.34 成交,剩下的 14 口以 0.35 成交。總成本約為 674 美元,因此平均付出的價格約為 0.337——而不是螢幕上顯示的 0.33。
這大約是每份合約 0.7 美分的滑價,整筆訂單約 13.80 美元,占投入現金的略高於 2%。一個假設 2,000 口合約全部以 0.33 成交的回測,會記錄成 660 美元,並悄悄地憑空多算出 14 美元從未存在的獲利。
| 價階 | yes 付出的價格 | 成交口數 | 成本 |
|---|---|---|---|
| 最優(來自 0.67 的 no 買價) | 0.33 | 635 | $209.58 |
| 第二檔(來自 0.66 的 no 買價) | 0.34 | 1,351 | $459.46 |
| 第三檔(來自 0.65 的 no 買價) | 0.35 | 14 | $4.75 |
| 總計 | 平均 0.337 | 2,000 | $673.78 |
為什麼你的回測沒有提醒你
幾乎每一份預測市場回測,都是建立在一條價格序列上——最後成交價、中間價,或定期收盤價。價格序列記錄的是「某個價格上發生過一筆成交」,而不是「你的數量本來能在那裡成交」。
這會產生一種特定且一貫的失敗模式:回測恰恰在最重要的地方最樂觀,因為滑價會隨規模與急迫程度增加,而那正是一個策略賺錢或虧錢的關鍵時刻。那些在中間價成交下看起來很強、實盤卻消失無蹤的策略,通常不是過度擬合——它們是用一個從未存在過的成交模型定價出來的。
解法是對照決策當下實際顯示的訂單簿重播,依預定數量走過價階,並記錄未成交的剩餘部分,而不是假設整筆訂單都成交了。
依有效程度排序的降低方法
- 依訂單簿而不是依信念決定規模——下單前先看清楚掛著多少量。
- 使用限價單並接受部分成交;市價單等於指示照著價階付出任何價格。
- 在短天期市場臨近結算的那幾分鐘要避開,這時價差會擴大,掛單量會變薄。
- 把穿越價差的成本,與滑價分開量測——在一美分的市場上,價差往往是兩者中較大的一個。
- 讓你的回測走過訂單簿,這樣成本會顯示在研究裡,而不是顯示在你的帳戶裡。
Key takeaways
- 01滑價是因為你的數量超出了掛著的量,導致你付出比顯示價格更差的價格。
- 02在一份 0.33 的合約上,一美分的跳動是 3% 的變動——同樣的跳動在一檔 200 美元股票上根本看不見。
- 03Kalshi 顯示兩個買價側;yes 的賣價是 1 減去最佳 no 買價,所以買方是從 no 那一側穿越的。
- 04深厚的總深度不代表最優價深厚——決定成本的是最前面那幾檔。
- 05價格序列回測無法顯示滑價;只有走過一份記錄下來的訂單簿才能顯示。
滑價不是 Kalshi 的怪癖,也不是一個 bug。它是當你想要的量,大於在你看到的價格上掛著的量時所發生的事——而且在一個從 0 報價到 1 的市場上,單一個 tick 佔的比例,遠比你在其他地方交易過的市場都要高。
免費開始