I received some great feedback from on BOT dynamic staking from community members. The primary intention for the dynamic staking model was to bring about flexibility to staking assets and on-chain computation of staking rewards. While community members like the idea, but there are two major problems:
- High gas fee costs to claim daily staking rewards.
- The 24 hours grace period between unstake and withdrawal.
I think these are real problems and the community members collectively come up with a better solution. So we are are going to make the first staking policy change and we call it a more flexible model.
In the new staking model, the calculation rate is based on seconds. There are THREE factors that determine the staking reward for a staker:
1. The time interval between reward claims. The time interval can be from a minimum of one second to a maximum of seven days. For example, if your last claim is 24 hours before this claim, your time interval is one day.
2. Your number of staked BOT tokens compared with the total number of staked BOT tokens at the time. For example, if you staked 1 BOT token and there are 100 BOT tokens staked at the time you check, you own 1% of the staking pool.
3.The total amount of staking rewards (Currently in ETH) in the staking pool at the time.
The staking rewards are calculated based on the equation:
R = T * X * (Y/604800)
R = The amount of your staking rewards at time t
T = The total amount of staking rewards in the staking pool at time t
X = The percentage of your number of staked BOTs in the pool at time t
Y = The time interval (in seconds) between your last rewards claim and time t
604800 is the total seconds for 7 days
For example, if at the time of claiming staking rewards, the total amount of staking rewards in the staking pool is 100 ETH, the percentage of your number of staked BOTs in the pool is 10%, and the time interval is 86400 seconds, then you can claim 1.428571 ETH at the time.
You can stake and unstake (or withdraw) anytime and you have up to 7 days to claim your rewards. This model solves the two problems we had, while maintaining the flexibility with staking.
We will make an announcement when the new staking contract is upgraded. For users who are already in stake, you do not need to do anything after staking contract upgrades. For users who unstaked before the upgrade of the new staking contract, you need to withdraw BOT through the withdraw button and restake into the newly upgraded staking contract.
See you soon!