Market Structure/
The stableswap invariant, and why a pool’s balance is the earliest de-peg signal
Curve’s pricing curve keeps two dollar assets trading at parity until one of them is being sold hard. The composition of the pool tells you that before the price does.
A constant-product market maker prices every trade along a hyperbola, so even a pool of two assets that should be worth the same moves its price with every swap. For stablecoins that is wasteful: most of the pool’s depth sits at prices that should never print. Curve’s StableSwap design, described in Michael Egorov’s 2019 whitepaper, blends a constant-sum curve, which trades at exactly one-to-one, with a constant-product curve, which never runs out of either asset. An amplification parameter sets how far the blend leans toward constant-sum.
The result is a pricing curve that is nearly flat around the balanced point and bends sharply only when the pool becomes badly imbalanced. Trades near parity move price almost not at all and pay a fee. Trades that push the pool far to one side face rapidly worsening prices. That shape is what makes a stable pool the deepest place to trade between dollar assets, and it is also what makes its balance a signal.
How the curve prices a pool
Think of the pool as a dealer with a fixed inventory of two assets who is obliged to quote. While inventory is balanced the dealer quotes parity, minus a fee, to anyone. As traders sell one asset into the pool, the dealer accumulates it and runs low on the other. The stableswap curve lets the dealer keep quoting near parity for a long way into that imbalance, because the amplification parameter flattens the price response. Only when the pool is holding mostly one asset does the quote move meaningfully away from one.
The consequence for a liquidity provider is that a stable pool absorbs a great deal of one-sided selling at a price that does not reflect it. The pool’s price is still near parity. The pool’s composition is not.
March 2023
The clearest illustration came when Silicon Valley Bank failed. Circle disclosed that a portion of the reserves backing its USDC stablecoin were held at the bank, and traders sold USDC for other stablecoins over the following weekend. Curve’s largest stablecoin pool, designed to hold roughly equal parts of three dollar assets, filled with USDC and DAI as traders fled into USDT: CoinDesk reported the pool’s USDT share shrinking to a small fraction of the pool while the other two assets ballooned to nearly half each. The pool kept quoting close to parity for much of that move, because that is what the curve is built to do. The composition told the story hours before the price did.
The same pool inverted later that year when the market’s concern shifted to USDT, and the same pattern appeared: composition skewed first, price followed only if the selling continued. In both episodes the pool did exactly what it was designed to do. It absorbed a run at a stable price and left its liquidity providers holding the asset being run from.
What a provider watches
The lesson is that the risk in a stable pool is concentrated in a single event, one side losing its peg, and that the pool itself publishes the earliest warning. A provider who monitors composition rather than price can act while the quote is still near parity; a provider who waits for price is acting after the pool has already converted their position into the weaker asset.
- Composition: the share of each asset in the pool against its balanced target, tracked continuously
- Skew persistence: whether an imbalance mean-reverts within hours or grows over days
- The weaker asset: the pool is assessed on the credit of whichever side is more likely to be sold
- Exit depth: whether the provider’s position can leave the pool in the stronger asset without moving the price it is trying to avoid
Why the pools are still the base layer
None of this makes stable pools unattractive. They are the deepest, most liquid places to hold dollar-denominated capital on-chain, they earn fees from constant flow, and they can be exited in a single block in normal conditions. What the mechanism demands is that a provider treat composition as a risk signal with a rule attached, size each pool on the credit of its weaker asset rather than its fee rate, and understand that the curve which keeps the price stable is the same curve that hides a run until it is well advanced.
Sources
- 01Egorov, StableSwap: efficient mechanism for stablecoin liquidity (2019)
- 02CoinDesk, DeFi protocol Curve’s $500M stablecoin pool hammered as traders flee USDC (March 2023)
- 03CoinDesk, Traders ditch USDT on Curve, Uniswap, pushing key exchange pools into imbalance (August 2023)
- 04Kraken Learn, Stablecoin depegging: the what and why