Uniswap V3 - research and recommendations

authors: @verto0912 @jdcook @overanalyser @catjam @Matthew_Graham @Pepperoni_Joe

Summary

With the introduction of concentrated liquidity, Uniswap increased capital efficiency for LPs and unlocked better trade execution for users. Same execution, in terms of price impact, can now be achieved with liquidity pools that are, on average, 4 times smaller. This has significant implications for liquidity mining incentives, which are the biggest expense for Index Coop.

We looked at the impact of Uni V3 on the buyers & sellers of our products, liquidity providers and the Coop itself. For the buyers & sellers, there’s no difference between V2 and V3 in terms of the user experience. For liquidity providers, while managing an LP position in V3 is currently more complicated than in V2, the capital efficiency of V3 should significantly improve execution and lead to higher trading volumes and thus higher fees to LPs. Further, while LPs have a choice to concentrate their liquidity around the current price, they don’t have to do so. It is still possible to provide liquidity across the entire price range, same as in V2. For the Index Coop, V3 allows us to offer the same execution to our customers with an approximately 4x smaller liquidity pool. At that size, around $8m for DPI at the time of writing, LPs will generate trading fees significantly above 30% without any incentives. This would make the DPI pool self-sustaining and meaningfully reduce the biggest expense for the Coop.

Further research can be found below. Based on our assessment, this group recommends the following:

  1. DPI should be migrated to V3 as trading volume should be sufficient to make the pool self-sustainable without incentives.

  2. MVI should stay on V2 - there’s not enough volume.

  3. As for other products:

    • FLI products should evolve organically.
    • SMI will launch on V3m using Uniswap’s liquidity mining contracts.
    • Bankless plan on launching BED on V3

There are several strategies for migrating DPI to V3 and we would like to request community’s feedback on the below options:

  1. Turn off incentives completely for the V2 pool and actively communicate our thinking to LPs.
  2. Keep V2 incentives for another month, with a 50% reduction, and actively communicate that rewards will cease after this final period.
  3. Manually incentivise LPs to migrate through an airdrop.
  4. Partner with Harvest and provide some incentives to V3 LPs using Harvest’s vaults.

Below is the in-depth research that the team put together.

Intro to Uniswap v3

Uniswap v3 introduces new features to the leading AMM that drives increased capital efficiency for LPs and a better trading experience for users. The core of the v3 update is concentrated liquidity - giving LPs control over what price ranges their capital is deployed as liquidity. Concentrated liquidity immensely increases capital efficiency. Uniswap v3 also introduces flexible fees and range orders, both features that provide a superior experience for Uniswap LPs.

The purpose of this section is to give an overview of the key features introduced by Uniswap v3 - setting a foundation for further discourse on how these updates benefit different users interacting with Uniswap and how the Index Coop should form new liquidity strategies with Uniswap v3.

Concentrated Liquidity

Uniswap v3 revolves around the creation of concentrated liquidity - the allocation of liquidity to specified price ranges. Uniswap v2 does not employ concentrated liquidity, but rather any liquidity deployed to a pool gets evenly distributed across the price range of zero to infinity.

With Uniswap v3, as the price between two assets rises and falls, any liquidity positions with a range that contains current price are considered active and can be traded against. If an LP is maintaining liquidity in a range that does not contain the current price, that liquidity is considered inactive. Concentrated liquidity offers deeper liquidity around the current price between two assets, as LPs are incentivized to keep their liquidity active and earn trading fees.

It is also important to note that concentrated liquidity is non-fungible liquidity. In Uniswap v2, LP tokens are fungible, meaning each token represents an equal unit of liquidity in a pool. Because LPs now deploy concentrated liquidity in v3, this liquidity is considered non-fungible. Each LP’s position is completely unique. LP positions in v3 are represented by ERC-721 tokens (NFTs) rather than ERC-20 tokens.

Capital Efficiency

