Redeeming fTokens (FlashBurn)

Upon obtaining fTokens through the process of Staking, users have the option to redeem their fTokens for instant upfront yield through two methods: Burning or Selling. It is important to note that fTokens are unique to each strategy within the Flashstake Protocol and can only be minted by the Flashstake Protocol. These fTokens serve as a representation of ownership of yield within a given strategy.

Burning fTokens

Note

The information provided in this article pertains exclusively to strategies developed by the Flashstake DAO. The process of burning fTokens may vary for strategies developed by external parties.

The yield generated by a given strategy is accumulated over time and starts to be generated as soon as a user stakes. For example, when a user stakes USDC into an AAVEv2 strategy, the principal is deposited into AAVE, which generates yield block-by-block. This yield is stored in a “yield pool” and can be distributed to users who choose to burn their fTokens.

Note

The “yield pool” is purely metaphorical to explain the concept. Strategies do not have yield pools, instead just the amount of yield available to be claimed.

The assets received upon burning fTokens are proportional to the user’s relative ownership of the total fToken supply for that specific strategy and the size of the yield pool. For example, if a user holds 45% of the total fToken supply for a given strategy, they could choose to burn all of those fTokens and redeem 45% of the value within that stratey’s yield pool.

For demonstration purposes, consider a scenario where an the AAVE strategy has 400,000 USDC in its associated yield pool and 10,000 fTokens in existence. If Bob decides to Flashstake 30,000 USDC for 365 days, approximately 30,000 fTokens will be minted, bringing the total number of fTokens for this AAVE USDC strategy to 40,000. Bob’s 30,000 fTokens represent 75% ownership of the yield pool, allowing him to burn the tokens and redeem approximately 300,000 USDC.

To burn fTokens, a user can call the “burnFToken” function in the associated strategy. Alternatively, this process can also be accomplished in a single transaction using the Flashstake feature which executes a mint and burn in the same transaction.

It is essential to keep in mind that the numbers presented in this example are for illustrative purposes only and should not be treated as actual values or guarantees. Additionally, it is important to note that the fToken minting formula varies depending on the strategy in question. Strategies developed by the Flashstake DAO utilize the formula specified in the fToken section of the documentation.

Yield is typically calculated as a percentage of the employed capital and can be represented as Annual Percentage Rate (APR) or Annual Percentage Yield (APY). The formula for calculating the upfront APR is as follows:

\[APR_{upfront} = \frac{Return_{upfront} * 31,536,000}{Deposit * StakeDuration_{(seconds)}}\]

Selling fTokens

This update (CHRONOS) to the Flashstake Protocol now allows Flashstakers to sell their fTokens into a Uniswap V3 pool. This upgrade was made to improve the liquidity required to get a given strategy to its self-sufficient stage. Prior to the update, a “UserIncentive” mechanism was deployed which allowed users to burn fTokens to redeem yield from the yield pool as well as get a fixed ratio of principal tokens from a bootstrapped UserIncentive pool.

Note

As of now, the ability to sell fTokens into a Uniswap V3 pool is only available for the stETH Lido strategy. However, the Flashstake DAO plans to expand this functionality to other pre-existing strategies in the near future.

The introduction of the CHRONOS update allows external market participants to provide liquidity which allows for speculation of interest rates. This update also resulted in far greater capital efficiency thanks to the ability to define a liquidity range on Uniswap V3.

As an example, Bob wishes to speculate on interest rates for stETH. The current Lido (stETH) interest rate is 5%. Bob creates a Uniswap V3 position in the range of 0.01 to 0.06 stETH per fToken. Bob initializes this pool as a single-sided position allowing Flashstakers to sell their fTokens.

This update, along with the liquidity provided by Bob, allows Flashstakers to receive instant upfront yield at an APR rate of 6% and Bob receives fTokens. A few months down the line, the instant upfront-yield rate rises to 10% which results in the fToken doubling in value.

Important

The upfront yield rate can fluctuate up or down over time.

Instant upfront-yield rates within the Flashstake Protocol are expected to be lower than the underlying protocol yield rate within efficient markets since instant yield comes at a premium.

The ability to sell fTokens into a Uniswap V3 pool and define custom swap routes is currently available through the FlashProtocolProxy. This results in the ability for Flashstakers to stake stETH (for example) and receive DAI as their instant upfront-yield.

The CHRONOS update therefore introduces a market between users who want yield now vs people who are willing to wait and potentially earn more.

Yield is typically calculated as a percentage of the employed capital and can be represented as Annual Percentage Rate (APR) or Annual Percentage Yield (APY). The formula for calculating the upfront APR is as follows:

\[APR_{upfront} = \frac{Return_{upfront} * 31,536,000}{Deposit * StakeDuration_{(seconds)}}\]

The implementation of Uniswap V3 in the upgrade of the Flashstake Protocol was selected due to its concentrated liquidity and additional fee tiers, which allows fToken liquidity providers to choose the APR range they wish to add liquidity to and the level of fee they are willing to accept in exchange for enabling Flashstakes.

The use of liquidity pools also bring the potential for slippage, which is the difference in price between the quoted and execution prices. Slippage can be a concern for users as they may not be willing to accept a high slippage value. However, it is important to note that traders can still trade large numbers of tokens for another token if they are willing to accept a high slippage value.

Slippage in the Flashstake Protocol works in a very similar way since the CHRONOS update now uses Uniswap V3 liquidity pools. Depending on available liquidity, the larger the number of tokens a user wishes to Flashstake, the larger the slippage will be resulting in a decreasing APR. Users can choose to Flashstake a significantly large number of stETH and accept a low APR, but this behavior is not expected in an efficient market.

The user is made aware of this on the frontend through the displayed APR and displayed number of tokens they will receive back as instant upfront-yield.