How To
Setup guides for the Terminal and Autopilot.
Terminal Setup
1. Generate Kalshi API Keys
- Log in to kalshi.com and go to Settings → API Keys.
- Click Generate New Key. Kalshi will provide a Key ID and a PEM private key file download.
- Save the PEM file somewhere safe. You will upload it in the next step. Kalshi will not show it again.
2. Connect in Terminal Settings
- Open the Terminal page and switch to the Settings tab.
- Paste your Key ID into the Key ID field.
- Click Upload PEM file and select the private key file you downloaded from Kalshi.
- Click Test Connection to verify. You should see your Kalshi balance displayed.
Your private key is imported into the browser's native Web Crypto API and stored in IndexedDB. It never leaves your device or touches our servers. All Kalshi requests are signed client-side.
3. Configure Trading Settings
Autopilot Setup
1. Connect Kalshi API Keys
Autopilot uses the same Kalshi keys as the Terminal. If you've already set up your keys in Terminal Settings, you're good to go. If not, follow the Terminal Setup steps above first.
2. Auto-Execute Toggle
The main toggle at the top of the Autopilot page controls whether trades are placed automatically. When OFF, you'll see live signals and model predictions but no orders will be fired. When ON, the system will automatically place buy and sell orders on Kalshi when conditions are met. NBA and MLB have independent toggles.
3. Configure Execution Settings
4. How It Works
The backend polls live game data every 3 seconds and runs a win probability model on each state change (score, quarter/inning, etc.). It compares the model's probability to Kalshi market prices and writes a trading signal when edge is detected.
Your browser subscribes to these signals in real time. When auto-execute is on and a signal exceeds your edge threshold, the system places a buy order on Kalshi with a 30-second expiration. It then monitors your position every 5 seconds for take-profit and stop-loss exits.
Built-in safety filters prevent trading during blowouts, in the final moments of a game, when bid-ask spreads are too wide, and on heavy underdog sides (unless edge is especially large).