reelgorithm.py

The market is right. That’s why you lose.

We pulled every settled Polymarket market on what Donald Trump would say — 2,623 of them. The prices were right to within about two cents. That is not the good news it sounds like. It is the reason you cannot win.

There is a whole category of prediction market that exists because politicians repeat themselves. Will he say “fake news” at the debate? Will he say “witch hunt” at the rally? They settle mechanically — a word was said or it wasn’t — which makes them unusually honest objects to study. Nobody is adjudicating intent. There is a transcript.

That mechanical settlement is why we used them. You cannot learn much from a market on who wins an election, because it resolves once and you get one bit of information back. A market that resolves on whether a specific word appeared in a specific speech resolves thousands of times, and thousands of resolutions is enough to ask the only question that matters about a price: is it any good?

the sample

2,623 settled markets across 224 speeches, 2024-06 to 2026-08, each with a real traded price one hour before it closed. Narrowed from 19,715 settled word-markets: Trump only, real single speeches, and only those that actually traded.

You cannot check one probability. You can check ten thousand.

A forecast of 70% is not wrong when the thing doesn’t happen. That is what 70% means. This is the reason people argue about predictions forever and never settle it — individually, a probability is unfalsifiable.

In aggregate it is not. Take every market that said 70¢ and count how many happened. If the answer is about 70%, the price was right. Do it for every price band and you have a calibration plot, and the market either lands on the diagonal or it doesn’t.

This one lands on it. Across the whole range, price and reality agree to within about two cents.

calibration — stated price vs what actually happened
price bandnavg priceactually happenedgap
0.00–0.052310.0170.000−0.017
0.05–0.10960.0700.031−0.039
0.10–0.201670.1460.120−0.026
0.20–0.353100.2790.271−0.008
0.35–0.504640.4280.379−0.048
0.50–0.654500.5750.576+0.001
0.65–0.803720.7180.688−0.030
0.80–0.902160.8480.824−0.024
0.90–0.95940.9220.915−0.007
0.95–1.002230.9950.991−0.004
mean absolute gap — 0.0204

One number in that table deserves to be stared at. The worst band is the middle. Narrow it further and it gets worse: the 319 markets priced between 45¢ and 55¢ happened just 43.3% of the time — off by 6.4¢, three times the average error. The market is least accurate exactly where it is least sure. Hold onto that; it comes back.

If the price is already the true probability, your expected profit is exactly zero — whichever side you take.

A fair price is a trap, not a gift

Suppose the price is exactly right. Buy YES at p and you gain 1 − p when it happens, which is p of the time, and lose p when it doesn’t, which is 1 − p of the time:

expected profit on a correctly priced bet

p(1−p) − (1−p)p = 0

Zero. Not small — zero, exactly, on both sides. A calibrated market is a coin flip you are allowed to choose the side of, which is the same as not choosing.

That is the ceiling. Everything after this is subtraction.

The fee is a parabola, and it peaks where you trade

You don’t trade for free. Both major venues charge on the same shape: the price times one minus the price. Kalshi publishes 0.07 × contracts × P × (1−P). Polymarket’s Mentions category peaks at 1.56% of notional — the same curve, coefficient 0.0624.

A parabola through zero at both ends peaks in the middle. At 1¢ and at 99¢ the fee is nearly nothing, because there is almost nothing to be uncertain about. At 50¢ it is at its maximum.

Which is where the money is. By market count this corpus is U-shaped — most markets sit near the extremes, already effectively settled. But nobody trades a settled market. Weight by actual volume and it inverts: 60.5% of all trading happens between 25¢ and 75¢, where the fee is still at least three-quarters of its peak.

So the fee is largest exactly where the market is least accurate, and exactly where the money goes. Those three facts are the same fact.

Small, guaranteed, and it compounds

Zero minus a guaranteed fee is negative. Not usually negative — negative on every single trade, by construction, before anything about the world is known.

At 50¢ with fee f you stake 0.5 + f to win 1. The per-bet mean is −0.0303 with a standard deviation of 0.9697, so the drift is tiny next to the noise. That is what makes it feel survivable. It isn’t — the drift accumulates with N and the noise only with √N, so time is on the wrong side.

probability you are ahead, after N bets
betsyou are ahead
10037.8%
1,00016.2%
10,0000.090% — about 1 in 1,100
cross-checked against a 40,000-path simulation: theory 13.42% vs simulated 13.23% at N = 1,000

What we looked for and did not find

A methodology that only lists its wins is an advertisement, so here is everything that failed.

No edge survives costs. Selling every market indiscriminately returns +4.25% ROI, which is +0.0208 per contract. Put a 2¢ spread on it and that becomes +0.0008 — nothing, in exchange for all of the risk.

The favourite–longshot bias is not here. The classic result says longshots are overpriced. Fading them (p < 0.10) returns +2.41% — worse than selling indiscriminately. The famous story does not hold in this data, and we are not going to pretend it does.

A result we had to talk ourselves out of. One strategy showed +21%. It was leverage, not skill: profit per contract is flat at about 2¢ across the whole price range, while ROI% swings from 2% to 19% purely because a cheap NO position divides by a small number. Always read profit per contract next to any percentage.

A real model lost, 30 times out of 30. We fitted a latent-exposure Poisson model — each word gets a rate, each speech gets a length, fitted jointly by maximum likelihood. Held out, it scored a Brier of 0.2338 against the market’s 0.1589. It never won a single split. And even if it had, it needed to win by more than the fee to be worth anything.

The part that makes the headline false

“Prediction markets always take your money” is not true, and we are not going to say it.

The fee does not evaporate. It goes to whoever posted the order you hit. Makers pay nothing and collect a rebate funded by taker fees, and a genuinely better-informed trader can win. There are two seats at this table and they are not symmetric.

The narrower claim is the one the arithmetic actually supports, and it is sharper for being narrow: the taker loses by construction. If you are tapping buy in an app, you are the taker. Every time.

the data — everything above is reproducible from these

prediction-market-mentions.csv — all 2,623 settled markets: the word, the speech, four price points, the outcome, the volume and the fee at that price.
prediction-market-methodology.md — the sample narrowing, the code to rebuild the calibration table, the ruin derivation, and every result that did not work.