Addition of Flux’s fTokens, fUSDC and fUSDT to the eUSD collateral basket

Summary

Addition of Flux’s fTokens, fUSDC and fUSDT into the eUSD collateral basket.

Abstract

Flux finance is a decentralised lending platform bringing short term US treasuries on-chain in the form of fTokens. The proposed proposal if enacted would add fUSDC and fUSDT to the current collateral basket via the Reserve Protocol auction mechanism, swapping a portion of current collaterals to the new fTokens.

Problem Statement

The current eUSD collateral basket utilises assets from two protocols, the first AAVE in the form of saUSDC and saUSDT and secondly Compound using cUSDC and cUSDT.

The current basket is currently limited to only 2 protocols, AAVE and Compound, while these two protocols have been battle-tested in defi and have a strong a track history of proving a safe and reliable yield a basket containing only these assets does not demonstrate optimal diversification or yield given other collateral plugins are now available.

Rationale

By adding fUSDC and fUDST to the collateral basket we would achieve further diversification to the eUSD basket, benefitting the whole ecosystem, by demonstrating a more diverse collateral basket we demonstrate or core principle of the Reserve Protocol and attract new participants.

Holders of eUSD and RSR stakers would also benefit by spreading the smart contract risk while keeping the same inherent risks from USDT and USDC, the latter would also benefit from an increase in yield, base yield would be increased to 3.1%, a 15% increase, translating to a yield of 8.4% to stakers.

The current collateral basket gives an average base yield of 2.7%, translating to a yield of 7.3% to RSR stakers.

Consideration needs to be given to gas costs and slippage generated by the transactions when swapping from one collateral to another, from TeaSea and Larry’s discussion the gas costs would be shouldered by Reserve Protocol but should still be assessed to determine if the increased benefit of decentralisation and yield outweigh these costs. Regarding slippage Larry mentioned auctions are currently executed at spot price, and so there is very minimal (if any) slippage.

Consideration was given to optimising the yield of the collateral basket by replacing all current underlying collateral with fTokens, giving a base yield of 4% and a yield of just under 12% to stakers, but as pointed out by TeaSea in discord this would stray from decentralisation and concentrate the risk to a fledgling protocol that has not completely proven itself in the defi landscape despite it being a Compound V2 fork and may be less attractive to new potential users of the protocol.

Consideration should also be given to include the other two fTokens currently available, fFrax and fDai. Given I am not as familiar with these underlying assets especially FRAX i’m interested in generating a discussion around including these in the collateral basket as adding one or both may increase decentralisation and increase the yield further. If the community thinks it is prudent another RFC can be generated include one or both of these assets.

Risks

Given the proposed proposal makes no change to the underlying stablecoins, USDC and USDT the only increase in risk i can see would be the Flux smart contract risk. Given it is a fork of Compound V2, a defi-tested protocol which is in use in the current basket and they have completed multiple of their own audits this additional smart contracts may be minimal.

Slippage as mentioned about is also a risk to rToken holders, but as auctions are executed at spot price there is very minimal slippage.

Poll

  • Yes, I am in favour of this proposal
  • No, I am against this proposal

0 voters

3 Likes

Hey Ham

Thanks for this really thorough proposal, and thank you for taking on board my point about not going all-in on Flux assets!

As you know, I’m all for diversification - especially when it increases yield with (seemingly) minimal uplift in risk, which I think this does.

My only point is one you’ve raised already. As the two proposed f tokens are both using USDT and USDC as their underlying assets, the diversification factor is somewhat minimal. If either of them depegged, the impact would be pretty much the same for RSR stakers as if either of them depegged today.

I’m also interested to explore whether adding in Frax- and Dai-based f tokens would be seen as overly risky, as this would truly diversify the underlying assets, rather than just the protocol exposure.

My limited understanding says that Dai is the less risky of the two, but as this uses USDC as an underlying asset, I’m unsure as to whether this really does much for the basket’s diversification factor.

Maybe the team has some thoughts?

In general, I think having more assets in the basket is a great showcase for Reserve, highlighting a key USP of the protocol, and is a good basis for marketing its benefits.

I’m yet to vote one way or the other on this, would be keen to get a bit of input from others around the Dai/ Flux question before proceeding.

Thanks again!

TeaSea

3 Likes

A very interesting proposal, @ham! Thank you for creating it using the RFC guide.