Not having to deploy capital across the price range of zero to infinity increases capital efficiency. Trading fees earned by LPs are divided proportionally to how much liquidity they provide. In v2, all liquidity is considered equal, thus an LP earns fees proportional to how much of the overall liquidity pool they own. With v3, an LP only earns trading fees when their liquidity is active, and they earn fees proportional to how much of the current active liquidity they own. Essentially, LPs can strategically own higher percentages of active liquidity at any given time, thus earning a higher percentage of the trading fees.

Uniswap has provided a capital efficiency calculator in their blog post to help understand the capital efficiency impact that comes with v3.

Other changes

Flexible fees - Uniswap v3 introduces flexibility into the fee structure at the pool level. Pools can be created with one of three fee levels: 0.05%, 0.30%, and 1% (initially, more can be added by UNI governance over time).

Range orders - Single-sided asset provisioning with Uniswap v3 allows for range orders using the AMM. An LP can provide a single asset to a specified range - as the price moves through that range, the LP’s initial deposit is converted into the secondary asset. The two current possible range order types are take profit orders (“sell the top”) and buy limit orders (“buy the dip”).

Impact of Uni V3 on our stakeholders

In the recent forum post, OA identified three primary stakeholders when it comes to our products. They are:

  • Holders, including buyers and sellers
  • Liquidity providers
  • Index Coop itself

Holders

For holders, the optimal user experience entails the ability to buy or sell our products as close to the NAV as possible with the lowest cost, including gas, slippage and price impact. For this group of people, trading through V3 presents no additional hurdles as the interface is the same.

What about the execution, specifically the price impact? This article from Hasu and Paradigm Research does a good job explaining price impact.

With AMMs, the current market price is “the price the AMM wants for the marginal token. However, in practice, a trader will often buy or sell many tokens at once, with every token costing more than the previous one.

This difference between the current market price and the expected fill price is called ``price impact.”

This is where concentrated liquidity comes in. As mentioned above, concentrated liquidity increases the market depth and therefore reduces price impact. Let’s look at several examples.

From this table, we can see that at smaller pool sizes, execution improves by about 4x.

For more established pairs, that improvement is even more significant. At a pool size of $40m, for example, our exchange issuance and direct mint functionality for large purchases becomes unnecessary. It’s worth noting that the quantum of the improvement depends partially on how liquidity providers choose to concentrate their liquidity and therefore will vary on a case by case basis.

Liquidity Providers

For liquidity providers, the situation is more complicated. We consider them our customers because they:

  1. hold our products and

  2. provide the service to the Coop by supplying liquidity for our products.

However, we have established above that holders benefit materially from Uniswap V3. Furthermore, while liquidity remains important, the capital efficiency of Uniswap V3 means that we need much less of it to ensure the same level of customer experience for buyers and sellers.

Looking at this from the perspective of a liquidity provider, Uniswap V3 is certainly less friendly in terms of user experience. It is much more tailored to active management and, as LP positions are represented by NFTs, they are not currently compatible with the rest of the Ethereum ecosystem. There are solutions being developed to address both of these challenges.

At the same time, providing concentrated liquidity increases returns while also enabling range order (ie “sell the top” and “buy the dip”). It’s also worth noting that LPs can still provide liquidity for the entire range, making V3 experience equivalent to V2.

In his post, OA outlined some of the characteristics LPs might look for such as a desirable pair to own long term and high trading fees. Uniswap V3, through concentrated liquidity, increases trading fees an LP can earn while having no impact on the pair one owns. Overall, while migrating to V3 presents a challenge from a user experience perspective, it can be financially beneficial for LPs.

Index Coop

What is the impact of Uniswap V3 on Index Coop itself? From the Coop’s perspective, we care that our customers can buy our products easily, with low friction, as close to the NAV as possible and with the lowest cost, including gas, slippage and price impact. We also care about the financial costs associated with incentivising liquidity to enable that purchase experience.

As discussed above, there is no difference between Uniswap V3 and Uniswap V2 when it comes to the buying or selling experience. However, Uniswap V3 requires much less liquidity, between 3x and 5x less looking at MVI and DPI, to deliver that same experience. At the very least, migrating liquidity to Uniswap V3 should allow us to reduce incentives proportionately.

