Avellaneda–Stoikov handed you the where and the how wide. This lesson zooms in on the single number that makes a market maker sweat: inventory. Every fill leaves you holding something — long if you bought, short if you sold — and the mid can wander before you flatten. The genius move is that you don’t have to chase your position with frantic hedges. You can let your quotes do the work: nudge them off-center and order flow quietly carries your inventory back home. That nudge is quote skewing, and by the end you’ll see it for what it really is — a feedback controller that turns inventory into a mean-reverting process.
Before you read — take a guess
A maker just got lifted on its ask 50 times in a row, leaving it heavily SHORT. The mid hasn't moved. What is its core problem right now?
Inventory is the maker’s core risk
Analogy. A fishmonger who only sells fish never runs out of money — but a market maker is a fishmonger forced to both buy and sell all day. Every purchase leaves crates of fish on ice that can rot (the price drops) before the next buyer shows up; every sale you can’t restock leaves you owing fish you don’t have (a short) that gets pricier to buy back. Your cash drawer looks fine. Your exposure is the pile on ice.
The precise idea. Let be your signed inventory — positive when long, negative when short. The mid follows , so your inventory’s mark-to-market over a small time has variance
Risk grows with the square of inventory. Double your position, quadruple your variance. That convexity is why makers care far more about a position of 100 than two positions of 50.
Worked example. You’re long shares, σ = $0.40 per share per . Over the next minute the standard deviation of your P&L from price moves alone is |q|σ = 200 × 0.40 = $80. A one-sigma adverse move costs you $80 — for a position you only entered to earn a few cents of spread on each share. The spread you captured was perhaps 200 × $0.02 = $4. The risk dwarfs the edge until you reduce .
Inventory as a controlled process
Don’t think of inventory as a number that happens to you. Think of it as a state variable you steer. Left alone, fills push on a random walk away from zero. Your job is to add a restoring force so behaves like a spring pulled back toward a target — a mean-reverting process. Skewing is that spring.
Fill in the risk relationship.
Pick the right option for each blank, then check.
A maker's mark-to-market variance from price moves scales with inventory , so the standing risk a maker most fears is its position, not the spread it has captured.
The skew is linear in inventory
Analogy. Imagine your fair value isn’t the public mid — it’s a private mid that limps in the direction you’d like inventory to move. Long too much fish? Your personal “fair price” quietly drops, so you’ll happily sell a touch cheaper and you’ve lost your appetite to buy. You haven’t changed how wide you quote; you’ve shifted where the whole quote sits.
The precise idea. In Avellaneda–Stoikov the center of your quotes is the reservation price , and the skew is exactly the gap between it and the mid:
Read the signs: long () ⟹ skew is negative ⟹ sits below the mid. Both your bid and your ask are wrapped symmetrically around , so both quotes shift down by the same amount. The spread doesn’t change — the pair slides.
- — risk aversion: more fear, more skew.
- — variance: a wilder market makes the same inventory scarier, so skew harder.
- — time left: more runway for the mid to hurt you means a bigger nudge early, shrinking to zero at the close.
- Bid
- $97.15
- Reservation r
- $98.00
- Ask
- $98.85
Inventory slides the entire two-sided quote up or down: get long and both bid and ask drop (you become an eager seller, a reluctant buyer); get short and both rise. The vertical gap between the lines — the spread — barely moves; what changes is where that gap sits.
Worked example. Take , σ = $0.50 (so ), and of the session remaining. You’re long lots.
Your reservation price sits $0.16 below the mid. If the mid is $100.00, r = $99.84. With a symmetric half-spread of, say, $0.10, your quotes become bid $99.74 / ask $99.94 — both shaded down 16 cents from where a flat maker would post ($99.90 / $100.10). Your ask is now below the public mid: you are aggressively advertising “please take this fish off my hands.”
Pitfall: skewing one side only
A common beginner error is to raise the ask when long to “sell more” — that’s backwards. To sell more you make the ask more attractive (lower), not less. The whole quote slides toward the side you want filled. Long ⟹ everything down. Short ⟹ everything up.
When the formula bites hardest
Skew is largest with high , high , and lots of time left. It collapses to zero as : near the close there’s no time for inventory to hurt you, so even a big barely moves your center. That’s the model telling you to stop fighting inventory you can’t be punished for.
A maker is long q = 6, with γ = 0.2, σ² = 0.5, and (T−t) = 0.5. What is its skew, and which way do its quotes move?
Skew steers; spread sizes
Analogy. Driving a car, the steering wheel decides which way you point and the accelerator decides how fast. Confusing them is dangerous. In quoting, skew is the steering wheel (where the two-sided quote sits relative to the mid) and the spread is the accelerator/brake (how wide, hence how much edge per fill and how often you trade).
The precise idea. Your two quotes can be written as
where is the spread. Changing the skew moves — both quotes translate together, spread untouched. Changing the spread widens or narrows the gap around a fixed center. They are orthogonal controls.
| Control | Knob | Moves | Spread changes? | Job |
|---|---|---|---|---|
| Skew | both quotes together | no | steer inventory toward target | |
| Spread | quotes apart/together | yes | size edge vs. fill rate & adverse selection |
Worked example. Flat maker, mid $50.00, half-spread $0.05 ⟹ $49.95 / $50.05. Now go long and apply skew -$0.04: reservation price $49.96, quotes $49.91 / $50.01. The width is still $0.10. You did not widen to dump inventory — you shifted. If you’d instead widened to $49.90 / $50.10 you’d have changed your risk-per-fill and fill rate while doing nothing to steer inventory.
Why this separation matters
Spread answers “what’s the market like and how confident am I?” (volatility, competition, adverse-selection risk). Skew answers “where am I, inventory-wise?” Tangle them and you’ll widen when you should steer, or steer when you should widen — and bleed money either way.
Match each quoting action to the control it belongs to.
Pick a term, then click its definition.
Why skewing makes inventory mean-revert
Analogy. A thermostat doesn’t yell at the room; it just nudges the heat and lets physics do the rest. Skew is a thermostat for inventory. Drift too long and the controller quietly makes selling easy and buying hard, so the market itself trades you back toward target. No manual hedging, no panic.
The precise idea. Recall fills arrive with intensity — closer quotes get hit more. When you’re long and skew down:
- your ask moves closer to the mid ⟹ higher sell-fill rate ⟹ you shed inventory faster;
- your bid moves farther from the mid ⟹ lower buy-fill rate ⟹ you add inventory slower.
The net expected change in inventory becomes negative whenever (and positive when ). That’s a restoring force: for some effective speed . Inventory stops being a free random walk and becomes an Ornstein–Uhlenbeck-like mean-reverting process pulled toward the target.
Quote skew strength
- Bid shaded by
- 0.0¢
- Ask shaded by
- 0.0¢
Each trade pushes the maker long or short. Without skew, inventory wanders freely and can smash into its risk limit. Skewing the quotes — leaning against the position — pulls inventory back toward flat, the maker’s real job between trades.
Run the simulator above with No skew and watch inventory wander off and occasionally slam the limit. Switch to Gentle, then Aggressive: the same random fills now get yanked back to flat ever faster.
Inventory half-life. With restoring speed , a displacement decays like , so the half-life — the time to halve an inventory excursion — is
Stronger skew ⟹ larger ⟹ shorter half-life ⟹ inventory snaps back faster. If gentle skew gives , then minutes; doubling the skew strength to halves it to about 1.0 minute.
Pitfall: 'skew doesn't reduce my position, fills do'
True — and that’s the point. Skew never moves inventory by itself; it biases the odds of which side fills next. Over many fills that bias is a deterministic drift back to target. On any single fill it can still go the ‘wrong’ way. Mean reversion is a statistical pull, not a guarantee on the next trade.
A long maker skews its quotes down. Select EVERY true consequence.
Inventory limits and forced unwinds
Analogy. The skew thermostat handles normal weather. Inventory limits are the fuse box: hard caps that trip when the position gets dangerous regardless of what the smooth controller wants. Cross the fuse and you’re not a graceful maker anymore — you’re a panicked trader crossing the spread to dump risk.
The precise idea. Real desks bolt hard inventory limits on top of skewing. As approaches the cap you escalate:
- Skew harder — bias fills more aggressively toward the reducing side.
- Pull the dangerous side — stop quoting the side that would add to the position; quote one-sided.
- Breach ⟹ forced unwind — if you hit you must cross the spread yourself to flatten. You flip from maker to taker: you now pay the half-spread (and fees, and impact) you normally earn.
Worked cost-of-unwind example. You breach long by 500 shares and must sell them by crossing. The market is $30.00 / $30.06 (a $0.06 spread, $0.03 half-spread):
- As a maker you’d have earned roughly the half-spread per share. Instead you sell at the bid $30.00, paying the $0.03 half-spread: 500 × $0.03 = $15 of spread cost.
- Add taker fees, say $0.002/share: 500 × $0.002 = $1.00.
- Dumping 500 shares moves the market — say $0.01 of impact: 500 × $0.01 = $5.00.
- Total unwind cost ≈ $21. Compare to the swing you avoid the wrong way. The point: a forced unwind converts you from spread-earner to spread-payer — the exact economics you’re in business to avoid.
The limit is a feature, not a failure
A well-tuned book rarely breaches because skew keeps inventory mean-reverting well inside the cap. The cap exists for the regime where mean reversion isn’t fast enough — a one-sided flow avalanche. Hitting it should be rare and loud, a signal that your skew or spread was mis-sized for the flow.
Think first
When a maker breaches its inventory limit and crosses the spread to flatten, what fundamental change happens to its role and economics?
Hint: Think about who pays the spread in a maker-vs-taker trade.
The target inventory need not be zero
Analogy. A flat target is the default ‘no opinion’ setting. But if you genuinely believe fish prices drift up overnight, going home with some fish on ice isn’t a bug — it’s a position you want. Your thermostat’s setpoint moves off zero.
The precise idea. Plain AS assumes no drift () and the optimal target inventory is zero. Add an expected drift (an alpha) and the picture tilts: . Now carrying inventory aligned with has positive expected return, so the optimal target shifts to a non-zero . Your skew then centers inventory on rather than 0:
Bullish drift ⟹ positive ⟹ you tolerate being long and skew less aggressively out of longs (and harder out of shorts). The restoring force still acts — just toward , not zero.
Pitfall: confusing alpha with a license to warehouse
A small, noisy alpha barely moves because the denominator punishes variance. Letting a weak directional view talk you into a big inventory target is how makers turn a stable spread business into a blown-up prop bet. The mean-reverting discipline must survive; only the setpoint moves.
A maker develops a mild bullish alpha (expected upward drift μ > 0). How does its optimal inventory management change?
Skew vs. hedge vs. unwind
Analogy. Three ways to deal with too many fish: quietly mark them down so they sell over the afternoon (skew), buy insurance that pays out if fish prices crash so you can keep the crates (hedge), or back the truck up and fire-sale the lot right now (unwind). Cheapest and slowest first; fastest and most expensive last.
The three tools.
- Skew (passive, cheap). Bias your own quotes; let order flow reduce inventory over time. Costs you a little captured spread; no fees, no impact. Best for normal-sized, slowly-accumulated inventory.
- Hedge (neutralize, keep the position). Take an offsetting position in a correlated instrument (futures, ETF, a basket) to cancel the price risk while keeping the market-making position on. Doesn’t reduce your line item — it removes the risk from it. Best when you can’t shed inventory fast but can offset its risk cheaply.
- Unwind (active, expensive). Cross the spread to flatten now. Pays half-spread + fees + impact. Best (only) when inventory is dangerous and time is short — the forced-unwind regime.
| Tool | Speed | Cost | Keeps the position? | Use when |
|---|---|---|---|---|
| Skew | slow | cheap (lost edge) | reduces it gradually | normal inventory, time to spare |
| Hedge | fast | medium (basis + costs) | yes, risk-neutralized | offset cheaper than exiting |
| Unwind | instant | expensive (spread+fees+impact) | no, flattens | dangerous inventory, no time |
Easily-hedged ⟹ tighter spreads
If an instrument’s risk can be cheaply hedged (a liquid future tracks it almost perfectly), inventory is far less scary — you can offload its risk in seconds. So makers quote tighter spreads on easily-hedged names: less inventory fear means less compensation demanded. Hard-to-hedge, illiquid names get wide quotes because you’re stuck warehousing the risk.
Sort each inventory situation into the management tool that fits best.
Place each item in the right group.
The trade-off: there is an optimal skew
Analogy. Salting food: a little fixes a bland dish, too much ruins it. Skew is the same — some is essential, but cranking it to the max poisons your edge. There’s a sweet spot, not a “more is always better.”
The precise idea. Aggressive skewing cuts inventory risk, but it costs you on two fronts:
- Less captured spread. Shading your ask toward (or through) the mid means you sell for less edge per share. You’re effectively paying to dump inventory via worse prices.
- More adverse selection on the leaned-in side. Posting an aggressive ask near the mid means you fill exactly when informed sellers… wait — when informed traders want to take your cheap ask, i.e., when the price is about to keep moving against you. The closer your quote, the more it gets picked off by people who know something you don’t.
So the maker minimizes a sum: inventory-risk cost (falls with skew) + spread-give-up + adverse-selection cost (both rise with skew). The minimum is an interior optimum — a finite, “optimal” skew, not infinity.
Worked intuition. Suppose extra skew of cents cuts your expected inventory-variance cost by but gives up in spread-and-adverse-selection cost (rising faster as you lean harder). Total reduction is ; setting the derivative gives cents. Skew beyond 2 cents starts losing money on net — the marginal inventory relief no longer pays for the marginal edge you surrender.
Pitfall: 'skew as hard as possible to stay flat'
Maximal skew keeps inventory beautifully near zero — and quietly bankrupts you. You’d be selling your edge away and feeding adverse selection just to avoid variance you were being paid to bear. The market-making business is warehousing some inventory risk for compensation. Skew tunes how much; it shouldn’t drive it to zero.
Before you read — take a guess
Why isn't 'skew as aggressively as possible' the optimal policy, even though it minimizes inventory?
Recap
Big picture
Inventory risk & quote skewing
- Inventory & Skew
- Inventory = core risk
- Var = q²σ²dt (quadratic in q)
- Controlled, mean-reverting state
- Skew = −qγσ²(T−t)
- Linear in inventory
- Both quotes move together
- Long ⟹ down, short ⟹ up
- Two controls
- Skew STEERS (center)
- Spread SIZES (width)
- Mean reversion
- Lifts reducing-side fills
- E[dq] ≈ −κq
- Half-life = ln2 / κ
- Limits & unwind
- Hard caps ±q_max
- Breach ⟹ maker→taker
- Pay spread+fees+impact
- Manage 3 ways
- Skew (cheap, slow)
- Hedge (keep, neutralize)
- Unwind (expensive, fast)
- Optimal skew
- Risk↓ vs edge↓ & adverse↑
- Interior s*, not infinity
- Inventory = core risk
What is the skew (reservation price minus mid) for a maker with q = 10, γ = 0.1, σ² = 0.4, (T−t) = 0.5?
Check your answer to continue.
Key Takeaways
What to remember
- Inventory is the maker’s standing risk. Mark-to-market variance is — quadratic in the position. Captured spread is realized; open inventory is the live exposure.
- The skew is linear in inventory: . Both bid and ask shift together; long ⟹ down, short ⟹ up. The spread is untouched.
- Skew steers, spread sizes. They’re orthogonal controls — skew picks where the two-sided quote sits, spread picks how wide.
- Skewing makes inventory mean-revert. Shading toward the reducing side lifts that side’s fill rate, giving with half-life . Stronger skew ⟹ faster snap-back.
- Limits are the backstop. Breach a hard cap and you’re forced to unwind — flipping from maker to taker and paying the half-spread, fees and impact you normally earn.
- Target inventory needn’t be zero. A real drift moves the setpoint to ; you still mean-revert, just toward .
- Three tools: skew (cheap, slow, passive), hedge (keep the position, neutralize risk — easily-hedged names get tighter spreads), unwind (fast, expensive, last resort).
- There’s an optimal skew, not infinite skew. Aggressive skew buys lower inventory risk but costs captured spread and invites adverse selection. Minimize the sum; being paid to warehouse some risk is the business.