AIP #17: Creating the MIM-USDT Overpeg Defense Mechanism (ODM) on Arbitrum
tl;dr In order to ensure that we never overpeg during periods of high liquidations / repayments, we want to mint MIM to create a single-sided Uniswap V3 position on Arbitrum where users can trade 1 USDT for 0.9994 MIM.
Motivation and the Current Situation
Abracadabra has recently been focused on developing new cauldrons to support and expand the Arbitrum ecosystem. All of our upcoming products, including the recently launched MagicGLP, require $MIM liquidity to function.
Currently, the main source of $MIM liquidity is the Curve Pool on Mainnet, which has a balanced pool ratio between MIM and 3CRV tokens, and a total value locked of over $130M.
In comparison to the deep $MIM liquidity in the Curve Pool on Mainnet, the main source of liquidity for $MIM on Arbitrum is a MIM-2CRV pool with only $10M of TVL.
This shallow liquidity on Arbitrum makes it vulnerable to large increases or reductions in the supply of $MIM on the chain.
Extreme Volatility Scenarios
During periods of high volatility, we expect loan positions to be repaid or liquidated. In order to do either of these actions, users and liquidators need access to a large supply of $MIM. However, given that Abracadabra is multi-chain, there is no guarantee that there will be enough $MIM on a particular chain to ensure smooth repayments and liquidations.
Without sufficient $MIM, the price of $MIM could go above $1, which would make liquidations more costly and inefficient. This presents a risk for the protocol, because underwater positions must be closed before bad debt is incurred.
In order to prevent this situation from happening, we are proposing to introduce a MIM-USDT Overpeg Defense Mechanism (ODM) on Uniswap V3.
The proposal
The following proposal is to allow the minting of up to 40M MIM tokens, bridge them onto Arbitrum, and deposit them into a single-sided MIM-USDT UniV3 position (100% MIM / 0% USDT) using the 0.05% fee tier, pricing MIM 1bps above peg.
This would allow users and liquidators to trade 1 USDT for 0.9994 MIM.
The amount of MIM minted towards the ODM will be dependent on the total outstanding MIM on arbitrum.
Such a setup would ensure that if $MIM ever over-pegs, liquidators would always be able to route through the Uniswap V3 ODM to acquire MIM tokens with minimal fees.
Each MIM token emitted by the ODM in a situation of stress for the protocol would be backed by USDT inside the Uniswap V3 position. Later, MIMs could be sold back into the ODM for USDT until it reaches its initial state.
The advantage of building such an ODM using a Uniswap V3 position, rather than a custom made contract is that trades will be automatically routed through this pool and indexed by aggregators such as 1inch or Matcha. Abracadabra’s leverage engine will also route through this Uniswap V3 pool to ensure that users never overpay when they are deleveraging positions.
This simple yet powerful design allows the protocol to continue expanding onto sidechains without worrying about an overpeg situation.
Technical Details
The Uniswap V3 position will be opened on Arbitrum and controlled by the protocol multisig that is typically used to mint MIM for topping up cauldrons. Its signers can be found here.
Any USDT collected in the Uniswap V3 position will only be used for backing the MIM emitted through the ODM. This ensures that every $MIM in circulation will always be over-collateralized.
The position parameters will make sure that the price at which the ODM will be selling MIM is 1 bps above $1.
The amount of MIM minted towards the ODM will be variable and correlated to the amount of MIM emitted on Arbitrum.
It should be noted that during normal situations when MIM is trading below the $1 mark, the ODM is not expected to be utilized. It will simply remain idle until a large amount of $MIM liquidity is needed (e.g., period of high liquidations).
In the future, the DAO will be able to change the AMM used to set up the ODM, thanks to a speedlaned vote (24 hours).
Conclusion and Voting
The following proposal will remain as an AIP for the following days and then be moved to voting on a 72 hours period, it will be amended following community feedback!
Voting is now live, and can be found here.