The Flashstake protocol is a novel financial infrastructure that allows users to receive instant yield on deposited assets by locking up principal for a chosen duration. The protocol is made possible by Flash Strategies, which utilize underlying protocols such as AAVE, Yearn, etc. to generate yield.
Strategies are yield generating vaults that contain arbitrary logic. They can be registered with the Flash Protocol smart contract if they adhere to the minimum requirements as laid out in our technical documentation.
On a technical level, a strategy consists of a smart contract inheriting the Flash Strategy interface. It uses one or more DeFi protocols (e.g. AAVE, Convex…) to stake a specific token (e.g. DAI, ETH…). The Flash Protocol uses the strategy to instantly mint fTokens when staking.
The registry of a new strategy in the Flashstake smart contract results in the creation of a strategy specific ERC20 token, called fToken. This token facilitates the conversion of any type of yield into fixed upfront yield, representing the future yield of the deposit
An fToken is an ERC-20 token, created by the Flash protocol whenever a new strategy is registered. fTokens are specific to a given strategy and represents the yield pool. This means 100% of the total fToken supply can be redeemed for 100% of the total yield in a given strategy.
Upon staking, it is possible for the user to mint a FlashNFT which will represent their stake. FlashNFT’s can also be created after the initial stake providing the Stake still has some number of Staked tokens.
Strategy profits accumulate over time in a strategy’s yield pool and can be claimed for upfront yield by burning fTokens against the strategy through the Strategy smart contract.
The assets received are proportional to the relative ownership of that specific strategy’s total fToken supply and the size of the yield pool. This means a user who holds 45% of the total fToken supply can burn and redeem these fTokens for 45% of all generated yield within the corresponding strategy.
- Flashstaking is simply the combined action of staking principal tokens and burning (FlashBurn) the received fTokens for yield all in one transaction.
- The Flashstake protocol exposes a function called flashStake which allows the user to do just this. The user can also specify a slippage value to ensure their transaction cannot be frontrun.
FlashBack allows users to choose some number of ERC-20 tokens and the duration they wish to stake for. These parameters are used to determine how many ERC-20 reward tokens are reserved for the Stake. The reward is always paid out at the end of the Stake. FlashBack stakes can be withdrawn at any point in time however if this is done before the staking period ends, all reward tokens are forfeited and only Staked tokens are returned.