DEV Community

manja316
manja316

Posted on

I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move

Everyone says prediction markets are efficient. I spent 30 days collecting data to test that claim.

The result: 8.9 million data points across 9,550 markets — and the data tells a story most traders miss completely.

The Setup

I built an automated collector that snapshots every active Polymarket market every 15 minutes. Not just BTC or the US election — every market. Politics, sports, crypto, geopolitics, economics, entertainment, weather, science. All of it.

After 30 days of continuous collection:

Metric Value
Markets tracked 9,550
Price snapshots 8,158,672
Orderbook depth snapshots 792,527
Categories 10
Total data points 8,951,199

Most Polymarket datasets you'll find cover a single market or a single event. This covers the entire platform simultaneously — which lets you see patterns that single-market analysis can't.

Finding #1: Markets Are Not Efficient After Crashes

Everyone assumes prediction markets instantly price in new information. The data says otherwise.

I measured what happens after a price drops more than 20% between consecutive snapshots. Here's what the 5,629 crash events show:

Time After Crash Average Return Events Measured
+15 min +6.6% 5,629
+30 min +8.8% 5,629
+45 min +10.3% 5,629
+1 hour +11.0% 5,629

After a >20% crash, prices bounce back an average of 6.6% within 15 minutes.

This is classic mean reversion — and it's massive. For comparison, the S&P 500's average annual return is about 10%. These markets deliver that in an hour after a crash.

The reverse is also true. After a >10% pump:

Time After Pump Average Return
+15 min -2.9%
+30 min -3.7%

Prices that spike tend to give it back. Markets overreact in both directions.

Finding #2: Hold Time Matters More Than Entry Price

I simulated the obvious strategy — buy the crash, sell the recovery — across all 30 days of data. 6,225 trades. Here's how hold time affects the result:

Max Hold Trades Win Rate Total P&L
2 hours 10,204 54% $87
6 hours 8,324 64% $108
12 hours 7,295 70% $121
24 hours 6,225 75% $135
48 hours 5,352 81% $142

The sweet spot is 12 hours. Going from 12h to 48h only adds $21 to total P&L but locks your capital 4x longer. Most of the money is made in the first few hours.

This surprised me. I expected entry price to be the key variable. It's not:

Entry Price Range Win Rate Avg P&L Per Trade
Under $0.10 74% $0.014
$0.10 — $0.30 74% $0.018
$0.30 — $0.50 79% $0.032
Above $0.50 86% $0.022

Higher-priced markets actually have better win rates. The cheap ones look tempting but they include more dust trades that go nowhere.

Finding #3: Category Is Your Edge Selector

Not all Polymarket categories behave the same:

Category Trades Win Rate P&L Per Trade Verdict
Crypto 646 78% $0.030 Best per-trade
Sports 1,050 79% $0.027 Most consistent
Other 1,872 75% $0.024 Most volume
Politics 1,362 76% $0.018 Decent
Geopolitics 890 71% $0.016 Below average
Economics 101 69% $0.008 Avoid
Weather 21 57% Negative Avoid

Crypto and sports markets have the strongest mean reversion. Economics and weather markets are traps — they crash and stay crashed.

Why? Sports and crypto have event-driven resolution (the game happens, the price discovers). Economics markets depend on slow-moving indicators — when they crash, it's often because the fundamentals actually changed.

Finding #4: The "Always Bet No" Strategy Is Overhyped

You may have seen the "Nothing Ever Happens" bot that bets NO on everything. The claim: 73% of Polymarket resolves NO.

I checked with 4,763 resolved binary markets from the API:

  • All markets: 52.3% resolve NO (not 73%)
  • Non-sports: 57%
  • "Will X happen?" framing: 59.3%

The 73% figure comes from a heavily filtered subset. Across all markets, the NO edge is barely there — and at typical NO prices ($0.65-0.85), the math doesn't work.

The Dataset Is Free to Explore

I'm releasing the full dataset across multiple platforms:

Free (sample):

  • Kaggle — markets.csv + 100K price preview + full SQLite DB
  • HuggingFace — same files, HF ecosystem integration
  • GitHub — browse the data, star if useful

Full dataset ($9):

  • Gumroad — 8.9M data points, orderbook depth, SQLite DB

The data updates weekly from an automated pipeline. If you want to reproduce any of these findings, everything is there.

What I'd Build Next

If I were starting a Polymarket quant project today, I'd focus on:

  1. Real-time crash detection — the 6.6% bounce after crashes is the clearest edge
  2. Category rotation — crypto and sports, skip economics and weather
  3. 12-hour max hold — the data is unambiguous on this
  4. Cross-market signals — does a crash in one political market predict crashes in related ones?

The prediction market space is where crypto was in 2017 — growing fast, most participants losing money, and the edge goes to people with data infrastructure.


The data was collected from Polymarket's Gamma API and CLOB API using an automated pipeline. All code and methodology are open source. I also maintain protodex.io, an index of 2,013 MCP servers with security scores.

Questions or want custom data cuts? LuciferForge@proton.me

Top comments (0)