Proposal for Compensation for Flash Crash of 18th April

Background

As we all know there was a large fluctuation in the market yesterday and there were a number of traders who got liquidated. Given the team have stated that the funds belong to the DAO treasury and requires a vote I thought that I’d start a thread here so we can discuss.

Proposal

From discussing in the discord it was clear that there were definitely traders who were levered too high up, however there were users who were clearly managing risk appropriately but unable to add collateral or even close positions in the UI.

We could take a similar approach to what happened last time and compensate users for the margin that their positions held when they were liquidated.

I will also note that the flash crash did affect other exchanges (Binance for example had massive rekt events as well), however there is a case to be made for protecting early adopters, specifically those who were unable to trade during this period of high volatility

Outcomes

  • For: Compensate users affected
  • Against: Don’t compensate users affected
11 Likes

Thanks for the proposal. Just to give some data for the ETH-USD market. Please note that this is very high level and I just did it for the entire day, so there may be some liquidations that belong to the flash crash and some that lie outside of it

  • Total wallets affected: 82
  • Total liquidated: $5,057,078 USD

I also ran some numbers from the last flash crash:

  • Total wallets affected: 28
  • Total liquidated: $3,453,817

I then had a quick look to see how many of those traders who were liquidated on the 21st of Feb (last flash crash) still had been trading and found that~82% of them did. I also ran some numbers to see out of all people who had been liquidated, who still trades and found that only 29% still do.

Obviously the sample size is significantly smaller as there was only 28 traders but potentially the margin compensation may have helped keep users trading.

2 Likes

I sincerely feel sorry for traders who suffered from the crash, but I cannot agree on another spontaneous compensation again, because leverage and price crash are two sides of perpetual swaps, we can continue improving the protocol but we will not be able to eliminate the problem, we just have to bear with the risks when trading.

The main argument for compensation is that project should support early adopters and retain users. Yes, I agree. If we want to attract and retain traders by compensating trade losses, another possible solution is that we make it a permanent feature, e.g. set aside certain % of treasury fund specifically for this purpose, so that we can decide how much “insurance” can be paid out from the reserve when such incidence happens. If this strategy passes DAO, we can retroactively apply to the affected users on pro-rate basis.

To conclude, stop one-off payments and let’s make a long term plan!

1 Like

Your first paragraph is not completely true. Yes there will be flash crash which may not be completely eliminated. However, the liquidation of asset based on these crash can be eliminated. The point is not eliminate these crash but provide mechanism to avoid liquidation when one happens which is well possible.

5 Likes

I second Mecofe’s statement - the mechanism issue must also be resolved.

Users were liquidated at egregious prices. These people are early adopters of the protocol, and most of them assumed the solutions to the issues that arose from the previous crash had been resolved. Allowing these users to recover their margin is a strong signal that the upcoming system updates will perform as intended. This restoration may also make the early adopters who were impacted more bullish on the project than they had been originally. This is important because if prospective users see that even old users who were buggered by an egregious crash (which caused liquidations at prices that massively diverged from every other exchange in existence) still actively use the protocol, then they will feel much more comfortable trying out the exchange.

5 Likes

Hey guys,
Wanted to give my side/thoughts. I’ve been trading on Perp fora couple months and hodling the Perp token (now staking) for even longer. I’m a big believer of DEXs and decentralized derivative platforms and I feel in the long term, these are ideas of the future. PP has been a project that I looked to use/invest in for the super long term.

For my trading positions, I always use leverage with quite low multiple. In addition, I have multiple positions open across different tokens (at the time of the crash I had a long Sushi position and additional margin parked in there). Most of my money is parked across these various positions and I adjust accordingly. For ex: during the mid-Feb dip where ETH went from 2000 → 1300, I was actively looking at my positions and adjusting margins. Thus my liquidation price for ETH was set around 930.

During the flash crash, I was also monitoring my positions actively. As I saw Eth continue it’s non-stop drop, I began trying to adjust my positions. However, due to UI issue and lag, not a single transaction would go through. I tried to remove my excess margin in my Sushi position to put into Eth, but every transaction kept failing. I changed xDai nodes multiple times with no improvement. For around 20 mins, I continued to try until I saw my position liquidated at ~930.

During the previous flash crash, I was not one of the affected users but I voted to reimburse them. This is because I think it’s important to realize users are ultimately what makes a dapp. I felt it was important to maintain user confidence in the middle of a bull run and growing userbase potential. Given that there is even more attention on this PP flash crash on Twitter, it would not be ideal to scare away potential new users of this wave of crypto and potential investors of the Perp token.

Regardless, I can see that the team is stressed out by these unexpected circumstances and I would like to tell them: “this too shall pass”. As much as I hate the situation, all I hope we can do now is try our best to help those who were affected and continue to build to prevent this from happening again. I wish the community can see that not all of us who were liquidated were just reckless gamblers but many of us could not do anything to stop this at the time.

7 Likes

I agree with having a governance vote to reimburse affected users. There are two components to users getting liquidated.

  1. Users having “insufficient risk management”
  2. System not behaving in a reliable manner.

We should not be reimbursing users for the first, but we should be reimbursing users for the second. On every other exchange, the price of ETH fell to $1946 at the lowest. On Perp, it fell to $877, liquidating people who had very low leverage and a $900 liquidation price.

We know that the system did not act in a reliable way, and these issues were identified in the audit. This means that the team was aware of the liquidation design flaws, and did not notify users that the system was unstable.

The lowest price I found ETH falling to was $1946.

