Yes. Kalshi's own API serves every KXBTC15M market for reading without an account: the series record, the window trading now with its strike and prices, the order book, one-minute price history and settled results. Placing orders needs a Kalshi account and an API key. On top of that, DegenHedge publishes a small read-only API and an MCP server for scripts and AI assistants: the current window, our graded record by entry price, and Kalshi's fee for any order. None of it places trades, predicts a window or gives advice.
| What | GET (after /trade-api/v2) | Notes |
|---|---|---|
| Series record | /series/KXBTC15M | Fee type and multiplier ("quadratic", 1 on October 9, 2026), contract terms links. |
| Window trading now | /markets?series_ticker=KXBTC15M&status=open | Ticker, close time, floor_strike (the strike; empty until Kalshi posts it), bids and asks as dollar strings such as "0.4700". |
| One market | /markets/{ticker} | The same fields for one window, plus result and expiration_value once settled. |
| Order book | /markets/{ticker}/orderbook | Resting bids on each side. An ask is one minus the best opposing bid. |
| Price history | /series/KXBTC15M/markets/{ticker}/candlesticks | One-minute candles with start_ts, end_ts and period_interval=1. |
| Settled results | /markets?series_ticker=KXBTC15M&status=settled | Official result and settlement value. Older markets move to /historical/markets after the cutoff at /historical/cutoff. |
/portfolio/balance returned 401. Kalshi rate-limits its API and changes it over time; its own documentation is the authority.Three details trip people up. The strike is not the first trade of the window: it is the 60-second CF Benchmarks BRTI average before the window opens, and it equaled the previous window's settlement value in 25,281 of 25,285 consecutive pairs in our check. Settlement usually lands fast, a median of 10.9 seconds after the close and within a minute on 75.2% of windows. And historical candles use bare field names whose values are already in dollars, while live candles use _dollars fields; mixing the two is the most common unit error. The integrity study uses exactly these endpoints.
| GET | Returns |
|---|---|
/api/btc-window | The KXBTC15M window trading now: ticker, official strike or TBD, close time, Up and Down asks, Kalshi's fee type for the series, and a Coinbase spot reference. Market data only, no prediction. |
/api/record | Our graded BTC record, overall and by entry price: signals, wins, win rate, average entry, the breakeven that entry implies, and the data-through date, with a link to the per-signal CSV. |
/api/kalshi-fee?price=95&contracts=10 | Kalshi's taker fee for that order, rounded up the way Kalshi rounds it, with total cost and breakeven win rate. Price in cents. |
/results.csv | Every graded signal, all products, with ticker, entry price and outcome. |
/openapi.json | The machine-readable description (OpenAPI 3.1). Human docs: degenhedge.com/api/. |
curl -s https://degenhedge.com/api/record
curl -s "https://degenhedge.com/api/kalshi-fee?price=99&contracts=1"
curl -s https://api.elections.kalshi.com/trade-api/v2/series/KXBTC15M
For assistants that support the Model Context Protocol, the same data is available as a remote MCP server at https://degenhedge.com/mcp (Streamable HTTP, no sign-in). It has three read-only tools: get_btc_window (the window trading now), get_graded_record (our record with its entry prices and breakevens) and kalshi_fee (the fee and breakeven for an order). Add it as a remote server or custom connector in any MCP client. It cannot place orders and holds no account data.
Every endpoint above describes the market or grades what already happened. None of them says which side will settle, and our own record is a reminder of why that matters: live, our feed has won 91.2% at a 91.7ยข average entry, below the breakeven that price implies before and after Kalshi's fee. If you build on these feeds, build cost control first: know the fee, know the breakeven, and know how close the window is to its strike.
Yes. Kalshi's trading API at api.elections.kalshi.com/trade-api/v2 serves the KXBTC15M series record, open and settled markets, order books and one-minute candles. Reading market data did not need a key when we checked on October 9, 2026; placing orders needs an account and API key.
Not for public market data. The markets, order book, candlestick and settled-results endpoints answered without a key on October 9, 2026, while account endpoints returned 401. Kalshi applies rate limits and may change access, so check its documentation.
Ours: GET degenhedge.com/api/record returns our graded BTC record overall and by entry price, with the average entry and the breakeven it implies, and degenhedge.com/results.csv lists every graded signal with its ticker. Both are read-only and free.
Yes, through the remote MCP server at degenhedge.com/mcp, which offers three read-only tools: get_btc_window, get_graded_record and kalshi_fee. It holds no personal data and cannot place trades.
Ours cannot do either; they describe the market and grade past signals. Kalshi's API can place orders for an authenticated account, but no endpoint says which side will settle.
The data is free; the paid feed is optional.
Every signal in our BTC 15-minute feed goes into a public results log and a downloadable CSV, graded against Kalshi's official result, losses included, with nothing pulled. The same record is available as JSON from our read-only API.
This is a free trial that becomes an automatically renewing subscription. A payment card is required to start, and you are not charged today. Your trial runs 30 days. At the end of it your card is charged $4.99 and then $4.99 every month until you cancel. Cancel any time before the trial ends and you pay nothing: use your account page, send /manage in the bot, or email [email protected]. Cancelling later stops future renewals at the end of the current paid month and does not refund it. No refunds except as required by law. By starting a trial you authorize these recurring charges and agree to the Terms and Privacy Policy. Signals are informational and for entertainment only, are not financial or betting advice, and any single signal can lose 100% of your stake. Must be 18+ (some platforms require 21+). If gambling is a problem for you, call 1-800-GAMBLER.
These are 15-minute binary prediction-market contracts. Any single window can lose 100% of your stake. They settle on a 60-second index average, not on the exchange chart you may be watching. At high prices a loss costs many times what a win pays, and Kalshi's fee raises the win rate you need above the price. Nothing on this page is financial, investment, or betting advice.
Past performance does not guarantee future results. Trade only with money you can afford to lose. Must be 18+ or of legal age where you live. If gambling is a problem for you, call 1-800-GAMBLER.