docs

Kalshi Node

The Kalshi node fetches live prediction market data — market titles, executable bid/ask prices, volume, and open interest — from Kalshi, the CFTC-regulated US prediction market exchange. Use it to monitor event probabilities, alert on price moves, or feed market sentiment into an LLM for analysis.

Kalshi
Search: fed • 10 markets

Configuration

Query

What Is Kalshi?

Kalshi is a regulated exchange where people trade on the outcomes of real-world events — Fed rate decisions, elections, economic data, weather, and more. Each market resolves YES or NO, and contract prices between 0 and 1 represent the crowd's estimated probability. A YES price of 0.72 means the market thinks there's a 72% chance the event happens.


Configuration

FieldDescription
ModeDiscovery & markets: discover resolves a topic to Kalshi series (start here), events lists a series' events (games) with markets inlined, browse lists markets (optionally filtered by series/event), search finds markets by topic, lookup fetches one market by exact ticker with live orderbook depth. History & live data (returned as raw API records): candlesticks a market's price history, trades a market's recent trades, forecast an event's forecast-percentile history, milestones upcoming sports games, gamestats live play-by-play for a milestone.
QueryTopic in discover/search (e.g. world cup, fed, cristiano ronaldo), optional event-title filter in events (e.g. Portugal), exact market ticker in lookup/candlesticks/trades (e.g. KXFED-26JUN-T4.00), event ticker in forecast, milestone id in gamestats, or optional ISO min-start-date in milestones.
Series TickerRequired in events and candlesticks (the market's parent series); optional filter in browse (e.g. KXFED, KXWCGAME).
Event TickerOptional filter in browse/events (e.g. KXWCGAME-26JUN23PORUZB).
Interval / Lookbackcandlesticks only — interval 1/60/1440 minutes and how many hours of history to fetch.

Finding markets (discovery flow)

Kalshi has no free-text market search — discovery is topic → series → events → markets. The seamless path:

  1. discover with your topic (world cup) → returns candidate series (KXWCGAME = game winner, KXWCGOAL = player goalscorer). Player props live in a different series than game winners.
  2. events with seriesTicker: KXWCGAME (and optional query: "Portugal") → returns the games with their markets inlined — no need to hand-build event/leg tickers.
  3. lookup any exact market ticker for the live orderbook.

search is a shortcut that does step 1+2 in one call and returns both the markets and the resolved series (so an empty market list still tells you which series to drill into). | Status | open (default), settled, or all. | | Limit | Number of items to return. Default: 10. Max: 200. | | Include Orderbook | Fetch live bid/ask depth for the first 10 returned markets. Lookup mode always includes the orderbook. | | Description | Optional note describing what this data fetch is for. |


Bid, Ask, and Mid — Not Last Price

Every market returns the executable top of book, normalized to 0–1 probabilities:

FieldMeaning
yesBidBest price you could sell YES at right now
yesAskBest price you could buy YES at right now
yesMidMidpoint of bid and ask
spreadyesAsk - yesBid — how wide (illiquid) the market is
lastPriceMost recent trade print

Empty sides of the book are null rather than 0 or 1: if nobody is bidding, yesBid is null and so are yesMid and spread. Check for null before comparing prices.


Using Kalshi in a Workflow

Probability Alert Monitor

Check a Fed rate market on a schedule and alert when the bid crosses a threshold.

Start
ScheduleEvery 30 min
Kalshi
KXFED-26JUN-T4.00
Bid > 70%?
yesBid > 0.70
Alert: High Probability

Sentiment-Driven Analysis

Feed Kalshi markets into an LLM to assess whether current prices represent value.

Kalshi
fed
Probability Analyst
Claude Sonnet 4.6
Edge Found?
edge > 5%
Alert: Edge Found

Example LLM prompt:

User: Evaluate this Kalshi market:
Title: {{kalshi.markets[0].title}}
Yes bid/ask: {{kalshi.markets[0].yesBid}} / {{kalshi.markets[0].yesAsk}}
Spread: {{kalshi.markets[0].spread}}
Volume: {{kalshi.markets[0].volume}}

Cross-Venue Comparison

Pair the Kalshi node with the Polymarket node to compare prices for the same real-world event on both venues. Both nodes output 0–1 probabilities, so prices are directly comparable.

Kalshi
fed
Polymarket
Polymarket
fed
Cross-Venue Analysis
Claude Sonnet 4.6
Divergence?
gap > 4%
Alert: Venue Divergence

Output

PathDescription
{kalshi.markets}Array of Kalshi markets
{kalshi.markets[0].ticker}Unique market ticker (e.g. KXFED-26JUN-T4.00)
{kalshi.markets[0].eventTicker}Parent event ticker
{kalshi.markets[0].title}Market title
{kalshi.markets[0].status}Market status
{kalshi.markets[0].yesBid}Best YES bid (0–1, null if empty)
{kalshi.markets[0].yesAsk}Best YES ask (0–1, null if empty)
{kalshi.markets[0].yesMid}YES midpoint (null unless both sides exist)
{kalshi.markets[0].noBid}Best NO bid
{kalshi.markets[0].noAsk}Best NO ask
{kalshi.markets[0].lastPrice}Last trade price — may be stale
{kalshi.markets[0].spread}Bid/ask spread
{kalshi.markets[0].volume}Lifetime contracts traded
{kalshi.markets[0].volume24h}Contracts traded in the last 24h
{kalshi.markets[0].openInterest}Open contracts
{kalshi.markets[0].closeTime}Market close time (ISO 8601)
{kalshi.markets[0].orderbook.yesBids}Top YES bid levels (lookup / Include Orderbook)
{kalshi.markets[0].orderbook.noBids}Top NO bid levels
{kalshi.count}Number of markets returned
{kalshi.mode}Fetch mode used
{kalshi.query}Search text or ticker used

Example Output

{
  "markets": [
    {
      "ticker": "KXFED-26JUN-T4.00",
      "eventTicker": "KXFED-26JUN",
      "title": "Fed funds rate above 4.00% after June meeting?",
      "subtitle": "Above 4.00%",
      "status": "active",
      "yesBid": 0.17,
      "yesAsk": 0.19,
      "yesMid": 0.18,
      "noBid": 0.81,
      "noAsk": 0.83,
      "noMid": 0.82,
      "lastPrice": 0.23,
      "spread": 0.02,
      "volume": 48210,
      "volume24h": 1830,
      "openInterest": 12044,
      "closeTime": "2026-06-17T18:00:00Z"
    }
  ],
  "count": 1,
  "query": "KXFED-26JUN-T4.00",
  "mode": "lookup"
}

Next Steps

  • Polymarket Node — Compare event prices across prediction venues.
  • LLM Node — Feed market prices into an AI model for probability analysis.
  • Conditional Node — Route your workflow based on bid/ask thresholds.
  • Storage Node — Track probability changes over time between workflow runs.