With the Uniswap Router is it possible to remove liquidity from one side of an LP? I know there is a function for providing liquidity to one side, but haven't been able to find a function for removing liquidity from one side. Also, would the contract which is executing this function have to have some balance of LP tokens?
1 Answer
When you add liquidity to create a new position in Uniswap v3, you select a price range for that position. The price range remains constant for the lifetime of the position. Any subsequent calls to addLiquidity
and decreaseLiquidity
cannot change this price range.
If the current price of the pool is outside the price range of the position, then calling decreaseLiquidity
will result in just one of the pool's tokens being made available for collection. This is because the whole position is on a single side of the price. There is no way how the caller can change this behavior, except by changing the price in the whole pool.