Liquidity Surges by $100 Million Daily! Uniswap V3 Step-by-Step Tutorial: Trading, Providing Liquidity, Setting Range Orders

share
Liquidity Surges by $100 Million Daily! Uniswap V3 Step-by-Step Tutorial: Trading, Providing Liquidity, Setting Range Orders

Uniswap V3 was officially launched in the early hours of May 6th Beijing time. Many users have reported that providing liquidity in V3 has become more complex compared to V2, as both the user interface and liquidity provision logic have undergone significant changes in the new version. In order to help users better understand the new version's interaction logic, BlockBeats will guide you through the experience step by step in this article, offering users a first-hand tutorial.

(This article is authorized and reproduced from BlockBeats, with the original title "Uniswap V3 First-Hand Tutorial: A Brand New Liquidity Provision Experience." For the original article, please visit here.)

How to Trade in V3

Open the official website link, and you will first see the familiar exchange interface:

It can be seen that for users who just want to execute trades, the new user interface in the front end has almost no changes compared to before. However, by following the hint at the bottom left corner, users can know that when trading now, the fund pool being used in the background has been automatically switched to the new V3 version.

Of course, since many V3 version fund pools have just been established, the trading prices and slippage provided for some trading pairs may not be as advantageous as the V2 version. So in such cases, the interface will automatically provide a switch button at the bottom left for users to easily switch to the V2 version fund pool to obtain the best trading prices.

How to Provide Liquidity in V3

(1)How to Choose Different Trading Fee Rate Fund Pools

Let's start with the user interface. Click on the Pool button at the top of the interface to switch to the fund pool interface.

The link at the top left is the official documentation link, which will not be elaborated here.

On the right side are detailed information on the top 200 fund pools, where you can browse real-time data for mainstream trading pairs.

Clicking on it will bring you to the following interface:

On the far left of the interface is the specific trading pairs of the fund pool. Next to the trading pair names, it shows the trading fee rate corresponding to this trading pair fund pool. Here, it is important to note that in the V3 version, three different fee rates of 0.05%, 0.3%, and 1% are provided, which means for the same trading pair, three different fee rate fund pools can be created in V3.

So, how should users choose different fund pools to provide liquidity?

For example, from the image below, it can be seen that the USDC/USDT trading pair has at least two fund pools created in V3, one with a fee rate of 0.05% and the other with 1%. As USDC/USDT is a stablecoin trading pair, LPs do not need to bear much impermanent loss risk, which leads to traders preferring the fund pool with a lower fee rate for trading. LPs, on the other hand, would prefer to provide liquidity in the fund pool where traders are more concentrated to earn more trading fees.

Therefore, we can see that the fund pool with a 0.05% fee rate performs much better in terms of TVL and 24-hour trading volume compared to the fund pool with a 1% fee rate. Here, it is advised for users that when providing liquidity, it is crucial to choose fund pools with higher TVL and trading volume to avoid missing out on opportunities to earn returns in inactive fund pools.

So, how should users choose the fee rate for different trading pairs to effectively prevent funds from being idle?

Let's look at the real-time leaderboard based on TVL.

It can be observed that for trading pairs where both sides are stablecoins, those ranked at the top undoubtedly belong to the fund pool with the lowest 0.05% fee rate. As long as a trading pair involves a highly volatile coin, those ranked at the top are the fund pools with a 0.3% fee rate. For volatile coin trading pairs, LPs need higher trading fee income to compensate for the impermanent loss they may incur while providing liquidity.

Due to the relative stability of stablecoin trading pairs, LPs face less impermanent loss, resulting in lower fee rate trading pairs having a competitive advantage. (The highest 1% fee rate level is mainly applied to some new or altcoins that experience extreme price fluctuations, requiring LPs providing liquidity for those coins to receive higher trading fees to offset the impermanent loss incurred by market-making.)

(2)How to Add Liquidity

