← NeuPortal blog

Beyond the Single-Model Prophet: Reading Polymarket With a Team of AI Agents

By ·

Beyond the Single-Model Prophet: Reading Polymarket With a Team of AI Agents

Open a Polymarket contract and you see a single number: a "Yes" share trading at 63 cents. The temptation is to point one large model at it, ask "will this happen?", and treat the answer as prophecy. It feels modern. It is also the most fragile way to forecast a market.

A lone model is a single point of failure. It has one training distribution, one set of blind spots, one way of being confidently wrong. When it hallucinates a fact, over-weights a headline, or quietly rounds a 12% tail down to zero, nothing in the system disagrees. You get a crisp probability with no idea how much to trust it. Markets punish that kind of false confidence for a living.

The alternative is not a bigger prophet. It is a team.

A price is already a probability

Start with what a prediction market actually is. On Polymarket or Kalshi, a contract pays a fixed amount if an event resolves yes and nothing if it resolves no. Because the payout is fixed, the price carries information: a "Yes" share at 63 cents is the crowd saying the event is roughly 63% likely.

The market reached that number by letting anyone who disagrees trade against it. If you think the true odds are 80% while the price says 63%, you buy the underpriced shares, and enough informed money moving the same way drags the price toward consensus. The result is an aggregation of scattered knowledge — news, expertise, intuition, and capital at risk — compressed into one figure.

So the benchmark for any forecaster is not "was I right?" It is "were my probabilities better calibrated than the price?" That is a high bar, because the price already blended the crowd into a number. To clear it even occasionally, you need more perspectives than one model holds. Hence the team.

Three lenses that disagree on purpose

Instead of one oracle, run several agents, each with a deliberately narrow view.

- The **base-rate agent** anchors on history. How often do teams in this position actually win? How often does a rate cut of this size happen? It ignores the narrative and reports the frequency. - The **news agent** reads the last 48 hours — injuries, filings, primary-source headlines — and adjusts the base rate for what is genuinely new. - The **microstructure agent** reads the market itself: liquidity, spread, how fast the price moved, whether one large order dragged it. It treats the price as evidence rather than gospel, and separates a considered 63% from a thin, illiquid 63%.

Each agent is weak on its own. The base-rate agent misses breaking news; the news agent overreacts to it; the microstructure agent can mistake noise for signal. But their errors are not correlated the way a single model's errors are with itself. When the three converge, you have a robust estimate. When they diverge, the disagreement is the signal — it tells you exactly where the uncertainty lives.

The adversary in the room

Convergence can also be a trap: three agents can quietly share the same wrong assumption. So the team needs a seat for someone whose only job is to attack the emerging answer.

An **adversarial verifier** takes the draft probability and tries to break it. Is the base rate cherry-picked from a flattering reference class? Is the news source primary, or a rumor echoed three times until it looked like confirmation? Did the microstructure read confuse a stale order book for conviction? What would have to be true for this call to be badly wrong — and how likely is that? The verifier red-teams the forecast before the market does.

This is where multi-agent design stops being a gimmick. The point is not more compute or a chorus of yes-men. It is structured disagreement: diverse lenses to generate a probability, an adversary to stress it, and an aggregator that widens the interval when the room cannot agree, instead of faking precision it has not earned.

Edge is calibration, not a hot take

Here is the discipline that keeps the whole thing honest. A forecast is not good because it sounds smart or nails one dramatic call. It is good if its stated probabilities match reality over many events — if the outcomes it calls 70% happen about 70% of the time. That is calibration, and it is the only edge that survives contact with an efficient market.

Against a liquid Polymarket price, the realistic goal is not to "beat the market" reliably; no method does that, and anyone promising it is selling something. The goal is to be well-calibrated, to recognize the rare cases where the team genuinely sees something the crowd is slow on, and to size that confidence honestly. A forecast that reports "68%, but two agents disagreed, and here is why" is worth more than a lone model declaring "82%" with a straight face and no receipts.

Why every call gets locked

None of this means anything if you grade your own homework. Any lab, ours included, could quietly delete its losing forecasts and showcase its winners. Self-reported track records are stories, not evidence.

So every forecast the team produces is written down before the event, hashed with SHA-256, and Bitcoin-timestamped via OpenTimestamps. The benchmark price is frozen at the same instant, at or before the lock — never after. Once the event resolves, both forecasts get a proper score (Brier, log-loss), and the result is published, wins and losses alike. Nobody, including us, can backdate a call or bury a bad one.

That is the actual product. Not a prophet, not a promise of edge — a tamper-evident, publicly scored track record. The benchmark we care about is verifiability, not a flashy accuracy number we have not earned. A single model can tell you a confident story about the future. A team that argues, red-teams itself, and locks every call in public is building something you can check.

Educational content — not financial or betting advice.