核心主張(原創):每個市場的結算條款是一份用自然語言寫的資料管線規格書,而幾乎沒有人把它當成規格書來讀。

一個 Polymarket 市場的 rules 欄位長這樣(示意):

本市場在 2026 年 12 月 31 日 23:59 ET 前,若美國勞工統計局(BLS)公布的月度 CPI 年增率(未經季調,全項目)於任一次發布中低於 2.0%,則結算為 Yes。以 BLS 官方發布為準。

這段文字裡有一整條資料管線的全部參數

條款成分管線參數
「美國勞工統計局(BLS)」權威來源
「月度 CPI 年增率(未經季調,全項目)」欄位與序列 ID
「低於 2.0%」閾值與比較運算子
「任一次發布中」聚合方式:任意(OR over releases)
「2026-12-31 23:59 ET」時間邊界與時區
「以 BLS 官方發布為準」仲裁優先權:官方 > 媒體轉述

只要能把這六個欄位抽出來,這個市場的監控器就可以被自動生成。 這是這篇的全部內容。


為什麼這是一個 edge,而不只是一個便利

三個理由,強度遞增:

理由一:條款指名的來源,定義上就是答案。 不是「相關資訊」,是判定依據本身。監控它,等於監控結算結果。任何其他來源(新聞、社群、專家意見)都只是它的有雜訊的代理

理由二:D − d 在這類來源上特別大。訊號分類學——多數參與者透過新聞轉述得知官方發布,而新聞轉述有數十秒到數分鐘的延遲,加上撰稿、審稿、推播。直接輪詢 BLS 的 API 與等 Bloomberg 推播之間,是一個真實存在的時間窗。

理由三:這件事的成本結構讓它難以被抄。 抄一個交易訊號很容易,抄「三千個市場各自的權威來源監控器」需要複製整條產線。呼應 edge 的持久性取決於成本結構


抽取管線的設計

第一步:結構化抽取

輸入市場的 questiondescriptionrules(Gamma API 提供),輸出一個嚴格 schema:

{
  "authoritative_source": {
    "name": "US Bureau of Labor Statistics",
    "access": {
      "type": "api",
      "endpoint": "https://api.bls.gov/publicAPI/v2/timeseries/data/",
      "series_id": "CUUR0000SA0",
      "auth_required": true
    },
    "publication_schedule": "monthly, ~08:30 ET, second week"
  },
  "observable": {
    "field": "12-month percent change, all items, NSA",
    "unit": "percent"
  },
  "predicate": { "operator": "<", "threshold": 2.0 },
  "aggregation": "any_release_in_window",
  "window": { "start": "2026-01-01T00:00:00-05:00",
              "end":   "2026-12-31T23:59:00-05:00" },
  "arbitration_priority": ["official_release", "official_revision", "media"],
  "ambiguity_flags": ["revision_handling_unspecified"],
  "extraction_confidence": 0.86
}

ambiguity_flags 是這個 schema 最重要的欄位。 上面那個例子裡,條款沒說「如果 BLS 事後修正數據怎麼辦」——這是一個真實的漏洞,而它同時是 條款背離掃描 的輸入。抽取管線不只產生監控器,也產生漏洞清單。

extraction_confidence 決定下游怎麼用:高信賴度的走自動監控,低信賴度的進人工審查佇列或直接排除。

第二步:來源解析與存取方式分級

抽出來的來源名稱要對應到一個實際可以打的東西。按可靠度分四級:

等級存取方式延遲穩定度佔比(估計)
A官方 API / 結構化 feed少數但最有價值
B官方頁面(HTML 解析)秒–分中(版面會改)多數
C官方社群帳號補充用
D只有媒體轉述分–時應標記為高風險

維護一份「來源目錄」,讓多個市場共用同一個來源的監控器。 這是規模經濟的關鍵——三千個市場可能只對應一兩百個不同的權威來源。目錄應該是手工審核過的(來源解析是整條管線最容易出錯、也最值得投入人工的一環),而條款抽取則完全自動。

第三步:輪詢排程(發布節奏模型)

天真的做法是每個來源每秒打一次。這會燒掉速率額度、被對方封鎖,而且 99.9% 的時間毫無收穫。

正確做法是發布節奏模型:從歷史發布時間學一個機率分布 P(發布時間),然後把輪詢頻率設成正比於當下的瞬時發布機率密度

輪詢間隔(t)  ∝  1 / hazard(t)

實務上:

  • 平時每 5–15 分鐘一次(只為了偵測「排程外的意外發布」)。
  • 預期發布時間前 10 分鐘進入高頻模式(每 1–2 秒)。
  • 發布偵測到之後立刻降回低頻。