Returning to the Pool interface, click on the New Position button at the top right to enter the liquidity adding interface.

Step 1: Select the trading pair you want to add liquidity to at the top.

Here, let's choose to add liquidity to the USDC/ETH trading pair fund pool.

Step 2: Choose the fee rate of the fund pool.

Here, following the prompt below, for non-stablecoin trading pairs, it is generally recommended to choose the middle option, the 0.3% fee rate fund pool for adding liquidity.

Step 3: Choose the price range for market-making.

It is important to note that the V3 system does not support LPs entering arbitrary prices when choosing the price range.

Due to the liquidity aggregation feature provided in V3, the computational load has increased significantly compared to V2. Therefore, in order to minimize the calculation process during trades and reduce the gas fees that traders need to pay, V3 has divided the originally selectable complete price range into different price points.

For a fund pool with a 0.3% fee rate, the minimum price change unit is set to a minimum change range of 0.6% from the nearest price point. For example, after 3401.6 USDC, the next price point would be 3422.1 USDC (3401.6 * (1 + 0.6%)). Different fee rate fund pools correspond to different minimum change ratios. For a fund pool with a 0.05% fee rate, the minimum change ratio for prices is 0.1%, while for a 1% fee rate fund pool, the minimum change ratio for prices is 2%.

However, users do not need to worry, as the system will automatically adjust the price you enter to the nearest selectable price point. If unsatisfied, users can simply fine-tune by clicking the pink button below. Here, let's choose to enter 3165.3 USDC and 3590.3 USDC as our market-making range.

Step 4: Choose the amount of tokens to deposit for market-making.

It is important to note that this is the most confusing part, as LPs no longer need to provide a 50/50 value ratio for the two tokens while market-making in Uniswap V3. So, how much USDC and how much ETH LPs need to provide for market-making is determined by the following:

  1. The lower limit of the market-making range (Min Price)
  2. The upper limit of the market-making range (Max Price)
  3. The current market price of the trading pair (Current Price)

The ratio of ETH to USDC that LPs provide is entirely determined by these three variables. In more professional terms, the ratio of ETH to USDC that LPs ultimately provide is a function of the lower limit of the market-making range, upper limit of the market-making range, and the current market price. Since the current market price is entirely determined by the market, users cannot adjust it. Therefore, LPs can only affect the token ratio they provide by adjusting the range of the price interval.

For a more intuitive demonstration, let's use an example to explain this issue.

Assuming the current market price of ETH is 3490 USDC, and we set the lower limit of the market-making range to 3165.3 USDC and the upper limit to 3590.3 USDC. In this case, if we have 1 ETH ready for market-making, how much USDC should we provide?

We only need to enter 1 in the ETH deposit quantity below, and the system will automatically calculate the corresponding amount of USDC we need to provide (as shown in the image below). It can be seen that the market value of the two tokens, one being $3,491 and the other $11,252, no longer follows the 1:1 ratio as seen in the V2 version.

Of course, we can also enter the amount of USDC and let the system automatically calculate the amount of ETH. While the quantities of the two tokens have changed, the relative ratio has not. Therefore, once the key parameters of the market-making range, lower limit, upper limit, and current price are determined, the relative ratio of ETH to USDC is fixed. If users wish to adjust this ratio, they can only do so by adjusting the market-making price range interval.

(3)Special Cases: Market-Making in Price Ranges Outside of the Market Price

In the example mentioned earlier, the chosen price range was exactly on either side of the current market price. But what happens if LPs select a market-making price range that is entirely above the current market price?

If we set the lower limit of the market-making range to 4023.8 USDC and the upper limit to 5024 USDC, while the current market price remains at 3490 USDC.

Here, we can see a yellow text line at the bottom of the current market price in the image above, indicating that providing liquidity in this range may not earn trading fee income. However, LPs can still provide liquidity in this price range; who knows, maybe ETH will rise to over $4000 tomorrow.

