What Happens if USDC Loses its Peg?

  • Updated

What will happen to Hot Tub if USDC ≠ $1

  USDC goes below $1 USDC goes above $1
USDC Vault no arb opportunity. users won’t get an extra loss when withdrawing 100% utilization ratio. users will get an extra loss when withdrawing
ETH Vault 100% utilization ratio. users will get an extra loss when withdrawing no arb opportunity. users won’t get an extra loss when withdrawing

How ETH Vault user will get an extra loss when USDC goes down?

  1. 1 ETH = $1000 = 1000 USDC
  2. Alice deposited 1 ETH and get 1 share. Vault has 1 ETH.
  3. Assume there’s a negligible 1 wei profit, arb swapped 1000 USDC for 1 ETH. Now vault has 1000 USDC + 1 ETH long + 0 ETH
  4. USDC depeg: 1 ETH = $1000 = 2000 USDC. ( 1 USDC = $0.5 )
  5. Alice withdraw 1 share
    1. Vault close 1 ETH long, 0 pnl, withdraw 1000 USDC
    2. Swap 1000 USDC for 0.5 ETH from Uniswap
    3. Alice got 0.5 ETH

How USDC Vault user will get an extra loss when USDC goes up?

  1. 1 ETH = $1000 = 1000 USDC
  2. Alice deposited 2000 USDC and get 2000 shares. Vault has 2000 USDC
  3. Assume there’s a neglectable 1 wei profit, arb swapped 1 ETH for 1000 USDC. Now vault has 1000 USDC, 1 ETH spot and 1 ETH short
  4. USDC depeg: 1 ETH = $1000 = 500 USDC. ( 1 USDC = $2 )
  5. Alice withdraw 2000 shares
    1. Vault close 1 ETH short, 0 pnl, withdraw 1000 USDC
    2. Vault sell 1 ETH for 500 USDC
    3. Alice got 1500 USDC

How we mitigate this?

USDC vault will stop arbitraging when USDC:USD oracle (Chainlink) is higher than 1.01.

ETH vault will stop arbitraging when USDC:USD oracle (Chainlink) is lower than 0.99.

Which means the potential loss is capped. 

How ETH Vault user will get an extra loss when USDC goes down?

  1. 1 ETH = $1000 = 1000 USDC
  2. Alice deposited 1 ETH and get 1 share. Vault has 1 ETH.
  3. Assume there’s a negligible 1 wei profit, arb swapped 1000 USDC for 1 ETH. Now vault has 1000 USDC + 1 ETH long + 0 ETH
  4. USDC depeg: 1 ETH = $1000 = 2000 USDC. ( 1 USDC = $0.5 )
  5. Alice withdraw 1 share
    1. Vault close 1 ETH long, 0 pnl, withdraw 1000 USDC
    2. Swap 1000 USDC for 0.5 ETH from Uniswap
    3. Alice got 0.5 ETH $500

How ETH Vault user will get an extra loss when USDC goes up?

  1. 1 ETH = $1000 = 1000 USDC
  2. Alice deposited 1 ETH and get 1 share. Vault has 1 ETH.
  3. Assume there’s a negligible 1 wei profit, arb swapped 1000 USDC for 1 ETH. Now vault has 1000 USDC + 1 ETH long + 0 ETH
  4. USDC depeg: 1 ETH = $1000 = 500 USDC. ( 1 USDC = $2 )
  5. Alice withdraw 1 share
    1. Vault close 1 ETH long, 0 pnl, withdraw 1000 USDC
    2. Swap 1000 USDC for 2 ETH from Uniswap
    3. Alice got 2 ETH = $1000

How USDC Vault user will get an extra loss when USDC goes up?

  1. 1 ETH = $1000 = 1000 USDC
  2. Alice deposited 2000 USDC and get 2000 shares. Vault has 2000 USDC
  3. Assume there’s a negligible 1 wei profit, arb swapped 1 ETH for 1000 USDC. Now vault has 1000 USDC, 1 ETH spot and 1 ETH short
  4. USDC depeg: 1 ETH = $1000 = 500 USDC. ( 1 USDC = $2 )
  5. Alice withdraw 2000 shares
    1. Vault close 1 ETH short, 0 pnl, withdraw 1000 USDC
    2. Vault sell 1 ETH for 500 USDC
    3. Alice got 1500 USDC = $3000

How USDC Vault user will get an extra loss when USDC goes down?

  1. 1 ETH = $1000 = 1000 USDC
  2. Alice deposited 2000 USDC and get 2000 shares. Vault has 2000 USDC
  3. Assume there’s a negligible 1 wei profit, arb swapped 1 ETH for 1000 USDC. Now vault has 1000 USDC, 1 ETH spot and 1 ETH short
  4. USDC depeg: 1 ETH = $1000 = 2000 USDC. ( 1 USDC = $0.5 )
  5. Alice withdraw 2000 shares
    1. Vault close 1 ETH short, 0 pnl, withdraw 1000 USDC
    2. Vault sell 1 ETH for 2000 USDC
    3. Alice got 3000 USDC = $1500