It is also worth considering the impact of trading fees on the overall rate of return for liquidity providers and therefore, the necessity of further incentives.

We estimate that a $1.5m MVI-ETH pool on Uniswap V3 will match the current execution parameters in V2. So far, we have seen the average volume for MVI at about $175k per day.

That’s $525 in fees for LPs ($175k * 30bps (swap fee)). On a $1.5 million pool, that’s about 13% APR.

What about DPI? We estimate that we need a $13 million DPI-ETH pool on Uniswap V3 that will match the current execution parameters in V2 but let’s assume a $15 million pool. For the last 3 weeks or so, the average volume for DPI has been above $12 million per day. Even at the lowest point, DPI averaged around $5 million per day.

Let’s use different levels of trading volume to estimate trading fees for liquidity providers. At $5 million trading volume, LPs generate $15k per day or about 36.5% APR. At $8 million trading volume it’s 58.4% per year and at $12 million LPs get 87.6% APR just from trading fees.

These scenarios should paint a clearer picture as to the incentives liquidity providers would receive in Uniswap V3 without any support from Index Coop and enable us to consider if additional incentives are necessary.

Quick note on automated liquidity management solutions

A number of protocols are working on automated liquidity management tools, including BOA, Xtoken, Stakewise, Gelato, Lixir finance, Visor Finance, Charm finance, Unipilot and Harvest finance. However, we believe that it will take several months for these solutions to be properly tested and therefore safe for us to implement.

Harvest Finance is the only option worth considering at this time. At the time of writing, they had 7 vaults running correlated and uncorrelated pairs with ~$12 m AUM. Structurally, Harvest vaults work by creating a single LP position where users can deposit funds. If market price moves out of the range, then a new NFT is created. Harvest has the ability to add rewards, FARM token is in DPI and the protocol has been around for almost a year.

14 Likes

Big props to the whole working group, and to @verto0912 for pulling this final post together. I just wanted to specifically highlight the call for feedback and discussion around:

  1. moving DPI liquidity to v3
  1. how do we successfully migrate DPI liquidity to v3

Obviously, feel free to comment on anything in the post or regarding v3, but just wanted to highlight these as they are the immediate actions that we propose taking and we want to develop a strategy as quickly as we can!

5 Likes

Adding for context :point_down:

Screenshot from Index Coop - MAR - MAY 2021 Treasury Report

5 Likes

Fantastic post! One thing I would like to add is that Uniswap is working on creating staking contracts here:

One of the great things about these contracts is they do not require us to enforce that LPs use any particular strategy (unlike harvest finance). It instead distributes the tokens based on the length of time your liquidity is in range (scaled by how concentrated your liquidity is). These contracts are currently undergoing audits but should be ready soon.

One of the great features of these contracts is that it allows for sophisticated LPs to use extremely tight ranges, decreasing price impact for traders and earning LPs greater staking rewards and fees for their troubles. With this strategy, we will be able to incentivize liquidity migration, and aggressively taper off rewards.

3 Likes

Hey @ncitron, thanks for the comment.

Yes, our concern with the Uniswap staking contracts was how long it would take for them to be ready for use (audited, etc) and also, given our constraints, how long it would take for us to actually deploy them. Last I heard Synthetix wanted to use those as well for SMI incentives and SMI was 6-8 weeks away? I believe some of it is due to weekly rebalancing requirements, not necessarily ability to execute liquidity mining on V3. If you could shine some light on timing that would be helpful.

The reason I’m asking about timing is 1) LM is expensive and 2) we only need to migrate $6-7 million of liquidity to improve on V2 execution as there’s currently about $30m in the V2 pool and $2.3m in the V3 pool (and using 4x improvement in capital efficiency as a guide).

We thought that some current options, like Harvest, would allow us to migrate the necessary liquidity after the current LM incentive period ends. @Matthew_Graham has been in touch with the Harvest team (we have a private channel in their Discord) and they are ready to support us on this. Matt can add more details here.

1 Like

Fantastic bit of work by all involved and much needed. First up agree with the need to migrate just to get that out of the way.

