Logo

Why Our Polymarket Scalping Bot Lost Money: A 262-Trade Case Study

Polymarket scalping case study: +1.5¢ per completed cycle, −32¢ per stopped-out cycle, 59% completion against 95% needed, −$17.40 net
polymarketscalpingmarket makingadverse selectionpositive ev
Cadell Griffith · OddsFantasy Research Team
Oct 08 2026

Why Our Polymarket Scalping Bot Lost Money: A 262-Trade Case Study

For two weeks in September we ran a scalping bot on Polymarket with real money. It split $5 into both sides of a sports market, offered each side for sale at the best ask and waited to collect the spread. Over 262 cycles it lost $17.40, about 1.3% of every dollar it put to work.

The loss is small. What it teaches is not: on Polymarket, the orders that fill are usually the ones you should not have posted. This is the full breakdown from on-chain data, covering every fill and every fee, and why a scalper without an outside view of fair value is trading blind.

How the Mean Scalper works

Mean Scalper is a preset for the OddsFantasy trading bot. Each cycle runs like this:

  1. Split $5 into 5 YES and 5 NO shares of the same market. A split can be reversed at any time: 5 YES plus 5 NO merge back into $5.
  2. Post a maker sell order on each token at that token's current best ask.
  3. If both orders fill, the two sale prices add up to more than $1 per pair, and the difference is the profit.
  4. If neither fills before kickoff, merge the shares back into $5, for no profit and no loss.
  5. If only one fills, hold the other token and keep offering it. From September 21, a 5% drawdown stop sold that leftover leg at market when its price fell.

On paper the strategy is market-neutral, because it never takes a view on who wins. In practice, the moment one leg fills you hold a directional bet you did not choose.

The results: 262 cycles, −$17.40

We rebuilt every cycle from the wallet's on-chain activity, from September 14 to 26: each split, each fill and each merge or settlement.

  • In total, 262 cycles at $5 each finished at −$17.40.
  • Before September 21 there was no stop. 22 cycles were left holding one leg into the match; 13 of those lost and 9 won, for −$10.92.
  • Under the final exit rules (71 cycles), 44 never filled and merged back at $0, 16 completed both legs for +$0.24 in total, and 11 had their second leg stopped out for −$3.48.
Bar chart of 71 Polymarket scalping cycles: 44 merged back at $0, 16 completed for +$0.24 in total, 11 stopped out for −$3.48
Under the final exit rules, the 11 stop-outs cost more than 14 times what the 16 completed cycles earned.

The completion-rate trap

A completed cycle earned about 1.5¢. A stopped-out cycle lost about 32¢. That asymmetry decides everything.

To break even, the second leg has to fill often enough for the small wins to outweigh the rare big losses: 1.5¢ for every completion has to cover 32¢ for every stop-out. That works out to about 95% of first fills completing. We completed 59%, and every stop-out erased roughly 21 good cycles.

Bar chart: 95% of first fills needed to complete to break even, against 59% achieved
Break-even needed about 95% of first fills to complete. The bot managed 59%.

Better exits cannot close a gap that size. We replayed our 100 real first fills against their actual price paths, and the replay reproduced the real loss of about 12¢ per filled cycle. Then we tested the alternatives:

  • Scratching the leftover leg to break-even after 30 minutes was the best change. It cut losses by about 17% and still lost money.
  • Removing the stop did not help. Holding stranded legs to settlement swaps small, frequent losses for bigger, random ones.
  • Flattening before lineups were announced did not help.
  • Filtering by time to kickoff, market type or recent momentum did not help: every bucket lost. Totals markets were the worst, with only 43% of first fills completing.

Why the first fill is usually the wrong one

The real problem is adverse selection: the trader who fills your quote usually knows something you don't. Four things in the data show it.

You get filled just before the price moves

After our first fill, the token we had just sold moved against us 52–59% of the time over the next 30 minutes, and in our favour only 29–40% of the time. The typical move against us was +0.5¢, the entire edge on that leg.

Bar chart: after the first fill the sold token moved against the bot 52–59% of the time and in its favour 29–40%
The token we sold usually rose right after we sold it.

