I wrote a Medium article that breaks down methods that could be implemented by Mirror AMMs to dynamically adjust the AMM curve to allow swaps to occur at a given oracle price 100% of the time (excluding slippage). This method, however does not result in a balanced liquidity pool: something pointed out to me by Hank-O is the cause of the premiums in the first place. If a better, more natural arbitrage method that supports traders is implemented, both arbitrageurs and LPers could be better off. I’ll explain below:
Imagine a liquidity pool with an initial balance of mAsset and UST where no more liquidity can be added, only swaps may occur. If users purchase the mAsset from the pool, there will be less mAsset vs UST, resulting in a premium as UST/mAsset is now larger.
If we then add the ability to provide liquidity, but not minting, the following will happen: users would purchase mAssets and then LP with their own UST which puts ~2x the UST into the liquidity pool vs someone just purchasing the mAsset. This further increases premium where Premium due to purchase (pPurchase) < Premium due to this form of liquidity provision.
If we add in minting, there will be people who can LP with their minted mAsset to provide both mAsset and UST liquidity which has no effect on the premium, but still supports the functionality of the liquidity pool as there is now more liquidity.
Let’s throw the sLP method in there and now there are those that provide just mAsset to the pool to shrink the premium - an unfortunate side effect is the ability to delta-neutral by simply buying and holding the mAsset which simply drains LP rewards with a net 0 impact on the Pool balance.
This model liquidity pool now has all the methods the current liquidity pools do, yet, as we observe, premiums remain.
Hank-O pointed out in some of our conversations that if you remove the ability to purchase an mAsset and then LP, the premiums of pools would decrease by a significant amount, resulting in a potential surplus of mAsset vs UST, and thus a discount in price vs the Oracle price- this is what we should aim for as people would then purchase the mAsset until an equilibrium is reached. Allowing swaps, and not LP to manage the equilibrium price is something that should be explored. This would mean the removal of short farms and long farms in their current forms whereby they’d be replaced with a combined contract of “Mint-LP” that forces you to mint, and then provide UST as a means to provide both mAsset+UST; doing so would remove internal strategies that have a net zero impact (delta-neutral strategies) on the liquidity pool, improve arbitrage opportunities, and reconsolidate LP rewards.
Interestingly, the ‘Mint-LP’ method can currently be done as Mirror Protocol exists right now; a user is able to capture both long and short farm rewards by sLPing, buying back the mAsset, and then providing liquidity with additional UST on the ‘long farm’ side. Here a user is providing both mAsset and UST, as they put the mAsset they sold, and then purchased, back into the liquidity pool with UST. This is the unharmful version of delta-neutral farming which is what I seek to become the main form of liquidity provision.
Unfortunately, the arbitrage methods would only go so far as people buying up the discounted mAsset would seek to sell once ‘equilibrium’ with the Oracle price has been achieved which would result in a consistent discount unless the Oracle price drops to the AMM’s market price; this is where dynamically adjusted AMM curves come in. Dynamically Adjusted AMM Curves eliminate premiums and discounts entirely for the purchase or sale of mAssets. To continue incentivizing the stabilization of the liquidity pool, Mirror could instead exercise the methods below.
Incentives could be provided for buying or selling an mAsset in the form of ‘locking’ your short or long position for a set amount of time as an optional contract on the purchase, or short of the mAsset (note that these are no longer LP farms as they are traditionally defined). One could be credited with MIR tokens based upon the duration of lock, the side the user is locking, and the relative need for the lock. To prevent delta neutral farming these positions, one would have to only have the option of locking a single side (long or short) for MIR incentives per mAsset. A fee could be levied on those who decide to unlock their position early where the user would earn only a portion of the MIR rewards accrued, with the rest, including protocol fee, going to MIR governance stakers. Note that these would be time-limited contracts that expire. If we really wanted to, we could allow these contracts to be traded like options/bonds, depending upon how they’re implemented. The fact that these contracts are timed would force users into more transactions if they wish to farm yields compared to a set it and leave it mentality for current LP methods. Risk tolerances with this method are also different as impermanent loss would no longer be an issue.
As a note: the fee levied on closing short positions should be removed entirely as it’s a barrier to entry for short-interest. Instead, it should be levied on the exit of a ‘Mint-LP’ and on early ‘unlocking’ of previously locked mAssets or UST (depending upon if you were locking a long or short position).
Here’s a full explanation of Dynamically Adjusted AMM Curves I wrote earlier in case you want to know the dynamics behind exactly how they keep the market price pegged to Oracle Price: Mirror Protocol’s AMM Problem — A Potential Solution | by EuphoricBadger | Oct, 2021 | Medium