[FIP - 123] Introduce 20% [RageQuit] function for TEMPLE/FRAX gauge

I’d like to propose the introduction of a [Ragequit] function for pools that pose no existential threat to Frax, if they were to unlock.

With some older pools having either dropped significantly in APY or the assets in the LP having become increasingly risky to hold, we’re seeing an increasing number of people asking for unlocks or some way to get out of these “dead” and/or “risky” gauges.

The recent controversial discussions around the Temple/Frax LP pool being a perfect example. People have reached out to Temple team to figure out a solution. Temple currently came up with a migration of the LP’s resulting in Temple taking over the locked LP’s at a significant discount. This means value from Fraximalists flows to Temple treasury.

As long as those LP’s stay locked the value doesn’t necessarily leave the Frax ecosystem, however, if Temple ever decides to go for a Token swap this would warrant an unlock of the LP’s and Temple can from that moment run off with the value extracted from the Frax eco.

This got me to thinking if there is not a better way to recycle this value and keep it in the Frax Eco. If we introduce an option for people to unlock their LP’s, but make it so that unlocking incurs a cost (%slash) of said LP which ends up in the hands of Frax treasury, this could present a nice additional revenue source for the Frax Protocol. We could redistribute this value to veFXS holders to increase APR or whatever people can come up with, this can be discussed later.

This way instead of losing the value to the Temple treasury (for the example situation above), Frax could actually profit from it and increase their own.

If we could come up with a reasonable % for the slash I believe this could become a very useful function in which both The Unlockers and Frax Protocol “win”. I do want to stress that this function, if introduced, should only be available for pools that are of either low TVL or have no significant risk to the protocol attached to it by unlocking.

Starting with a 20% fee on the temple/frax LP will be a good exercise to see how feasible it is.

Voting

  • FOR: implement ragequit function for Temple/FRAX gauge (20% fee)
  • AGAINST: Do Nothing
2 Likes

I personally think a slash of around 15-20% would be a reasonable figure where people will actually feel comfortable using it while also offering a good amount of compensation for Frax losing the liquidity.

Ofcourse this could also be an adjusted % depending on which pool is getting unlocked i.e. a 3M TVL pool of stable/stable asset should probably get slashed less than a 20M TVL pool of stable/volatile asset.
If we introduce this function, I believe for every pool we want to see it enabled for, there should be a seperate specific voting round with those details attached.

3 Likes

The main reasons why Frax has locked liquidity is to avoid bank runs. Frax has kept its peg during bull and bear even with a CR below 100%. Many have tried, but all have failed because they did not have locked liquidity.

During a bank run everybody that can, will dump FRAX. Locked liquidity will protect against that in two ways. First the FRAX in the liquidity can not be dumped and second, concentrated liquidity will also buy extra FRAX during a bank run.
Because Frax has always made sure that there is enough locked liquidity to cover the gap between the CR and a 100% CR a, bank run could never succeed.
To keep the peg safe, every locked FRAX counts and every locked FRAX in concentrated liquidity counts double. We are in a process to get the CR to 100%, but this is a slow process so we will need the locked liquidity for quite some time to keep Frax safe.

If we were to unlock the TempleLP gauge, that would likely mean that in some point of time we need to get extra locked liquidity to protect the peg. We need to pay for new lockers to lock, so it will cost the protocol. I think it is therefore reasonable that we ask for a rage-quit fee, so the Frax protocol does not lose on this transaction.
We currently have enough locked liquidity such that we can easily handle an unlocking of the Temple LP gauge ($10M). If the rage-quit fee goes to the treasury, this will also bring us a little closer to a CR of 100% and that will lower our dependency on locked liquidity in the future.

With regards to the rage-quit fee for the Temple LP. Most LP tokens are still locked for 2.5 years. A 20% fee, would mean an APY of 8%. I think that is not unreasonable, both for the lockers and for the protocol.

I have looked at all gauges that have a migration function (so we can build the rage-quit exit) and Temple is the only one that is a volatile pair. All others are concentrated liquidity, meaning that they work double and Frax will also lose double the protection when unlocked. We should only consider unlocking those via rage quitting when we are closer to a CR of 100%.

6 Likes

This is honestly a win/win for frax and the unlockers. Moreover, those that want to stay have that option as well.

Thank you for the great post!

I agree with rage-quit fee % on temple
seems fair for both parties and a great addition to the treasury

and am also fond of the idea of it being available on other pairs, in the future (when higher CR)
so I can redeploy to the newer convex fraxbp farms instead
Specially as some of these older pools become redundant to the protocol
and don’t need to be turned off, but instead would benefit more of liquidity moving to other frax pairs where the actual trading takes place
(just taking a glance on the uni v3 analytics page 7d vol there are a couple of 3-5m pools having 0 vol)

2 Likes

Great point about using the profits towards increasing the CR. This is a much better use case than distributing it to veFXS holders at this point in time.

I agree that we should not enable this yet for multiple pools at once until we’re closer to 100% CR.

I think the Temple LP will be a good case-study to see how well it gets used. A 20% rage-quit fee sounds reasonable to me as well, I think it’s likely the golden ratio to make it attractive to both sides.

