Regen Pool - The Path to an Angel Vault... and maybe much more!

GM! Sorry for the epic post, but there is a lot to discuss here.

Prequel

I started writing this post before the very extreme liquidation event that the ICHI community suffered from via “Bad Debt” in their Fuse Pool on Rari. This event took their token price from $120 to $12 in ~14 hours and down to below $2 in 2 days.

This was not because of their Angel Vault or Branded Dollar products, it was because of a poorly parameterized Fuse Pool that allowed untrusted parties to over leverage themselves with ICHI. We should obviously not follow suit.

IMO we use this pool for one thing, get the FEI we need to launch our Angel Vault and Branded Dollar. If we keep that narrow scope in mind at launch, the process can be designed to be safe and beneficial for our community without having to worry about these liquidation events.

We should be prudent and restrict the pool to the behavior we want and expect and once we feel more comfortable, we can open it up for other things.

That said, I still think it is in our best interest to continue to progress towards launching these 3 epic products: Regen Pool, oneGIV and our own Angel Vault!

Background

These posts chronicle the experience pretty well

Don’t want to read all those forum comments? Here is a quick TL;DR:

Angel Vault

The Angel Vault is a structured UniV3 Pool that creates a massive buy wall on UniV3, reducing downward volatility, while also signaling to the market that the token has great liquidity.

Angel Vaults have been incredible at providing protection against price decline. They are not magical number go up machines, but it is the best way to provide liquidity on UniV3 that we have found.

Our Angel Vault would be working on the GIV / oneGIV pair… so first we need to launch our own “branded dollar” oneGIV. To launch oneGIV, we need a lot of stable token (USDC/FEI/DAI) and a lot of GIV.

What is oneGIV?

In short, it will be Giveth’s “Branded Dollar” which can be minted for 80% stable token (ie. FEI) and 20% GIV or redeemed for 1 stable token

What stable token do we use for oneGIV?

Tribe DAO said that if we use FEI for oneGIV then they will put in 10% of whatever we raise for the Angel Vault to help make the wall bigger (SOLD!)

How do we get the FEI to launch everything?

This was an adventure.

At first we were going to sell GIV at a discount for FEI so we could get the money, but there were a lot of obvious downsides to this approach… especially legally.

Then we were planning on a very complicated 3 way solution, where Tribe DAO launches their Turbo Product and then ICHI deposits their token into the Turbo program to mint FEI tokens and then they would loan us the FEI via their Fuse Pool and we would pay interest to them. I probably already lost you on all that, as it was overly complicated and depended on both ICHI and Tribe DAO hitting their roadmaps and supporting us… but as we all know, web3 roadmaps often end up delayed so the risk of issues arising in this plan was too high so we decided to simplify this plan into what I will present below :smiley:

Ok… background over, lets get into the meat of the proposal…

Regen Pool - Borrowing & Lending for a Better World

Maybe the title above is a bit of an overstatement for the current proposal but if this MVP use case of our Regen Pool works out, then we will see what evolves into. It can become a very interesting puzzle piece for the GIVeconomy. Having our own lending and borrowing market that benefits projects on Giveth will be really cool and could have a lot of legs and be a huge thing for us.

Regen Pool would be the name of Giveth’s Fuse Pool.

Read more about what a Fuse Pool is here: https://medium.com/stakingbits/guide-to-rari-capital-fuse-permissionless-money-markets-2632a2a72929

TL;DR Fuse is an open and decentralized interest rate protocol that supports isolated interest rate pools, allowing pool creators to create customizable isolated interest rate money markets with any assets and allowing users to lend and borrow these assets

Giantkin (HERO) already has deployed a Fuse Pool for us:
https://app.rari.capital/fuse/pool/167

And there he already coordinated with Rari to make a vote to verify it!
https://snapshot.org/#/fuse.eth/proposal/0xd75cab98b9143d7a16504dad01a3322ce6855369ff6ca8d7b1685a4ac694a217

