I need to put some words at the beginning. This proposal is very immature and experimental. If you have any feedback and comments, please feel free to tell me. I am fascinated with this thought, and eager to suggestion and discussion.
Monetary-Controllable AMM is a mechanism for the algorithmic stablecoin to bootstrap, adjust and eliminate the token supply to meet the market demand. This system intends to handle the lifecycle of the algorithmic stable coin through the functions of AMM.
It utilizes the same math formula (x * y = K) as Uniswap. However, its implementation of functions is completely different. Here I will describe how MCAMM works. (For convenience, I named the new stablecoin SHIVA as an example. And the pair is SHIVA/USDC.)
In the beginning, there is zero supply of SHIVA. Someone has to be the first person to provide liquidity. When LP Peter deposits $1000 USDC, the exchange simultaneously mints $1000 SHIVA into the reserve. The price is retrieved from the oracle. Therefore, there are $1000 USDC and $1000 SHIVA as reserves in the exchange.
Trader Alice wants to swap 500 USDC for 333 SHIVA according to a constant function. As a result, the SHIVA price becomes 2.25 USDC. To force the price down to $1, the exchange will mint 1250 (1000 * 2.25 - 1000) SHIVA to liquidity providers as rewards at the same time. The liquidity provider can sell the rewards to the market to move the price down to $1.
Trader Bob wants to swap 500 SHIVA for 333 USDC according to a constant function. As a result, the SHIVA price becomes 0.44 USDC. To force the price up to $1, the exchange needs to burn 1250 (2250 * 0.44 - 2250) SHIVA. The amount will become the debt of the liquidity provider. Therefore, LPs need to repay the debt to buy SHIVA from the market. This behavior would move the price up to $1.
When LP Peter removes liquidity, he can get the original $1000 USDC. And the exchange will burn $1000 SHIVA from the reserve. If there is debt in the liquidity, LPs need to repay the debt before removing liquidity.
Instead of rebasing the supply at the end of every epoch which might cause extreme volatility, MCAMM rebases the supply at the end of every swap. It means the money supply can grow or shrink continuously to meet the demand. In theory, the price will be less volatile and more stable.
As you can see, not like the other algorithmic stablecoins have to pre-mint some coins and shares at the beginning and count on bond (or coupon) buyers to shrink the supply. The token price might go down to zero when the demand (or trust) collapses because nobody wants to buy bonds or coupons.
MCAMM makes the supply come from zero at the genesis and go to zero when it collapses. In theory, the last provider will remove the liquidity at the price of $1. And all issued rewards and debts have to eliminate each other.
Even if the pair is SHIVA/ETH, it should work without impermanent loss. Liquidity Providers always remove the value that is as same as they deposit initially.