Overview
OctoBot Prediction Markets is an open-source trading bot built on a modular plug-in architecture. It started as a cryptocurrency trading bot (the OctoBot project has been active since 2018) and expanded into prediction markets in mid-2025 with a dedicated Polymarket integration module. Kalshi support is currently in development and expected to ship in Q2 2026.
The core design philosophy is modularity. Rather than shipping a fixed set of strategies, OctoBot provides a framework where each strategy is a self-contained module. Users can activate, deactivate, and configure individual modules through a local web interface. The framework handles platform connectivity, order management, position tracking, and risk controls — modules only need to emit trading signals.
The bot is self-hosted by default. You clone the repository, install dependencies, configure your platform API keys, and run it on your own infrastructure. This gives you full control over your API keys and execution environment. For users who prefer managed hosting, OctoBot offers cloud tiers that handle the infrastructure.
OctoBot’s prediction market modules are open-source under the LGPL-3.0 license, meaning you can inspect, modify, and extend the code. The premium cloud tiers add hosted execution, a mobile dashboard, and priority strategy module updates — but the core trading logic is fully available in the public repository.
For guidance on evaluating open-source bots before deploying them, see our bot verification guide.
Key Features
| Feature | Details |
|---|---|
| Supported Platforms | Polymarket (Kalshi coming Q2 2026) |
| Architecture | Modular plug-in system; strategies are independent Python modules |
| Strategy Modules | Arbitrage, Market Making, Sentiment, Custom (write your own) |
| Execution | Self-hosted (default) or managed cloud hosting |
| Interface | Local web dashboard, CLI, REST API |
| Risk Controls | Per-module position limits, global drawdown cap, emergency stop |
| Language | Python 3.10+; modules written in Python |
| Backtesting | Built-in backtesting engine against historical CLOB data |
| Community | Active Discord (4,000+ members), GitHub with 8,500+ stars |
| Updates | Community-driven; core team ships monthly releases |
Supported Strategies
Arbitrage Module
The arbitrage module monitors Polymarket binary markets for Yes/No mispricings and multi-outcome markets where implied probabilities exceed 100%. It calculates net expected profit after estimated gas costs and only executes when the spread exceeds a user-defined minimum threshold.
Configuration options include minimum spread, maximum position size per trade, maximum concurrent arbitrage positions, and a gas cost buffer. The module logs every detected opportunity (executed or skipped) for post-session analysis.
When Kalshi support ships, this module will also handle cross-platform arbitrage between Polymarket and Kalshi.
Market Making Module
The market making module places limit orders on both sides of a prediction market’s order book, capturing the bid-ask spread. It dynamically adjusts quotes based on order book depth, recent trade flow, and inventory position.
Market making on prediction markets carries inventory risk — if the market moves directionally, the bot accumulates a position on the losing side. The module includes configurable inventory limits, skew parameters (how much to bias quotes when inventory builds up on one side), and maximum position duration.
This module requires meaningful starting capital (recommended minimum $5,000) and works best on markets with consistent two-sided flow. It performs poorly on markets with low activity or strong directional momentum.
Sentiment Module
The sentiment module processes a configurable set of data sources — RSS feeds, X/Twitter API, Reddit API, and custom webhook inputs — through a text classification pipeline. It scores each market based on the volume and polarity of relevant mentions, then generates directional signals when the sentiment score diverges significantly from the current market price.
Users configure the data sources, scoring weights, signal thresholds, and position sizing. The module ships with a default NLP model (DistilBERT fine-tuned on prediction-market-relevant text) but supports loading custom models.
Custom Modules
OctoBot’s plug-in architecture lets you write custom strategy modules in Python. The framework provides base classes that handle platform connectivity, order management, and position tracking. Your module needs to implement a generate_signals() method that returns buy/sell/hold decisions. The official documentation includes a module development tutorial and template.
This extensibility is OctoBot’s strongest differentiator. If you have a proprietary strategy idea, you can implement it as a module without building the entire trading infrastructure from scratch.
Pricing Tiers
| Feature | Community (Free) | Cloud Basic ($29/mo) | Cloud Pro ($99/mo) |
|---|---|---|---|
| All strategy modules | Yes | Yes | Yes |
| Custom module support | Yes | Yes | Yes |
| Self-hosted execution | Yes | – | – |
| Cloud-hosted execution | No | Yes | Yes |
| Mobile dashboard | No | Yes | Yes |
| Markets monitored | Unlimited | 25 | Unlimited |
| Priority module updates | No | No | Yes |
| Dedicated support | Community Discord | Email (48hr) | Email + Discord (12hr) |
| Backtesting | Yes | Yes | Enhanced (faster, more data) |
The Community tier is fully functional. The cloud tiers add convenience, not capability. You can run every strategy at every scale on the free self-hosted version — the premium tiers just handle the hosting and add quality-of-life features.
For a comparison of prediction market bot pricing models across the ecosystem, see our bot pricing guide.
Performance
OctoBot does not publish centralized performance data because results depend entirely on which modules the user runs, how they’re configured, and market conditions. However, the community maintains a public leaderboard (opt-in) where users share anonymized performance metrics.
Representative ranges from the community leaderboard (90-day rolling, February 2026):
| Metric | Arbitrage Module | Market Making Module | Sentiment Module |
|---|---|---|---|
| Median monthly return | 1.5% | 3.2% | 2.8% |
| Median win rate | 91% | 58% | 61% |
| Median trades/day | 30 | 85 | 12 |
| Max observed drawdown | -2.1% | -11.4% | -14.2% |
Important caveats: These are community-reported figures from an opt-in leaderboard, not verified audited results. Survivorship bias applies — users who perform poorly are less likely to opt in. Different configurations produce vastly different outcomes. These numbers should not be treated as expected returns.
Pros and Cons
Pros:
- Fully open-source core — inspect, audit, and modify every line of trading logic
- Modular architecture lets you mix, match, and build custom strategies
- Active community with 4,000+ Discord members and responsive GitHub issue tracking
- Free self-hosted tier is genuinely fully featured, not a crippled demo
- Mature codebase (OctoBot project has been in development since 2018)
- Python-based modules are accessible to most developers
Cons:
- Only supports Polymarket today — Kalshi integration still in development
- Self-hosting requires technical setup (Python environment, server management, API configuration)
- No cross-platform arbitrage until Kalshi module ships
- Sentiment module’s default NLP model is adequate but not state-of-the-art; best results require training a custom model
- Market making module carries meaningful inventory risk and is not beginner-friendly
- Community-reported performance data lacks verification
How to Get Started
- Clone the repository from GitHub. The README includes platform-specific installation instructions for Linux, macOS, and Windows (via WSL).
- Install dependencies — Python 3.10+, pip, and the requirements file. A Docker image is also available for containerized deployment.
- Configure platform connectivity — add your Polymarket API keys through the local web dashboard or the
config.jsonfile. - Activate modules — enable the strategy modules you want to run and configure their parameters. Start with the arbitrage module if you’re new to the platform.
- Run in simulation mode — OctoBot includes a paper trading mode that uses live market data but doesn’t execute real trades. Run for at least two weeks before going live.
- Deploy to production — switch from simulation to live execution. Start with conservative position sizes and monitor the trade log closely for the first few days.
For a broader guide to evaluating and purchasing prediction market agents, see How to Buy a Prediction Market Agent.
Similar Agents
- PredictEngine Pro — Commercial hosted bot with multi-strategy support and Kalshi integration. Less customizable but easier to set up. $49-$299/mo.
- Polyclaw Agent — Free open-source bot focused purely on arbitrage. Simpler than OctoBot but limited to one strategy. Polymarket only.
Browse all available agents in the Agent Marketplace. For a comprehensive comparison, see our best prediction market bots guide.
Listing last updated March 2026. Agent ratings are based on aggregated user reviews and editorial assessment. AgentBets does not receive compensation from listed agents. See our bot verification guide for how we evaluate agents.