One of the weaknesses we’ve identified in ourselves as the Coop is a lack of coordination or communication externally in the past. I think we should go for option 2 here to avoid a similar situation, giving time to put a plan in place and share it with LPs. If we want a true exodus though I think that will need to be paired with incentives, as a DPI/ETH LP I’ve been looking for an excuse to migrate, any kind of incentive would be enough at this point. My personal preference would be a 1 time airdrop, purely because it avoids a load of work and it potentially gets the migration done in one quick blast, but don’t have strong feelings either way.

1 Like

Excelent piece! @verto0912 + team! Very educational :pray:

Just some general questions around v3

It’s worth noting that the quantum of the improvement depends partially on how liquidity providers choose to concentrate their liquidity and therefore will vary on a case by case basis.

I’m just interested in what people think about the “lumpyness” of liquidity concentration bands (see DPI:ETH below), how it will evolve and what effect it may have on price dynamics?

I envision “automated liquidity management” to effectively create a “race to spot”, incentivizing a more even distribution and lower price volatility over time?

Whilst the advantages of migrating to v3 are obvious, the disadvantages are not as that space is still evolving. Would maintaining some level in v2 be prudent until v3 fully matures? (Taking into account the fragemention and inter v2<>v3 dynamics)

Yes, I believe the blocker with SMI is not necessarily Uniswap V3. With that said, I think it would be valuable to understand the timeline for the release of the Uniswap V3 staking contracts so that we can make a more informed decision. I see Harvest as really more of a stopgap solution until the more flexible staking contracts are released. Let me see if I can figure out how far out those contracts are. The Uniswap team isn’t exactly the most responsive with these things…

Yeah, it’s not even a stopgap but a one-off. We would do a 1-month burst of incentives to facilitate the migration of circa $8m to V3, then turn the incentives off.

Thanks Noah.

2 Likes

Hey y’all - I just wanted to add a few of my thoughts on Uni v3 and migrating DPI liquidity to v3 - mostly developed while being a part of this working group.

Uniswap v3 is simply more capital efficient - we can get the same depth with less liquidity, or we can get much more depth with the same liquidity. Because this is not a passive position for LPs, it creates a much more efficient market. LPs are more incentivized to provide an actual service that takes time and effort, and they get paid for it. And with v3, that service is more aligned with our interests as a DAO - LPs only get paid when their liquidity is useful.

AMMs draw liquidity due to the opportunity to earn on your locked assets - either via trading fees or liquidity mining rewards. Like most things in DeFi, the total liquidity in a pool is a function of how much earning potential there is - the higher the APR, more LPs will enter, and vice versa. Then comes volume - higher volume happens when more trades can be made with minimal price impact, or in other words, where there is more market depth (more liquidity). If there is sufficient demand, the volume in a pool will also rise if the liquidity rises. However, this might not always be the case. If an asset has hit its demand cap, you may not see that rise in volume even if you raise liquidity. However, it is difficult to determine where that demand ends until you have enough liquidity to find out.

So if we incentivize liquidity in short bursts, it increases the liquidity of a pool to allow for any potential demand to work itself into the market. Once that demand (in the form of volume) has shown itself, there are now more trading fees to be had by LPs. LPs are now incentivized, even as liquidity mining incentives are pulled away, to support this new level of trade volume. The short-term incentives may be necessary to lift any constraints on the market that are keeping demand from truly presenting itself. Ongoing liquidity mining incentives will not be needed - those were needed in v2 because we were constantly trying to make up for the capital inefficiency. With v3, the fees will sustain liquidity. This seems to be a rough playbook we can follow moving forward - obviously we will see how it performs as we migrate DPI liquidity to v3.

Now, with DPI specifically, in my opinion the main question is whether or not we need to incentivize any migration to the v3 pool? I believe whatever we do, we will want an option in place to run a short incentives campaign. I would support a natural migration with careful monitoring as long as we are prepared to run incentives if we aren’t getting the migration of liquidity and volume that we expected. This isn’t something we want to flop, so I think that would be my vote at this point.