The plan is to configure this pool to incentivize FEI deposits from our community so that they earn very nice stablecoin returns, and then we, as the DAO, can put up GIV tokens as collateral to borrow the FEI, use it to create oneGIV and start our Angel Vault!

The process will look like this:

We are unlikely to default and have to liquidate a bunch of GIV like what happened to ICH for 3 reasons:

#1 We have a lot of GIV to collateralize the loan

#2 We are using the loan to make an Angel Vault which will protect against downward price volatility

#3 We will make sure no one else can default with GIV and cause a major drop by setting the cap for GIV to be exactly how much we want to deposit.

Param Party! Who’s Coming with me!

If there is a positive signal from the community in this forum post, we are going to dive deep into parameterizing this pool and want to involve YOU! The more people in our community that can understand Giveth’s Regen Pool, the more we can do with it!

We don’t have any fancy dashboards or any of that, we just hope to have thought provoking conversations and do our best to bring in as much wisdom as possible from our very wise community.

The configurable parameters for the Regen Pool are:

  • Assets (tokens that are in our pool)
  • Oracle for each asset (how do we get the price)
  • Supply Cap for each asset (max number of tokens that can be lent)
  • Borrow Cap for each asset (max number of tokens that can be borrowed)
  • Admin fee (% of fees paid by borrowers that goes to Giveth liquidity multisig)
  • Liquidation Incentive (additional collateral given to liquidators as an incentive to perform liquidations of underwater accounts)
  • Whitelist (option for the pool to be permissioned for selected addresses)
  • Close Factor (in the event of liquidation, max amount of collateral that can be liquidated)
  • Upgradeability (whether the pool parameters can be modified)
  • Collateral Factor (% that each $1 of collateral in that asset increases the amount a user can borrow limit, aka LTV)
  • Borrowable (We can turn off borrowing for some assets)
  • Reserve Factor (% of the interest paid by borrowers that goes to an insurance pool in the event something goes terribly wrong and pool becomes undercollateralized)
  • Interest model (borrow/supply rate curves)
  • Rewards for Deposits (GIV or GIVstream paid on top of the interest for depositing)

Things we should probably decide first relating to our overall strategy:

  • Technical Feasibility of using the GIVstream for Rewards
  • What are the defaults (Is it worth the gas to change them)
  • Where do the Admin Fees go (donation.eth? giv.eth?)
  • FEI Borrowing Strategy (do we wait to borrow FEI until we reach the goal)
  • FEI Amount to Borrow (how big should our Angel Vault to be)
  • GIV Overcollateralization (how much extra GIV do we want to put into the pool to keep it well-collateralized)
  • Source of GIV (Does it come from the Liquidity Multisig? nrGIV? GIVgarden?)
  • FEI Repayment Strategy (how do we plan to repay the loan)

Some Initial Thoughts on Overall Strategy

Technical Feasibility of GIVstream

Working with Amin and Pavle on this now… but if we can use the rewards system embedded into the Fuse Pool to distribute a GIVstream as opposed to distributing liquid GIV, we can offer much more attractive APRs.

Defaults cost money to change

GiantKin (HERO) configured the Pool already to have certain values and spent a lot of money on gas to deploy it (~$1000). If we don’t feel strongly about a parameter, we should probably leave it as it is.

Where do the Admin Fees Go?

If we want this to be a Regen Pool, we should make the fees go to donation.eth, if we want to use this to support Giveth as an organization, we can have it sent to giv.eth.

FEI Borrowing Strategy

As people deposit FEI into the pool, it becomes cheaper to borrow the FEI. We might end up in a bidding war to borrow the FEI. Should we just try to borrow some every day? Do we use a trusted party to do the borrowing, or do we use a multisig? How do we set the LTVs in a way that we can borrow the FEI that is deposited.

Amount of FEI to Borrow

Working with ICHI, they strongly advise that we make an Angel Vault that is at least 10% of the market cap to really intimidate the market. Currently our market cap is $5.5M but the market cap will go up when we use about ~$1.5M GIV to overcollateralize oneGIV and ~$3M GIV to overcollateralize our loan (see Regen Pool below). This will make our market cap ~$10M so to achieve the 10% market cap optics we will need 800k FEI.

