Our live Kalshi bot reacts in under a tenth of a second. It still missed
We replayed 5,742 moments in 960 Kalshi Bitcoin markets: how often offers are still there, and why slow bots get the losing trades.
Our bot is live with real money on Kalshi's 15 minute Bitcoin markets, trading in the last minute. On Thursday it got a faster engine: it now sends its order 54 to 81 milliseconds after the signal, and hears back from the exchange 117 to 199 milliseconds later. Its next four orders all came back empty. The offer it saw was already gone.
So we measured how fast offers disappear. We replayed 5,742 moments across 960 of these markets from our own recording of Kalshi's order book, and asked one question each time: if you saw this price, would it still be there when your order arrived?
After 30 milliseconds, the offer was still there 99.8 percent of the time. After 650 milliseconds, which is how slow our first version was, 82.7 percent. After 2 seconds, 71.1 percent.
That sounds like a speed tax of about one trade in six. The worse news is which trades a slow bot loses. At 650 milliseconds, offers on the side that went on to lose were still there 88.7 percent of the time. Offers on the side that went on to win: 76.4 percent. Faster traders take the good prices first. A slow bot doesn't just get fewer trades. It gets more of the losing ones.
That is why speed matters for this rule and not for copying whales, which we tested the same week and found nothing to catch: we tracked $4 million of Kalshi whale trades. In the last minute of a Bitcoin market, the book really does clear in about a quarter of a second.
What we changed: the order may now pay a little above the price it saw, so it still fills when the price ticks up on the way. That costs a cent or two on some trades, and it is the trade-off we are testing in public. The live record so far is 4 settled real trades, too few to judge. The verdict comes at 60, written down before the first order, and every fill is on the members' live trading page.
Replays from the lab's own recording of Kalshi's order book (per change, millisecond timestamps). Aggregates only. Nothing here is advice.
Members appendix: the exact rule, the settings and every real fill