Weekly Ways to Earn Crypto: Uniswap Liquidity Provider
This series has one goal: To make money. In the pursuit of making money, however, there are two approaches. First, you can spend time (labor) to earn money by performing tasks for others. Second, you can utilize cash (capital) to allow it to earn for you. This second approach is the goal. Use money to make money.
One of the explosive growth stories of Q3 2020 is the rise of the volume on liquidity pool based decentralized exchanges. Uniswap was the original model launched in 2018. Since then it has gone through a major upgrade to v2 already, and a number of other pool based exchanges have come onto the market since (Curve, Balancer, etc).
The main idea with pooled liquidity is that a "Liquidity Provider" locks up separate assets in a smart contract. Anyone can come exchange one of the assets for another in a sort of "automated vending machine". Usually there is a small fee for each trade that is paid to the liquidity provider to incentivize users to participate.
With Uniswap, each "market" contract is a pair of ERC20 tokens. To provide liquidity, you send in a 50/50 split of the 2 tokens at a market price. Any time someone converts from one of the assets to the other, it charges a 0.3% fee that is paid to the liquidity pool. You get to claim the percentage of the fees based on the percentage of the liquidity pool you have contributed.
For this week's article, we'll be putting some funds into Uniswap as a liquidity provider and tracking the actual returns. There are many factors that can impact the returns since the asset ratios in the pool and the asset prices are changing constantly. Any time the ratios get out of whack, it requires a market maker to arbitrage the price gap and bring it back in line (and this generates fees).
First, take a look at Pools.fyi. Here you can see and sort all the current liquidity pools by total liquidity and volume. You want to pick a pool that has a high volume so it will be generating fees, and also choose one with assets you don't mind holding and gaining exposure to.
For this experiment, we'll be providing liquidity to USDC-WETH. In case you don't know, WETH is "Wrapped ETH" as an ERC20 so it can be treated like all other assets in the contracts. There is a WETH vending machine that allows you to convert 1-to-1 for ETH-WETH at any time.
To put liquidity into the pool, head over to Uniswap and choose the pair you want to add liquidity to. In this case, I did not have WETH yet, but I did have ETH. The contract interaction will automatically convert my ETH to WETH for me when I add it to the pool.
I'm putting in a total of $5k. Notice that you need to add a 50/50 split of the pair at current market price. So if you want to put in $5k as I do, you need to set it to $2,500 in USDC and $2,500 in ETH.
You will need to "approve" the contract to move the ERC20 tokens out of your account before you can send in funds. Once the ERC20s are approved, adding liquidity will be done in 1 transaction.
Below you can see the transaction added the USDC, wrapped the ETH and added it, and then credited my account with Uniswap-V2 tokens. These Uniswap tokens are how it will track ownership of the pool.
Once the TX goes through, you can see how much of the assets you have claim to in the pool. Every time someone does a trade on the liquidity pool, the numbers will shift one way or another. Each trade will also generate tiny fees that will hopefully add up over time.
And the investment... by the numbers:
- USDC: $2,500
- ETH: $2,500
- Coinbase withdrawal fee after USDC purchase: $0.439499
- Tx Fee to approve USDC token moving: $0.99
- Tx Fee to add liquidity: $2.74
Total Cost: $5,004.17
|Date Started||Item||Cost||Current Value||Gain/Loss||Percentage|