Yield Protocol fyToken
Yield Protocol allows users to borrow and lend tokens at a fixed rate
Yield Protocol is the third collateral partner for FIAT. Yield Protocol's fyTokens represent a claim on the future redemption of both a) the initial principal lent & b) the fixed yield for having done so, and can thus be viewed as Zero Coupon Bond-like assets. Users are able to earn a fixed yield on them through one of two ways:
- Minting fyTokens: When lending on Yield Protocol, users receive a nominal amount of fyToken (e.g. fyUSDC, fyDAI) amounting to the sum of their principal and the fixed yield they are to receive. While fyTokens are redeemable for the corresponding underlier at a 1:1 ratio, one cannot do so until maturity has been reached.
- Purchasing fyTokens at a discount: Yield Protocol supports liquidity pools for each of its fyTokens series, meaning users can purchase these assets at a discount to face value due to the time value of money and hold them until maturity.
For each supported maturity of a Fixed Yield Token, there is a Minimal Proxy-based Vault deployed which delegate-calls into the actual implementation of the fyToken Vault (VaultFY).
Currently all Yield Protocol Fixed Yield Token vaults use the same precomputed fixed discount rate for computing the fair price of the deposited assets.
The following methods wrap multiple actions into a single transaction for proxy users.
Mints FIAT with the underlier (e.g. USDC) directly. It swaps the underlying token for the corresponding fyToken and enters the fyToken into the Vault (e.g. fyUSDC Vault).
Burns FIAT and withdraws the underlier (e.g. USDC) directly. It exits the corresponding fyToken from the Vault and swaps it for the underlier. It is not possible to sell the fyToken for the underlying post maturity.
Calling this method risks high price impact in the event of AMM liquidity constraints
Burns FIAT and withdraws the underlier (e.g. USDC) after maturity. It exits the corresponding fyToken from the Vault and redeems it for the underlier. This only works if the fyToken has matured - otherwise it will revert.