Kill switch
One account-wide switch blocks every new entry across all of your bots.
A bot is only useful if it does what you told it, stays inside your limits, and shows you what happened. These are the safeguards running in the engine today, in plain language.
One account-wide switch blocks every new entry across all of your bots.
The daily cap counts today's realized losses, the money tied up in today's still-open buys, and the new order. Fast-settling markets cannot slip past it between settlements. The default is $50 a day, and you can raise it to $500 yourself.
Defaults are $5 per trade, $20 per market (resting orders count), and 10 open positions. A buy that would exceed a cap is sized down to fit or not sent.
If the engine cannot read your positions, open orders, or today's P&L, it sends no new buy until the read succeeds.
These checks apply to new buys only. Exits are never held back by a cap, so a limit cannot trap you in a position. When the daily cap stops a bot, the bot says so and you get an email, once a day.
Every buy names the most it will pay, and Kalshi will not fill it above that price. By default it fills immediately up to that price or is cancelled. It waits on the book only if you choose a resting order.
By default a bot holds one position per market. Later triggers on that market are skipped until the position clears.
When a stop, a hit target or a time limit triggers an exit, the sell is a reduce-only, immediate-or-cancel order with a bounded price, so it can only close what you hold. A resting take-profit is sized to the contracts you hold, with at most one resting sell per buy.
An order is re-sent only after Kalshi definitively rejects it for rate limiting, and every attempt reuses one client order ID. A timeout or dropped connection is not re-sent, because the first order may already be live. Each order's intent is recorded before it is sent.
Score-based bots read Kalshi's official live data and ignore readings older than 15 to 30 seconds.
NFL, NBA, MLB, NHL and soccer event triggers fire only on plays timestamped after the bot was created. A play without a timestamp never fires.
Weather, filings, earnings, polling and price feeds are cached with a freshness window per source. They can be delayed or unavailable, and the in-app catalog lists what each trigger supports.
Fills are matched to Kalshi's own fill records by order ID, with Kalshi's fill price and fees. Settled P&L comes from Kalshi's settlement and the market's result.
An order that left the book without filling is marked canceled. A bot that is not getting fills will not look like one still working.
The activity log shows what fired, what was skipped and what a cap blocked, with the reason for each.
A failed real-money order raises an immediate alert to our team.
Paper runs your exact rule in the same engine against live Kalshi prices, with a virtual balance. It reads public market data, so you do not need a Kalshi API key to start. Paper fills are modeled from live quotes and do not prove that a real order would fill.
Funds stay in your Kalshi account, and Bot for Kalshi has no withdrawal access. You can revoke the API key at Kalshi at any time. Pausing a bot requests a stop to new actions. It does not guarantee instant exchange cancellation or close existing positions, so check open orders and positions at Kalshi. See Security & Trust for credential handling.
An order is re-sent only after Kalshi definitively rejects it for rate limiting, and every attempt reuses one client order ID. A timeout or dropped connection is not re-sent, because the first order may already be live.
New buys stop. If the engine cannot read your positions, open orders, or today's P&L, it sends no new buy until the read succeeds.
No. The account caps apply to new buys. Exits are not blocked by them, and exit orders are sized and flagged to close what you hold.
Fills are matched to Kalshi's own fill records by order ID, with Kalshi's fill price and fees. Settled P&L comes from Kalshi's settlement and the market's result.
This describes controls implemented in the product as of October 23, 2026. It is not a promise of fills, uptime or profit. Safeguards reduce mistakes; they do not remove trading risk, and you can lose the full contract stake and fees. Current service health is on the Status page, and customer-facing changes are in the changelog.