Staking Multiplier
Detailed description of the RESOLV staking multiplier
The multiplier is based on how long you’ve staked $RESOLV tokens. It only updates when you interact with the contract, like staking more or claiming rewards. New deposits may slightly lower it, as they count as newly staked.
$RESOLV tokens are staked in a liquid, non‑term-escrowed vault. Unstaking is permissionless but subject to a fixed 14‑day cooldown.
Staking & Unstaking Workflows
Claiming staking rewards will open together with the token listing, so that users are able to claim rewards on the day trading begins.
Staking
Users deposit $RESOLV (via a frontend interface) and receive $stRESOLV. Staking is atomic and permissionless.
Unstaking
Users trigger an unstake, which is subject to a 14‑day cooldown. Once the cooldown elapses, the staked tokens are returned, and the corresponding $stRESOLV is burned.
Rewards Distribution
Epochs:
Rewards are allocated in consecutive 14‑day epochs. Reward budget for stakers is a part of total reward budget for Season 2 of Resolv point campaign, which is no lower than 5% total token supply.
Reward Types:
Rewards include $RESOLV and, potentially, other tokens
Allocation:
Each user’s reward share is based on their $stRESOLV holding and how long the tokens have been staked.
Reward Model. Average holding period multiplier
Allocation of staking rewards to each holder of $stRESOLV depends on the period during which it has been holding tokens. Long-term holders have a multiplier of up to 2x on their rewards as compared to users who started staking recently. The multiplier is updated for future reward accrual when a user interacts with the staking contract. Rewards accrued in the past are computed using the effective balance as it was then. When a user deposits or withdraws $RESOLV, or collects staking rewards, the contract updates effective multiplier for all future rewards.
This approach avoids retroactive recalculation. It works as follows:
Key Concepts
Raw Stake (X):
The number of tokens the user currently has staked.
Accumulated Age (A):
The total “token–seconds” the user’s stake has been held. For example, if a user stakes 50 tokens for 1 day (86,400 seconds), the accumulated age is
Weighted Average Holding Period (WAHP):
The average age per token, calculated as
Boost Factor:
The boost factor rewards users for holding tokens longer. It is computed (in a fixed‑point manner) as
(For example, if WAHP in years is 0.0192, then the boost factor is 1.0192x.)
Effective Balance:
The “effective balance” used for rewards is the raw stake multiplied by the boost factor:
This is the value that determines each user’s share of the rewards.
Global Effective Supply:
The sum of the effective balances of all users. Rewards are distributed in proportion to each user’s effective balance compared to this global total.
How Deposits and Withdrawals Affect WAHP
Deposits
Before a New Deposit:
The user’s tokens have been accumulating age. For example, if a user deposited 50 tokens and held them for 1 day, the accumulated age is 4,320,000 token–seconds, and the average age per token is 86,400 seconds (1 day).
When New Tokens are Deposited:
The new tokens start with a minimal baseline age (1 second per token).
The overall new raw stake becomes the sum of the old stake plus the new deposit.
The new total accumulated age becomes the old accumulated age plus the baseline age for the new tokens.
The new average age (WAHP) is then
Since the new tokens contribute a very small age, the overall average is “diluted” compared to if the old tokens had continued to accumulate.
This diluted average age is used to compute a new boost factor (which will be lower than if all tokens had been held for longer) and, in turn, a new effective balance.
Withdrawals
When Tokens Are Withdrawn:
The user’s raw stake decreases. Weighted average holding period is not affected.
For example:
Suppose a user has 100 tokens with a total accumulated age of 1,000,000 token–seconds (so an average of 10,000 seconds per token). If the user withdraws 40 tokens, the new raw stake becomes 60 tokens. To maintain the same average age (10,000 seconds), the new total accumulated age should be:
Thus, the weighted average holding period does not change.
Staking reward allocation example
Last updated