This analysis is for uniswap v2. I believe all pools use a 0.3% fee. The varying fee levels (0.05%, 0.3% etc.) are on Uniswap v3 - which is not based on x*y = constant (it instead uses liquidity price bands).

Many v2 pools receive further incentives. Not sustainable, but helps explain liquidity.

Still, you make a good point in quantifying IL and it’s expensive!

That spreadsheet contains data on the popular mainnet ETH-USDC 0.05% and 0.3% pools, which do not receive any significant incentives that I am aware of. Interestingly, restricted ranges do not change the results. Consider that when the price is out of an LPs range, they are then not reflected in these liquidity numbers I pulled, so they do not affect the cost, which is a function of liquidity, price, and volatility. These inactive ranges also do not receive fees. So, they are ignored in the cost and revenue calculation, as appropriate. Basically, an inactive range is just a parked position, not losing via an IL, not making any fees.

Right, we’re on the same page then that we’re talking about v3 (where, yes, incentives are lower) except I would have thought participants having restricted price ranges means you now need to discretise your options model because the “strike” gets reset as you move from one narrow price range for liquidity to the next. (In practice the ranges submitted by liquidity providers are diverse and overlapping, but I suppose a discretised model would be one approximation. I would imagine that IL should go away as the size of price ranges tends towards zero. In practice my intuition says it will be non zero but small.)

Perhaps I am wrong on this. If so, then Uniswap v3 fails in its core promise to largely eliminate the IL suffered in v1 and v2.

v3 looks a lot more different than it really is. It is a hybrid of simple positions (inactive ranges) and v2 ranges, and the simple positions are distractions. Inactive ranges are not exposed to IL, which is a function gamma, and inactive ranges have gamma=0. Restricted ranges, v3, succeeds in capital minimization, but for IL it is identical to v2. The essence of the IL is the gamma; when a v3 range is inactive its gamma is zero as the delta is zero or 1, unchanging. This is why the gamma method of estimating IL is so great, as it is much simpler to calculate than the standard approach.

If I just provide liquidity to Eth-USD within a range of $1,500 to 1,510 - isn’t my potential for IL reduced significantly? Basically I’m selling a very narrowly scoped call option (vs v2 where I write a very broad call option). Seems convexity is much worse in the latter case but I’m probably missing something?

Yes, but note there is a perfect correlation between your exposure to IL and your fee income; when you are outside your range you have no IL risk because it can be costlessly hedged, but you get no income.

Thanks for this. A few points:

This analysis is for uniswap v2. I believe all pools use a 0.3% fee. The varying fee levels (0.05%, 0.3% etc.) are on Uniswap v3 - which is not based on x*y = constant (it instead uses liquidity price bands).

Many v2 pools receive further incentives. Not sustainable, but helps explain liquidity.

Still, you make a good point in quantifying IL and it’s expensive!

That spreadsheet contains data on the popular mainnet ETH-USDC 0.05% and 0.3% pools, which do not receive any significant incentives that I am aware of. Interestingly, restricted ranges do not change the results. Consider that when the price is out of an LPs range, they are then not reflected in these liquidity numbers I pulled, so they do not affect the cost, which is a function of liquidity, price, and volatility. These inactive ranges also do not receive fees. So, they are ignored in the cost and revenue calculation, as appropriate. Basically, an inactive range is just a parked position, not losing via an IL, not making any fees.

Cheers for the response Eric!

Right, we’re on the same page then that we’re talking about v3 (where, yes, incentives are lower) except I would have thought participants having restricted price ranges means you now need to discretise your options model because the “strike” gets reset as you move from one narrow price range for liquidity to the next. (In practice the ranges submitted by liquidity providers are diverse and overlapping, but I suppose a discretised model would be one approximation. I would imagine that IL should go away as the size of price ranges tends towards zero. In practice my intuition says it will be non zero but small.)

Perhaps I am wrong on this. If so, then Uniswap v3 fails in its core promise to largely eliminate the IL suffered in v1 and v2.

Basically uniswap v3 replaces what was a straddle in v2 with a continuum of floored straddles of tiny core width/height.

v3 looks a lot more different than it really is. It is a hybrid of simple positions (inactive ranges) and v2 ranges, and the simple positions are distractions. Inactive ranges are not exposed to IL, which is a function gamma, and inactive ranges have gamma=0. Restricted ranges, v3, succeeds in capital minimization, but for IL it is identical to v2. The essence of the IL is the gamma; when a v3 range is inactive its gamma is zero as the delta is zero or 1, unchanging. This is why the gamma method of estimating IL is so great, as it is much simpler to calculate than the standard approach.

Thanks!

If I just provide liquidity to Eth-USD within a range of $1,500 to 1,510 - isn’t my potential for IL reduced significantly? Basically I’m selling a very narrowly scoped call option (vs v2 where I write a very broad call option). Seems convexity is much worse in the latter case but I’m probably missing something?

Yes, but note there is a perfect correlation between your exposure to IL and your fee income; when you are outside your range you have no IL risk because it can be costlessly hedged, but you get no income.