Between March and July 2026 we graded 9,811 Kalshi BTC 15-minute windows — every up/down signal our model fired, logged before the window settled and scored at settlement; price-capture-error rows are flagged and excluded, not deleted. Two things fall out of the data. First, when Bitcoin barely moves inside the window the outcome is a coin flip: in the near-flat bucket the market resolves the model's way 50.1% of the time — no better than chance — while windows with a large move resolve 98.9% of the time. Second, across the full sample the win rate simply tracks the price you pay: a contract entered near 100¢ resolves in your favor ~99.7% of the time, one entered at 80¢ or less about 53.4% — so the headline win rate is bought, not earned, and realized edge in expected-value (EV) terms is roughly zero before fees and slightly negative after.
The high published win rate is real, but it is mostly the market pricing near-certainty. Any informational signal that remains is small and fragile, and it disappears exactly when the window is flat. Near-flat windows should be read as coin flips.
Before the findings, the mechanics — because the whole result follows from them.
Kalshi's KXBTC15M series lists a fresh contract every fifteen minutes. Each one asks a single binary question: at the close of this 15-minute window, will Bitcoin be up or down versus the window's opening price? You buy "Up" or "Down" for somewhere between 1¢ and 99¢. At settlement the contract pays $1.00 if it resolved your way and $0.00 if it did not. There is no partial credit and no in-between. Settlement is scored against the CF Benchmarks Bitcoin Real Time Index (BRTI), an index built from several exchanges' order books and averaged over the final 60 seconds, not against any single trade print, so the only thing that ultimately matters is which side of the opening average the closing average lands on. Our settlement study has the full rule.
Two structural facts shape everything downstream. The books are thin retail books — a handful of participants, modest depth, prices that can sit unchanged for seconds at a time. And a model watching the raw index can register a new state before the resting orders on Kalshi show any change. We used to describe the second fact as a lag that would close, and treat the distance between the index and the quoted price as where an informational edge lives. Our own order-book instrumentation went against that, and the correction is in our companion piece, The Kalshi Lag, retired →. What follows measures the record itself rather than the mechanism.
Keep the settlement rule in mind, because it is the hinge of Finding 1: the outcome is not "did Bitcoin go up a lot?" It is "was the index one cent above the open, or one cent below?" When the window's total move is only a few dollars on a roughly $64,000 contract, that question is essentially a fair coin.
Sort every window by how far Bitcoin actually moved inside it, and the win rate is not flat — it climbs from a coin flip to near-certainty. The interesting part is the bottom of that ladder.
This is not a one-month artifact. Break the near-flat bucket out month by month across the whole sample and it never separates from a coin flip — the pattern is stable, not noise in a single slice.
| Month (2026) | Near-flat window win rate | Windows | Read |
|---|---|---|---|
| March | 50.0% | 76 | Coin flip |
| April | 52.6% | 352 | Coin flip |
| May | 48.4% | 438 | Coin flip |
| June | 50.7% | 274 | Coin flip |
| July | 46.4% | 69 | Coin flip |
Why do flat windows behave like coins? Because there is almost nothing to measure. The median flat-window move ≈ $19.87 on a contract worth roughly $64,000 — about 0.03%. At that scale the outcome is not decided by any trend; it is decided by settlement mechanics and sampling noise: the exact tick the index happens to print at the close, which side of the open it lands on by a few dollars, ordinary micro-jitter. A $20 wobble on a $64k number is a rounding error, and a rounding error resolves like a coin.
This is also where the model is at its most misleading. In near-flat windows the model can still report a high model probability, and that number overstates reliability, because it is reading signal into a move that is statistically indistinguishable from noise. A 70% or 80% model probability on a window whose realized outcome is 50/50 is not an edge; it is the model being wrong half the time while reading high. Treat a high model probability in a flat window as a warning, not a green light.
Finding 1 shows where the apparent advantage disappears. Finding 2 shows why, even where the model is "right," being right is not the same as being ahead. Sort the same windows by the price you paid to enter, and the win rate tracks that price almost exactly.
Translate win rate and price into expected value per $1 staked and the picture is unambiguous. Because a payout of $1 at probability p costs about p dollars, a win rate that tracks the price leaves pre-fee EV at roughly zero across every bucket — and once Kalshi's fees come out, the residual tilts slightly negative.
| Contract entry price | Win rate (hit rate) | Pre-fee EV per $1 | After fees |
|---|---|---|---|
| 80¢ or less (toss-up) | 53.4% | ≈ $0.00 | slightly negative |
| 100¢ (near-certain) | 99.7% | ≈ $0.00 | slightly negative |
Put plainly: the win rate is bought, not earned. A high hit rate is not profit — you already paid for it in the entry price. We used to argue that a timing effect survived underneath that arithmetic. We no longer do: in expected-value terms across this sample the residual is roughly zero before fees and negative after, and our order-book snapshots on the sports products show no measurable price move after an alert. Read this record as a description of a market, not as a source of returns.
This is a measurement, not a recommendation. Here is how to read a headline win rate on 15-minute BTC without fooling yourself.
We publish the model's signals and grade them in the open because the honest version of this data is more useful than a marketing number. For the mechanism we argued, and the measurement that retired it, read The Kalshi Lag; for how the model is built and scored, see The Method. Everything here is for informational and entertainment purposes only. 18+ where legal — this is not betting advice.
More Bitcoin research: Kalshi BTC 15-minute fees and the win rate you need to break even · How Kalshi BTC 15-minute markets settle, and when a spot chart gets it wrong · Polymarket 5-minute vs Kalshi 15-minute Bitcoin markets
Related research: Do NFL contracts reprice slower than the scoreboard? → — the same hypothesis in a market where the price moves in jumps instead of drifting, and the order-book test it did not survive.
In our March to July 2026 sample, yes. Windows where Bitcoin moved less than 0.02% resolved the model's way 50.1% of the time, and the rate stayed near 50% in every month. The median flat-window move was about $20 on a price of roughly $64,000, which is inside settlement noise.
No. In this sample the win rate tracked the price paid: contracts entered at 80 cents or less won about 53.4% of the time and contracts priced near certainty about 99.7%. Expected value was roughly zero before fees in every price bucket and slightly negative after Kalshi's fees.
9,811 Kalshi KXBTC15M windows from March to July 2026, each logged before the window settled and graded at settlement. Rows whose entry price failed to capture are flagged and excluded, never deleted. The figures are frozen on that sample; the fees and breakeven study covers the record through October 8, 2026.
The point of a study is that you can check it. Here is exactly what we did and where the raw data lives.
9,811 graded windows on Kalshi's KXBTC15M series, March–July 2026. Every up/down signal the model fired in that window is included.
Each signal is logged before the window's outcome is known, with the model probability and the live market price captured at signal time. The outcome is filled in automatically at settlement from Kalshi's official result, which settles on the CF Benchmarks BRTI. Wins and losses are scored the same way. No results are deleted and no losers are quietly dropped; a small number of early rows where the entry price failed to capture (logged as 0¢) are flagged and excluded from the count, not removed, and are still visible in the public log.
Bucket the rows by realized in-window move (Finding 1) or by entry price (Finding 2), take the win rate per bucket, and compute EV as (win rate × $1) − price. The two charts above fall straight out.
The raw, per-signal log is public. Every graded window in this study — model probability, market price at signal, and settled outcome — is in the same feed:
Citations welcome. If you write about these markets, the CSV above is the primary source; this page is the canonical writeup. Dataset name for attribution: DegenHedge Kalshi Signal Dataset. Past performance does not guarantee future results.
You do not have to take our word for any of this — the honest version is the whole point.
Every signal this study is built on keeps going into a public results log and a downloadable CSV, graded win or loss at settlement with nothing pulled. That is the primary way to follow this work: free, and checkable against the CSV above. Our free Telegram proof channel carries MLB and NFL calls, and Bitcoin calls as graded recaps every 3 hours after each window closes; every one is also in the log.
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. This study's own conclusion is that the win rate is priced in and realized expected value across the sample was roughly zero before fees and slightly negative after — a high hit rate is not a return. 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.