1 Like

I’m a bit on the fence about this idea. As the protocol is built right now to be undercollateralized, locked liquidity is a great defense against a frax bank run like Denett mentioned. Depending on how this were implemented it could start to pose a threat to the Frax peg security. A couple things I think are worth mentioning:

-By allowing stakers to leave for a 20% fee for instance that means that only 20% of these otherwise fully locked pools can be counted as locked liquidity. Stakers enabled to leave will leave if it makes financial sense to do so.

-There have been multiple single days with price drops of 20% or more in probably every non-stable asset in crypto, so for a staker deciding whether to panic sell or not this is not a very high bar to hit during these not infrequent worst days.

-The way this is proposed, Frax is a forced buyer of that 20% of liquidity - not in the traditional sense of giving up token A for token B buying but in trading peg security of having assets locked and un-dumpable for assets used for backing. This could be trading a lot of security for a little volatile (and maybe even value quickly depreciating) assets, so we likely can’t even consider the 20% locked at full value.

-So it’s clear that this wouldn’t work for every pair otherwise we’d be cutting our locked liquidity into 1/5th of what it was. But where is the cutoff point for determining whether a pool is low TVL or not of significant risk to the protocol? If the whole point of this is to avoid governance unlock votes then the ragequit function would need to be built into future pools, and how do you project which pairs are going to attract large amounts of locked liquidity multiple years down the line? Did Temple look at their pool when creating it and say it wasn’t going to attract much liquidity so it would be okay if it unlocked? From their perspective maybe it’s locked value was insignificant to frax but more significant to Temple in the early days so why would they want to add a function to it at genesis that allows Frax to unlock all of their locked liquidity and take a 20% fee for itself? Maybe it’s decided by TVL, but that TVL cutoff would need to scale with the size of the protocol or better yet by the size of the total locked liquidity so that only a certain percent was possible at any given time.

I do see the value in the temple case of claiming the ragequit fee if Temple is already doing it but if this is something that will be set up for future pools it would be much more complicated to setup than it seems and would start to risk the Frax peg if not done properly.

Going off TVL locked in Gauge’d contracts (which isn’t the whole picture but is informative) about 1/5 of the total liquidity is in pools the size of Temple-Frax or smaller, so given the first point above this change would result in a decrease of 16% or pessimistically up to 20% of Frax’s locked LP. Not huge all things considered but not insignificant either.

I think you’re letting your thoughts get out of hand a little bit there. Allowing stakers to leave for a 20% fee on strategically selected pools does not mean all of a sudden only 20% of ALL locked pools should be considered “true” locked liquidity. Obviously a function like this would never get enabled for key-liquidity pools like e.g. the Frax/USDC Uni pair.

We’re talking here about enabling it for specific pools that, if unlocked, hold no risk for the Frax peg and ends up being a net win for the protocol.

20% is actually still a high bar considering that 50% of the LP is ALWAYS FRAX (1$). Volatile tokens may drop in value, the FRAX part cannot. If we make the fee higher it’s just going to become a pointless implementation because nobody will use it. It has to stay reasonable for both sides. Also, in the Temple case, TEMPLE currently has a hard floor of $0.97 implemented so we can consider the 20% at full value. I do think it’s imperative that we move forward with this proposal with haste since we don’t know how long Temple will keep supporting this floor.

Unlocking the Temple/frax LP Frax is not trading in peg security, the $10M that would get unlocked is insignificant in the total picture of locked liquidity right now. However, the $2M revenue that Frax can make from this unlock is in fact a significant help towards pushing the CR closer to the desired 100%.

Like Dennis mentioned before, enabling this function for other pools can only be done for those with a migration function. Currently those are all with concentrated liquidity and will only become eligible once we are closer to 100% CR.

I think maybe for the other pools that are needed to protect peg (like uni v3 usdc/frax) add an option to switch between other peg pools (curve/uni)