To my understanding the cUSDC and cUSDT plugins eUSD uses are both from Compound V2, which would mean that introducing fUSDC and fUSDT to the basket would not introduce any additional smart contract risk (Flux Finance being a Compound V2 fork). Adding fFRAX or fDAI would add an additional horizontal layer of smart contract risk, which can be seen both as positive (less reliance on any one smart contract) and negative (more exposure to smart contract risk). Overall, if we focus on fUSDC and fUSDT, I see no extra smart contract risk being added in return for a meaningful increase in yield.

The only potential downsides I see to this proposal are (a) the one-time gas costs to update eUSD’s basket, which might(?) be paid from eUSD’s reward pool and (b) the increase in minting cost of eUSD by adding two additional assets. I’d love to hear the perspective on these topics from technical people (@Larry & @tbrent):

  • One-time gas cost to update eUSD’s basket: @Larry - while discussing this topic in Discord, you stated that “The gas that’s consumed during rebalancing and auctions is not paid by the RToken holders, but rather the people who participate in those actions (the protocol for now). The only place where RToken holders might take a hit is on trade slippage from swapping out from one currency to another. With us doing it it currently, we pretty much execute auctions at spot price, and so there is very minimal (if any) slippage”. I get how the gas fee for the auction itself is paid by the bidder, but doesn’t the protocol itself need to execute a transaction to update eUSD’s target basket? I always assumed the act of rebalancing itself would also cost gas, and that this is paid by the RToken’s Backing Manager (rewards from underlying collateral). Is my assumption here wrong? If not, is there a way for us to calculate how big of a hit the reward pool would take to execute this update?

  • Increase in minting cost of eUSD by adding two additional assets: to my understanding, minting of an RToken becomes more expensive each time new assets get added to the basket. It might be worth calculating how much more expensive minting of eUSD might become after this update. Minters are mostly whales, so I don’t think it’ll matter too much for them, but it would still be interesting to get an insight into this. @tbrent - is this something we could calculate?

As I think my two concerns won’t have a significant impact, I’ve decided to vote FOR this proposal on the poll!

3 Likes

It will always be an EOA that’s executing the transactions to update an RToken’s target basket. So after a basket change proposal is finished its 3 day cooldown, it won’t be executed until someone actually comes in and pays the gas to do so.

Here’s an example of the most recent basket change proposal for eUSD Register - Reserve Protocol Interface. Here was the actual transaction to trigger the proposal, paid for by the EOA, and not from funds within the RToken contracts: Ethereum Transaction Hash (Txhash) Details | Etherscan. And so there is no hit to the reward pool :slight_smile:

As to your second question of increasing the mint cost of eUSD, you are right that this will increase the cost. Based on parsing the parts of a hyUSD zap transaction where two Flux tokens were minted, here’s an estimate of the added costs:

  • Zapping into two fTokens is 300,000 gas
  • Transfering two ERC20 tokens is 100,000 gas
  • Arbitrarily estimating 100,000 gas for RToken operations e.g. calling refresh()

The total added cost is 500k gas, which at 50 gwei gas prices equates to about 0.025 ETH, or ~$50

As you said, none of these things are insurmountable and the added yield is nice, so I vote FOR on this proposal as well :rocket:

2 Likes

Thank-you everyone for taking the time to read and consider my proposal, overall very positive.

I agree that the amount of USDC within DAI will not improve the diversification of the basket, during the recent depeg they seem to have similar trajectories. But I would also be keen to get the teams opinion on FRAX.

I didn’t realise that increasing the basket diversification would increase the mint price of eUSD so much, given this a march toward greater diversification needs reminding of the increasing gas costs with every underlying asset added. As mentioned most minters are whales who can tolerate this extra cost while smaller users can use the curve pool.

While looking into Flux I noticed there was a referral programme in place, if my maths are right after reallocating the basket we would have 4,500,00USD in fTokens in the basket earning 15,000USD/month. With the referral programme a extra 20% or 3000USD would be paid to the referrer. What are the ethics around the Reserve protocol capitalising on the referral programme and earning those rewards to use maybe as a fund to bootstrap community projects? Would capitalising on the referral programme even be possible with the current smart contracts.

2 Likes

The expansion of the eUSD basket from 4 tokens to 6 tokens will increase the mint() and redeem() costs, but by less than 50%. I don’t have the exact number at-hand, but there are no gas costs superlinear in the number of basket tokens for issuance or redemption. There is a linear subset of the computation (when all tokens are iterated over in order to calculate basket quantities and perform transfers), but this is not the entirety of the computation costs associated with issuance/redemption. My initial estimate for the increase in gas costs would be around ~30%. Someone could get a more precise number by spending some time doing simulations.

1 Like

Thank you, han, for putting forth this proposal, and to all those who have commented on it and registered their support via the poll. These proposals and the accompanying discussion are important for bringing a broad range of thought to the governance of eUSD.