Moves are jumps, not drifts

In 86 of 100 fills, the price had been flat for the hour before. Then someone cleared the whole price level, our order included. A price that sits still for an hour and then jumps is not reacting to Polymarket's own order flow. It is reacting to something outside it: team news, or bots repricing to a sportsbook line that has already moved.

Sharp traders are on the other side

We studied 10.3 million taker fills across 27,950 Polymarket sports markets and flagged the wallets with a statistically significant record of beating the closing price. They make up 2.6% of all sports wallets. Among the takers who filled our scalper's quotes, they made up 22.8%.

Bar chart: sharp wallets were 22.8% of the takers who filled the scalper's quotes against 2.6% of all Polymarket sports wallets
Sharp wallets were about nine times more common on the other side of our fills than in the market as a whole.

Our quotes were not filled at random. They were picked off, and disproportionately by the traders who are best at it.

Thin books and slow reactions make it worse

  • First fills came a median of about 45 hours before kickoff, in books with little casual flow. The volume filter used lifetime volume above $100, and one market we quoted had traded $181 in total.
  • The quotes were managed by a loop that checked the book every five seconds. A sweep is over in less time than that.
  • Once one leg filled, the leftover leg kept its original price while the market moved away. Second fills that did happen took a median of about 17 hours.

The same pattern shows up outside scalping. When we simulated resting bids on 616 positive-EV signals against real price paths, the bids that filled went on to drift 2.1¢ against us, while the bids that never filled would have gained 2.0¢. Resting orders get filled when the price is moving through them.

What fees do to a scalper

  • Makers pay no Polymarket fee, and sports makers earn a share of fees back through Polymarket's maker rebates.
  • Takers in sports markets pay shares × 0.05 × p × (1 − p): 1.25¢ per share at 50¢, about 2.5% of the price. Every stop-out pays it.
  • Many trading tools add a builder fee on fills. At 0.5% of notional, it takes about half of a 1¢ spread on a 50¢ market.

A spread-capture strategy lives on fractions of a cent, so every fee and every adverse move has to be counted before you quote, not after.

What was missing: a fair price from outside Polymarket

Every failure above has one root cause. The bot quoted around Polymarket's own best ask, the very price that kept getting swept. It had no independent idea of what the outcome was worth, so it could not tell a good fill from a bad one, and when a leg was stranded it had no way to choose between holding and dumping.

Sports markets have a better reference than their own order book: the sharp bookmakers. Books like Pinnacle take very large bets on thin margins and move their lines as sharp money arrives. Strip out their margin with a vig calculator and their odds become a no-vig fair price, the best public estimate of each outcome's real chance. That is the external data a Polymarket scalper needs.

With a fair price, the same strategy changes shape:

  1. Quote only when your price beats fair value by a buffer. Selling YES at 55¢ when fair value is 52¢ is a trade you want, whether it fills or not.
  2. Treat a one-sided fill as a position, not a problem. A leg held below fair value is worth keeping to a planned exit instead of dumping it at a stop.
  3. Pull your quotes when the sharp line moves. The flat-then-sweep fills in our data are exactly the ones a live fair price warns you about.
  4. Size the buffer to the age of your data. A sharp price from ten minutes ago is not fair value in a market that has just moved.

Fresh, net of fees, and measured by closing-line value

External data only helps if you use it with discipline. Three rules from our own testing:

  • Freshness beats size. In our positive-EV trading, the signals claiming the biggest edges, 7% and up, had the worst closing-line value. A big gap between Polymarket and a sportsbook often means the sportsbook has already moved and you are looking at its old number.
  • Price net of fees. At 50¢ a sports taker pays about 2.5% in fees, so a 3% edge before fees is worth about 0.5% after them. Work out the edge with the EV calculator, then subtract the fee before you trust it.
  • Judge by closing-line value, not profit. At small stakes, luck alone swings P&L by about ±$34 over 500 bets. Closing-line value, whether you beat the price just before kickoff, tells you within about 100 bets whether you have an edge.

