Skip to main content

Autonomous prediction market investment toolkit for Kalshi

Project description

TraderBot

PyPI version Python 3.12 License: MIT

Autonomous prediction market investment toolkit for Kalshi.

TraderBot provides the data pipeline, statistical analysis, risk enforcement, simulation, and execution layer that an AI agent needs to trade prediction markets.

Core Principle

Dumb pipe with smart guards. The toolkit handles the how (API calls, data normalization, risk limits, execution) but never the why (what to trade, when, how much). The agent decides strategy; the toolkit ensures execution is safe, correct, and auditable.

This separation is deliberate: it eliminates emotional bias from the execution layer. Even if the agent's LLM "decides" to go all-in on a hunch, hard-coded risk guards reject the order before it reaches the exchange.

Install

From PyPI (recommended)

pip install traderbot

From source

git clone https://github.com/JsonDaRula69/TraderBot.git
cd TraderBot
uv sync  # or: pip install -e .

One-Liner Install (Linux/macOS)

curl -fsSL https://raw.githubusercontent.com/JsonDaRula69/TraderBot/main/install/traderbot-installer.sh | bash

Requires Python 3.12 and Kalshi API credentials (sign up at kalshi.com and generate an API key + RSA key pair).

Quick Start

# Store Kalshi credentials in your OS keyring
traderbot auth set-kalshi

# Scan available weather markets
traderbot scan --category weather

# Analyze a specific market
traderbot analyze KXHIGHNY-26JUN02-T72

# Paper trade with a strategy
traderbot paper momentum

# View your positions
traderbot positions

# Check for updates
traderbot update --check

Using with OpenClaw AI Agents

TraderBot integrates with OpenClaw for autonomous agent operation:

# Create a profile for your agent
traderbot profile create --name weather-agent --category weather

# Assign the profile token
traderbot profile assign --agent weather-agent --token $(traderbot profile token weather-agent)

The agent runs three autonomous loops: decision (every 5 min), heartbeat (every 30 min), and news/sentiment (event-driven). See docs/architecture.md for details.

CLI Overview

Command Description
traderbot scan List open markets across categories
traderbot analyze TICKER Orderbook depth + implied probability
traderbot signals Active trading signals
traderbot trade Place an order through risk checks
traderbot positions View open positions with live pricing
traderbot audit Decision history with filters
traderbot performance P&L and win-rate metrics
traderbot paper Run a paper trading session
traderbot backtest Run backtests against historical data
traderbot compare Compare profiles across strategies
traderbot halt Check circuit breaker status
traderbot resume Clear circuit breaker halt state
traderbot heartbeat Self-review cycle
traderbot learnings List and promote learned patterns
traderbot data forecasts Weather forecasts with NWS + GFS/ECMWF/GEM ensemble
traderbot data bias CITY Historical forecast bias for a city
traderbot news-context News context for a category
traderbot auth Credential management
traderbot profile Multi-agent profile management
traderbot cron Register heartbeat cron jobs with OpenClaw
traderbot update Check for and apply updates

Project Structure

src/traderbot/
├── kalshi/           # Kalshi exchange adapter
├── analysis/         # Statistical computation engine
├── risk/             # Immutable risk enforcement
├── simulation/       # Backtesting & paper trading
├── news/             # News & sentiment pipeline
├── data/             # Weather & market data providers
├── db/               # SQLite persistence
├── profiles/         # Multi-agent profile system
├── cli/              # Typer CLI entry point and sub-commands
├── experiment/       # Experiment design and evaluation
├── heartbeat.py      # Self-review cycle
├── auth.py           # Credential management
├── learning.py       # Learning log manager
└── updater.py        # Version management

Documentation

Document Scope
docs/architecture.md Three-loop system, components, data flow
docs/kalshi.md Kalshi API reference
docs/risk.md Risk guards, circuit breakers, position sizing
docs/simulation.md Backtest engine, paper trading
docs/profiles.md Profile system, tokens, multi-agent
docs/deployment.md Production deployment
docs/api.md Full CLI reference

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

traderbot-0.14.77.tar.gz (2.8 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

traderbot-0.14.77-py3-none-any.whl (305.0 kB view details)

Uploaded Python 3

File details

Details for the file traderbot-0.14.77.tar.gz.

File metadata

  • Download URL: traderbot-0.14.77.tar.gz
  • Upload date:
  • Size: 2.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for traderbot-0.14.77.tar.gz
Algorithm Hash digest
SHA256 d8bc60596c7358b9b27ea5c2ee8e3caff714f066a6793dcb0f30583f6f9e8c18
MD5 8ac321f70304825f90e4ac81a38005cd
BLAKE2b-256 5735d9981936d563e05cf61d0968140713a538d9831c481cba6f78abae09ecd3

See more details on using hashes here.

File details

Details for the file traderbot-0.14.77-py3-none-any.whl.

File metadata

  • Download URL: traderbot-0.14.77-py3-none-any.whl
  • Upload date:
  • Size: 305.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.18 {"installer":{"name":"uv","version":"0.11.18","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for traderbot-0.14.77-py3-none-any.whl
Algorithm Hash digest
SHA256 329c89a4e9c39ac9cbbe959161967fccca61679bd0c609dc994c6e92a958c3f9
MD5 51384674ed47477fe726e9f0fff8630e
BLAKE2b-256 43394565b8cee0d6ab77e0872374bc6b684b461ede0d7e16eb34103a8996f8fa

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page