GIV Overcollateralization

The overcollateralization of oneGIV is necessary so that the oneGIV currency has room to grow, this overcollateralization will be 750% to start but as people mint oneGIV this collateralization will shrink and the target is to be able to have 2M more oneGIV minted while maintaining a 250% collateralization.

The overcollateralization of our loan in the Regen Pool is to give FEI depositors confidence that we will not default, this overcollateralization will be 375%.

These are conservative estimates, the exact numbers we use will be further examined on this forum post, in discord and in our Param Parties, and will likely be lower than estimated here.

Source of GIV

This will be a lot of GIV, maybe we should consider pulling from multiple pools to make this happen?

FEI Repayment Strategy

If we are going to take out a loan, how do we pay it back? How long do we want to have this loan? How much money do we make in oneGIV if we push the price up? How long do we want to keep this loan? Is yield farming for the Angel Vault going to be enough to keep the wall strong? How much of the wall should be protocol owned?

So many questions, but they all need to be thought through so we can make our best guess for how we want to pay this loan back. The interest rate will be small, around 3-7%. If we borrow 800k that is 40k a year, which is about the cost of 1 team member. When thought of like that, in many ways it seems like a pretty awesome deal, but we need a plan for buying back the wall.

If you want to go fast go alone, if you want to go far, go together

If we go for this, we will open up 3 incredible products for our community:

  1. Regen Pool: A lending market that benefits projects on Giveth
  2. oneGIV: Our own stable coin
  3. Angel Vault: A structured Univ3 pool that can be farmed

But it won’t be easy, we will need to think a lot about how we design everything.

We have one of the most technically savvy communities in the nonprofit world, so much of our community has gone deep into the defi space and gets this stuff, let’s take on this challenge and set up a safe pool that will allow our community to loan us the FEI and earn a decent stable coin return, with almost no risk of liquidation.

If you have interest in helping make this happen we have started the discussion in the GIVeconomy channel on Discord: https://discord.gg/aG8SFVqk

Should we create this Regen Pool to launch oneGIV and our Angel Vault

  • Yes!
  • Maybe, I will leave a comment with my thoughts
  • No
  • Abstain

0 voters

4 Likes

While I love the branding opportunity of calling this a Regen Pool I think we have to recognize our lack of revenue streams. I strongly am in favour of admin fees going to giv.eth!

4 Likes

I am really looking forward for continuing this talk and the parametization parties.

There is a lost that seems very interesting to strenghtening our community. But there are also a lot of things that I still don’t understand well. Like all the benefits that oneGIV may have for our community and how will it keeps it’s peg to the dollar.

I am glad we have the Univ2 almost ready as a liquidity solution meanwhile. I advice caution while deploying such big and complex systems.

I would also like the idea of having a Regen pool sending the fees to donation.eth. But I am yet to understand our situation of revenue streams.

Also, considering the events that led to the devaluation of the ICHI token (which also should be noted it pumped just before that), I think we should explore if it’s worth it to invest a big part of the interest for an insurance, as stated here

2 Likes

I was thinking the same thing. +1 on fees to giv.eth. I love supporting verified projects, but in order to do that, we really need to stabilize our revenue streams.

@griff or @giantkin - Will the Admin Fees be in whatever token the user choose to deposit? I would really like to diversify our treasury and this could be a good opportunity. I wonder if we could also use these fees to pay back the loan in some way.

I have a lot more questions and thoughts but I imagine we will discuss in param parties. I’m going to try to rally more votes on this and if we can get community approval, we should get the ball roll on param discussions.

3 Likes

Admin fee’s I assume would be in what the BORROWer uses. I’ll have to check that.
Also, i have other thoughts about the admin fee and the pool in general.
1)the fee isnt going to be much. if its 1% its based on the borrowing numbers. $1000 borrowed at 5% is $50 for the Year. 1% of that is $.50 I dont see this as doing that much.

3 Likes

The vote to make the pool verified has passed. I do not know how long it takes for the actions to follow.

