GIP-03: No cost/forfeit to swap FIDU into Backer NFTs

Goldfinch — No cost/forfeit to swap FIDU into Backer NFTs

Authors: Alexandre Liege, Alvin Hsia, Charles Packer, Jeremy Kim

Summary

As an investor on Goldfinch, we would like to use FIDU to invest in select Junior tranches to get Backer NFTs without incurring withdrawal costs and without forfeiting GFI rewards. We believe that it will bring additional liquidity into Junior tranches.

Motivation

  1. FIDU as the entry point for investing: It will make it easier for Senior Liquidity Providers to act as Backers when they spot a junior investment that they find attractive. We believe that Senior investing is a good entry point for newcomers to the Goldfinch protocols, so this would lower the barrier to becoming a Backer. It will also enable institutional investors to place their capital in senior tranches to earn a passive income while they scout junior investment opportunities on Goldfinch.

  2. Junior financing predictability: Part of the funds in the FIDU will thus become available to invest in Junior tranches. Over time, patterns will emerge on the volume of financing that converts from FIDU into junior investing opportunities.

Description

We seek to invest in Junior tranches as Backer but Junior investments are not always available. Until such an investment is available, we need to place our funds in a liquid asset outside of the Goldfinch ecosystem. Currently, when there is no junior investment available, we can farm yield on Compound and other protocols but we would rather place our funds in FIDU (to earn yield from borrower pools + compound yield).

The main issue currently is that if we use FIDU staked for less than 12 months, we have to forfeit part of our GFI rewards to redeem the USDC and use them to invest in a junior tranche. This is because the GFI distributions received from liquidity mining unlock linearly over the first 12 months of staking. This means that while one can withdraw their FIDU whenever they like, if they withdraw before 12 months, they will forfeit some of their GFI distributions. For example, after 3 months they’d forfeit 75%, after 6 months they’d forfeit 50%, and so on. After 12 months, they will continue to receive distributions, and will never forfeit any GFI.

The second issue is the withdrawal fee. A charge of 0.5% is applied to all redemptions of FIDU.

Both of these issues result in structural incentives that keep investment capital earmarked for junior tranches, outside of the Goldfinch ecosystem.

To make it economically viable to store funds in FIDU to invest in junior on Goldfinch, we propose to enable FIDU holders to use their FIDU to invest in junior tranches at the exchange rate without incurring penalties on GFI rewards and without paying withdrawal fees.

Specification and Requirements

Specification

  • Enable FIDU holders to exchange FIDU for backers NFTs without incurring withdrawal fees nor forfeiting GFI rewards. A user would exchange their FIDU for an NFT representing their investment in a junior tranche. Behind the scene, the following would happen:
    1. Swap FIDU in a transaction fee-less exchange for USDC via the Pool.sol contract
    2. Burn the FIDU in Pool.sol
    3. Deposit USDC into the TranchedPool.sol in exchange for a Junior NFT

Benefits

  • Makes it easier for Senior Liquidity Providers to act as Backers when they spot a junior investment that they find attractive. It makes it possible to have a Goldfinch-centric investment strategy.
  • Enables borrower pools to fill up faster since senior capital already locked in FIDU can also be invested in Junior.
  • Since FIDU can be used to invest in Junior, it would make it easier to estimate the availability of financing for borrowers.

Downside

  • There may be some additional volatility in the availability of senior capital for all borrowers.

Voting
“Yes” - No cost/forfeit to swap FIDU into Backer NFTs
“No” - No change

Thanks for putting the proposal. I’m still wrapping my head around this proposal. As I’m thinking through this - I’ve couple of questions -

  1. one of the primary aspect of senior pool is being passive i.e. we do not want many people going in/out of the pool but instead have some stability. This proposal completely changes that. It could potentially create significant volatility.
  2. what happens if there is no liquidity in senior pool to swap between FIDU → USDC ?
  3. Are you proposing we accumulate rewards in both pools doing this ?

