[feature] Synth Circuit Breaker
Synthetics is an asset class on THORChain that has the same purchasing power as its layer1 counterpart. The value of these synths is backed by the pool value (provided by LPs, including the POL/reserve). With each synth minted, creates a liability on the network, specifically for LPs+Reserve. And with the addition of stable savers, the risk/liability to the reserve is significantly more. This is because the liability of synth has a relationship to the volatility of the asset (less volatile, more liability in a down market).
This liability is most stressed when moving from a bull --> bear market. Taking the numbers from the last time we saw this, we can simulate the difference in liability with and without stable savers. We can incorporate pool depths, rune downward price movement (20x USD, 6x BTC, 5x ETH, etc), and other factors. Simulations show a 7-8x in liability due to stable savers.
While mechanisms already exist to curve this liability, the network is missing a hard backstop that allows the network to actively protect itself (rather than relying on users to act). There is the recommendation of the team, to create a circuit breaker to ensure the safety/longevity/resiliency of the network, which is paramount.
The Solution
This solution would only be enacted, in the event that synth utilization exceeds its cap (i.e. 60%). In order for that to be true, the POL is not deploying more capital (either because it ran out, or because the TVL cap is reached), and the 0% savers interest rates isn't effective enough to get savers to leave when it's important to the network for them to do so.
Once synth utilization is exceeded, a negative interest rate is applied to the savers of that pool. How much negative interest is relative to how far above the synth utilization the cap is (see math below). This ensures that liability is being removed from the network (burn synths), and the value is redistributed to LPs.
The benefits of negative interest rates are
- Negative interest do not cause sell pressure on RUNE
- Liquidity stays in the network, just redistributed from savers --> LPs keeping pools deep/liquid
- There is extra yield for LPs incentivizing them to stay in, as well as attracting more LPs to enter.
- negative interest creates the correct economic incentives of A) getting savers to reduce, and B) getting LPs to stay/enter.
- This is very easy to implement from a coding perspective
Why not force savers to leave (ie Ragnarok)?
- Forced withdrawals cause sell pressure on RUNE
- Pools become more shallow and less liquid
- This doesn't create a reason/incentive for LPs to stay, and thus only creates half the incentives needed.
- The network would need to decide which savers are prioritized to be ejected and why
Negative Interest Calculation
To calculate how much negative interest is being applied
sc = synth cap
su = synth utilization
sq = synth quantity
m = negative interest multiplier in basis points (10k is neutral, no multiplier)
bpy = blocks per year
interest = (1 - ((1 - su) / (1 - sc)))
burn_per_block = (sq * interest / (10,000 / m)) / bpy