Features How It Works Tools GitHub Join Waitlist
Open Source Trading Infrastructure

Algorithmic trading
with guardrails

Open source tools for building, testing, and deploying trading strategies on prediction markets. Ship faster with built-in risk management.

12k+
GitHub Stars
340
Contributors
$2.1B
Volume Processed
99.97%
Uptime
Why OpenMarketUI

Trade prediction markets
without the guesswork

Most algorithmic trading tools are either black boxes or require months of setup. OpenMarketUI gives you a composable, auditable framework that ships with sensible defaults and hard safety limits.

Every strategy runs inside a guardrail sandbox. Max drawdown, position limits, and kill switches are first-class primitives, not afterthoughts.

OpenMarketUI Dashboard
Core Features

Built for serious traders

Everything you need to build, backtest, and deploy trading strategies on Polymarket, Kalshi, and other prediction markets.

Strategy Builder

Composable strategy primitives with a declarative DSL. Define entry/exit logic, position sizing, and risk parameters in clean, auditable code.

🛡

Guardrail Engine

Hard-coded safety limits that can't be overridden at runtime. Max drawdown, position caps, velocity limits, and automatic kill switches.

📊

Backtesting Suite

Replay historical market data with tick-level precision. Includes slippage modeling, fee simulation, and monte carlo analysis.

🌐

Multi-Market

Unified API adapter for Polymarket, Kalshi, Metaculus, and custom CLOB implementations. One strategy, many venues.

🔧

Real-Time Signals

WebSocket feeds for price, volume, and order book data. Built-in signal processing with configurable alert thresholds.

🔍

Audit Trail

Every trade decision is logged with full context. Review strategy behavior, debug edge cases, and prove compliance.

Developer Experience

Clean APIs, sane defaults

Get a strategy running in minutes. Guardrails are configured declaratively and enforced at the engine level.

# Define a strategy with guardrails from openmarketui import Strategy, Guardrails strategy = Strategy( name="momentum_v2", markets=["polymarket", "kalshi"], guardrails=Guardrails( max_drawdown=0.05, # 5% max drawdown max_position=1000, # $1000 per position daily_loss_limit=500, # stop after $500 daily loss kill_switch=True, # emergency halt ) ) @strategy.on_signal def handle(signal, ctx): if signal.confidence > 0.72: ctx.enter(side=signal.direction, size=ctx.kelly_size())
How It Works

From idea to live in four steps

OpenMarketUI handles the infrastructure so you can focus on alpha.

Define Strategy

Write your trading logic using our composable primitives. Supports Python, TypeScript, and our declarative DSL.

Set Guardrails

Configure risk limits, position sizing, and kill switches. Guardrails are enforced at the engine level.

Backtest & Validate

Replay against historical data with realistic slippage and fee models. Verify behavior before risking capital.

Deploy & Monitor

Push to production with one command. Real-time dashboards, alerts, and automatic position management.

Ship your first strategy today

Join the waitlist for early access to OpenMarketUI.