thanks for clarifications.

2 Likes

Thank you for your questions! Please let me known if I missed something.

  1. The proposal does not change the behavior of FIDU tokens (in the Senior pool). Today FIDU holders can redeem their FIDU token but pay fees and forfeit GFI rewards. This would waive the fees and forfeit only when the FIDU are redeemed to buy Junior NFT.

  2. This behavior remains unchanged: if all the FIDUs are locked into borrower pools, then it is not possible to redeem FIDU tokens.

  3. I suppose that you’re asking whether one would earn both FIDU and Junior NFT rewards at the same time. They would not. If one uses FIDU to invest into a Junior NFT, their FIDU is burnt before the Junior NFT is issued.

1 Like

Thanks for answers @Alex. I will have to give it a bit more thought on the ramifications because of this.

1 Like

@Alex and team, thank you for conceptualizing this. We are a borrower in the Goldfinch community, and will soon also become backers in junior pools. I am 100% supportive of giving investors more flexibility, and creating a pathway so that they can take on the junior role more easily when they’re ready. (By eliminating friction, fees, etc). This benefits not just investors but borrowers like us too.

@nisa makes a good point, about wanting stability in the senior pool. But I don’t see this as senior LPs jumping in and out of the protocol… rather it’s about senior LPs wanting to be further down the capital stack (ie becoming junior), which is tremendous validation of the protocol and the pools available. Worth removing the friction there.

I’d be interested to know how other protocols handle this.

3 Likes

Yeah I like this proposal. The way I view it is the protocol today says “please come in the Senior Pool, and you’ll earn these rewards but there’s also this withdraw fee and reward forfeiting mechanism because we want to incentivize long-term capital”. But that same mechanism that attempts to keep capital into the Senior Pool prevents it from doing other long-term oriented things that the protocol may want. Specifically, it makes it hard to move from Senior Pool to being a Backer. Since Backers are taking on long-term risk and exposure with the protocol, it seems completely ok to allow them to move into that position without taking a withdraw fee. The money is being kept in the protocol regardless, so it doesn’t seem fair to penalize you for wanting to make that shift. Either way, you are long-term capital for the protocol.

Also, generally the Senior Pool is ideally the best place to park stables in crypto. And maybe you’re someone who wants to be a Backer, but there aren’t any good pools open when you arrive. This proposal makes it an easy call to say, “cool, I’ll put my money in the Senior Pool, and then as soon as the next good pool opens, I’ll just move it over to become a Backer”. Otherwise you make people do the calculus and say, “well, maybe I’ll keep it in Compound until the next Backer pool opens. Cause I wouldn’t want to take a 0.5% hit just to take it out and become a Backer in 2 weeks (not to mention forfeit my GFI rewards)”.

So overall, I think this simplifies the mental calculus a lot.

It’s also worth recognizing that while that money is in the Senior Poo, it is in the Senior Pool, same as everyone else. That means their capital is at risk, and could theoretically take loss, or it could be used in other deals, and there may not be liquidity. So no one is getting a “special deal” here. All that’s happening (to me) is the protocol is now saying, “you can be long term in the Senior Pool, or long term as a Backer, and you won’t be penalized for switching from one to the other” As long as the money is in the protocol, the protocol should be happy.

3 Likes

Thank you @Alex and co for the proposal. Agree with @blakewest that may hold both LP and Backers for the longer term. I believe, f this proposal moves forward, secondary marketplace for backers become quite important as some (including LPs turned backers) may seek to exit early. Any thought on this?

2 Likes

Separate from the proposal itself, just to share how I see this proposal - this goes beyond just letting junior investors save on gas fees or earn more GFI. This could be the early stages / beginnings of a true secondary market of backer NFTs.

Not sure how the GF team would implement this proposal if it goes through, but here’s how I envision it (albeit without the technical expertise of knowing what is required on the back-end):

