A uniswap v4 hook that sets dynamic fee for a pool based on the price movements. The dynamic fee partially discriminates informed order flow from arbitrageurs. It gives LPs similar efficiency to the dynamic spreads in tradfi, while still allowing LPs to be passive.
A uniswap v4 hook that sets dynamic fee for a pool based on the price movements in previous blocks.Β
The dynamic fee partially discriminates informed order flow from arbitrageurs. It allows LPs to quote their liquidity more efficiently. It gives LPs similar efficiency to the dynamic spreads in tradfi, while still allowing LPs to be passive.
This is an improvement in AMM design that can reduce losses for liquidity provision by 15%. We believe in the future all pools will have dynamic fees: it improves the profit-net-losses (PnL) of the liquidity providers, which will naturally prefer such efficient pools; it is also better for the Ethereum protocol because it decreases the MEV that can be extracted and provides more stable incentives for validators and block builders.
We note that the fee also affects users, not only LPs and arbitrageurs. This project is a proof of concept and future versions will include pools with more complex fee structure that optimally balance efficiency between these classes of users.
Because this is an LP friendly design, aiming to attract more LPs. We also provide AAVE-Compound integration so that they can put their LP rewards/withdrawn liquidity on the two lending protocols.
The hook is deployed on Optimism and Scroll testnet.
We built the smart contract using Uniswap V4 hooks with Foundry. Also included a deploy script as well as unit tests to make sure the logic works as expected. For AAVE/Compound integration we are calling their smart contracts directly. We deployed our smart contract on both optimism and scroll since those are the chains that have uniswap v4 PoolManager available.