polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot polymarket trading bot
Polymarket Sports Cross-Line Arbitrage Bot
A polymarket trading bot that detects temporary pricing inefficiencies across connected Polymarket sports markets.
Who-am-i on Polymarket -> sold-my-car-to-bet
How profitable this bot?
https://github.com/user-attachments/assets/df6a93c2-c9b8-4b50-8ff4-bb863e60443b
Connect
๐ง hacki13128@gmail.com
๐ https://t.me/hackonmon
Features
- โก Real-time Polymarket CLOB streaming
- ๐ง Cross-line arbitrage detection on sports market
- ๐ Kelly Criterion stake sizing
- ๐ฐ Paper trading & Live trading
- ๐ก Risk management engine
- ๐ Beautiful terminal dashboard
- ๐งฉ Modular architecture
- ๐ Structured logging
- ๐ Production-oriented TypeScript codebase
Strategy
Sports markets inside a single event should satisfy several no-arbitrage relationships.
Whenever one market reprices faster than another after new information arrives, temporary inefficiencies can appear.
The bot continuously:
Gamma API
โ
โผ
Discover connected markets
โ
โผ
Stream live CLOB orderbooks
โ
โผ
Detect pricing violations
โ
โผ
Risk evaluation
โ
โผ
Kelly stake sizing
โ
โผ
Submit limit orders
โ
โผ
Track positions & PnL
Current arbitrage checks include:
- Complementary YES/NO pairs
- Totals ladder relationships
- Spread ladder relationships
- Moneyline vs Spread
- Three-way market sums
- BTTS relationships
Quick Start
git clone https://github.com/donoaccestag/polymarket-sports-trading-bot.git
cd polymarket-sports-trading-bot
cp .env.example .env
npm install
npm run start:sim
CLI
npm start -- --mode sim
npm start -- --mode live --confirm-live
npm start -- --event nba-lal-bos-2026-01-15
npm start -- --tag 100381
CLI Options
| Flag | Description | |------|-------------| | --mode sim | Simulation mode | | --mode live | Live trading | | --event | Watch specific event | | --tag | Filter Gamma tags | | --confirm-live | Required safety confirmation |
Terminal Dashboard
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Header โ
โ Mode โข WS Status โข Balance โข PnL โข Uptime โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Tracked Markets โ Opportunities โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโดโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ PnL Chart Exposure โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ Orders / Fills โ Alerts โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
[p] Pause
[f] Flatten
[q] Quit
Logs are written separately using Pino so they never corrupt the dashboard.
Configuration
See .env.example.
Important variables:
| Variable | Default | Description | |------------|------------|-----------------------------| | MODE | sim | sim or live | | MINNETEDGE_BPS | 50 | Minimum edge | | MAXPOSITIONUSD | 500 | Max Kelly stake | | KELLY_FRACTION | 0.5 | Half Kelly | | MINSTAKEUSD | 5 | Minimum trade | | MAXEVENTEXPOSURE_USD | 200 | Event exposure cap | | DAILYLOSSLIMIT_USD | 100 | Kill switch | | SIMINITIALBALANCE | 10000 | Paper balance |
Architecture
Gamma REST
โ
โผ
Event Graph
โ
โผ
Market Classifier
โ
โผ
CLOB REST / WebSocket
โ
โผ
OrderBook Store
โ
โผ
Arbitrage Detector
โ
โผ
Risk Management
โ
โโโโโโโโโโโโโโดโโโโโโโโโโโโโ
โผ โผ
Sim Executor Live Executor
โ โ
โโโโโโโโโโโโโโฌโโโโโโโโโโโโโ
โผ
Portfolio + Dashboard
Live Trading
Live mode requires:
PRIVATE_KEY
CLOBAPIKEY
CLOBAPISECRET
CLOBAPIPASSPHRASE
and either
--confirm-live
or
CONFIRM_LIVE=true
Execution uses
@polymarket/clob-client-v2
against production endpoints.
Project Structure
src/
โโโ arb/ โ โโโ Arbitrage detection
โโโ config/ โ โโโ Zod configuration
โโโ core/ โ โโโ Engine
โโโ data/ โ โโโ Gamma โ โโโ CLOB REST โ โโโ WebSocket
โโโ exec/ โ โโโ Simulation โ โโโ Live โ โโโ Order Manager
โโโ model/ โ โโโ Event Graph โ โโโ Classifier
โโโ portfolio/ โ โโโ PnL
โโโ risk/ โ โโโ Exposure controls
โโโ ui/ โ โโโ blessed-contrib dashboard
โโโ util/ โโโ Logging โโโ Math โโโ Rate limiting
Contributing
Contributions are welcome.
Whether you're interested in:
- quantitative trading
- prediction markets
- TypeScript
- market microstructure
- performance optimization
Built with โค๏ธ for the Polymarket developer community.
If this repository helped you learn something new, consider giving it a โญ.