6.3.7Market Microstructure

Understand auction mechanisms

1,932 words9 min readdifficulty · medium

WHAT is an auction mechanism?

WHY do exchanges use call auctions?

  • To aggregate liquidity at moments when it is thin or uncertain (market open, market close, after a halt).
  • To find a fair, single reference price instead of many jittery prices.
  • To reduce the advantage of being "first" — everyone in the batch gets the same price.

HOW the call auction finds the price — derive it from scratch

We want the price pp that maximises the number of shares that can trade. Let us build the two functions from first principles.

Step 1 — Define cumulative quantities. Let B(p)B(p) be total buy quantity willing to trade at price pp, and S(p)S(p) total sell quantity.

B(p)=i:limitipqibuy,S(p)=j:limitjpqjsellB(p)=\sum_{i:\,\text{limit}_i \ge p} q_i^{\text{buy}}, \qquad S(p)=\sum_{j:\,\text{limit}_j \le p} q_j^{\text{sell}}

Why this step? Because a limit is a worst acceptable price, not an exact one — buyers accept any lower price, sellers any higher.

Step 2 — Executable volume at price pp. You can only trade the smaller of the two sides (no trade happens with an unmatched share):

V(p)=min(B(p),S(p))V(p)=\min\big(B(p),\,S(p)\big)

Why min? If 500 want to buy but only 300 want to sell, only 300 trades occur — the extra 200 buyers go unfilled.

Step 3 — The auction price. Choose the price that maximises executable volume:

p=argmaxp  V(p)=argmaxpmin(B(p),S(p))\boxed{p^* = \arg\max_p\; V(p) = \arg\max_p \min\big(B(p),S(p)\big)}

Why max? The exchange's stated objective is maximum executable volume — the most shares changing hands.

Step 4 — Tie-breaking rules (WHY they exist). BB is a non-increasing step function and SS is non-decreasing, so min(B,S)\min(B,S) is often flat over a range of prices. Exchanges break ties in order:

  1. Max volume (already done).
  2. Minimum imbalance — pick pp minimising B(p)S(p)|B(p)-S(p)| (least leftover).
  3. Market pressure — if imbalance sign is fixed, pick the price closer to the pressured side.
  4. Reference price — closest to the last / previous close.
Figure — Understand auction mechanisms

Worked Example 1 — full order book crossing

Worked Example 2 — the tie-break bites

Worked Example 3 — a market order in the book


Common mistakes (Steel-manned)


Recall Feynman: explain it to a 12-year-old

Imagine a school selling 350 cookies. Some kids write "I'll pay up to 3 rupees," others "up to 2 rupees." Some bakers say "I'll sell for at least 1 rupee." The teacher lines everybody up and asks: "At what single price can the MOST cookies be sold?" Too high a price and few kids buy; too low and few bakers sell. There's a sweet middle price where the biggest crowd trades — and everyone pays that one price. That sweet price is the auction price.


Active-recall flashcards

What does a call auction output?
A single clearing price and the set of matched trades, found by maximising executable volume.
Define B(p), the cumulative demand.
Total buy quantity from all buy orders whose limit ≥ p; it is non-increasing in p.
Why is S(p) non-decreasing in p?
Higher price qualifies more sellers (all sellers with limit ≤ p), so supply grows with price.
Formula for executable volume at price p.
V(p) = min(B(p), S(p)) — only the smaller side can trade.
How is the auction price chosen?
p* = argmax_p V(p), the price maximising matched volume.
First tie-break after max-volume?
Minimum imbalance |B(p) − S(p)|.
What is order imbalance I(p)?
I(p) = B(p) − S(p); positive = buy pressure, negative = sell pressure.
Are all buyers counted in B(p*) filled?
No — only V(p*)=min(B,S) shares trade; the heavier side is rationed by priority.
How is continuous trading related to auctions?
It is a stream of tiny auctions with batch size 1, matching each new order against the resting book.
How do market orders enter the cumulative curves?
With limit ±∞, so they count at every price and add volume without setting the price alone.

Connections

  • Order Book Dynamics — the resting book that feeds B(p) and S(p).
  • Limit vs Market Orders — why limits define worst acceptable price.
  • Opening and Closing Auctions — real-world call auctions at day boundaries.
  • Price Discovery — auctions are the discrete engine of price discovery.
  • Bid-Ask Spread — collapses to a single price during an auction.
  • Volume-Weighted Average Price (VWAP) — benchmark related to executed auction volume.

Concept Map

outputs

outputs

family

family

is stream of

goal

feeds

feeds

equals min B,S

arg max gives

flat range needs

then

then

Auction Mechanism

Clearing Price

Matched Trades

Call Auction batch

Continuous Auction

Maximise Executable Volume

Cumulative Demand B p

Executable Volume V p

Cumulative Supply S p

Auction Price p*

Tie-Break Rules

Min Imbalance

Reference Price

Hinglish (regional understanding)

Intuition Hinglish mein samjho

Dekho, ek stock exchange basically ek bada matching machine hai. Auction ka matlab hai — saare buy orders aur sell orders ko ek jagah collect karo, aur woh ek single price dhoondo jahan sabse zyada shares trade ho sakein. Isko hum "call auction" kehte hain, jaise market open aur close ke time hota hai. Continuous trading actually chhote-chhote auctions ki ek fast stream hai.

Ab derivation samjho. Har buyer ka ek limit hota hai — "main is price tak pay karunga." Agar buyer $50 tak ready hai, toh woh $47 pe bhi khush hai. Isliye demand B(p) = un saare buyers ka total quantity jinki limit price pp se zyada ya barabar hai — yeh price badhne pe girti jaati hai. Ulta, supply S(p) = un sellers ka total jinki limit pp se kam ya barabar hai — yeh price badhne pe badhti jaati hai. Trade sirf chhoti side ke barabar hota hai, isliye V(p)=min(B,S)V(p) = \min(B, S). Jis price pe VV maximum hai, wahi hai clearing price pp^*.

Ek important baat: agar B>SB > S, toh sabhi buyers fill nahi honge — sirf min(B,S)\min(B,S) shares trade karenge, baaki priority (price-time) se ration honge. Yeh common galti hai — "main count hua toh mera order bhar gaya" — nahi bhai, count hona aur fill hona alag cheez hai.

Yaad rakhne ke liye mantra: "Build, Min, Max, Break" — pehle B aur S banao, phir min lo, phir max volume wali price pick karo, aur tie ho toh minimum imbalance se break karo. Yeh mechanism price discovery ka dil hai, isliye market open/close ka official price yahin se banta hai.

Test yourself — Market Microstructure

Connections