Polymarket Kalshi API 比較:同一問題的報價差距

2026年10月24日,針對聯準會10月28日的決議,Kalshi 將維持不變定為 91.1%,Polymarket 為 92.9%,差距為 1.8 個百分點。Narwhal 會在一次回應中同時回傳兩個平台的報價與綜合機率。

使用 API

透過 GET /v1/predictions/scalar/usa-fed-2026-10 讀取這個聯準會問題。outcomes[] 中的每一項都有綜合後的 probability,以及 quotes[] 中各平台的項目。這些項目包含 venue、probability 和 market_ids,因此比較始終對應同一個結果,同時保留各平台的市場參照。

  1. 設定你的 API 金鑰 取得一組免費金鑰,並存放在環境變數 NARWHAL_API_KEY 中。請求透過 Authorization: Bearer YOUR_KEY 標頭傳送該金鑰;REST 與 MCP 共用同一組金鑰。
  2. 讀取問題及其報價 用這段 Python 腳本列印問題,然後把綜合機率與各平台的機率並排放在結果標籤旁。腳本還會列印以百分點表示的絕對差距,以及回應中的各平台權重。
    Python:並排查看各平台報價
    import os
    import requests
    
    event = requests.get(
        "https://api.narwhalapi.com/v1/predictions/scalar/usa-fed-2026-10",
        headers={"Authorization": f"Bearer {os.environ['NARWHAL_API_KEY']}"},
        timeout=10,
    ).json()
    print(event["question"])
    print(f"{'outcome':26}{'blend':>8}{'kalshi':>8}{'polymarket':>12}{'gap':>7}")
    for o in event["outcomes"]:
        q = {x["venue"]: float(x["probability"]) for x in o["quotes"]}
        k, p = q.get("kalshi"), q.get("polymarket")
        gap = f"{abs(k - p) * 100:.1f}pt" if k is not None and p is not None else "-"
        print(
            f"{o['label']:26}{float(o['probability']):8.1%}{k or 0:8.1%}"
            f"{p or 0:12.1%}{gap:>7}"
        )
    print("venue weights:", {v["venue"]: v["weight"] for v in event["venues"]})
  3. 比較對應的結果 沿著要比較的結果所在的列由左至右閱讀。綜合欄是該結果的 probability,各平台欄來自該結果的 quotes[],因此差距比較的是同一結果下 Kalshi 與 Polymarket 的數值。
  4. 保留比較時的日期 要追蹤價差,請每天儲存指令碼的輸出,並附上其數據對應的日期。在儲存的輸出中,將每個結果的標籤與其各交易場所報價、價差和混合值一併保留。比較已儲存的日期時,每個日期都使用同一個結果,這樣所選結果的變化就不會進入價差比較。

請把差距欄與各平台欄一起閱讀。任一平台的報價缺漏時,腳本會列印短橫線。此時顯示的平台數值可能因腳本的格式設定而為零,請查看 quotes[],以區分報價缺漏與已給出的機率。腳本要計算某個結果的差距,需要兩個平台都有報價。

使用試算表或不寫程式的方式

開啟預測頁面並選擇該問題,即可看到各平台的價格。想快速查看,可以直接在那裡讀取 Kalshi 和 Polymarket 的報價。用試算表比較時,先把同一結果的報價分別貼到不同儲存格,兩個數值要使用同一日期。

把 Kalshi 的報價放在 B2,Polymarket 的報價放在 C2,兩個儲存格都以百分比輸入。取絕對差即可得到差距,不論哪個平台的報價較高。把問題、結果和日期與貼上的數值放在一起,試算表就保留了這次比較的背景。

平台報價之間的絕對差
=ABS(B2-C2)

輸入為百分比時,結果就是兩個機率之間的差。描述平台之間的差距時,請用百分點來表示。計算範例使用的是維持不變這個結果;如果比較該問題的其他結果,請使用對應的那一組報價。

各種情況適合的方式

情況最適合的方式原因
快速查看預測頁面各平台的價格顯示在問題頁面上
差距追蹤器執行腳本並每天儲存輸出為每個結果列印各平台的報價及其差距
交易決策先閱讀各平台的規則與費用合約措辭與費用可能不同

這些是資訊,不構成建議。

為什麼 Kalshi 和 Polymarket 的數字不一致?

交易者、費用和合約措辭不同,都可能讓報價不一致。在流動性好的問題上,一兩個百分點的差距很常見。每個平台對問題單獨報價,因此即使結果標籤指向同一個聯準會決議,比較中也會保留兩個機率。

綜合機率用到了什麼?

綜合機率使用回應中的各平台權重。2026年10月24日,Kalshi 的權重為 0.5785,Polymarket 為 0.4215。把綜合機率與各平台的報價放在一起解讀時,請從 venues[] 讀取這些值。

同樣的平台項目還包含 volume_24h_usd、open_interest_usd、規則文字和 URL。回應把這些平台資訊與各結果放在一起,每個結果帶有自己的綜合機率和各平台報價。如果想保留綜合機率背後的輸入,請把權重與帶日期的比較一起儲存。

兩個合約是否相同?

這些合約並不總是相同。在把它們當作同一個賭注之前,請比較各平台的 rules_text,並透過回應中的平台 URL 閱讀相應的規則。問題或結果標籤的措辭相似,並不代表規則相同。

比較 resolves_at 的值時,請依日期比較,而不要比較包含完整時間戳記的字串。在判斷各平台的報價是否屬於你要做的比較時,請把結算日期和規則文字一起閱讀。

計算範例:2026年10月聯準會維持不變

本範例的數字來自2026年10月24日,對應聯準會2026年10月28日的決議。從維持不變這一列開始:Kalshi 報價 91.1%,Polymarket 報價 92.9%。用較高的報價減去較低的報價,即可得到絕對差距。

2026年10月24日維持不變的差距
92.9 - 91.1 = 1.8 percentage points
Blended probability: 91.9%

在同一日期的比較中,其他結果也保留各自的平台報價和綜合機率。比較降息、維持不變或升息時,請逐列閱讀。

2026年10月24日的結果綜合KalshiPolymarket
降息 50 個基點或以上0.3%0.5%0.1%
降息 25 個基點0.4%0.5%0.1%
不變91.9%91.1%92.9%
升息 25 個基點7.0%7.4%6.5%
升息 50 個基點或以上0.4%0.5%0.4%

2026年10月24日,升息 25 個基點的報價相差 0.9 個百分點。同日對於維持不變,把各平台權重套用到更精確的機率上得到 0.9189,而回應中的綜合 probability 為 0.9188。報告回應中的綜合值時,請使用回傳的綜合機率。差距計算是直接比較兩個平台,不使用權重,所以請另外保留各平台的報價。

2026年10月24日維持不變的加權計算
0.5785 x 0.9114 + 0.4215 x 0.9292 = 0.9189
Response probability: 0.9188

發布於 。

後續步驟