Recently, much attention has been paid to the necessity for liquidity in mTokens.
DMM moving to partial on-chain reserves brings with it the possibility for a scenario of impermanently locking token redeems. In the DeFi world, where liquidity is instantaneous and ready to teleport in and out in bulk unexpectedly, this situation happening sooner or later should be expected as a given. Moreover, this impermanent locking is not only an inconvenience for retail users, but, perhaps more importantly, it makes mToken adoption into the fundamentally instantaneous universe of DeFi composability more or less a nonstarter. Lending platforms are not going to take in collateral they can’t be guaranteed an instant proper liquidation on, nor are yield aggregators going to have DMM back-ends when they can’t guarantee instant retrieval to their depositors or to other sources of greater yield that might pop up and better serve them.
This further has unfortunate consequences for adoption. Holding mTokens currently brings with it an opportunity cost many are not comfortable with. This can be evidenced, for example, by the stablecoin deposits on DMM being almost completely empty, whereas on Aave, at far less yield than we have here, there is plenty more than DMM could even handle. Why? Because depositors aren’t actually there for the stablecoin yield, they’re there because their coins can be collateral for playing with other protocols. DeFi composability lets yield from various sources compound and complement each other, and this combination generates a better result than any individual protocol could. Imagine if mTokens were on Aave - there would be no reason for all these stablecoin deposits to not be routed through DMM!
Thanks to this composability issue, DMM has been effectively segregated from the rest of DeFi. Indeed, DMM deposits have been inversely correlated with the yield farming craze. In a weird way, mTokens have been adversarial to DeFi.
The best solution to this is to have secondary markets for mTokens and their underlying token. It seems this is currently being tackled through DMG incentives to mToken/Token Uniswap pools. I believe this is the right direction to go, but that it can be improved by quite a lot through liquidity amplification. The current approach has 2 major issues:
- The peg can break very easily. If you hold a significant share of the mToken marketcap and want to swap it back you will have to do it very slowly and in the process bleed a lot of money to arbitragers that may or may not even come to help you by rebalancing the pool. Even in the extremely unrealistic and even overall undesirable scenario that all mTokens in circulation are in the pool, I believe this liquidity would be nowhere near satisfactory enough for most protocols.
- Not many are willing to hold these mTokens in the first place, and so you’re left with a chicken and egg scenario where people don’t accept mTokens because they don’t have liquidity but they don’t have liquidity because people don’t accept them.
I believe both of these would be mitigated by migrating the Uniswap pools for these incentives to non-linear, amplified liquidity pools. Amplified pools are pools that assume the value of two tokens is roughly equivalent, so the difference in swap price as the pool token ratio moves is not linear, but a dampened curve. This way, large mToken -> Token transfers would be better secured, and the overall liquidity available could be greater than twice the mToken supply.
One great option to achieve this for stablecoins specifically would be Curve metapools. These are amplified pools that pair something that’s supposed to be pegged to the dollar with current Curve stablecoin LPs. This is in itself is a composability play as well, since it integrates Curve LPs into the mix (that can still resolve to stablecoins) rather than undesirable idle stablecoins. Curve has shown itself to be willing to collaborate with small projects too - they have a metapool for Arc’s LINKUSD, which currently has a market cap of around $150,000. One problem I could see is the mTokens gaining value against the US dollar, but I think that’s just a trivial matter of implementing a wrapper if need be (https://syusd.cash/ is one example for how one was implemented for similarly yield-accruing yearn yTokens) and that is just as much of a problem for current pools anyway.