2 Likes
  1. What is the worst case scenario that can happen if we launch this? Short and Long term.
  2. How do we know our community members will have FEI and want to deposit FEI to this pool? Have we done any research on that to validate the idea?
  3. Other than reaching the goal of getting enough funds to launch the Angel Vault, is there any other, broader long-term benefit or opportunity with having our own Borrowing & Lending market?
  4. How can we transform all the benefits of launching this market to the average project owner or donor, and communicating that in simples way possible? What will make them happy?
6 Likes

I noticed Rari offers a couple of plugins, maybe that could offer a solution to link the pool to our stream?

  1. Staking plugin: The staking plugin will utilize idle tokens by staking them for rewards through their native platforms
  2. Interest Rate Model Plugin: the lending interest rate for assets will match the staking rewards yield available on that asset.

there is an upgradability compatibility option which I noticed majority of users are keeping the settings to be upgradable but we can maybe set a strong restriction or time frame on it? (i.e. to review the defaults every 3 months and get a vote if it needs revising). But to disable this option might be dangerous.

If the main purpose is to fund the Angel Vault with the FEI then wouldn’t it make sense to wait to raise the sufficient min. required amount (8-10% of market cap) and then borrow the whole amount?

With the problem of depositors borrowing cheap FEI, would it be possible to treat this as a “crowdfunding” with a time limit? Meaning once enough FEI is deposited we will stop/limit the lending borrowing activity in the pool and only allow the current depositors to earn yield until we repay the loan.

Also wouldn’t the linear utilization rate make the interests go higher as more FEI is deposited into the pool? Can we set the configs in a way to incentivize the lenders to deposit more FEI and keep them there?

Otherwise, if we also take the “whitelist” approach we would still mitigate the risk of depositors acting against our strategy of fundraising for the Angel Vault.

multisig?
Rari guys mentioned Its definitely easier and cheaper to make the pool on a normal wallet and then transfer to a multisig. perhaps would make sense to assign a trusted part(ies) for this to save on gas.

DAI vs. FEI?

My original thought was to offer both Dai and Fei since it seems Dai is more in circulation and accessible. However, it seems that can cause some technical problems, converting challenges, etc.

Also from a quick feedback round in the community it appears members have no issue converting their Dai to Fei to deposit in the pool. We just need to make the process of converting easy and transparent to reduce the work/hassle for depositors.

And we will be the main borrower… so we are just paying the fee to ourself… We will borrow 800k-1m and the interest will be 3-6% so if the admin fee is 1% it would be around $600 a year from our loan. I think the marketing is worth the $600… tho we could jack the fees up to 10% and $6000 might be more worth it… Maybe we should move the giv.eth/donation.eth decision to the next step once we have more solid numbers.

  1. Worst case, is really bad… if we poorly manage this pool, we could default and sell a lot of GIV into the market. The Angel Vault would get liquidated… the GIV price wouldnt get destroyed as much as ICHI, but it would definitely take a hit… but this worst case, well we would have to really screw it up, this would be very very unlikely.

  2. I think if we design it so that we give stable coin returns of liquid 15% APR and with a GIV stream of around 80% APR, it won’t matter what stable coin it is… people will stick their coins there… We were doing research in the Defi4good chat and are still asking around. We can just use DAI as well and then as a DAO sell the DAI for FEI… but then our debt is in DAI which might take an extra tx to acquire when we want to pay it down.

  3. YES! I think we can market this as a Defi4good lending pool. There is a nice opportunity to use this as a lego to do other things… i wouldn’t deposit more GIV to borrow more money… as that is a slippery slope… but we can look at what shapeshift is doing with their fuse pool, where they are incentivizing staking their Angel Vault Deposit token and then when it is deposited, their users can actually earn a yield (which we could do on the GIVfarm) AND the can borrow against it and do something else, like borrow DAI and then buy ETH with it, effectively going long on ETH (something we CAN’T do on the GIVfarm). There are a lot of cool things we can do with this pool, but we should take it slow and just take baby steps to get us to having this angel vault.

  4. I think the big wins here are for our token holders, which end up including the projects and donors… most of our donations actually happen in GIV and all our Donors get GIVbacks, so donors and projects are GIV token holders… so when we add liquidity and strengthen the GIVeconomy, we help the donors and the projects.

