Should a Kalshi bot use a stop loss? We tested a viewer's rule on 321 entries

Three stops against holding, on the same entries, with the bar written first.

Our live bot holds every trade to settlement, with no stop loss on the trade itself. A viewer challenged that, and it was a fair challenge: if a favourite starts to go wrong, why not get out?

So we took their rule, made it mechanical and tested it. Buy the clear favourite on a Bitcoin 15 minute market in the last few minutes, skip choppy windows, and sell if the price comes back close to the strike. We compared three stops, from loose to tight, against simply holding, on exactly the same entries.

The result

We wrote the bar down before the first day: a stop gets adopted only if it beats holding by at least 1 cent a contract, with a t score of 2 or more on the difference. We then ran it forward on recorded prices for 14 days, 321 entries, 16 to 29 October.

ExitPer contractBeats holding byt
Hold to settlement+0.37¢
Loose stop+0.55¢+0.18¢0.12
Middle stop+0.88¢+0.51¢0.35
Tight stop+1.01¢+0.64¢0.45

Every stop came out ahead of holding, and none cleared the bar. The viewer was not wrong. The gap is small and it could easily be noise, so it is not proven.

The earlier backtest pointed the same way: 629 entries, +0.89 cents holding against +2.44 for the best stop, t of 1.61. Same direction, same verdict.

What a stop really does

The win rate here was 88.5%, at an average price near 87 cents. A loss costs about seven wins, which is why a stop is so tempting.

All three stops caught all 37 losing trades. The difference was the winners they threw away. The loose stop sold 92 winners on the way, and the tight stop sold 50. So the question was never whether a stop catches the loser. It is how many winners you hand back for it.

The catch

These exits are priced at the bid one second later, on recorded prices. A real sell into a falling book could well be worse, and our paper against real work says the gap is usually in the trades you most want. So the true number is probably lower than the table, not higher.

What we are doing with it

Our rule stays as it is: hold to the end. The next honest step for this idea is real sell orders at the moment a stop fires, since that is the one thing this test could not measure. If you run a rule with entries like these, the tight end of the range is where to start looking, and we would like to hear what you find.

Members get the appendix: the exact rule, every stop distance, and the full sweep.

Want to run rules like this yourself? Try Ping free for 7 days, no card needed. It counts a paper fill only when a real trade proves it could have filled.

Where this comes from: our recorded Kalshi quotes and the CF Bitcoin index, 17 September to 29 October 2026, one contract, real fees. Tested on recorded prices, not real sell orders. Results are our own computation. Nothing here is advice. It is the record.