核心主張(原創):每個市場的結算條款是一份用自然語言寫的資料管線規格書,而幾乎沒有人把它當成規格書來讀。
一個 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 的持久性取決於成本結構。
抽取管線的設計
第一步:結構化抽取
輸入市場的 question、description、rules(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 的具體方法(不需要下單就能做):
- 選 20 個有明確官方來源的已結算市場。
- 對每個市場,記錄官方發布的精確時間戳(多數官方來源有)。
- 從 Polymarket 的歷史成交資料,找出價格開始朝正確方向移動的時間。
- 兩者相減,得到
D的經驗分布。
如果 D 的中位數小於 30 秒,這條策略在熱門市場上不成立(但在冷門市場上仍可能成立,要分層看)。這個量測應該在寫任何交易程式碼之前完成——它是整條策略的 go/no-go 門檻。
這篇的重點
- 結算條款是一份自然語言寫的資料管線規格書,含來源、欄位、閾值、聚合方式、時間邊界、仲裁優先權六個參數。
- 抽取管線同時產生「監控器」與「漏洞清單」(
ambiguity_flags)。 - 來源目錄要共用:三千個市場可能只對應一兩百個來源。
- 輪詢用發布節奏模型 + 條件請求,不要暴力高頻。
- 下單按抽取信賴度分級,且
q = 1 − β而不是 1。 - 三個致命失效:數據修正、時區/定義細節、來源改版——各有對應的阻擋機制。
- 條款抽取層是三個原創策略共用的基礎設施,這是最重要的架構複用點。
- 上線前先量
D,這是 go/no-go 門檻。
下一步:既有策略盤點與它們的極限。