1 Like

The problem is we wouldn’t be the only borrower, anyone can borrow it and if there is a lot of FEI and not a lot of borrowing, then the interest rate for borrowing will be very low, incentivizing people to borrow.

We don’t have that kind of fine grained control.

As more FEI is deposited the Reward APR goes down for the depositors, and the interest on borrowing also goes down. what we can do is say, we want to target borrowing 800k with a utilization rate of 64% so that means we need 1.25M Fei Deposited… so lets set the rewards to be 80% APR when 1.25M is deposited… (this means we would need to have 1M USD worth of GIV allocated (as a GIVstream) for 12 months (or 500k for 6 months))

If 2M of FEI is deposited then the APR would be 50%
if 1M is deposited then the APR would be 100%
if only 500k is deposited then the APR is 200%

This is because the rewards are a set amount of GIV in a GIVstream… the APR will also be a function of the GIV price, so if the price of GIV goes up, so does the APR and if it goes down so does the APR…

The real time limit is how long do we want to offer rewards to depositors in the pool which is a function of how fast we will pay back the loan and buy back the wall.

Yeah i think it is a lot easier for everyone (depositors and the DAO) if we are only focused on rewarding the deposits of one asset. Fei is the obvious choice since that is what we want in the end. I don’t think it will be hard for people to convert to FEI, I assume a lot of people would have to convert to what ever token we choose, and we get a lot of extra network effects with FEI via (likely via their comms team) that we don’t get with DAI.

1 Like

Added this graphic to the original post that describes the process:

2 Likes

Oh and I would love to do a call focused on just answering these questions:

Things we should probably decide first relating to our overall strategy:

  • FEI Borrowing Strategy (do we wait to borrow FEI until we reach the goal)
  • FEI Amount to Borrow (how big should our Angel Vault to be)
  • GIV Overcollateralization (how much extra GIV do we want to put into the pool to keep it well-collateralized)
  • Source of GIV (Does it come from the Liquidity Multisig? nrGIV? GIVgarden?)
  • FEI Repayment Strategy (how do we plan to repay the loan)

Let’s pick a time:
https://doodle.com/meeting/participate/id/bmZ08zAd

1 Like

I still think the first step is setting the pool parameters from here, and going forward. before talking about whats going to happen going forward. I would work on changing those settings, when gas is low, and I can move funds in as needed to cover. if its decided to use the rari system. we can deposit the giv at any time, and wait for users to deposit whatever funds they want. (fei/dai/usdc) but tell them we would borrow based on a ‘chunk’ of tokens, not small amounts, so they have a better chance if they deposit based on that.

1 Like

interest rate model is something we need to set now, it was discussed to change from the one i picked, to a lower rate that shot up at 80% utilization of that coin.

1 Like

Not sure i understood. I wouldnt want to turn off the upgradeable option. I was saying if we are unsure of a setting, to not change it. as its a gas cost.

(reply to another post, but System doesnt allow 3 replies lol) —

Somethings i think your missing.
Multisig. i am already setting up the pool with a normal wallet.
Linear utilization: the more fei (or any) is deposited, that raises the Utilization CAP up (lowers the utilization %(thats how i understand that). we are talking about a supply caps, however

Both Dai and Fee (and usdc) are offered for depositors. they can choose any. (this relates to my post above a bit) Letting it be known we will borrow in chunks (to save gas) and not small amounts. so if they want their % (and we can add rewards to what we want more of) they would change to Fei and deposit mainly that.
Could change the LTV to 0% to stop the other coins however. Instead just putting the extra reward on top, seems like a great option however.

I think i covered everything? :slight_smile: thanks for hte conversations love it :0

I think we can change that whenever you want, i don’t think it will change, we want the one that gives us the lowest rates

ok awesome. ill start watching gas, and work on switching them over.
Thanks!

1 Like