Documentation Index
Fetch the complete documentation index at: https://mathematicalcompany.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Partially verified. As of v0.8.7+, Kalshi now targets the modern host
(
api.elections.kalshi.com) and uses RSA-PSS API key authentication. Pass
the key ID as api_key and the PEM-encoded private key as password on
the Kalshi(...) config. Order, cancel, fill polling, and position fetching
have been updated for the new fixed-point dollar string field format. Has
not been tested against a live Kalshi account, so verify the behavior
matches expectations before deploying significant size.Quick Setup
Credentials
- API key
- Email / password
- Environment variables
Kalshi Configuration
| Field | Default | Description |
|---|---|---|
email | None | Kalshi account email |
password | None | Kalshi account password |
api_key | None | Kalshi API key (preferred) |
api_url | https://trading-api.kalshi.com/trade-api/v2 | API base URL |
Demo Environment
Kalshi provides a demo environment for testing:Ticker Mapping
Kalshi markets use tickers (e.g.,KXBTC-25FEB16) instead of slugs. When mode="live", Horizon automatically sets the ticker from the market ID:
Side Mapping
Kalshi uses two separate concepts for order direction:| Concept | Values | Description |
|---|---|---|
| action | buy / sell | Whether you’re buying or selling (OrderSide) |
| side | yes / no | Which outcome you’re trading (Side) |
Authentication
Kalshi uses bearer token authentication:- On first request, the client authenticates with API key (or email/password)
- Receives a bearer token
- Token is included in subsequent requests via
Authorization: Bearer <token> - On 401 response, the client automatically re-authenticates and retries (loop-based, not recursive)
Fill Polling
Kalshi fills are polled from the/portfolio/fills endpoint. Each cycle:
- Queries recent fills with tracked order IDs
- Deduplicates against previously seen fill IDs
- Maps Kalshi’s price format (cents) and timestamps to Horizon’s format
Feature Support Matrix
| Feature | Polymarket | Kalshi |
|---|---|---|
| Trading (orders/fills) | Yes | Yes |
| Orderbook feed | Yes (WS) | Yes (REST) |
| Market discovery | Yes | Yes |
| Cross-exchange arbitrage | Yes | Yes |
| LLM forecasting | Yes | Yes |
| Resolution analysis | Yes | Yes |
| Resolution sniping | Yes | Yes |
| Oracle ensemble | Full (6 signals) | Partial (3 signals) |
| Flow analysis | Yes | No (no on-chain data) |
| Whale tracking | Yes | No |
| Copy trading | Yes | No |
| Wallet intelligence | Yes | No |
The oracle ensemble runs all 6 signal extractors on Kalshi, but signals that depend on Polymarket on-chain data (smart money flow, microstructure, holder concentration) return neutral (0.5). The remaining signals (momentum, volume profile, temporal patterns) also return neutral since Kalshi has no public trade-level data. LLM forecasting and resolution analysis work fully on both exchanges.
Intelligence Suite with Kalshi
All intelligence tools accept anexchange parameter:
MCP Server
MCP tools also accept theexchange parameter:
analyze_resolution(market_id, exchange="kalshi")llm_scan(exchange="kalshi")sniper_scan(exchange="kalshi")oracle_forecast(market_id, exchange="kalshi")oracle_edges(exchange="kalshi")