on the note of the uniswap pool
currently, our uniswap v3 usdc/frax gauge pool’s volume is getting stolen by another pool with lower fee’s (110m tvl 2.7m vol vs 1.73m tvl 25m vol)
that’s also not good
in general, it should be better if our pools are more moldable (so maybe not liquid and unlockable (except with an exit fee) so we can adapt to the situation and protect the peg/soak up the volume the best

this is not the first time we see this, there are more gauges that lock frax/defend peg but end up not being used at all, and it would all be better used in fraxbp

so make the majority of the pools moldable/unlockable by rage-fee (if not used to protect peg)

Like I said, I think this makes sense specifically for the Frax-Temple pool especially since Temple is already willing to buy it from the stakers. I don’t think this proposal fleshes out how RageQuit would work for other pools well enough though, and don’t want to see something hastily passed for the sake of the Temple stakers that negatively affects the protocol going forward.

In order for this to be something that goes beyond the Temple-Frax pool I’d want to see:

-Some framework for determining which pools are Non-critical
-Something that limits how many pools can be labeled non-critical
-Which currently existing pools this would even be possible with
-Which future new pools this would be included with
-What Frax would do with the claimed liquidity

This is only true if the protocol unlocks and sells it’s claimed portion of LP when it unlocks the rest. If it’s keeping the locked LP and one half of the pair goes to 0 then the entire LP will still be 50% frax but worth $0 due to impermanent loss. That’s why adding the LP to the protocol treasury could be a negative for the protocol because if people are panic exiting for instance a UST-Frax pair then the protocol could end up with a bunch of soon to be worthless LP that it’s unable to sell without a governance vote.

I get what you’re saying but I do want to push back on this a little. I am definitely looking at the worst possible case here but I’d say that’s important if we’re trying to make a change to how locked liquidity works going forward. I’m sure you saw the Sam K TG post about how it was not possible for Frax to lose it’s peg because there was too much locked liquidity to be able to sell enough Frax through curve to push it off peg. I’d argue that provability is big for Frax’s claim to be worth $1. Having a ragequit function would change that calculation and for that sake I do think only valuing the locked liquidity that has the option to ragequit at 20% locked is the right way to assess it.

This is really interesting, and a good argument to make the locked pools more moldable as you say, though making the pools migrateable vs unlockable are two very different things. In a perfect world it would be neat to have all the locked liquidity fully moveable between different pools without giving the option to remove before the timelock expired, though I don’t know how technically feasible it is, and would be fairly gas intensive I’d guess.

I think Dennis made a comment in the past already on the movable between pools idea
it indeed would be hard to make work on the current pools (maybe only the old one’s with migration build in)
I think the gas price indeed would be like claiming+depositing into a pool
I think that’s fine, tho it’s not like you would do this everyday and not every user would use it

anyhow, for now we should focus on the rage-quit fee unlock option
and then think about the use of his migration option for peg defending pools when cr is sub 100% in the future

I think the majority of the UNI frax/x(nonstable) would fit the non-critical
I also don’t think with this implemented, those pools would run empty
they would balance themselves healthy as long they are supported (bribes or simply development on the other token)

I would for something extremely punative.

30% fee + ((number of days left/365)*70%)

Non-critical to me is anything the AMOs don’t touch.

1 Like

I’ve adjusted the title to keep this proposal affecting the Temple/Frax only for now.
For future ones we can expand on this once the CR is closer to 100%.
I believe we should move this to voting soon since Temple is only planning on backing the $0.97 price for 1-2 more weeks.
Starting with a 20% fee on the temple/frax LP will be a good exercise to see how feasible it is. So let’s make the Voting on this proposal simply be:
FOR = implement ragequit function for Temple/FRAX gauge (20% fee)
AGAINST= Do Nothing
@amirnader whenever you are ready ser.

That free structure is so high that no one would ever use it
and completely unreasonable as well, as when you have 1d left on your lock you would still get hit with 30%

i think the 20% is easy to do for the temple pool, but for future pools it should follow the methods of veALCX and veYFI wich uses a min(75%, lock_duration_left / 4 years * 100%)

using this model for current temple pools is :

25% / 3 = 8,33
8,33/365 = 0,02282
0,02282 x 848 = 19,35
(majority of the temple that locked for 3 year has around 850D left)

so a flat 20% currently would be fine for those

A flat 20% fee is unfair for those locked for e.g. less than 2 years. I think the fee as a function of how long that lp is locked should be a better solution. For example, the fee can be calculated as 8%*(lock_duration_left (in the unit of years)/1year).

This is the point. make it extremely punitive so it’s not used much.

8% is way too low. That’s barely even a dent and would drive people to unlock. Starting penalty should be a minimum of 25%, if not 30%.

having a pure minimum floor is a bad idea and make’s the entire idea pointless

Should simply be (75%, lock_duration_left / 4 years * 100%)
so 20% for 3y

the point is it should indeed not be used all the time but with such fee structure you mention not a single person would ever use it

it’s a net benefit to the protocol at 20%

I agree that there should be a minimum of 20% and it should scale up from there. Modeling our mechanism after veALCX or veYFI neglects the fact that Frax is inherently a different protocol than those two. veYFI exists to make and distribute money to it’s stakers, so the worst that could happen from unlocking is sell pressure to YFI which is countered by the profit they make off claiming the 20%. The locked Frax liquidity is first and foremost useful to Frax in maintaining the peg and liquidity of our stablecoin, profiting from it comes as a side benefit. So structuring the fee in a way that makes it painful to unlock is kinda the point, 8% is not painful in crypto. If nobody uses it that’s perfectly fine from frax’s perspective, it’ll just exist as an escape hatch for the truly desperate.

Something that might allow the slashing % to be lower than otherwise would be if Frax’s take is only Frax and not whatever the other token it’s paired with. For instance, if $100 worth of temple-Frax unlocked and Frax kept 20% of the total amount but only took Frax then the staker would receive $50 temple and $30 Frax and the protocol would keep $20 Frax. That way Frax is not forced to take other tokens as part of it’s backing and can just burn the additional Frax allowing it’s Cr to rise by lowering the debt obligation. This would help keep Frax from catching falling knife assets as well, it sounds like the temple is about to not be worth as much as it is now so using it to add to the CR seems ill advised.