I’ve been giving this a lot of thought and think that the timing is not right for adding fUSDT and fUSDC to the basket. I share enthusiasm and respect for what Ondo Finance is doing with OUSG and Flux. It’s just not a good fit for eUSD, yet.

  • Including fUSDT and fUSDC will increase risk and instability due to the newness of the protocol and its governance, not only because of lack of history from which to view how it and its community will react to black swan events and drastic shifts in market conditions, but also we are already seeing this at its current TVL and with early-growth behaviors being exhibited. The relative size of fUSDT and fUSDC TVL compared to how much additional TVL this proposal would generate are also counterproductive. The higher yields sought, compared to Compound versions of tokens would immediately evaporate due to the shift in utilization rates. In fact, we should predict lower yields for fUSDT and fUSDC compared to cUSDT and cUSDC immediately after the proposed basket rebalance.
  • if eUSD staking is rational, then increased yield on the basket will not translate to increased yield to individual stakers as return on $ staked as discussed in the proposal, but rather it will result in increased staking as presumably the return per $ staked is the metric that stakers use when deciding to put in, or take out money. More staking is good for eUSD as well as the stakers as it provides more emergency collateral to the basket and dilutes risk for the stakers. However, a marginal increase in staked $ is not what eUSD needs right now, and as its TVL grows it already provides positive pressure on increased staking as a higher TVL increases the returns to the staking pool.
  • Of great importance to the next phase of eUSD is getting eUSD supported by more market participants — exchanges, market makers, chains, defi protocols — and these conversations involve gatekeepers who often include legal, risk, and compliance reviews in their evaluations. They have enough questions about the Reserve Protocol itself. Having the reference assets be USDC and USDT, and the yield generation engines be Aave and Compound have real Lindy benefits to passing these reviews. Since the token is supposed to be stable, how much yield is generated is less important than track record. Being able to show the level of emergency collateral available is substantial matters to telling the Reserve Protocol story, and we have that. Adding Flux and OUSG is more to explain and more thesis rather than performance to evaluate. In exchange we get what will probably turn out to be a marginal increase in the eusdRSR pool, if any at all.
  • Also important for eUSD is continuing to grow the TVL. Adding fUSDC and fUSDT would at best be neutral towards that. It does, however, increase the gas fees around minting and withdrawing, shutting out lower volume market participants, so I perceive it as a negative w.r.t. the manufacture of more eUSD as it increases expenses without providing substantial benefit to the eUSD holders. The diversity offered in exchange for increased costs is fully correlated with the current basket contents, in terms of risk, and so offers no independent path to mitigate those risks. The reference tokens are still USDT and USDC, and the yield generation protocols are still Aave and Compound. Instead, adding these tokens brings increased risk due to bringing in something relatively unknown, and it puts 2/3rds of the basket at risk of the Compound v2 contracts having an exploit.

I look forward to reading reaction to these thoughts and continuing the discussion.

5 Likes

Thank you Henry and more broadly the Moby team for giving us your thoughts on this RFC. Apologies it’s taken so long to get back to you, life is getting in the way and really wanted time to think this over.

While initially fTokens seemed like a good fit for the eUSD collateral basket mainly because of the increased yield with minimal increased smart contract risk. I now agree after reading your comment that this wouldn’t be the case and would cause a number of headaches in the next phase of eUSDs growth.

I also agree that up until this point we have seen that a growth in market cap correlates to a higher staking yield as rToken supply is slightly out pacing supplied RSR, but this increase in yield also comes with increased risk. An increase in the underlying collateral basket yield would lead to increased staking and would likely be a better way to dilute the risk than growing market cap alone. However at this early growth stage increasing the market cap and compostability across defi trumps any benefit of risk dilution given the current yield and adequate over collaterization rate.

I am grateful for your insight into the high level discussions you have had with other market participants surrounding use cases for eUSD and I imagine legal, risk and compliance reviews are more prevalent now than ever before. As mentioned adding another protocol into the mix with minimal Lindy effect will lengthen these discussions and ultimately may lead to a slower growth in market cap.

You have persuaded me that ultimately the market cap of eUSD is what matters at this time as this drives defi compostability and in turn will also help create it’s own Lindy effect, where as an increase in the underlying collateral basket yield may provide slightly more $ and dilute the risk of individual stakers it is not currently required given current yield and over-collaterization rates and the need to grow market cap is more prominent.

I think you’re comment on this RFC would be a good starting point for others considering eUSD governance proposals, given it sets out deployer priorities and current difficulties to eUSD growth well.