The market-maker problem
A new market has nothing to trade against. The fix — an algorithm that always quotes a price — turns out to be the hardest and most important part of the whole machine.
Open a brand-new market and you hit a wall immediately. You want to buy a contract — but a trade needs a counterparty, and on a market nobody has touched yet, there is no one on the other side. The order book is empty. No bids, no asks, no price. The cleverest question in the world is worthless if there is nothing to trade against it.
This is the cold-start problem, and it's the quiet reason most prediction markets die before they live. A market needs traders to be liquid, but traders only show up where there's already liquidity. It's a chicken-and-egg standoff, and the order book can't break it on its own — an empty book stays empty.
The fix is to put a robot in the middle that will always quote a price. Not a human market maker who can step away, but an automated market maker (AMM): an algorithm that stands ready to buy or sell any contract at any moment, with a price that's a pure function of how much has been traded so far. From the first second, the market has a counterparty. The whole edifice — the live probability, the hedging, the forecast — rests on this one piece. And it is the hardest piece to get right, because the algorithm has to be willing to lose money to a better-informed trader and still be solvent at the end of the day.
In Prediction markets, explained I introduced the canonical AMM — Hanson's scoring rule — in a paragraph. This piece is the deep version: the two designs that run today's markets, the math that makes each one work, and the trade-off hiding between them. Because the choice of market maker is not a detail. It is a choice about who pays to make the market exist.
What a market maker has to promise
Before any formula, fix what the robot owes you. A usable AMM has to satisfy three things at once, and they pull against each other.
First, it must always quote — a firm bid and ask for every outcome, no matter how lopsided the book gets. Second, its prices must be coherent: for a binary market the YES and NO prices have to sum to $1, so the quote reads as a clean probability and can't be arbitraged against itself. Third, the operator needs to know its worst case — how much money this thing can bleed if every trade goes against it — before switching it on. An AMM with an unbounded downside isn't a product; it's a way to go broke on schedule.
Two families of mechanism deliver on those promises in very different ways. One was designed for forecasting and bounds the operator's loss by construction. The other was borrowed from crypto exchanges and shifts the cost onto whoever supplies the capital. Start with the one built for this job.
LMSR — the forecaster's market maker
In 2003, Robin Hanson published the Logarithmic Market Scoring Rule, and it remains the standard AMM for prediction markets.1 LMSR doesn't track a book of bids and asks at all. It tracks one thing: \(q_i\), the total number of shares ever bought on each outcome \(i\). The entire market is summarized by a single cost function:
Read \(C(\mathbf{q})\) as the total amount of money the market maker has taken in once the outstanding shares are \(\mathbf{q} = (q_1, \dots, q_n)\). To buy shares and move the state from \(\mathbf{q}\) to \(\mathbf{q}'\), you pay the difference, \(C(\mathbf{q}') - C(\mathbf{q})\). That's the whole pricing engine — one scalar function, no counterparty required. The robot is happy to take any trade; it just charges the change in \(C\).
The price you see quoted is the slope of that cost function — the marginal cost of the next infinitesimal share. Differentiate \(C\) with respect to \(q_i\) and the instantaneous price of outcome \(i\) falls out as a softmax:
This is a beautiful little result, and two properties of it are worth pausing on. The prices always sum to one — \(\sum_i p_i = 1\) by inspection, since the denominator is the sum of every numerator — so an LMSR market is a coherent probability distribution at every instant, automatically. You can never get the YES and NO quotes to add up to anything but a full dollar, which means there's no internal arbitrage to pick off. And the prices respond the way intuition demands: buy YES, you push \(q_{\text{YES}}\) up, the softmax moves probability toward YES, and the next YES share costs more. The market maker leans against every trade, exactly like a human specialist would.
The liquidity parameter \(b\)
Everything turns on the single constant \(b\), the liquidity parameter. It sets how hard the price resists being moved. A trade pushes the price; \(b\) decides how far. Crank \(b\) up and the book is deep — large orders barely budge the quote, and traders enjoy tight pricing. Shrink \(b\) and the book is thin — even a small buy sends the price flying.
This is the most important picture in the whole subject, so here it is literally. The same fixed-size buy walks the price up a steep ramp in a thin market and a gentle slope in a deep one.
So why not just set \(b\) enormous and give everyone a deep, friendly market? Because depth is not free, and the bill lands on the operator. Which brings us to the property that makes LMSR safe to run.
The bounded loss — \(b \ln n\)
Here is the elegant part. The LMSR market maker can lose money — it has to, since it's trading against people who sometimes know more than it does. But its maximum loss is capped, and you can compute the cap before you open. For a market with \(n\) outcomes, the most the operator can ever pay out, net of what it collects, is
The intuition is clean. The market starts at \(\mathbf{q} = \mathbf{0}\), where the maker has collected \(C(\mathbf{0}) = b\ln n\) worth of "starting" value. It ends when the truth is known: the winning outcome's shares pay out a dollar each, the losers pay nothing, and the cost function collapses to the winning corner. Work through the accounting and the gap between what the maker takes in and what it pays out is never more than that initial \(b\ln n\) — no matter what traders do, in what order, with what information. For a simple YES/NO market, \(n = 2\), so the cap is just \(b\ln 2 \approx 0.69\,b\). Pick \(b\) and you've picked exactly how much you're willing to spend to seed the market.
That single number — a known, finite subsidy — is why LMSR fits forecasting so well. The operator is, in effect, buying a public probability for the crowd and paying a fixed, capped price for it. You can think of \(b\ln n\) as the cost of the information the market produces: a deeper, more accurate market (bigger \(b\)) simply costs more to underwrite. There is a real tension baked into that constant, and it's worth stating plainly:
Bigger \(b\) ⇒ deeper book, smaller price impact, happier traders — and a larger maximum subsidy the operator must fund. Smaller \(b\) ⇒ cheap to run, but a thin, jumpy market that a single trade can yank around. Tuning \(b\) is tuning the price of liquidity against the cost of providing it. There is no setting that escapes the trade-off; there's only the one that fits the market.
LMSR's loss is bounded but it is also guaranteed to be spent — the subsidy is a cost the operator eats to bring the market into being. That's the right shape for a forecasting tool a company or an exchange wants to stand up. But it raises an obvious question: what if you don't want to subsidize the market at all? What if you could get someone else to fund the liquidity, and pay them for it? That's the second design — and it comes from a different world entirely.
CPMM — liquidity borrowed from DeFi
When prediction markets moved on-chain, they inherited the market maker that crypto exchanges had already converged on: the constant-product market maker, the engine inside Uniswap-style automated exchanges.2 Instead of a cost function, a CPMM holds a literal pool of two reserves — for a prediction market, a pile of YES tokens \(x\) and a pile of NO tokens \(y\) — and enforces one stubborn rule on every trade:
The product of the reserves must stay constant. That invariant is the market maker. Want to buy YES tokens? You add NO tokens to the pool and remove YES tokens, and the only constraint is that \(x\cdot y\) comes out to the same \(k\) you started with. Because pulling YES out shrinks \(x\), you have to add a more-than-proportional amount of \(y\) to hold the product fixed — and that asymmetry is precisely what makes the price move against you as you buy. No order book, no cost function, just a hyperbola the trades have to stay on.
The quoted price is the slope of that hyperbola — the ratio of the reserves. Differentiate \(x\cdot y = k\): along the curve \(y = k/x\), so
The marginal price of YES, in units of NO, is the reserve ratio \(y/x\) — read straight off the pool. When the two reserves are equal the price is 1:1 — a 50/50 market. As traders drain one side, the ratio tilts and the price with it. Here too the quote stays coherent: a YES token and its matching NO token always redeem together for one dollar at settlement, so their prices pin to a dollar by construction, the same coherence LMSR gets from its softmax.
Geometrically the whole mechanism is one curve, and a trade is a slide along it. A small trade barely moves you; a large one drags you up the steepening arm of the hyperbola, and every share you buy is priced worse than the last. That worsening is slippage.
The genius of the CPMM is who supplies the capital. Anyone can be a liquidity provider: deposit matched value into both reserves, and the pool puts your money to work quoting prices. In exchange you collect a fee on every trade that flows through. Liquidity is no longer a subsidy the operator burns — it's a yield-bearing position that the crowd funds, permissionlessly, because they're paid to. That's why CPMMs are capital-efficient and need no central underwriter: the market bootstraps its own depth.
But the liquidity provider is not getting paid for nothing. They're carrying a real risk, and it has a famously gentle name.
Impermanent loss — the price of being the pool
When the price moves, the CPMM rebalances the LP's deposit automatically — and always in the wrong direction. As YES rises, the invariant sells the pool's YES and accumulates NO; the LP ends up holding more of whatever fell and less of whatever rose. Compared with simply holding the two piles of tokens untouched, the LP comes out behind whenever the price has moved in either direction. That shortfall is impermanent loss3 — "impermanent" because it closes if the price wanders back, and permanent the moment the LP withdraws while it's open. In a prediction market the price doesn't wander back; it marches to 0 or $1 at resolution. The "impermanent" loss becomes entirely permanent, and the LP is left holding a fat stack of the losing token. The fees have to be rich enough to cover that, or no one provides liquidity for long.
So the two mechanisms answer the same question — who pays to make the market exist? — with opposite answers. LMSR says the operator pays, a fixed and bounded subsidy. The CPMM says the liquidity providers pay, a variable cost they accept in exchange for fees. Neither is free; the cost just shows up in a different place on the ledger.
- Prices from a cost function — softmax over outcomes
- Loss bounded by \(b\ln n\), known before launch
- Liquidity is a fixed subsidy the operator funds
- Built for forecasting; favored off-chain
- Prices from the reserve ratio along a hyperbola
- Permissionless, capital-efficient, self-bootstrapping
- LPs earn fees but bear inventory risk / impermanent loss
- Borrowed from DeFi; favored on-chain
Liquidity is the real product
Step back from the formulas and the thesis is simple. A prediction market is sold as a clever idea — a price that's a probability, a forecast with money behind it. But the idea is inert until something is willing to quote a price when the book is empty, and to keep quoting through every lopsided, adversarial, last-minute trade. The always-on price is the product. Everything else in this series — the calibration, the accuracy, the hedge — only exists downstream of a market maker that refused to go silent.
Which is why I think liquidity, not the user interface or the brand, is where these markets are actually won. A market with a thin book and wide spreads is technically alive and practically useless: nobody can get size in or out without moving the price against themselves, so the informed traders who'd sharpen the forecast simply don't show up, and the probability you're reading is noise. A market with deep, cheap liquidity is the opposite — it invites the very trading that makes its price worth trusting. Depth begets accuracy begets depth. Whoever supplies cheap, deep liquidity wins, because liquidity is the flywheel the entire mechanism spins on.
What's still hard
None of this is solved. The market-maker problem is the part of prediction markets that stays genuinely difficult, and it's worth being honest about the open edges.
Subsidy versus LP risk. Neither funding model is comfortable. LMSR's bounded loss is bounded but real — every market you stand up is money you expect to spend, and at scale, across thousands of markets, that subsidy adds up to a serious line item. The CPMM dodges the operator's subsidy but only by handing the risk to liquidity providers, whose impermanent loss in a market that resolves to 0 or $1 is not impermanent at all. If fees don't out-earn that loss, the LPs leave and the book thins. Both models are a bet that the value of the market exceeds the cost of making it — and that bet isn't always good.
Thin books. The cold-start problem never fully goes away. An AMM guarantees a quote, but a guaranteed quote in a market no one trades is a wide, shallow one. Most markets on most platforms are thin, and a thin market's price is a weak signal — easy to move, slow to inform, barely worth reading. Bootstrapping genuine depth on a long tail of niche questions is an unsolved, expensive problem, whichever mechanism you pick.
Adverse selection. This is the deep one. An automated market maker quotes a fixed formula; it cannot tell a noise trader from someone who knows. So the informed trader picks it off — buys just before the news confirms, sells just before it breaks — and the maker is structurally on the wrong side of every smart trade. LMSR's \(b\ln n\) bound caps how bad this can get; a CPMM's LPs eat it as a drag on returns. Either way, the market maker is the patsy at the table by design, and the fee or the spread has to be wide enough to survive the people who know more than it does. Set the price of liquidity too low and the informed bleed you dry; set it too high and no one trades. Threading that needle is the real craft, and no formula does it for you.
That last problem is also where the work I spend my days on lives. A market maker that can't distinguish the informed from the noise has to lean on everything around the formula — surveillance, position limits, the ability to see who's trading and why — to keep adverse selection survivable. The mechanism is universal and copyable; the operational machinery that lets it run safely under real money, inside the rules of a real jurisdiction, is neither.4 The math of the market maker is the elegant part. Keeping it solvent against people who know more than it does is the part that takes a company.
So the market maker is not a piece of plumbing you bolt on at the end. It's the first decision and the hardest one — the algorithm that turns a question into a market, and the place where the cost of doing so is quietly paid. Get it right and the price is live, deep, and worth trusting. Get it wrong and you have the cleverest empty room on the internet.
- Robin Hanson, "Logarithmic Market Scoring Rules for Modular Combinatorial Information Aggregation," Journal of Prediction Markets (2007; circulated 2002–03) — the canonical automated market maker for prediction markets. LMSR was introduced one level up in this series, in Prediction markets, explained; this piece derives its price and loss bound.
- The constant-product market maker, \(x\cdot y = k\), is the invariant popularized by Uniswap (V. Buterin's 2017 sketch; Hayden Adams' Uniswap, 2018) and now standard across DeFi automated market makers; on-chain prediction markets adopt the same engine.
- "Impermanent loss" (also divergence loss) — the shortfall a constant-product liquidity provider suffers, relative to simply holding the two assets, whenever the pool price diverges from the deposit price. For a market that resolves to 0 or 1, the divergence is maximal and the loss is realized.
- Seeker — compliance and surveillance infrastructure for prediction markets. MVP/demo live; the operating license is the goal, not a current claim.