Towards minimal-MEV-AMM via Direct Elicitation
I have been thinking about AMM designs that directly elicit initial prices to offers traders, as a way of reducing the amount of MEV that can be extracted from LPs. Attention conservation notice: very raw work in progress.
Passive liquidity providers give away for free a straddle to those who first trade with them. Directly ellicit the price vector that removes this free stradle seems possiblein principle: it is the final price vector in the block. The block builder is in the perfect position to compute such starting prices. They seem like the natural agent to execute this price setting.
I conjecture that direct elicitation of final in block prices and their use as starting prices, with a deposit that collateralizes the max net exposure the AMM is taking at any point on that block, is optimal for passive liquidity providers.
The AMM can pre comit to pay the builder a small share of the profits for this service. If it only offer liquidity on blocks in which a builder has set its prices, the AMM would not appear to be exposed to the volatility in-between blocks. It seems possible to build such a AMM with mevboost already.
A Simple mechanism
The AMM only provides liquidity in a block if it has already interacted with the initial price setting transaction from the builder setting its initial price and placing a deposit.
- The AMM takes all transactions as long as its net position entered on that block is not higher in value than the deposit
- A fee plus the deposit is given to the builder on the next block if the final price is equal to the starting price the builder reported.
- If the final price did not match the initial then the deposit is given to the LPs of the AMM and no fee.
a variation for partial fills and inter-block liquidity
The value of the deposit is the net position the AMM is taking in the block (this allows for example to provide liquidity to bigger orders that cant be exactly balanced). Note that to the extent the trades inside a block balance perfectly there is no risk for the builder of losses in the deposit.
To accept order types that cannot be patially filled the net-bond mechanism seems like it should extends naturally by using prices of the AMM in future blocks to price the value of the taken positon at the end of the previous block.
related work: LVR, McAMM
The free stradle perspective is in https://moallemi.com/ciamac/papers/lvr-2022.pdf
A closely related idea recently in the forum is the MEV capturing AMM (McAMM) - #20 by josojo . It auctions off the first trade right, to recapture of the MEV that is emited due to the initial prices being different from the end prices.
- Like it, the Min-MEV-AMM relies on builders ordering a specific transaction in the block before those that trade with the AMM.
- Like the McAMM all trades would revert if the intiial price vector call with bounty was not used on a block.
- Unlike it, it does not require those with information about prices to trade into positions to move prices. It tries to not emit the extractable value in the first place.
So far have only been thinking about eliciting the starting prices, not the fee level. But the block builder knows the realized volatility in the block, so could also set the optimal fee level (aka bid-ask spread) to extract profits form the orderflow it is including in that block. The net fee paid to the builder would then be a linear share in the fee plus LVR the AMM collected.