Proposal

  • Anyone who got liquidated at or above $1900 should not be compensated (gave it a bit of wiggle room from $1946). Up to this price, the system was behaving as designed.
  • Anyone who got liquidated below $1900 should be compensated. Where the funds come from and the terms are flexible. I am not sure how much is in the insurance fund, but we can draw from there first. We can also mint $PERP tokens and distribute the same value as “rewards”, subject to the same vesting conditions.

I understand that new projects go through growing pains. This speaks to the foresight of the team to put an insurance fund into place. The usage of the fund and deciding to compensate affected users should be put to an official vote as this is exactly what DAOs and governance was meant to do! Putting this to a vote will demonstrate the team’s commitment to decentralization and the DAO. Let the will of the people stand.

10 Likes

Until the issue is resolved on a protocol level, users need to continue being compensated for these failures. It sounds like a fix just got out of audit, so this should be the last compensation.

Yes I was completely wiped out, but my liquidation price was $900 (nine hundred dollars) and I had a big position and also have lots of perp tokens staking. This was rough for my portfolio, yes I was using a new protocol, yes its growing pains, but the fact of the matter is that the project has the means to make it right for us early adopters via insurance protocol or minting PERP to distribute, and that’s what needs to be done.

It’s either people who got unfairly liquidated fighting for a payout, or people who so happened to have not been long at that time saying they shouldn’t get paid out. Both sides need to understand it’s a new protocol and that there is risk to using it, but at this point I think the ‘risk’ should be distributed across the entire perp.fi community by means of minting PERP or using the insurance fund, instead of the ‘risk’ being isolated to the smaller group of people who were incorrectly ruined

6 Likes

This is not correct.

The audit I referred to is for new code that has never been deployed. This code is a modification to the system design, not a patch or bug fix.

It is generally our policy to only release audited code - we don’t run unaudited code in production. This policy can lead to situations like last weekend where code literally was 2-3 days too late to help avoid or mitigate a bad situation. On the flip side, releasing unaudited code could have even worse consequences.

1 Like

A perpetual future is a derivative to spot. The funding rate is designed for the future to converge around the spot however the derivative is its own asset with its own price.

A trading venue like Perpetual can’t make any guarantees that it’s derivative will trade the same as Binance’s perpetual and so on.

I think a dangerous precedent will be set if every time the future trades erratically to spot the treasury is raided. This is a form moral hazard.

If people want the price guarantees of spot they should buy spot.

2 Likes

No one is suggesting that the Perpetual Protocol prices should perfectly match the avg spot market prices. The issue isn’t that perps exist on a layer of abstraction from spot prices. In fact, the issue isn’t even necessarily that there was a flash crash - it’s that during this event, users were liquidated at prices that massively diverged from the rest of the market. Other exchanges have mechanisms to prevent this from occurring. Moreover, users weren’t even able to do anything about it because trades and margin management commands wouldn’t execute.

Technically, Perpetual Protocol doesn’t have to do anything about this, and the community can vote to prevent users from getting their margin back. I think that would be a terrible decision though. Users who took out the most conservative positions possible just to support the project were liquidated, and that wouldn’t have happened anywhere else. This is probably the worst moment for the project to tell its “1000 true fans” that they should be punished for mechanism and UI flaws - especially when it’s well within their means to restore these margin accounts.

3 Likes

Maybe I’m not reading your post correctly, but it seems like we are in agreement.

You said, “This code is a modification to the system design”
I said, “the team was aware of the liquidation design flaws”

I never claimed that there was a bug. There is a flaw with “SYSTEM Design”, to quote you again. The system design flaw could have been mitigated if the changes were implemented 2-3 days earlier. If a flaw in system design caused cascading liquidations, the system should cover those losses.

We need to separate out the intents of the team (good!) and the design flaws of the system (needs some tweaks). Nobody is claiming that the team sucks or the idea of the product sucks. Perp protocol is a novel product that we all love and believe in, which is why people were using it! In fact, they are among your biggest supporters, or else they wouldn’t be in your discord, forums, etc.

Yes, the vAMM design flaws need to be tweaked, this is not under debate. The team is trying its hardest, this is not under debate. The thing we are talking about is compensating users for a design flaw that was not corrected in time for this flash crash. Making your biggest believers who were affected for using the system as intended.

3 Likes

Restoring their capital (margin) is the least we can do, similar to last time.

I am also in favor of restoring the complete position.

A quick question: who controls the wallet that controls the DAO funds? Will those/that wallet holder respect the decision of PERP holders even if the team doesn’t agree with it?

3 Likes

I agree with this. The protocol should support its users. Many low leveraged positions were liquidated when they shouldn’t have been. Additionally, the UI was extremely unreliable during this period. The protocol should be modified to prevent these issues in the future.

I support voting on a proposal to either restore these liquidated positions in someway or even just the margins.

4 Likes

I think we’re looking at repayment of the initial margin in PERP tokens paid out over 6 months

1 Like

I support voting on a proposal to restore the margin positions at a minimum. This is an AWFUL look for the protocol and super users, early supporters will leave. It’s that simple.

These individuals supported the protocol with conservative liquidation prices and got screwed. There are superior options available (dydx). If the protocol abandons them now, good luck recovering from this and growing the protocol.

The decision is clear.

3 Likes

Also, this is a slap in the face…

2 Likes

On a principle level I agree with @PESHO that there should be some sort of compensation for users who got liquidated under 1.9k, mostly because there was a “fix” in the works.

That being said, I think it should not go out of the insurance fund, but rather from the tokens, such that in effect the token holders pay for it. Could be vested or unvested.

Perhaps @tongnk can run the numbers to tell us what the distribution is of liquidations and we can assess the cost of dividing it into 1.9k and below etc.

2 Likes

Ok thanks,I see your distinction between prices and liquidation price.

2 Likes

So if we look at margin only then we are looking at ~1.7m usd

3 Likes