A Polymarket trading bot sold with its real track record — losses included.
Uruguabot is a full-source Python framework for Polymarket's 5-minute Bitcoin Up/Down markets. Most bots are sold with fake green screenshots. This one ships with the complete audited history of what it actually did with real money.
The real, audited results
Uruguabot traded real money on Polymarket in May 2026, testing two exit configurations back to back. Results, verified against the exchange's own trade history export:
| Phase | Configuration | Win rate | ROI |
|---|---|---|---|
| Hypothesis A | Symmetric TP/SL | 49% | −10.0% |
| Hypothesis B (now the default) | Tight SL, winners held to resolution | 40% | +7.3% |
The experiment as a whole was still a net loss — an infrastructure bug (since fixed) cost more than the strategy earned. Every number, order by order, is in the full audit.
Three facts matter more than any marketing page:
The edge is asymmetry, not prediction
The profitable configuration won only 39–40% of its trades. Losers were cut at −$0.85 average; winners were held to $1.00 resolution at +$2.46 average. That mechanism — not a magic signal — is what you're buying.
The biggest loss was a bug, not the market
Polymarket's positions API lags 5-minute markets. Orders that actually filled were abandoned as "ghosts": −$88, more than the strategy earned. The fix (USDC-delta verification + on-chain balance fallback) ships enabled.
The ML model never beat a coin flip
48–50% live accuracy despite 57% in training. We ship the brain untrained and optional, so you train it on your own current-regime data — or leave it off.
Full story with every number: “We lost $270 building a Polymarket bot — the complete audit”.
What's in the box
Trading engine
Market discovery, multi-timeframe consensus signals (30s/1m/5m), entry gates, asymmetric exit management.
Execution layer (CLOB V2)
FOK orders with ghost-fill detection via USDC-delta, stale-read handling, 2-decimal share alignment, on-chain balance fallback.
Honest dry-run simulator
Simulated fills use slippage distributions measured from real trades (entry −1.2¢, SL −1.3¢, TP −8.8¢ mean) — not zero-friction fantasy.
Risk rails + volatility guard
Daily-loss, losing-streak and unfilled-ratio circuit breakers, plus a guard that skips violent regimes where stop-losses slip up to −24¢. All on by default.
Signal accuracy monitor
A local web panel that freezes predictions before each window and measures the real accuracy of every signal — including your own manual picks — without spending a dollar.
Ops tooling
Wallet/auth checker, status reports, dry-vs-live drift measurement, orphan-share detector. ~15 readable Python files, bilingual docs (EN/ES).
How it works
- Dry-run first (default). The bot finds real live 5-minute markets and simulates trades with measured friction. No wallet needed.
- Study the log. Every bet records 11 market features, the signal state, and the simulated fill. Tooling included to analyze it.
- Go live only if convinced. Live mode requires two explicit flags (
DRY_RUN=false+LIVE_CONFIRM=YES), a dedicated wallet, and starts at $2 bets with circuit breakers on.
pip install -r requirements.txt
cp .env.example .env
python uruguabot.py # starts in dry-run, no real money
Frequently asked questions
Is Uruguabot profitable?
Honestly: our fully-automated live test was a net loss overall. One configuration — the shipped default — was profitable (+7.3% ROI at a 40% win rate); no future performance is promised. You're buying infrastructure and documented lessons, not guaranteed profits.
Do I need to know how to code?
You need to be comfortable with a terminal and editing a config file. Install is three commands. Modifying the strategy requires Python.
Is there a subscription, license server, or telemetry?
No, no, and no. One-time purchase, full source, runs entirely on your machine. Sold as-is with no support obligation — the code is deliberately small so you can own it.
Does it work in the United States?
Polymarket restricts trading from several jurisdictions including the US. Check Polymarket's current geographic restrictions and your local laws before buying. The bot includes no mechanism to evade geo-restrictions.
Can I test it without money?
Yes — dry-run is the default mode, with fills simulated using empirically measured slippage. The monitor panel also measures signal accuracy in real time without trading.
Why are you selling it if it works?
Because the honest answer to "does it work?" is "the mechanism is validated, but the edge is thin" — and that sentence doesn't sell hedge funds, it sells tooling. We'd rather sell the infrastructure openly than pretend. The full reasoning is in the audit article.
From the blog
- We lost $270 building a Polymarket bot — the complete audit
Ghost fills, phantom A/B gains, orphan adoption, and what finally worked. Every number published.
- We measured a human against 4 trading signals for 1,934 Polymarket windows
Every automated signal was a coin flip. The human hit 59%. Full data.
- How to automate Polymarket trading in 2026 — an honest technical guide
CLOB V2, proxy wallets, geographic restrictions, slippage reality, and the bugs that actually cost money.