HUB/USDT Pool on Uniswap v3

Minter
5 min readMay 7, 2021

On May 5, the Uniswap protocol upgraded to v3. With it came changes in how both traders and liquidity providers use pools. Key takeaway: v2 and v3 protocols are independent, and the HUB-USDT liquidity pool has migrated to a new version.

From now on, the HUB-USDT pool’s LPs will be getting a bigger fee, while their liquidity will be concentrated within chosen price ranges.

Navigation

1. What’s New? (In Short)
1.1. Pool Fees
1.2. Liquidity Ranges
1.3. LP Tokens
1.4. Pair Display
2. How to Buy and Sell HUB on Uniswap v3
3. Supplying Liquidity into the HUB-USDT pool (v3)
3.1. v2-to-v3 Liquidity Migration
4. Quick Links

1. What’s New? (In Short)

1.1. Pool Fees

When creating a pool (initial liquidity addition), you can now set a fee to be shared among liquidity providers:

  • 0.05%
  • 0.3%
  • 1%

In v2, the fee was 0.3%. Now, each pair of tokens can have up to three pools with different fees. The main HUB-USDT pool’s fee is 1%.

1.2. Liquidity Ranges

Provider’s liquidity is no longer spilled all over the pool; instead, it’s concentrated within specific price ranges that LPs set themselves. See picture below:

This means that provider’s liquidity will participate in the specified range only. If the price moves outside it, their liquidity will not participate in trades and they will not be earning on fees until it’s back in the range.

1.3. LP Tokens

LP tokens have been replaced with NFT (ERC-721) as with the arrival of v3, provision of liquidity must contain unique data on position’s limits (liquidity range).

1.4. Pair Display

If you’re used to traditional exchange trading pairs, Uniswap may be somewhat confusing. The thing is, trading pairs on exchanges use a classic sequence of currencies:

base currency / quoted currency

The price of a base currency, however, is always calculated as USDT divided by HUB, meaning Uniswap is using the right order: USDT/HUB. Therefore, the price for 1 HUB = 200 / 1 (i.e., USDT / HUB).

2. How to Buy and Sell HUB on Uniswap v3

Open the HUB-USDT liquidity pool by following the direct link:

https://app.uniswap.org/#/swap?inputCurrency=0xdac17f958d2ee523a2206206994597c13d831ec7&outputCurrency=0x8e9a29e7ed21db7c5b2e1cd75e676da0236dfb45

Or enter both tokens manually. The HUB token’s smart contract address is:

0x8e9a29e7ed21db7c5b2e1cd75e676da0236dfb45

Link your wallet by tapping Connect to a wallet:

Uniswap supports routing, so you can also buy with tokens other than USDT. Put in the desired amount and hit Allow the Uniswap Protocol to use your USDT:

Now sign the transaction from your wallet (paying an ETH fee along the way), allowing Uniswap’s smart contract to make purchases using your tokens. Once done, you can make an exchange by pressing the Swap button:

Make sure that all fields are filled in correctly and confirm exchange in Uniswap’s interface (once again, paying a fee in ETH):

You’re almost all set! Just wait for confirmation by the network. Selling HUB is similar, what you need to do is click on the down arrow to switch the swap direction:

3. Supplying Liquidity into the HUB-USDT pool (v3)

To provide liquidity in the HUB-USDT pool, go to this page:

https://app.uniswap.org/#/add/0x8e9a29e7ed21db7c5b2e1cd75e676da0236dfb45/0xdac17f958d2ee523a2206206994597c13d831ec7/10000

Double-check that selected tokens are HUB and USDT:

Choose the fee you want to be getting. The one used in the main pool is 1%:

Set the price range within which you want to supply liquidity. For better experience, you can find the current price underneath:

Settings shown above mean that I want to provide liquidity only if HUB’s priced somewhere between 150 USDT and 302 USDT.

Specify amounts to be deposited and later used for providing liquidity. The ratio depends on the range you picked:

  • The higher the maximum price within the range compared to the current price, the less USDT you’ll have to provide per each HUB
  • The lower the minimum price within the range compared to the current price, the less HUB you’ll have to provide per each USDT

You need to enable Uniswap’s smart contract to access your HUB and USDT tokens next. For that, press Approve for each of the tokens (an ETH fee will be charged here, too).

Almost there! Confirm liquidity addition by clicking Add and sign the transaction after carefully verifying everything:

Your stats is available in the pools dashboard:

You can view key pool-related analytics on its page:

To withdraw liquidity from the pool, you need to:

  1. Go to the list of your pools on this page: https://app.uniswap.org/#/pool
  2. Select the pool you need and press Remove
  3. Specify how much liquidity you want back (in %)
  4. Click on Approve and pay fee
  5. Click on Remove and pay fee

3.1. v2-to-v3 Liquidity Migration

If there’s some of your liquidity left in an old v2 pool, you can transfer it on this page: https://app.uniswap.org/#/migrate/v2

  1. Choose the pool
  2. Convert your liquidity to a new format by entering price ranges as described in this guide

You can locate your pools from v2 here: https://app.uniswap.org/#/pool/v2

--

--

Minter

Supporting development and adoption of Minter, a digital assets marketplace powered by a fast blockchain. Other social media: minter.org/#follow