技術細節:用 HTTP 條件請求(ETag / If-Modified-Since)而不是重抓全文——這讓高頻輪詢的頻寬成本近乎為零,也讓變更偵測變成一個布林判斷而不是文字比對。對 HTML 來源,額外維護一個版面雜湊:若頁面結構改了但目標欄位沒抓到值,要發警報而不是靜默回傳 null(靜默失敗是這類系統最常見的死法)。

第四步:觸發與下單

偵測到發布 → 抽取數值 → 對照 predicate → 產生確定性訊號。

下單邏輯必須分級,而不是無條件市價掃單

抽取信賴度動作
高(數值明確、schema 匹配)立刻按 Kelly 掃單,上限由盤口深度截斷
中(數值需推導或有歧義)只掛 maker 單在保守價位
低(版面異常、多重解讀)不下單,發警報

q 的設定:確定性事件成立時,q = 1 − β,其中 β 是該市場的預言機偽陰性率(見 混淆矩陣)。不要設 q = 1——這會讓你在 99¢ 買進,而那是負期望值。


三個容易致命的失效模式

一、數據修正(revision)。 官方統計常有初值與修正值。條款若沒指明用哪個,你的自動判定可能與最終結算相反。處理:把 revision_handling_unspecified 當成阻擋條件,這類市場降級為人工或不交易。

二、時區與定義的細節。 「2026 年」是哪個時區的年底?「月度 CPI」是季調還是未季調?這些細節單獨看都很無聊,但每一個都能讓一筆「確定性」交易變成全損。 這是為什麼 schema 要強制填滿所有欄位,缺一欄就降信賴度。

三、來源本身改版。 API 端點下線、序列 ID 變更、HTML 版面重寫。處理:每個監控器都要有心跳測試——定期用一個已知的歷史值驗證解析器仍然正確,失敗就自動停用該市場的自動交易。


這件事為什麼算「把不能自動化的變成自動化」

「知道該看哪裡」通常被歸為人類判斷:一個有經驗的交易員讀完市場描述,心裡就知道「這要看 BLS 的第二個星期五」。這個知識看起來是隱性的、經驗性的、無法規模化的。

但它其實是寫在條款裡的。 條款是一份規格書,只是用自然語言寫的。LLM 恰好擅長把自然語言轉成結構化 schema——這正是「隱性知識」變成「可執行程式碼」的那個介面。

這個模式(把市場的自我描述當成程式碼來編譯)在其他策略上會反覆出現:

  • 條款—標題背離:把條款編譯成一個判定函數,與標題的語義比對。
  • 邏輯蘊含圖:把條款編譯成一個命題,與其他市場的命題做邏輯運算。

三者共用同一個抽取層。這是本專欄在架構上最重要的一個複用點——條款抽取器是一次投入、三個策略共享的基礎設施。


分級與驗證

主張等級
條款指名的來源就是判定依據機制必然(讀條款即可確認)
條款可以被抽成結構化 schema有證據(結構化輸出是成熟技術;抽取錯誤率待測)
官方來源的 D − d 顯著為正原創假說,可直接驗證
這條 edge 難以被複製論證(成本結構論),非實證

驗證 D − d 的具體方法(不需要下單就能做):

  1. 選 20 個有明確官方來源的已結算市場。
  2. 對每個市場,記錄官方發布的精確時間戳(多數官方來源有)。
  3. 從 Polymarket 的歷史成交資料,找出價格開始朝正確方向移動的時間
  4. 兩者相減,得到 D 的經驗分布。

如果 D 的中位數小於 30 秒,這條策略在熱門市場上不成立(但在冷門市場上仍可能成立,要分層看)。這個量測應該在寫任何交易程式碼之前完成——它是整條策略的 go/no-go 門檻。


這篇的重點

  1. 結算條款是一份自然語言寫的資料管線規格書,含來源、欄位、閾值、聚合方式、時間邊界、仲裁優先權六個參數。
  2. 抽取管線同時產生「監控器」與「漏洞清單」ambiguity_flags)。
  3. 來源目錄要共用:三千個市場可能只對應一兩百個來源。
  4. 輪詢用發布節奏模型 + 條件請求,不要暴力高頻。
  5. 下單按抽取信賴度分級,且 q = 1 − β 而不是 1。
  6. 三個致命失效:數據修正、時區/定義細節、來源改版——各有對應的阻擋機制。
  7. 條款抽取層是三個原創策略共用的基礎設施,這是最重要的架構複用點。
  8. 上線前先量 D,這是 go/no-go 門檻。

下一步:既有策略盤點與它們的極限