LibraryMarkets2021Design paperCorpus record
Automatic market-making with dynamic peg
Curve Cryptoswap. Michael Egorov.
Stableswap concentrates liquidity around a fixed price of one. This paper moves that concentration so it can follow a moving price between volatile assets. The pool reprices itself from its own trades. It does not know the outside world except through those trades.
Cryptoswap is stableswap with a moving peg. Liquidity concentrates around an internal price that the pool updates from its own imbalance. There is no external oracle inside the invariant. A dynamic fee widens when the pool is off balance. The paper does not promise a return to liquidity providers.
- Evidence
- Primary paper
- Re-measured
- No
- Assumptions
- 4
- Records linked
- 5
Code
Source, repository, and what is actually hosted
- Curve Finance, 2021https://classic.curve.finance/files/crypto-pools-paper.pdf
- The source URL is not a GitHub repository. No code remote is invented.
- Full text is not mirrored. Public availability is not a licence to copy the file onto this site.
- Add to a reading list
01 Claim ledger
What the paper is allowed to say
Each row is a sentence already in the study. The status is the same on every row: a model claim, not a live measurement.
Claim 01 · Paper model
The peg is a price, not one
Stableswap assumes assets should trade near 1. This paper repeats the idea around a vector of prices that can change, so volatile pairs can use a similar invariant.
Claim 02 · Paper model
The pool updates its own price
Trades move an internal price. The transformation is specified in the paper. An outside market is visible to the pool only when arbitrageurs trade.
Claim 03 · Paper model
Concentration without a range order
Liquidity providers do not set a tick range, as in Uniswap v3. The invariant concentrates liquidity near the current internal price, and the price creeps as the pool is used.
Claim 04 · Paper model
Fees are a function
The paper allows the fee to rise as the pool leaves balance. That is a protection for liquidity, not a quoted yield.
02 Three cuts
Observation, model, falsifier
A desk does not stop at the summary. Each claim is cut three ways, using only this study's own assumptions and checks. Nothing here is a new figure.
01 The peg is a price, not one
Observation
What the study says
Stableswap assumes assets should trade near 1. This paper repeats the idea around a vector of prices that can change, so volatile pairs can use a similar invariant.
Model
What has to hold
The assets are the ones the invariant expects. A rebasing or fee-on-transfer token is outside the paper.
Falsifier
What would retire it
How fast can a trade move the internal price?
02 The pool updates its own price
Observation
What the study says
Trades move an internal price. The transformation is specified in the paper. An outside market is visible to the pool only when arbitrageurs trade.
Model
What has to hold
The assets are the ones the invariant expects. A rebasing or fee-on-transfer token is outside the paper.
Falsifier
What would retire it
How fast can a trade move the internal price?
03 Concentration without a range order
Observation
What the study says
Liquidity providers do not set a tick range, as in Uniswap v3. The invariant concentrates liquidity near the current internal price, and the price creeps as the pool is used.
Model
What has to hold
Parameters, including how fast the price moves, are the ones in the pool you are looking at. The PDF is a design. Deployments set numbers.
Falsifier
What would retire it
How fast can a trade move the internal price?
04 Fees are a function
Observation
What the study says
The paper allows the fee to rise as the pool leaves balance. That is a protection for liquidity, not a quoted yield.
Model
What has to hold
The assets are the ones the invariant expects. A rebasing or fee-on-transfer token is outside the paper.
Falsifier
What would retire it
Is a fee being presented as a yield? The paper does not.
03 Sequence
One action, as an operating tape
- 01Liquidity is deposited against the invariant.
- 02A trader swaps. The balances move and the trader pays a fee that depends on how far the pool is from balance.
- 03The internal price updates from that imbalance, with the paper's dampening.
- 04Arbitrageurs who disagree with the internal price trade against it.
- 05A large trade can move the internal price before that arbitrage arrives.
04 Load-bearing
The argument, and where a pitch drops it
Self-reference is the risk
The cut
A price computed from the pool's own trades can be pushed by the trades. The paper is a curve design, not a claim that the resulting price is a safe oracle for liquidations.
Why it carries weight
If this cut is skipped, the paper's name is being used without the mechanism that makes the name mean anything.
Where it is dropped
A self-referential price can be pushed. The paper's transformation is not a manipulation-proof oracle.
Passive is not riskless
The cut
Liquidity providers do not manage a range. They still hold inventory of volatile assets, and they still lose to toxic flow. The invariant changes the shape of that loss. It does not repeal it.
Why it carries weight
If this cut is skipped, the paper's name is being used without the mechanism that makes the name mean anything.
Where it is dropped
The invariant does not pay liquidity providers a fixed rate. Fees depend on volume and on the parameters.
05 Register
What has to be true
Model · Not re-measured
Parameters, including how fast the price moves, are the ones in the pool you are looking at. The PDF is a design. Deployments set numbers.
Model · Not re-measured
The assets are the ones the invariant expects. A rebasing or fee-on-transfer token is outside the paper.
Model · Not re-measured
Arbitrage is possible. A pool in a market with no arbitrageurs does not track anything.
Model · Not re-measured
Later NG contracts may differ. Check the code if the question is a live pool.
06 Divergence
What happened after the paper
Curve's volatile pools are the deployment of this idea. The 2021 PDF remains the design reading. Stableswap is the earlier paper for pegged assets. Uniswap v3 is the alternative where the liquidity provider, not the invariant, chooses the range.
A later client, parameter set, or reward formula is a different object. Cite this paper for the mechanism. Cite a primary release for the network. This desk has not re-run the proof.
07 Pre-mortem
What to check before you use the idea
- 0 of 4 marked on this browser. A mark is a reading note, not a pass, a rating, or a recommendation.
08 Anatomy
The paper, in the order a builder needs
The problem it names
A constant-product pool spreads liquidity across every price. A stableswap pool assumes the right price is one. Neither is a good fit for two assets whose fair price moves and whose liquidity providers will not constantly reset a range.
What the design proposes
- An invariant in the stableswap family, transformed so the peg is a price vector rather than one.
- That internal price moves when the pool is traded, with a dampening the paper specifies.
- Fees can widen when the pool is away from balance. The paper's name for the idea is a dynamic fee, not a promised return.
How the mechanism is specified
- Liquidity is concentrated near the pool's current internal price. Traders who push the price pay more as they leave that region.
- The internal price is an exponential moving function of trade imbalance in the paper's construction. It is not an oracle feed.
- No outside price is consulted by the invariant itself. Arbitrageurs are how the pool learns.
What this page does not treat as proven
- A self-referential price can be pushed. The paper's transformation is not a manipulation-proof oracle.
- The invariant does not pay liquidity providers a fixed rate. Fees depend on volume and on the parameters.
- Later 'NG' implementations can change parameters. The 2021 PDF is the design, not the current contract.
09 Lexicon
Terms, opened into the record
- Dynamic peg
- An internal price the invariant concentrates around, updated from trading imbalance rather than fixed at one.
10 Repository
Every linked record on this page
Underlined words open a page that already exists: a concept, a protocol profile, a failure record, or another paper. If a word is not underlined, this desk does not have a record for it.
This is Blockchain Lab's reading of a public design paper. It is not the paper, not a copy of it, and not an offer of tokens, equity, custody or a partnership. Later network behaviour can diverge from the text. Nothing here is investment, legal or technical advice.
Research status: Design paper. Last reviewed: 1 October 2026. This is a reading of a public paper, not investment, legal or security advice.
