Inventory risk is a worry. Order-processing cost is a nuisance. But the market maker’s deepest enemy is none of those — it’s the counterparty who simply knows more than you do. Every time someone hits your bid or lifts your offer, you have to ask the uncomfortable question: did they trade because they need liquidity, or because they know which way the price is about to move? In 1985, Glosten and Milgrom proved something startling: even if you had zero inventory risk and zero costs, you would still have to quote a spread — purely to survive the traders who know more. This lesson builds that model from scratch, with the Bayes arithmetic worked out to the penny.
Before you read — take a guess
Pretest. Imagine a frictionless world: no inventory limits, no exchange fees, no processing cost, infinite capital. Would a competitive market maker still quote a bid below the ask?
The two kinds of trader
Analogy. You’re selling a used car at a fixed price to whoever walks up. Some buyers are just regular people who happen to need a car today — they don’t know more than you about this specific vehicle. But occasionally a mechanic walks up who can hear from the engine that the transmission is fine and worth more than your sticker price. The mechanic only buys when your price is too low. If you can’t tell the mechanic from the regular buyer, you must raise your price a little for everyone to cover the times you get picked off by the expert. That premium is adverse selection.
Definition. In market microstructure we split order flow into two populations:
- Informed traders know the asset’s true value before it’s public. They buy only when is above the quoted price and sell only when it’s below. They are always on the right side — the toxic flow.
- Uninformed traders — also called noise traders or liquidity traders — trade for reasons unrelated to value: rebalancing, cash needs, hedging, index flows. They buy or sell roughly 50/50, independent of . This is the benign flow the maker wants.
The maker cannot see which type each order came from. It only sees the order. The entire game is inferring the type from the trade.
Match each trader type to its defining behavior.
Pick a term, then click its definition.
Why a market order is information
Analogy. A poker player who suddenly shoves all-in is telling you something, even without showing cards. The action itself is a signal. A market order is the same: the direction of the trade is news, because the people most eager to trade in a given direction are disproportionately the ones who know it’s the right direction.
The core insight. A buy order is more likely to have come from an informed trader (who buys only when is high) than a sell order is. So:
A buy raises your belief that the value is high; a sell lowers it. The rational maker therefore must sell higher than its prior mid (the ask reflects “given that you’re buying, value is probably high”) and buy lower than its prior mid (the bid reflects “given that you’re selling, value is probably low”). The gap between those two conditional expectations is the spread — and it exists with no inventory and no cost.
Think first
Before any model: why should the ask be ABOVE the unconditional mid E[V], rather than equal to it?
Hint: The ask is the price at which you sell. Who is on the other side of your sale? Condition on the fact that they chose to buy.
The Glosten–Milgrom model setup
Definition. The model is the cleanest possible world for isolating adverse selection:
- True value is binary: with .
- A prior (often ).
- A fraction of arriving traders are informed (they know ); the remaining are noise traders who buy or sell with probability each.
- Trades are unit size, one at a time. The maker is competitive and risk-neutral, so it earns zero expected profit on each trade (Bertrand competition drives any positive margin to zero).
The zero-profit condition pins the quotes exactly:
The maker sells at the value conditional on a buy arriving and buys at the value conditional on a sell arriving. No fudge factor, no cost markup — those conditional expectations are the whole price.
Order probabilities. An informed trader buys iff and sells iff . A noise trader is 50/50. So:
A buy is more likely when the value is high — by exactly . That gap is the entire engine of the spread.
In the Glosten–Milgrom setup, what does the competitive (zero-profit) condition force the ask to equal?
Worked example: computing the spread to the penny
Let’s nail down every number. Take:
So the prior mid is , and the value is uncertain by .
Step 1 — order probabilities.
Step 2 — unconditional probability of a buy (law of total probability):
Step 3 — posterior after a buy (Bayes):
Step 4 — the ask :
Step 5 — the bid. By symmetry, and , so:
Step 6 — the spread:
The mid stays at , equal to the prior — symmetric prior, symmetric quotes. The full picture in one table:
| Quantity | Formula | Value |
|---|---|---|
| Prior mid | 100 | |
| 0.70 | ||
| 0.30 | ||
| 0.50 | ||
| Bayes | 0.70 | |
| Ask | 104 | |
| Bid | symmetric | 96 |
| Spread | ask − bid | 8 |
With a symmetric prior () this collapses to a beautiful shortcut: . The spread is the informed fraction times the value uncertainty. Pure adverse selection, no cost anywhere.
This Bayes update is exactly the natural-frequency picture — drag the sliders to see the posterior move (base rate = prior , “sensitivity” = , “false-positive” = , and the headline posterior reads 70%):
- High value & a buy arrives
- 350
- Low value & a buy arrives
- 150
- P(V_H | buy)
- 70.0%
possible worlds: 1,000; flagged: 500; truly real: 500.
Set the prior to 50%, P(buy | V_H) to 70% and P(buy | V_L) to 30% to match the worked example: of all worlds where a buy arrives, 70% have the high value — so the posterior P(V_H | buy) is 0.70, which prices the ask at 104. Crank the prior down and you'll see how a surprising buy moves belief even more.
Lock in the arithmetic of the worked example.
Pick the right option for each blank, then check.
With a symmetric prior, the Glosten–Milgrom spread equals the informed fraction times the value uncertainty: alpha × (V_H − V_L) = 0.4 × 20 = , so the ask sits at 104 and the bid at .
The spread as a pure adverse-selection premium
Analogy. Insurance has three pieces in a premium: the cost of running the office (processing), a buffer for unlucky claim clusters (inventory/risk), and the expected payout itself (adverse selection — the policyholders who buy because they expect to claim). Even a magically free, infinitely-capitalized insurer must still charge the third piece, or it loses money to the people who know they’ll claim. Glosten–Milgrom is that third piece in isolation.
The decomposition link. A real quoted spread bundles three classic components:
| Component | What it pays for | Present in Glosten–Milgrom? |
|---|---|---|
| Order-processing | Exchange fees, tech, clearing, the cost of doing business | No — assumed zero |
| Inventory | Variance/financing of carrying an unwanted position | No — risk-neutral, no inventory limits |
| Adverse selection | Expected loss to better-informed counterparties | Yes — the entire spread |
In the worked example, the maker has zero inventory cost and zero processing cost, yet quotes a spread of 8. That 8 is exactly the expected loss to the informed. Check the balance: against a noise trader the maker earns the half-spread (4) regardless of side; against an informed trader the maker loses the full move. The zero-profit condition guarantees those net to zero — the spread is calibrated precisely so the half-spread harvested from noise flow pays back the losses to informed flow.
Sort each statement by which spread component it describes.
Place each item in the right group.
Bayesian price discovery: how information enters prices
Analogy. A detective doesn’t learn the culprit from one clue; each clue nudges the suspect list until the picture sharpens. The maker is the detective and each trade is a clue. After every trade, the maker treats its posterior as the new prior and re-quotes. Buys ratchet the mid up; sells ratchet it down; over many trades the mid converges to the true . This is the mechanism by which private information becomes public price.
Definition. After observing a trade, the maker’s posterior becomes its new belief, and the next mid is the new . Continue from the example: a buy just arrived, so the posterior is now . The mid jumps from 100 to . The next quotes are recomputed around 104. If another buy arrives, the posterior climbs again toward 1 and the mid toward 110; a sell pulls it back. Walk the chain:
| Trade # | Event | Posterior | New mid |
|---|---|---|---|
| start | — | 0.50 | 100.0 |
| 1 | buy | 0.70 | 104.0 |
| 2 | buy | 106.9 | |
| 3 | sell | 104.0 |
(Each update reuses , , and the flipped values for a sell.) If is truly , buys outnumber sells in the long run and the mid drifts to 110; the informed traders’ edge is competed away as the price catches up to what they knew. That convergence is the social function of markets — and the source of the maker’s pain.
The same tension drives the maker’s economics: it earns the half-spread from noise flow but bleeds to informed flow. Drag the sliders to feel the trade-off (informed share = ; widen the spread and the maker survives more toxicity):
- Profit per uninformed fill
- +3.0¢
- Loss per informed fill
- -5.0¢
- Net edge per trade
- 1.4¢
- Break-even informed share
- 38%
Every uninformed fill pays the half-spread; every informed fill hands over a bigger move. Push the informed share up and the net edge collapses — the only defense is a wider spread, exactly as Glosten–Milgrom predicts. The break-even informed share is where the harvested half-spread just covers the losses to the informed.
In Glosten–Milgrom, what happens to the maker's quoted mid after it observes a buy order?
Comparative statics: what widens the spread
Definition. With a symmetric prior the spread is , so two levers move it:
- More informed flow (): a higher fraction of toxic counterparties means each fill is more dangerous, so the spread widens linearly in .
- More value uncertainty (): when the two possible values are further apart, being picked off costs more, so the spread widens proportionally.
| Scenario | Spread | ||
|---|---|---|---|
| Base case | 0.40 | 20 | 8.0 |
| Twice as much informed flow | 0.80 | 20 | 16.0 |
| Twice the uncertainty (e.g. pre-earnings) | 0.40 | 40 | 16.0 |
| Calm, mostly retail flow | 0.10 | 20 | 2.0 |
| Pure noise (no informed traders) | 0.00 | 20 | 0.0 |
The last row is the punchline: with , the spread is zero. No informed traders means no adverse selection means no reason for a frictionless maker to charge anything. Conversely, the spread blows out exactly when you’d expect markets to get thin — around news, earnings, and volatility spikes, where both and jump at once.
Select EVERY change that widens the Glosten–Milgrom spread (symmetric prior). Choose all that apply.
Measuring toxicity in practice
Analogy. A casino watches for card counters with cameras and pit bosses; a maker watches for informed flow with statistics. You can’t see intent, so you estimate it.
The practical measures (brief, expert-level):
- PIN (Probability of Informed Trading). From Easley–O’Hara, PIN estimates the share of trades that are information-based by fitting a model to the daily imbalance of buys vs. sells. Roughly , where is the probability of an information event, the informed arrival rate, and the uninformed rate. It’s a slow, daily-frequency gauge.
- VPIN (Volume-Synchronized PIN). A high-frequency cousin that buckets trades by volume rather than clock time and measures order-flow imbalance within each bucket. VPIN spiked notably before the 2010 Flash Crash and is used as a real-time order-flow toxicity alarm.
- Markouts. The most practical, model-free measure: mark each fill against the mid a few seconds/minutes later. If the price systematically moves against the maker post-fill, that drift is the realized adverse selection — the empirical face of the term from the P&L lesson. Markouts turn the abstract into a dollar number per fill.
What does a consistently negative short-horizon markout (e.g. price 5 seconds after each fill moving against the maker) directly measure?
The maker’s defenses
Definition. Once you can estimate toxicity, you act on it. The defensive toolkit:
- Widen the spread with toxicity. Higher estimated → quote a bigger spread, exactly as prescribes. The first and bluntest lever.
- Cut quoted size. If the flow is toxic, post less depth so each adverse fill costs fewer shares.
- Skew quotes away from toxic flow. If buys are arriving informed, lift the ask and pull the bid back so you’re less likely to be the one selling into a rising market.
- Pull quotes entirely. Around scheduled news or when VPIN spikes, the right spread can be effectively infinite — so step out of the market until the dust settles.
- Seek uninformed flow. The structural defense: route to or pay for retail order flow, which is overwhelmingly noise. This is the economic engine behind the maker-taker rebate model and payment for order flow (PFOF) — covered in the next lesson.
Match each defense to the problem it solves.
Pick a term, then click its definition.
Misconception: “the spread is just a transaction fee”
The spread is not a fee — it's mostly an insurance premium
The intuitive story is that the spread is the maker’s commission for matching buyers and sellers — a service charge. Glosten–Milgrom shows that’s largely wrong. In the model there is no fee, no cost, no service charge — and the spread is still 8. The spread is overwhelmingly compensation for adverse selection: the maker’s expected loss to traders who know more. Treat it as a fee and you’ll mis-predict everything — you’d expect spreads to track processing costs (they don’t) instead of tracking information asymmetry and volatility (they do, tightly). Spreads gap out before earnings not because matching got expensive, but because the flow got dangerous.
Why is 'the spread is just a transaction fee for the matching service' a poor model of the bid-ask spread?
Recap
Big picture
Adverse selection & Glosten–Milgrom
- Adverse Selection
- Two traders
- Informed: know V, always right side
- Noise: trade ~50/50, value-blind
- Core insight
- A trade is information
- Buy → value likely high; sell → low
- Glosten–Milgrom
- ask = E[V | buy], bid = E[V | sell]
- Symmetric prior: spread = α(V_H − V_L)
- Zero cost, zero inventory — spread still > 0
- Price discovery
- Posterior becomes new prior
- Buys ratchet mid up, sells down → mid → V
- Comparative statics
- ↑α → wider spread
- ↑(V_H − V_L) → wider spread
- Toxicity & defense
- Measure: PIN, VPIN, markouts
- Defend: widen, cut size, skew, pull, seek retail
- Two traders
What is the single force that produces the spread in the Glosten–Milgrom model?
Check your answer to continue.
Key Takeaways
What to remember
- The spread can exist on adverse selection alone. Glosten–Milgrom (1985): with zero inventory risk and zero costs, a competitive maker still quotes a positive spread — purely to survive informed traders.
- A trade is information. A buy raises the posterior that value is high; a sell lowers it. So the competitive maker sets and .
- Worked result. With , , , : ask = 104, bid = 96, spread = 8. The symmetric-prior shortcut: .
- Bayesian price discovery. Each trade updates the posterior, which becomes the next mid; buys ratchet it up, sells down, and over many trades the price converges to true . That’s how information enters prices.
- Comparative statics. Spread widens with the informed fraction and with value uncertainty — which is why spreads gap out around news and volatility.
- Measure & defend. Toxicity is gauged by PIN, VPIN, and (most practically) markouts; defenses are widening, cutting size, skewing, pulling quotes, and sourcing uninformed retail flow.
- Myth busted. The spread is not a transaction fee — it’s mostly an adverse-selection (insurance) premium against better-informed counterparties.