Where to get the external data

This is what the OddsFantasy positive EV tool is built for. It handles the hardest part of the job: matching Polymarket's sports markets to sharp bookmaker lines and turning those lines into fair prices.

  • Fair value next to the live price: Pinnacle's no-vig odds beside the Polymarket price for every matched market, with the edge between them and when each price was last updated.
  • Filters that match how you trade: sport, minimum and maximum EV, odds range, maximum spread and minimum volume.
  • Automation when you are ready: qualifying prices can be bought on Polymarket automatically at your stake, with resting limit orders by default, and unfilled orders are cancelled when a signal disappears.
  • Demo mode before real money: every signal is paper-traded against the live order book with real fees, and the Demo tracker reports closing-line value before and after fees.

Set your minimum EV above the fee for the prices you trade, watch how fresh each price is, and let closing-line value tell you whether the edge is real. Open the positive EV tool to see where Polymarket disagrees with the sharp books right now, or build your own rules in the free Polymarket trading terminal.

Key takeaways

  • Two-sided quoting on Polymarket lost to adverse selection: 59% of first fills completed against the 95% needed to break even.
  • Fills bunched up right before price jumps, and sharp wallets were about nine times over-represented among our takers.
  • No exit rule fixed it; the best one cut losses by 17%.
  • A scalper needs an outside fair price, fresh and net of fees, to know which fills to want.
  • Measure with closing-line value before you add size.

Frequently asked questions

Can you scalp Polymarket profitably?

Not by quoting around Polymarket's own best price. In our 262 cycles, completed spreads earned about 1.5¢ while stranded legs lost about 32¢, and only 59% of first fills completed. Scalping needs a fair-value anchor from outside Polymarket, so you only quote prices you would be happy to hold.

What is adverse selection on Polymarket?

It is when the trader who fills your order knows more than you do, so your fills bunch up just before the price moves against you. In our data, the token we sold moved against us 52–59% of the time after a fill, and sharp wallets were about nine times over-represented among our takers.

Why use sportsbook odds to price Polymarket sports markets?

Sharp bookmakers such as Pinnacle take large bets on thin margins, so their lines absorb sharp money quickly. With the margin removed, their odds are the best public estimate of each outcome's real probability, which shows you when a Polymarket price is too high or too low.

What fees does Polymarket charge on sports markets?

Takers pay shares × 0.05 × p × (1 − p), which is 1.25¢ per share at 50¢ and less at prices near 0 or 1. Makers pay no Polymarket fee and earn a share of fees back through maker rebates. Trading tools can add their own builder fee.

Sources

  1. Fees — Polymarket Documentation
  2. Manage Positions: split — Polymarket Documentation
  3. Manage Positions: merge — Polymarket Documentation

Learn the basics in the free course

Share This Post:

Related Articles

Bar chart: sharp Polymarket wallets earn +0.54 cents per share of closing-line value, while copying them loses 0.70 cents after fees
polymarketcopy tradingsmart moneyclosing line valueresearchfees

We Tested Copying Polymarket's Sharpest Spor...

We scored 103,000 Polymarket sports wallets on 10.3 million fills. 268 of them really beat the closing price. Copying them still l...

Cadell Griffith
Oct 11 2026
Illustrative Under 2.5 goals order book showing a 50¢ reference price and a 53¢ average fill for 200 shares.
polymarketbacktestingsports-tradingorder-bookstrading-automation

How to Backtest a Polymarket Sports Strategy...

A historical price is not an executable trade. Learn how to align Gamma and CLOB data, simulate partial fills, reconcile settlemen...

Cadell Griffith
Oct 12 2026
Illustrative football home-win trading screen showing a 90-cent entry, 94-cent target, 81-cent downside level and pre-match time cutoff.
polymarkettrading-automationexit-strategytake-profitstop-lossexpected-value

Polymarket Bot Exit Strategy: Why Favorites ...

A likely winner is not necessarily a profitable trade. Compare settlement, take-profit, stop-loss and time exits using net proceed...

Cadell Griffith
Oct 05 2026