Hi guys! I just joined the community and I´m a proud hodler of YFI since a few days. This project is amazing and THIS topic here is exactly the right discussion so I´ll share my thoughts and hope they add value.
First of all, I´m not a programmer but a finance guy so I will focus on these aspects and hope someone smarter than me can figure out how to pour things into code when the time comes…
In finance it´s all about safety and trust. When we talk about the masses then risk aversion, not greed, is the strongest influence on investment decisions. And in the long run yearn.finance aims towards the masses as far as I understand. So I think it´s not only a marketing gimmick but it´s real added value and a customer magnet when offering an inbuilt safety net for certain risks. As mentioned by @Dankmonty in the OP, a well sized insurance pool can work as a moat for this project against forks and this moat grows over time.
To summarize and expand on the risks mentioned in this thread:
- smart contract risk of the yearn.finance backbone, affecting all pools and vaults
- smart contract risk of individual vaults
- smart contract risk of the tokens or plattforms used in a strategy (Aave, Balancer, Compound etc.)
- pegging/collateral risk of stable coins (especially USDT)
- address freezing risk due to centralized control of certain coins (USDC, WBTC, USDT, etc.)
Which risks should the YFI community insure?
- To my knowledge the underlying infrastructure has been audited and probably tested by numerous hackers already. If this fails, YFI is probably dead, no matter the insurance pool. Fingers crossed!
- Individual vaults are not created equally (correct?) so there could be bugs and vulnerabilities. The insurance of this risk must be first priority because yearn´s reputation builds on those products.
- For this risk there are insurance offers from projects like Nexus Mutual, so I like the current approach with the “Cover” option. On the other hand this is very expensive, if not prohibitive over a longer time. So this could be considered as a second priority.
- One can argue that investors should know and bear the risk of a failed peg because they invest in these stable coins (in particular USDT and DAI are at risk here). However, USDT and DAI are central to most Vault strategies, so they are an integral part of yearn at this point. Therefore I wouldn´t deny some responsibility of the YFI community for investor´s loss if a peg blows up. Though, investors still need to be aware and be somewhat responsible for the risk they take, so this would be third priority.
- I assume if this risk manifests itself, the whole DeFi space is set back to square one for a while. Investors in DeFi have to take this risk for the time being.
Takeaways:
- Insurance is very important
- only insure risks that make sense to insure
- Have a 3-tiered insurance fund (3 pools)
- Allocate different portions of the insurance inflows to these pools according to priority. For example 60% to “Risk 2”, 25% “Risk 3”, 15% “Risk 4”
Next step: financing the pools
There needs to be a balance between raising funds fast enough to bootstrap insurance liquidity and cost burden on returns. The incentives must remain in favor to use yearn.finance over other protocols.
Also there needs to be a balance between the different actors: Investors, Vault creators and YFI holders.
As the target size for the total insurance fund (pool 1,2,3) it makes sense to reach a value equal to the 3 largest vaults combined, or some arbitrary % of TVL. (50%?) Because of the nature of the risks we cover, it wouldn´t make sense to go all the way up to 100% TVL.
As far as I understand, the fee structure of yearn.finance can be altered flexibly by governance decisions.
In this case I would suggest the following financing dynamic:
- In the start, investors pay an additional 2% Gas subsidy fee (7% total) which goes into the insurance fund
- Equally, YFI holders only receive 3% of the 5% gas subsidy and put 2% into the insurance fund
- To hold vault creators accountable, 30% of their earnings go into the insurance fund as well.
- These higher burdens are in effects until the fund reaches 10% of its target size and are then reduced by 10% as a step-up function. So they are reduced by another 10% when the fund reaches 20% of target value and so on. That means at 90-100% the additional fees would only be 0.2% gas subsidy from investor´s and YFI holders and 3% of earnings from vault creators. At 100% of target value, there will be no additional fees for as long as the fund remains at or above this 100% of target. (It´s a moving target so it will be on/off)
- The insurance fund invests equally into all yearn vaults in order to help grow itself and diversify. Since we don´t assume that global shutdown risks occur, it would not hurt the fund too much if one or two vaults get compromised. However, the average yield would help quite nicely to compound the fund. If a more conservative strategy is desired we could just allocate 50% equally to vaults and keep 50% in some other forms (BTC, ETH, stablecoins…) This also incentivizes vault creators to build for yearn.finance instead of other protocols because they will receive insurance funds into their vault right away, thus receiving instant income. (after governance voting to include the vault into the insurance fund)
- Since the insurance fund is investing and growing itself even if at 100% target value, we should implement a spillover function, for example at 110% target value. All funds beyond that mark will be put into the YFI reward pool. The spillover threshold should sit a good percentage over 100% to allow growth of TVL without immediately triggering additional fees again. Meanwhile this mechanic allows for distribution of locked capital to the YFI holders in case the protocoll shrinks temporarily.
The insurance case:
Let´s assume one of the insured risks manifests. How do investors get their compensation?
Perhaps there is a way to automate this in the smart contract? That way, funds could be distributed immediately to the contributing addresses according to the lost value.
Or there would be a “request insurance claim function” like at nexus mutual, which then has to be confirmed by the YFI governance. Personally I prefer the first if possible because it removes trust but the latter should work as well.
Now, let´s assume the insurance fund didn´t grow large enough to cover all the claims.
There are 3 options to handle the situation:
- Just pay out whatever is in the insurance fund at a pro rata basis. Sorry, investors.
- Mint YFI tokens, sell at the market and compensate investors.Sorry, YFI holders.
- The insurance fund mints a special token that is an IOU to the investor and is redeemable at any time for its value from the insurance fund. I got this concept from PTF and I think it´s brilliant, because the insurance fund is most likely replenishing at a nice rate so people can have trust in the future redemption of their claim.
You find more about this concept in the token whitepaper of PTF: https://power.trade/fuel-token/
Alright, sorry for the wall of text, I hope it is of value.
Cheers, and keep up the great work!