Overview

A minimal, open-source Python bot that turns Claude into a prediction market trader. It polls Kalshi for open markets every 5 minutes, asks Claude to evaluate each one, and places trades when it detects a meaningful edge between Claude’s probability estimate and the market price.

Runs on Kalshi’s free demo environment by default — no real money needed to try it.

Deploy in One Click

Deploy on Railway

Or clone and run locally:

git clone https://github.com/rsquaredsolutions2026/kalshi-news-bot.git
cd kalshi-news-bot
cp .env.example .env  # add your API keys
pip install -r requirements.txt
python bot.py

How It Works

Every 5 minutes:
  1. POLL      Fetch open markets from Kalshi
  2. ANALYZE   Ask Claude to evaluate each market
  3. DETECT    Compare Claude's estimate to market price
  4. TRADE     If edge > 5%, place a limit order

The bot skips sports markets (where Claude has no edge) and focuses on politics, economics, and current events where reasoning about public information matters.

Key Features

Claude-powered analysis — Sends each market to Claude with a structured prompt. Claude returns a probability estimate, confidence rating, and step-by-step reasoning.

Edge detection — Computes the confidence-weighted difference between Claude’s estimate and the market price. Only trades when the net edge exceeds a configurable threshold (default 5%).

Demo-first — Points to Kalshi’s free demo environment by default. Switch to production with one env var change.

Dry-run mode — Set DRY_RUN=true to log every decision without placing orders. Perfect for tuning.

~300 lines of Python — No frameworks, no async, no databases. Just a loop. Easy to read, easy to modify.

Requirements