It is important to note that in this scenario, the market-making funds provided will no longer consist of two tokens.

Looking at the screenshot below, we enter 1 ETH to be provided. At the point where the system would usually display the corresponding USDC amount, it now shows a small lock. At this point, users should not think they have done something wrong, nor is it because they have not authorized the trading pair. This is simply because the market-making price range is entirely higher than the current market price, resulting in users only needing to provide a single token for market-making.

Yes, when the lower limit of the market-making range is entirely higher than the current market price, LPs only need to provide a single token, ETH, for market-making. Similarly, when the market-making price range is entirely lower than the current market price, LPs only need to provide a single USDC token for market-making.

Refer to the image below. In this case, as long as your wallet has a sufficient amount of USDC tokens, you can enter any quantity of USDC for market-making without worrying about the amount of ETH.

How to Construct Range Orders

Range Orders are a new feature introduced in the V3 version. The new Range Orders can simulate to some extent the limit order function in traditional order book trading platforms. For example, if a user holds 10 ETH and plans to sell for USDC when the price reaches $4000, they should follow these steps:

1. Choose to provide liquidity in the ETH/USDC fund pool, and select the 0.3% fee rate for the fund size.

2. Keep the upper and lower limits of the market-making price range as close to $4000 USDC as possible.

(Since the nearest selectable price point above 3999.8 is 4023.8 (3999.8*1.006=4023.8), we choose 3999.8-4023.8 as the market-making price range)

3. Enter the deposit amount in the Deposit Amounts section to be: 10 ETH.

4. Click the button at the bottom to execute the trade.

(As the BlockBeats account does not have so much ETH, we cannot provide a screenshot demonstration here...)

If users successfully complete the above steps, when the ETH price rises to $3999.8, their 10 ETH position will start to be converted into USDC. When the price rises above $4023.8, their position will be entirely converted into USDC. If users withdraw liquidity at that moment, it would be equivalent to automatically executing a take-profit sell order at a price of approximately $4011.78 through Uniswap V3.

LP Token NFT

To help users better understand the new NFT token format, let's try providing some liquidity to the ETH/USDC fund pool, with gas costing nearly $100. Since there are no USDC tokens in the account, we choose a market-making range above the current market price, setting the lower limit to $4000 USDC and the upper limit to $4994 USDC. Here, we can provide liquidity using only ETH.

The NFT display interface is also quite cool, showing the name of the trading pair at the top: ETH/USDC, with the fund pool fee rate displayed below: 0.3%. The NFT card's ID number displayed at the bottom left is 3045, speculated to be ranked according to the time users provide liquidity. It is said that the first 100 users to provide liquidity to each new fund pool may receive a rare sun icon in the bottom right corner of the card, which we have not yet experienced.

At the top right of the interface, the ETH market price is indicated to be outside the chosen market-making price range. The display shows that the liquidity provided in this position includes 0 USDC, with the current position entirely composed of ETH. The interface also notifies that the current market price of ETH is not within the selected market-making price range. As a result, the unclaimed fee amount shown at the bottom is also 0.

However, as long as the ETH price continues to rise and surpass $4000, this NFT position can start earning trading fees.

How to Browse Fund Pool Data in V3

Using the USDC/ETH (0.3% fee) trading pair as an example, the interface provides detailed information on the latest trading volume, locked data, and recent transaction records of the fund pool. These details are not significantly different from the V2 version, so they will not be explained further here. Users should pay attention to the Liquidity section indicated by the arrow in the top right corner of the interface.

Clicking on the link will display the liquidity distribution page below.

This page shows the distribution of liquidity in the fund pool at different price ranges. Moving the cursor to the highest point on the curve indicated by the arrow, it can be seen that liquidity is most concentrated at 3463.3623 USDC/ETH. This concentration is highly correlated with the ETH price of the day, showing that LPs provided the most liquidity near the current market price that day, which means traders trading near this price point can enjoy lower slipp