Lecture 6: The Grossman-Miller Market Maker: A Pragmatic Treatise on Liquidity Provision
A practical series for the discerning retail trader and the quantitative alchemist on Market Microstructure
đŻïžGreetings, esteemed reader!
Itâs been a while! Hope you are well!
Have you ever pondered the plight of the market maker?
The âinvisible hand of the marketâ is the one who stands ready to buy when others wish to sell, and sell when others wish to buy. This is a curious activity, one that requires both fortitude and a most sophisticated understanding of risk.
The Glostein-Milgrom model we reviewed last time clearly explains trading with informed and uninformed traders. Long story short, market makers miss out on trading opportunities to informed traders, and to recover losses and earn profits, MMs trade with liquidity (noise, retail) traders, creating a combined effort to balance the market ,recoup losses, and book profits.
Highly recommend the very first article on adverse selection and the maker maker business - the one published by Jack Treynor aka âBagehotâ, in 1971, itâs called âThe Only Game in Townâ, - clear and concise, and not a single formula was used.
Modelling participants with whom to trade is one part of the MM story (yielding a mathematical proof that one should always buy from uninformed traders, which we did at the Glostem-Milgrom lecture). The other crucial aspect is inventory management - as an MM, we donât want to hold assets longer than necessary.
The Grossman-Miller model addresses exactly that.
It all started in the year of our Lord 1988, when Sanford J. Grossman and Merton H. Miller illuminated this mystery with their seminal work on market making and liquidity provision. Their model reveals how market makers extract compensation for their services whilst managing the inventory risk.
Fear not! For we shall not merely theoriseâwe shall implement! By the article's end, you shall possess both the mathematical prowess and the playground to simulate your very own market-making operation.
đ„ Shall we commence?
The Market Maker's Fundamental Dilemma đ
Consider, if you will, the market maker's predicament:
1. No intrinsic desire for inventory: Unlike a merchant who stocks âassetsâ (to be fair, shitcoins, primarily) for eventual profit, we, as a market maker, have no inherent wish to hold these stinky bags at all.
2. Temporal mismatch: When accepting one side of a trade, we must waitâsometimes interminablyâfor a counterparty to materialise.
3. Price risk exposure: During this waiting period, the cruel hand of fate may move prices against us.
This triumvirate of challenges forms the core of what Grossman & Miller sought to model. There are more modern models addressing these challenges. In this post, let us start with how G&M approached this most vexing problem.
The Grossman-Miller Framework: A Three-Act Play đȘ
Letâs simplify the drama unfolding timeline down to the three time periods.
With a cast of characters:
- n identical Market Makers (MMs): Our protagonists, initially holding no assets but armed with initial wealth W_0.
- Liquidity Trader 1 (LT1): Arrives at time t=1 with i units to trade (that is, if i is negative, they are selling i assets, if positive, then they are here to buy).
- Liquidity Trader 2 (LT2): Appears at t=2 with exactly -i units to trade (what a serendipity)
Now let's start cooking. We assume that all participants are risk-averse, more precisely, they exhibit risk aversion with the utility function:
Where X is cash, the future cash value of the asset.
Îł > 0 captures the degree of risk aversion. If you meet this elegant formula for the first tame, itâs a classic constant absolute risk aversion utility function. Essentially, what we need to understand is that this utility function just maps money into âhow much one likes itâ value, and this function is concave, meaning that every new buck gives less satisfaction. That means that the risk-averse trader always prefers a sure amount to a fair gamble with the same expected value.
Thatâs basically the beauty of this exponential formula:
The utility (U) of getting the average (E) payoff (X) is always higher than the average utility of the risky payoff.
Solving The Model, Backwards:
The Mathematics of Liquidity đ§ź
Act III: The Denouement (t = 3)
At the last timestamp, t=3, the asset's true value is revealed
- Ό is a constant (the fundamental value of the asset).
- Δ_2 and Δ_3 are independent price updates announced between periods - we assume they are independent normally distributed random variables with mean zero and variance Ï^2 (written as âŒN(0,Ï^2)). Δ_t becomes known between t-1 and t, e.g. Δ_2 is not known at step 1 but is announced by step 2.
Act II: The Matching (t = 2)
Walking backwards, a step earlier, each agent j maximises the utility function:
By t=2, we already know Δ_2, and we maximise averaged U(X3j) over the remaining randomness.
Subject to the budget constraints:
These are the key expressions to understand; the remainder follow from them.
(1) states that the cash account for agent j at step 3, X3j, equals the cash value agent j had at step 2 plus the revenue from selling g2j units of the risky asset at the price S3 at time t=3.
(2) is derived from the wealth before step 2 (right side, which is cash X1j and the q1j assets priced S2) equals the wealth after step 2 (left side, which is cash X2j and assets left after step 2, q2j, by their price S2). This makes sense as a self-financing constraint. No new money is injected or pulled out - itâs just replacing inventory for cash from the same pocket.
Given our exponential utility and normal distributions, the optimal portfolio becomes:
Market clearing requires:
Since all agents are identical save for their endowments, and
we obtain:
A most satisfying result! The price at t=2 equals the conditional expectationâefficiency reigns supreme when matching orders arrive!
Act I: The Initial Imbalance (t = 1)
Now for the piÚce de résistance! At t=1, only LT1 and the MMs participate. Each maximises expected utility knowing that at t=2 they'll exit with zero inventory.
The optimal holdings become:1
Market clearing with
Therefore:
Behold! The liquidity discount emerges!
When LT1 sells i > 0, the price drops below the fundamental value by
Thatâs because the market makers must temporarily absorb the inventory imbalance i and carry that risk until it can be unwound later.
Look, liquidity cost is literally volatility Ă risk-aversion Ă imbalance and MMâs discount is a risk premium for warehousing bags:
Vol spikes Ï2 â liquidity gets expensive even if fundamentals donât change.
Dealers get more risk-averse Îł goes upâ same.
Bigger one-sided flow (greater i) â price must move more to bribe someone to hold it.
Competition socialises inventory risk!
Indeed, the factor
â says: more market makers â smaller discount. Thatâs intuitive: the same shock i gets divided across more balance sheets, so each dealer carries less risk and demands less compensation.
Risk aversion Îł is literally how expensive liquidity is
If Îłâ0 (risk-neutral dealers), then S1âÎŒS1: no liquidity discount. As Îł increases, market makers hate holding inventory more, so they move price further away from ÎŒ to get paid for carrying risk. So the âcost of immediacyâ comes from risk aversion, not from information asymmetry. A risk-neutral world has free immediacy
A Playground đ
Weâve built an interactive web app that brings this legendary paper to life.
https://grossman-miller-simulator.zerolag.club/
How to use:
Adjust parameters (# of market makers, trade size, volatility, risk aversion)
Hit âRun Simulationâ and step through t=1 â t=2 â t=3
Watch prices, positions, and P&L evolve in real-time
Toggle âShow Formulasâ to see the underlying math (KaTeX rendered)
Share scenarios via URLâparams are encoded in the query string
I encourage you to think about the following while playing with it:
How prices move when buy/sell orders arrive asynchronously
Why market makers earn a âliquidity premiumâ for bearing inventory risk
The magic number: n/(n+1) â how many MMs determines how much immediacy you get
Why adding more market makers compresses spreads
Price autocorrelation from inventory unwinding (yes, itâs negative!)
Feel these equations with this illuminating simulation!
Do not risk rashly or at least for free, and see you soon! đ
Reading List đ
Ălvaro Cartea, Sebastian Jaimungal, JosĂ© Penalva â Algorithmic and High-Frequency Trading (Cambridge University Press, 2015). Cambridge Assets
Sanford J. Grossman, Merton H. Miller â âLiquidity and Market Structure,â The Journal of Finance, 43(3), 617â633 (1988). DOI: 10.1111/j.1540-6261.1988.tb04594.x Wiley Online Library
Thatât follows maximizing the exponential utility function:
At time t=1, agent j chooses how many units q1j to hold going into period 2. By the next step, the price is revealed as
So the only uncertainty between t=1 and t=2 is the normal shock Δ2.
First, we write terminal (time-2) wealth in terms of the decision variable q1jâ. If we buy q1jâ units at price S1â, our cash decreases by q1j S1, but we will own q1jâ units worth S2â at time 2:
This is the key: the choice q1jâ only scales the random price change S2âS1.
(I) Now maximise expected CARA utility:
Thatâs because X2jâ is affine in a normal random variable, it is itself normal; and for CARA utility with normal wealth, maximising expected utility is equivalent to maximising the certainty equivalent (which is the right side of the above expression).
Then weâre computing mean and variance, since S1â is known at time 1, we put it out of E:
So by substituting that into (I), the optimisation reduces to a simple concave quadratic, and by taking the first-order condition, we obtain:


