Simple Summary
Current EUL liquidity on Uniswap is very low, which brings potential risks to Euler users and discourages the entrance of new investors. This proposal suggests using treasury assets to provide liquidity to the EUL/ETH pool.
Abstract
Euler uses the Uniswap v3 TWAP as the oracle to price the EUL tokens on the Euler protocol. If the liquidity in this pool is too low (~60K USD now), and the EUL debts are high enough (~3.2M USD now), it could become profitable for an attacker to manipulate the uniswap TWAP oracle to extract value from vaults that have EUL debts.
By having a higher liquidity on the pool, it becomes much more expensive to manipulate the oracle, making the attack economically unprofitable.
Another side effect of having higher liquidity is increasing the attractiveness of the EUL token itself, by attracting investors that would be otherwise discouraged by the lack of liquidity.
Motivation
With the current Uniswap liquidity, it would cost an attacker ~$50K to increase the price of EUL by 10x:
As the price need to stay elevated for several minutes for the attack to work, the total cost for the price manipulation could be higher (as people start selling their EUL to the pool) . This risk could be minimized if the attack starts at a time when blockchain activity is lower.
A potential attack could happen as follows:
- Attacker acquires EUL tokens beforehand, perhaps slowly over time or through an OTC deal.
- Swap ETH to EUL to rapidly increase the oracle price.
- Liquidate vaults that have EUL debt. Any liquidator that don’t already have EUL wouldn’t be able to participate in the liquidations as the only on-chain source of EUL is too expensive.
- Attacker keeps liquidating vaults until it becomes too expensive to continue manipulating the oracle or if the vaults’ collateral is fully drained.
If any vaults’ collateral are drained before their debts are payed back in full, the protocol would end up with bad debt. As this debt would be all in EUL (as it is in the “isolated tier”), it would be relatively easy to repay these debts using the treasury, but a potential compensation to the affected users could be much more expensive.
Specification & Implementation
Use ETH and EUL from the treasury to provide liquidity to the EUL/ETH Uniswap pool. This liquidity would be owned directly by the protocol, and the swap fees would accrue back to the treasury. The LP positions would ideally be kept in a separated account controlled by the treasury. For reference, GMX keeps their liquidity in a dedicated account.
A suggestion for the price ranges/token amounts are as follow:
EUL/WETH | Token amounts | |||
---|---|---|---|---|
min | max | EUL | WETH | |
0.0001 | 0.0010 | 0 | 70 | |
0.0010 | 0.0100 | 30,023.20 | 140 | |
0.0100 | 0.1000 | 15,011.60 | 0 |
This would provide ~250K USD in ETH and EUL liquidity each, which is about half of what the uniswap pool had last month. The exact LP amounts/ranges could be changed by the team as prices and market conditions change, but inflows/outflows of tokens from the liquidity account should ideally be approved by the DAO.
Voting
Voting yes signals approval of the supply of liquidity from the treasury as suggested.
- Temperature check / pass
- Temperature check / fail