FIDU investors who are interested in investing in junior tranches of new deals are provided a separate FIDU staking pool. They stake their FIDU, and earn the same GFI reward rate (perhaps, plus some extra GFI for the early signaling/commitment). That way, the GF team and existing borrowers know how much senior may be lost to the junior in the upcoming deal, and the borrower of the new deal will have an idea of who’s already committed to being a junior backer.

When the new deal becomes available, the FIDU investor can choose to either:

  • Redeem their FIDU and GFI rewards (which will be at the standard FIDU GFI reward rate),
  • Exchange their FIDU for the equivalent in the backerNFT of the new deal, plus the GFI rewards (at the standard FIDU GFI reward rate), plus additional GFI rewards for providing the early commitment indication.

If the investor chooses to exchange their FIDU for the backerNFT, then they’ll be allocated that portion once the deal closes (so that the USDC redemption loophole is closed).

However, imagine if the investor is able to exchange their FIDU for other, existing backerNFTs. So instead of the two options of (i) claim FIDU + GFI, or (ii) claim new backerNFT + GFI*1.x, there is a third option: (iii) bid on existing backerNFT.

The FIDU investor can select to bid on the backerNFT of an existing pool at a certain price, which would essentially act as a “good until cancelled” limit order.

For backerNFT holders, they will also have a separate sellers staking pool, where they can stake the backerNFT that they want to sell. While that NFT is in the pool, they will earn GFI rewards, but at a rate slightly lower than the standard backerNFT rate (you can look at this as the payment of the liquidity premium). They can put in a minimum price at which they would be willing to sell their backerNFT.

So now you have a bonafide order book. As soon as you have a buy order on a backerNFT exceeding a sell order, you have FIDU that could be redeemed/exchanged for the backerNFT, essentially creating the start of a true secondary market for the backerNFT.

1 Like

@JeremyKim yeah really interesting. I love the idea of a Backer secondary market. This is something that I think would be great for the community to prioritize soon. In my mind, that secondary market would be similar to how you described, except using USDC rather than FIDU. That said, using FIDU is interesting because in that version, you’re just swapping risk types, and the capital is “already there”, rather than requiring fresh capital.

I also had thought that to make things really simple, it might be nice to have fixed pricing, which is just the NAV minus some fixed “liquidity fee” (eg. 1%). For example, if you bought into a Borrower Pool for $100, and immediately wanted to sell it, the system would sell it for $99 to whoever wanted to buy. I think the advantage of that kind of system is it really simplifies the mental calculus. There’s no auctions or time expirations or hoping you get a good deal. As a buyer you could confidently put up a “good-till-cancel” order saying “I’ll take any amount that opens up on X pool”, and similarly for the seller, it gives you a really good idea of what your “exit” price is.

In any event, I think that’s really cool. Not strictly related to this proposal, but a great idea none-the-less.

1 Like

I think fixed pricing makes sense from a practicality standpoint, as a test case/initial run of implementing something like this, but in order to get the full benefit of a liquid secondary market, eventually you’d have to let the price float to where ever the sellers/buyers want it to be (this would make it easier for more deals to get done/be priced, since there will be some benchmark of how the market prices the risk).

But agreed, this was just a thought, augmentative to the proposal at best, completely tangential at worst.

@Alex wanted to bring something to your attention: I see that the proposal has been up for discussion for 7 days. Typically, as per the current Governance Guide, roughly one week of discussion is the typical time before the proposal is moved onto Snapshot. I’d encourage the authors to go through/make sure that any new changes are incorporated in the proposal before posting it on Snapshot.

This of course, is a suggestion, and any proposal should be fully vetted/discussed before it is moved onto Snapshot.

Posting on Snapshot requires 10 GFI.

Thank you Paz. I need to check how to do the post on Snapshot.

I’m happy to support you in the process – may I have your Discord handle for coordination?

Thank you. My discord is Billy Bill#0725

We posted it here: Snapshot

Can you announce it in Discord @paz ?

1 Like