If you can’t tell, I am a big proponent of going all in on Uniswap v3. It is a new paradigm. We will have to learn. But it is such a better foundation for us to launch and grow products. Maybe most importantly, I think this process with DPI will give us the footing to establish a playbook for our future product launches and liquidity.

3 Likes

This is great analysis - thinking back to the discussion with @verto0912 and @overanalyser on Index Coop Liquidity Mining Strategy it seems increasingly clear that the DeFi Summer LM approach is both in-efficient and outdated. AMMs will only continue to grow more capital efficient from here. This is a good thing because it will free up significant capital and allow us to focus much more on product market fit - which needs to be a priority going forward.

v2 is similar to an old inefficient Ford Truck while v3 is like a hybrid. It is still not perfectly efficient but it is orders of magnitudes more efficient than the previous model. This is a good thing because it forces DeFi protocols to focus on product vice simply spending more and more capital on liquidity. It also means that we can use more innovative methods to incentivize smaller levels of liquidity ( i.e. treasury loans or UMA options).

We are both a financial and tech organization. When I first came to IC my thinking was very much skewed towards the financial side of our organization and the importance of liquidity. Increasingly I see that at this stage of our growth we need to focus on the tech side of our organization. Which means focusing on developing and delivering compelling products.

Once again this is awesome work! Really helped clarify v3. Firmly believe this will provide the foundation for a compelling long-term strategy around AMMs.

1 Like

Incredible job for pulling up this topic! Moving to V3 has a huge benefit to Index Coop in the long run.

This might be out of the topic but some projects are using their treasury to LP and earn fees.
If IC can LP DPI-ETH on V3, this will provide additional income for the Coop (risk of Impermanent Loss must be considered) and support the migration to V3.
I do not have so much idea if the treasury of IndexCoop has DPI though.

The picture below is the chart of OHM’s protocol-owned liquidity vs Total Liquidity in Sushiswap.
I believe this is not their treasury but I just want to highlight the concept that OHM controls almost all of the liquidity and earns from it.

1 Like

I think @Matthew_Graham brought that up in the Discord a few weeks ago. I’m increasingly leaning towards the conclusion that we should be strategically LPing our products. We have about $200k DPI in the Treasury and could be adding $400k to the DPI-ETH V3 pool. Can do so via Harvest which would allow us to somewhat concentrate the position and not have to actively manage it OR just provide to the entire range (same as V2).

2 Likes

I don’t like #1 as it feels too sudden.

#2 should allow a phased transition to v3.

Whether / how we incentivise people to move to I’m still considering


1 Like

Posting some 3rd party dapps that would potentially help us simulate/manage LP on UNI v3.

Simulate
uniswapv3.flipsidecrypto.com/
defi-lab.xyz/uniswapv3simulator
uniswap-v3-pools.vercel.app/
revert.finance/

Management of V3 LP positions:
charm.fi
gelato.network
visor.finance (hacked)
lixir.finance
mellow.finance
aloe.capital
sommelier.finance
popsicle.finance/

1 Like

I wanted to drop an update here that as of yesterday the canonical Uniswap V3 staking contracts have been audited and deployed by the Uniswap team. As I said in my earlier reply, I think using these contracts is the best way to migrate liquidity to V3.

6 Likes

strongly agree with @ncitron. If we are to do any form of LM on V3, using Uniswap’s are preferred since they incentivize both active and passive LPs.

1 Like

Awesome @ncitron - thanks for the update! That happened a bit earlier than I expected. I agree with you, these contracts would be the best way. However, we have been told that the best way to get this migration done soon is to not involve any ENG requirements, so we will have to investigate that.

@oneski22 can you clarify on “they incentivize both active and passive LPs”? My understanding when reading through a few weeks ago was that they incentivized liquidity “in-range”? But I could be totally wrong in that, I only read through once…

1 Like

They incentivize being in range, which is beneficial to both passive and active. If you are passive, you can set a max range strategy which means you will always be in range. If you are active you can quote a tighter range and gain more rewards as you are providing more liquidity to the pair.

3 Likes

Ok, ya that is what I was thinking! Thanks.