TRU holders can stake TRU to participate in the Loan approval process for TrueFi DAO pools. In return the user receives stkTRU tokens.
Stakers vote to approve/reject loan applications, and in return can potentially earn additional TRU and protocol fees. Stakers risk losing a portion of their TRU staked in the event of default on loans in TrueFi DAO pools.
Staking TRU on the protocol enables stakers to earn a portion of the protocol fees generated by the TrueFi protocol. The proportion of fees paid to stakers can be changed through protocol governance.
Protocol fees have historically consisted of 10% of all interest from successfully repaid loans made by TrueFi DAO-managed pools, but were set to 0% as of May 2022 (read more here). Any protocol fees generated by pool are converted into tfUSDC tokens and rewarded to stakers.
In addition to protocol fees, TRU stakers are distributed TRU rewards as an incentive to stake.
For the latest TRU distribution per day, you can check the parameters
durationin the stkTRU distributor smart contract.
Visit the etherscan link to the smart contract, click on Contract, then click on Read as Proxy. You will find these two parameters among the list of other parameters. The duration is in seconds.
TRU distribution per day = (totalAmount/10^8) / (duration/(24*3600))
TRU stakers are acting as a risk management system for the TrueFi Lending Pools. In the event of a default in a TrueFi Lending Pool, a certain percentage of the staked TRU will be liquidated and transferred to the TrueFi Lending Pool. The maximum percentage of staked TRU that can be liquidated and transferred to the affected TrueFi Lending Pool per default is the Maximum Liquidation Rate. Therefore, in the event a loan provided by a TrueFi lending pool defaults, Stakers can lose up to the Maximum Liquidation Rate of their TRU staked.
For example, let’s consider a scenario when a loan of principal amount 1,000,000 TUSD defaults where the stkTRU contract has 500,000 TRU staked and a Maximum Liquidation Rate of 10%. The maximum amount of TRU that would be liquidated is (500,000 x 10%) 50,000 TRU.
The value of the loan defaulting may be less than the value of the maximum TRU that can be liquidated. In such cases the market value of TRU that would be liquidated will be equal to the loan amount and the rate of TRU liquidation would be less than the maximum liquidation rate.
For the latest Maximum Liquidation Rate, you can check the parameter
fetchMaxSharein the Liquidator smart contract below:
Visit the etherscan link to the smart contract, click on Contract, then click on Read as Proxy. You will find the parameter
fetchMaxShareamong the list of other parameters.
Max liquidation rate = (fetchMaxShare / 10^2) %
Once TRU is staked on the protocol, it is locked into the protocol. You will need to initiate cooldown to unstake your staked TRU. During the cooldown period you cannot unstake or withdraw your staked tokens. Once the cooldown period is over you will have a window of time, called the unstakePeriodDuration in the stkTRU smart contract to unstake or withdraw the staked tokens. If you do not unstake during this window your staked tokens will be staked back into the protocol and you will be required to re-initiate a new cooldown period. If you have recently acquired stkTRU and you wish to withdraw your stake, you will need to initiate cooldown.
During the unstaking window you can visit the Stake page and click on the “Unstake” button present over your Staked TRU amount.
The cooldown period has been added to prevent any kind of gamification which might be possible by staking for a very short period of time. For example, without a cooldown period Stakers could stake on the protocol to earn the protocol fee and then immediately unstake. This might result in some Stakers earning a return which is disproportionate to the amount of risk they are helping mitigate. Staked TRU cannot be unstaked from the protocol during the cooldown period.
For the latest cooldown period and the unstaking window, you can check cooldownTime and
unstakePeriodDurationin the stkTRU smart contract. Visit the etherscan link to the smart contract, click on Contract, then click on Read as Proxy. You will find both these parameters cooldownTime and
unstakePeriodDurationmentioned in seconds. To change this to days you can use the following formula.
Cooldown time in days = cooldownTime / (24 x 60 x 60)
Yes, you can stake more TRU during the cooldown period. Staking more TRU, with the same wallet, during the cooldown period will increase the cooldown period. The cooldown period timer will be reset to the maximum cooldown period if you stake any additional TRU.
On the Stake page, you can regularly check your claimable rewards. Click on the 'Claim' button and complete the transaction in your wallet to claim them.
There are no restrictions on when stkTRU holders can transfer the token to other wallet addresses. Users can transfer stkTRU from their wallet when they are in a cooldown period and even if there are unclaimed rewards associated with their wallet.
Transferring stkTRU does not change the cooldown status of the associated wallet. The cooldown process is independent of the token and it only depends on the wallet address.
If a user is currently in the unstake window after initiating cooldown, they can only unstake their original cooldown amount and not any additional amount of stkTRU they received after initiating the cooldown. The user would have to initiate a new cooldown on the additional stkTRU amount.
Rewards for staking are linked to the wallet address. If a user has claimable rewards and decides to transfer their stkTRU without claiming the rewards, they can always claim the rewards later. Rewards (TRU or TrueFi LP tokens) associated with staking are not transferred when stkTRU is transferred and does not depend on whether the staker is in a cooldown period or unstake window. The receiver of stkTRU starts accruing rewards based on when they received the tokens.
Transferring stkTRU does change the voting power for snapshot voting and, in the future, on-chain governance by the exact amount of stkTRU which has been transferred. Receivers of stkTRU will be required to delegate the balance to themselves upon receiving the tokens.