2026년 10월 24일 기준, 10월 28일 연준 결정에 대해 Kalshi는 동결을 91.1%, Polymarket은 92.9%로 호가했으며 격차는 1.8%p였습니다. Narwhal은 두 플랫폼의 호가를 통합 확률과 함께 한 번의 응답으로 반환합니다.
API 사용 방법
연준 질문은 GET /v1/predictions/scalar/usa-fed-2026-10으로 읽습니다. outcomes[]의 각 항목에는 통합된 probability와 quotes[]의 플랫폼별 항목이 있습니다. 이 항목에는 venue, probability, market_ids가 들어 있어, 같은 결과에 연결된 상태로 비교할 수 있고 각 플랫폼의 시장 참조도 유지됩니다.
- API 키 설정 무료 키를 발급받아 환경 변수
NARWHAL_API_KEY에 보관하세요. 요청은 그 키를Authorization: Bearer YOUR_KEY헤더로 보내며, REST와 MCP는 같은 키를 사용합니다. - 질문과 호가 읽기 이 Python 스크립트로 질문을 출력하고, 통합 확률과 각 플랫폼의 확률을 결과 라벨 옆에 나란히 놓습니다. 격차의 절댓값(%p)과 응답에 담긴 플랫폼 가중치도 함께 출력합니다.
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"]}) - 대응하는 결과 비교하기 비교하려는 결과의 행을 가로로 읽습니다. 통합 열에는 그 결과의
probability가, 플랫폼 열에는 같은 결과의quotes[]값이 들어 있으므로, 격차는 같은 결과에 대한 Kalshi와 Polymarket의 비교입니다. - 비교에는 날짜를 함께 남기기 격차를 추적하려면 스크립트 출력을 수치의 날짜와 함께 매일 저장하세요. 저장하는 출력에는 각 결과 라벨을 거래소별 호가, 격차, 블렌드와 함께 남기세요. 저장된 날짜끼리 비교할 때는 선택된 결과가 바뀌어도 격차 비교에 영향을 주지 않도록 모든 날짜에서 같은 결과를 사용하세요.
격차 열은 플랫폼 열과 함께 읽으세요. 어느 한쪽 플랫폼의 호가가 없으면 스크립트는 대시를 출력합니다. 이때 표시된 플랫폼 값은 스크립트의 서식 때문에 0으로 보일 수 있으므로, quotes[]를 확인해 호가가 없는 것인지 확률이 제시된 것인지 구분하세요. 스크립트가 결과의 격차를 계산하려면 두 플랫폼의 호가가 모두 있어야 합니다.
스프레드시트 또는 코드 없이 계산
예측 페이지를 열고 질문을 선택하면 각 플랫폼의 가격이 보입니다. 간단히 확인하려면 거기서 Kalshi와 Polymarket의 호가를 읽으면 됩니다. 스프레드시트 비교는 같은 결과의 호가를 서로 다른 셀에 붙여 넣는 것으로 시작하고, 두 수치에는 같은 날짜를 사용하세요.
Kalshi 호가를 B2에, Polymarket 호가를 C2에 넣고 두 셀 모두 백분율로 입력합니다. 절댓값 차이를 쓰면 어느 플랫폼이 더 높든 격차를 구할 수 있습니다. 질문, 결과, 날짜를 붙여 넣은 값 옆에 함께 적어 두면 시트에 비교의 맥락이 남습니다.
=ABS(B2-C2)입력이 백분율이면 결과는 확률 간의 차이입니다. 플랫폼 간 격차를 설명할 때는 그 차이를 %p로 표현하세요. 계산 예시는 동결 결과를 사용합니다. 질문의 다른 결과를 비교한다면 그에 해당하는 호가 쌍을 사용하세요.
상황별 계산 방법
| 상황 | 적합한 방법 | 이유 |
|---|---|---|
| 빠르게 확인하기 | 예측 페이지 | 각 플랫폼의 가격은 질문 페이지에 표시됩니다 |
| 격차 추적기 | 스크립트를 실행하고 출력을 매일 저장하기 | 결과마다 플랫폼별 호가와 그 격차를 출력합니다 |
| 거래 결정 | 먼저 각 플랫폼의 규칙과 수수료를 읽기 | 계약 문구와 수수료는 다를 수 있습니다 |
이는 정보일 뿐 조언이 아닙니다.
Kalshi와 Polymarket의 수치가 다른 이유는 무엇인가요?
참여자, 수수료, 계약 문구가 다르면 호가도 달라질 수 있습니다. 유동성이 높은 질문에서도 1~2%p 정도의 격차는 흔합니다. 각 플랫폼이 질문을 따로 호가하므로, 결과 라벨이 같은 연준 결정을 가리키더라도 비교에서는 두 확률이 모두 보존됩니다.
통합 확률에는 무엇이 사용되나요?
통합 확률에는 응답에 있는 플랫폼 가중치가 쓰입니다. 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%로 호가했습니다. 높은 호가에서 낮은 호가를 빼면 격차의 절댓값이 나옵니다.
92.9 - 91.1 = 1.8 percentage points
Blended probability: 91.9%같은 날짜의 비교에서 다른 결과들도 각자의 플랫폼별 호가와 통합 확률을 그대로 유지합니다. 인하, 동결, 인상을 비교할 때는 행마다 따로 읽으세요.
| 2026년 10월 24일 결과 | 통합 | Kalshi | Polymarket |
|---|---|---|---|
| 50bp 이상 인하 | 0.3% | 0.5% | 0.1% |
| 25bp 인하 | 0.4% | 0.5% | 0.1% |
| 동결 | 91.9% | 91.1% | 92.9% |
| 25bp 인상 | 7.0% | 7.4% | 6.5% |
| 50bp 이상 인상 | 0.4% | 0.5% | 0.4% |
2026년 10월 24일 기준 25bp 인상의 호가는 0.9%p 차이가 났습니다. 같은 날 동결은 플랫폼 가중치를 더 정밀한 확률에 적용하면 0.9189가 되고, 응답의 통합 probability는 0.9188입니다. 응답의 통합 값을 보고할 때는 반환된 통합 확률을 사용하세요. 격차 계산은 두 플랫폼을 직접 비교하며 가중치를 쓰지 않으므로, 플랫폼별 호가는 따로 보관하세요.
0.5785 x 0.9114 + 0.4215 x 0.9292 = 0.9189
Response probability: 0.9188에 게시되었습니다.