Uniswap V2 Risk Analysis
Uniswap is an automated liquidity protocol: a decentralised exchange based on open source smart contracts and a constant product formula. Uniswap V1 liquidity tokens were the first secondary market on Aave Protocol V1. Since Uniswap V2 has gathered most of the liquidity thanks to significant improvements including ERC pairs, improved oracle, optimised gas and flash swaps - more details can be found in the whitepaper. Uniswap V2 now holds $3 billion of liquidity reaching $1 billion of daily volume.
Users who provide liquidity to Uniswap pools get UniTokens representing a share of the liquidity. These tokens are derivatives of the underlying Ethereum/ERC20 pair. They are backed and instantly redeemable in the two underlying assets through the smart contract. Therefore, UniTokens hold the risk of this smart contract code and architecture as well as the risks of the underlying assets.
A technical smart contract review of Uniswap V2 LP tokens concluded that the code is really simple and does not carry any additional risk. Furthermore the contracts have been battle tested and market proven as shown by the historical data and usage review.
Liquidity providers are rewarded through commissions composed of 0.3% swap fees and spread which depends on the market conditions. The automated liquidity protocol is based on a constant product formula, which may result in impermanent loss, depending on the volatility of the pair as explained in the Uniswap documentation.
Anyone can contribute to an Uniswap liquidity pool, by depositing an equivalent value of the 2 assets forming the exchange pair. Similarly, anyone can also use the products offered to swap tokens.
UniTokens V2 on Aave would provide the potential to leverage the $ 3 billion of liquidity on Uniswap V2. These tokens have a risk profile close to their underlying assets with some specificities: the UniToken V2 contract, additional downside risk due to impermanent loss and upside with fee accrual. To avoid potential contagion, UniTokens need an independent secondary market initially not covered by the Safety Module with the possibility to propose cover. Given the more complex nature of these assets, they may only be used as collateral to borrow against stablecoins or top assets.
This initial assessment focuses on pairs already listed as collateral on Aave Market, with good liquidity and volume.
UniTokens
Risk Map
UniTokens risk correspond to the average risk level of the underlying assets.
Risk Parameters
The Liquidation Bonus LB is set at 15% to ensure smooth liquidations given the friction of the wrapping and the large market capitalisations. This parameter may be adapted once there is some data on liquidations.
The Loan To Value LTV and Liquidation Threshold LT are from the underlying assets, with a max LT at 70% to prevent from bad liquidations given the 15% LB
Asset |
Loan to Value |
Liquidation threshold |
Liquidation bonus |
Reserve Factor |
AAVE-ETH |
60% |
70% |
15% |
5% |
BAT-ETH |
60% |
70% |
15% |
15% |
DAI-ETH |
60% |
70% |
15% |
10% |
DAI-USDC |
60% |
70% |
15% |
10% |
ETH-CRV |
50% |
60% |
15% |
15% |
LINK-ETH |
60% |
70% |
15% |
15% |
MKR-ETH |
60% |
70% |
15% |
15% |
REN-ETH |
60% |
70% |
15% |
15% |
SNX-ETH |
40% |
60% |
15% |
20% |
UNI-ETH |
60% |
70% |
15% |
15% |
USDC-ETH |
60% |
70% |
15% |
10% |
WBTC-ETH |
60% |
70% |
15% |
15% |
WBTC-USDC |
60% |
70% |
15% |
15% |
YFI-ETH |
50% |
60% |
15% |
15% |
DAI |
75% |
80% |
5% |
10% |
USDC |
80% |
85% |
5% |
10% |
USDT |
|
|
|
10% |
WBTC |
70% |
75% |
10% |
20% |
WETH |
80% |
83% |
5% |
10% |
Borrow Assets
Stablecoins - DAI, USDC, USDT could be borrowed at a variable rate against UniTokens with the following parameters:
- Uoptimal = 80%
- Base = 0%
- Slope 1 = 4%
- Slope 2 = 75%
ETH & WBTC could be borrowed at a variable rate against UniTokens with the following parameters:
- Uoptimal = 65%
- Base = 0%
- Slope 1 = 8%
- Slope 2 = 100%
UniTokens could be borrowed at a variable rate with the rate model of top collateral assets with the following parameters:
- Uoptimal = 45%
- Base = 3%
- Slope 1 = 10%
- Slope 2 = 300%