BTC 5-minute Up/Down markets on Polymarket are treated as a coin flip.
Most books sit near ~50¢ because short-horizon direction looks nearly random. I built a live directional engine that turns that noise into a measurable edge.
Core Design
The system is built around three deliberate choices:
1. Signal layer anchored to Chainlink TWAP
The model tracks the latest Chainlink TWAP — the exact settlement reference Polymarket uses for 5-minute crypto markets — against the slot-open price. Lead-lag and time-in-slot features are calibrated on top of that path. The goal is not to guess a single last tick; it is to forecast the averaging process the market actually settles on.
2. Fair-value entries only
Entries are restricted to the 45–55¢ band. Observed mean entry sits around 0.503. The bot does not chase 94–99¢ convergence or deep long-shot tails. It pays a fair price for a small probabilistic edge.
3. Continuous conviction culling
Every 10–30 seconds the position is re-scored. When conviction decays, the system scratches near breakeven. Only higher-conviction legs are allowed to ride to resolution and redemption.
This filtering is a major part of the edge. The book that actually settles is a cleaned subset of the original signals.
Public Sample Results (Jul 2026)
| Metric | Value |
|---|---|
| Resolved markets in sample | 150 |
| Held-side win rate | 60.7% (91W / 59L) |
| ROI on capital at resolution | ≈ +24.5% |
| Share of fills in 45–55¢ zone | ~90% |
| Average entry (held legs) | ~0.50 |
These numbers describe the filtered held book, not every temporary position the engine opened.
Opposite of Convergence Farming
Typical convergence bots:
- Buy 94–99¢ near-certain outcomes
- Rely on structural near-certainty
- Monetize tiny edges with massive volume
This engine:
- Buys in the coin-flip band (~50¢)
- Relies on calibrated micro-forecasting
- Monetizes a higher win rate on fair entries, then actively discards weak tickets
Edge comes from signal quality + ruthless position culling, not from being almost sure at entry.
Reference Implementation
TypeScript / Node 18+ structure:
| Module | Role |
|---|---|
src/twapFeed.ts |
Chainlink TWAP stream (RTDS) |
src/signal.ts |
P(up) vs slot-open reference |
src/engine.ts |
Full slot lifecycle (enter → hold → scratch → redeem) |
src/clob.ts |
CLOB v2 order handling |
A standalone Windows binary is also available for evaluation. The calibrated signal itself remains private — that is the real moat.
Repo: https://github.com/abrownfoxbot/abrownfox-trading-system
Practical Notes
- Latency and fill quality still matter in the mid-band
- Regime shifts can compress the edge
- Paper trade or micro-size before scaling
- Settlement rules evolve (TWAP window changes directly affect any system built on the official feed)
This is a specialized tool for one market family, not a universal Polymarket bot. The design bet is simple: if you align the signal with the actual settlement variable, restrict entries to fair prices, and aggressively cut weak positions, a near-50/50 market can still produce a positive held-side expectancy.
Live on Polymarket as @abrownfox001.
Not financial advice. Short-horizon prediction markets remain high-risk.
If you have more questions, please feel free to contact me at any time: https://t.me/abrownfox001
My Polymarket Activity: https://polymarket.com/@abrownfox001?tab=activity

Top comments (0)