The Market Making Book

1. Trading from Zero

Before you can make a market, you must understand the machine where markets live: the limit order book.

Part I · Chapter 1

Prices are not a number — they are two numbers

Open any trading app and you'll see "BTC: $97,431". That single number is a convenient fiction. At any instant a market really has two prices:

  • The bid — the highest price anyone is currently willing to pay. If you want to sell instantly, this is what you get.
  • The ask (or offer) — the lowest price anyone is currently willing to accept. If you want to buy instantly, this is what you pay.

The gap between them is the bid-ask spread. The "price" your app shows is usually just the midpoint. The spread is not an inefficiency — it is the price of immediacy, and it is precisely where the market maker's revenue lives.

Parable · The airport currency kiosk A currency exchange kiosk buys euros at $1.05 and sells euros at $1.09. Nobody calls this a scam — the kiosk provides a service: you can exchange right now, any time, without finding another traveler who wants the opposite trade. The 4¢ gap pays for that service. A market maker is exactly this kiosk, quoting thousands of times per second.

The limit order book

Modern electronic markets organize all outstanding intentions to trade in a limit order book (LOB, or CLOB — central limit order book). There are two kinds of orders:

  • A limit order states a price and waits: "I will buy 10 contracts at 47¢ or better." It adds liquidity to the book and rests there until matched or cancelled. The person posting it is called a maker.
  • A market order demands immediate execution at the best available price: "buy 10 now, whatever it costs." It removes liquidity. The person sending it is a taker.

Orders at the same price are usually filled in arrival order — price-time priority (FIFO). Your position in the queue at a price level matters enormously; we'll return to this in Chapter 7. Some options exchanges instead use pro-rata allocation, splitting fills proportionally to order size.

Try it. The figure below is a working order book. Press the buttons and watch what happens to the book, the spread, and the fees you pay or earn.

interactive — order book simulator
Best bid
Best ask
Spread
Last eventClick a button to trade.
Green rows are resting bids, red rows are resting asks; bar length is size at that price. Your own maker orders are marked YOU and glow amber. Market orders eat the opposite side of the book — and pay the spread for the privilege. Background traders occasionally fill your resting orders.

Makers, takers, and who pays whom

Because resting limit orders are what make instant trading possible, most venues price the two roles differently. In a maker-taker fee model, takers pay a fee and makers pay less, zero, or even receive a rebate. This asymmetry is not a detail — for a market maker, fee structure frequently decides whether a strategy is viable at all. On Kalshi (Chapter 9), the taker fee alone makes naive strategies unprofitable; on Binance (Chapter 12), reaching a fee tier with maker rebates can flip the sign of your P&L.

Liquidity

A market is liquid when you can trade a large size quickly without moving the price much. Concretely, liquidity is: a tight spread, deep size resting at each price level, and fast replenishment after trades. Market makers are the liquidity in most modern markets — when they pull their quotes (as they did on May 6, 2010 — Chapter 4), liquidity evaporates in seconds.

Depth and slippage: walking the book

The spread measures the cost of trading one contract. For anything bigger, the second dimension of liquidity takes over: depth — how much size rests at each level. A market order larger than the best level's size doesn't stop there; it walks the book, consuming level after level at progressively worse prices. The gap between the price you expected (the mid, or the best quote) and the average price you actually got is slippage — and it grows faster than linearly, because books usually thin out away from the touch.

interactive — a market order walking the book
Avg fill price
Slippage vs mid (50¢)
Levels swept
Unfilled0
Each red bar is resting ask size at a price; the amber portion is what your buy order consumes. Drag the size up: a 100-lot fills at the touch, a 1,500-lot pays a full cent more on average, and past the book's total depth the order simply can't fill. This curve — average price as a function of size — is the true price list of a market, and the spread is only its first entry.

Slippage is why nobody serious sends size in one order: large traders slice parent orders into small children spread over time (the VWAP/TWAP algos of Chapter 2), and why Kyle's λ in Chapter 5 — price impact per unit of flow — is the single number that summarizes a market's depth. For the market maker, depth is also a defensive instrument: how much you quote at each level decides how much a sweep can hurt you.

Long, short, and inventory

You're long when you own the asset and profit if it rises; short when you've sold what you didn't own (or sold a contract) and profit if it falls. A market maker's net position at any moment is their inventory, usually written q. The entire mathematical theory of Part II revolves around one question: how should my quotes change as my inventory grows?

What you now knowMarkets have two prices; the gap is the spread. Makers post resting limit orders and supply liquidity; takers cross the spread and consume it. Fees treat the two roles differently. The market maker's state variable is inventory. Next we add the layer every trading platform paints on top of this machinery — charts, candles, and indicators — and learn what each one looks like from the maker's side of the glass.

On this page

GitHubGitHub repository