prediction-market-monitor
You pass a Kalshi series or shortcut. The skill pulls open markets,
groups by event, and reports implied probabilities. When the event
is a laddered strike-type (Fed funds level, CPI reading), it derives
the cross-strike probability distribution from adjacent-threshold
differences and reports the modal outcome and expected value.
Motivated by 2025-26 growth of prediction markets as leading
indicators post-2024 election validation. Kalshi Fed-decision
contracts now trade meaningful volume; contract prices often reflect
policy expectations before consensus surveys catch up.
When to invoke
- "What's the Kalshi-implied Fed decision at the next meeting?"
- Comparing market-implied CPI to Bloomberg / Reuters consensus
- Cross-referencing macro-print bets against your positioning
- The user says "Kalshi", "prediction market", "implied Fed", "fed
funds futures alternative"
What you need
- Internet access (Kalshi's public API; no Massive key needed)
Optional:
--series (shortcut like fed, cpi, nfp, gdp, or a raw
Kalshi series ticker like KXFED, KXCPI)
--keyword (client-side filter on title / ticker)
--event-ticker (pin a specific event, e.g. KXFED-27APR)
--max-events (default 5)
What you get back
Layer 1: JSON. Per event: event_ticker, title, close_time,
markets (each with implied_probability, bid, ask, last, volume,
open interest, floor_strike). When laddered:
implied_distribution.buckets with p_in_bucket and
cumulative_p_above_lower, plus modal_bucket and
expected_value.
Layer 2: rendered note. Per event: title + close time, modal
outcome + expected value line, bucket distribution with ASCII bars.
How it works
- Query Kalshi
/trade-api/v2/markets with the series filter.
Paginate up to 3 pages (600 markets max).
- Group markets by
event_ticker. A single event ("KXFED-27APR")
typically contains 15-20 laddered strikes.
- For each event, sort by
floor_strike and derive the implied
distribution: P(rate in [lower, upper)) = P(above lower) -
P(above upper).
- Report modal outcome (highest-probability bucket) and expected
value (probability-weighted midpoint).
Series shortcuts
fed: KXFED (fed funds level after meeting)
fed_decision: KXFEDDECISION (rate change at meeting)
cpi: KXCPI (m/m)
core_cpi: KXCORECPI
cpi_yoy: KXCPIYOY
nfp: KXNFP
unemployment: KXUNEMP
gdp: KXGDP
jobless_claims: KXICSA
recession: KXRECESSIONYEAR
spx_close: KXSPX
btc_close: KXBTCD
Foundations used
- None. Kalshi public API only.
Endpoints used
GET https://api.elections.kalshi.com/trade-api/v2/markets
Public read-only, no auth.
Doesn't handle (yet)
- Polymarket integration. Kalshi only. Polymarket has more
political / cultural markets; Kalshi has more macro. Adding a
--source polymarket toggle would be a clean extension.
- Time series of implied probability. Snapshot only. A rolling
history would show when the market moved.
- Cross-reference to survey consensus. Would need a data
partnership with Bloomberg / Reuters or an FOMC dot-plot lookup.
- CFTC-regulated futures cross-check. SOFR/Fed funds futures
implied path from CME data would be a nice comparator.
These are clean PR extensions.
1---2name: prediction-market-monitor3description: Pull Kalshi prediction market prices for Fed decisions, CPI, GDP, NFP, and other macro / market events. Report implied probability per outcome, aggregate cross-strike distribution when the series is a laddered strike set (like KXFED-27APR-T4.25, T4.00, T3.75...), expected value, modal outcome, and open interest. Prediction markets now clear enough volume post-2024 to reflect a real market-implied policy path, often diverging from surveyed economist consensus. Uses Kalshi's public read-only API; no authentication required.4---56# prediction-market-monitor78You pass a Kalshi series or shortcut. The skill pulls open markets,9groups by event, and reports implied probabilities. When the event10is a laddered strike-type (Fed funds level, CPI reading), it derives11the cross-strike probability distribution from adjacent-threshold12differences and reports the modal outcome and expected value.1314Motivated by 2025-26 growth of prediction markets as leading15indicators post-2024 election validation. Kalshi Fed-decision16contracts now trade meaningful volume; contract prices often reflect17policy expectations before consensus surveys catch up.1819## When to invoke2021- "What's the Kalshi-implied Fed decision at the next meeting?"22- Comparing market-implied CPI to Bloomberg / Reuters consensus23- Cross-referencing macro-print bets against your positioning24- The user says "Kalshi", "prediction market", "implied Fed", "fed25 funds futures alternative"2627## What you need2829- Internet access (Kalshi's public API; no Massive key needed)3031Optional:3233- `--series` (shortcut like `fed`, `cpi`, `nfp`, `gdp`, or a raw34 Kalshi series ticker like `KXFED`, `KXCPI`)35- `--keyword` (client-side filter on title / ticker)36- `--event-ticker` (pin a specific event, e.g. `KXFED-27APR`)37- `--max-events` (default 5)3839## What you get back4041**Layer 1: JSON**. Per event: `event_ticker`, `title`, `close_time`,42`markets` (each with `implied_probability`, bid, ask, last, volume,43open interest, floor_strike). When laddered:44`implied_distribution.buckets` with `p_in_bucket` and45`cumulative_p_above_lower`, plus `modal_bucket` and46`expected_value`.4748**Layer 2: rendered note**. Per event: title + close time, modal49outcome + expected value line, bucket distribution with ASCII bars.5051## How it works52531. Query Kalshi `/trade-api/v2/markets` with the series filter.54 Paginate up to 3 pages (600 markets max).552. Group markets by `event_ticker`. A single event ("KXFED-27APR")56 typically contains 15-20 laddered strikes.573. For each event, sort by `floor_strike` and derive the implied58 distribution: `P(rate in [lower, upper))` = `P(above lower)` -59 `P(above upper)`.604. Report modal outcome (highest-probability bucket) and expected61 value (probability-weighted midpoint).6263## Series shortcuts6465- `fed`: KXFED (fed funds level after meeting)66- `fed_decision`: KXFEDDECISION (rate change at meeting)67- `cpi`: KXCPI (m/m)68- `core_cpi`: KXCORECPI69- `cpi_yoy`: KXCPIYOY70- `nfp`: KXNFP71- `unemployment`: KXUNEMP72- `gdp`: KXGDP73- `jobless_claims`: KXICSA74- `recession`: KXRECESSIONYEAR75- `spx_close`: KXSPX76- `btc_close`: KXBTCD7778## Foundations used7980- None. Kalshi public API only.8182## Endpoints used8384- `GET https://api.elections.kalshi.com/trade-api/v2/markets`85 Public read-only, no auth.8687## Doesn't handle (yet)8889- **Polymarket integration.** Kalshi only. Polymarket has more90 political / cultural markets; Kalshi has more macro. Adding a91 `--source polymarket` toggle would be a clean extension.92- **Time series of implied probability.** Snapshot only. A rolling93 history would show when the market moved.94- **Cross-reference to survey consensus.** Would need a data95 partnership with Bloomberg / Reuters or an FOMC dot-plot lookup.96- **CFTC-regulated futures cross-check.** SOFR/Fed funds futures97 implied path from CME data would be a nice comparator.9899These are clean PR extensions.