🌠Temporal Staking
What is Temporal Staking? Most staking contracts reward users based on the number of tokens they have locked into the staking contract. They are then rewarded a pro rata share based on the time they are staked in relation to other holders staked. This is a logical way to distribute the rewards in a pseudo fair way where you are incentivized to stake more to receive a higher reward.
We at DVT think the size of your stated holdings should only be half the equation. We also believe that the length of time you have staked your tokens should matter as well. Let us dive into how it works and how the math shakes out.
How Staking Typically works: For the sake of simplicity, let’s assume there are two stakers:
Staker #1 stakes 100 DVT into the staking pool.
Staker #2 stakes 50 DVT into the staking pool.
That means a total of 150 DVT make up the total staking pool balance. Now let’s assume the rewards are $150 per day.
Staker #1 owns 66.666% of the Staking pool (Tokens Staked divided by total staked) or 100/150.
Staker #2 owns 33.333% of the Staking pool (Tokens Staked divided by total staked) or 50/150.
Logically, Staker #1 Will receive 66.666% of the rewards totaling ≈$100. Staker # 2 will receive 33.333% of the rewards totaling ≈$50.
Time is not considered in this equation. Essentially you are either staked, or not staked, and one you earn your share of the rewards are based on your pro-rata share of the pool.
Let’s introduce some new components and see how temporal staking rewards both of these two holders.
Staker #1 staked his/her entire balance of 100 DVT on April 1st, 2022.
Staker #2 staked his/her entire balance of 50 DVT on January 1st, 2022.
Let’s get the total seconds in a day by multiplying seconds in a minute(60) by minutes in a day:
60 * 24 * 60 = 86400
So, now that we know there are 86400 seconds in a day, we can calculate the amount of seconds each user has been staked.
Today is May 1st, 2022.
Staker # 1 has been staking for 30 days. That means they have been staking for 30 * 86400 = 2592000 seconds
#2 has been staking for 120 days. That means they have been staking for 120 * 86400 = 10368000
This means that Staker #2 has been staking for 120% longer than staker #1. This plays no role in traditional staking and means that regardless of how long you have staked, and thus contributed in a positive way to the project, a whale can stake in your pool and drive your APY downwards. Your time held is irrelevant. Not with Temporal Staking.
Let’s keep going. The equation for temporal staking is as follows:
SR: Staking Rewards
There are some really cool things happening here. We are normalizing the data by comparing not only your balance staked to the largest balance staked, but also your time staked to the longest time staked.
In our example earlier, we said the rewards were $150 dollars. This number comes from the volume of the token multiplied by the reward tax. Since 1% of the rewards go to stakers, and the total rewards are $150 dollars, we can assume that the daily volume is $15,000 USD in volume (150 / .01)
So now that we have vol and tax, let’s solve for TS and LS. TS stands for Time Staked of the individual staker. Since we have two stakers, we will start with staker #1 and calculate his/her rewards.
We saw earlier that Staker #1’s Time Staked earlier was:
30 * 86400 = 2592000 seconds.
We now need to find out what LS, which is the longest staker. Since we have only two stakers and we know that staker #2 has been staking the longest, we need to use their TS number as our LS number. That means that
LS = 120 * 86400 = 10368000
So,
Now we need to solve for TTs. This the sum:
TS/LS for all stakers. We know that TSLS for Staker #1 is
Staker #2 is
The Sum of both TS/LS = 1.25
That means the equation for staker #1 is now
This tells us that Staker # 1 currently accounts for 20% of all Staked time in existence, relative to the current longest staker. Keep note that the current longest stakers is important, and will be discussed further along.
The next half of the equation is solved the same way but we are using the size of tokens staked rather than the length of time. Since we are still solving for Staker #1’s rewards, we know that his/her amount staked is 100 DVT Token. We know that Staker #2 has Staked only 50 DVT token so Staker #1 is used as the LB in our equation. To remind you of the total equation, here it is again for convenience:
(BS/LB) for Staker #1 is (100/100) with LB being the largest balance staked (Which happens to be this particular Staker. This means that their TBs is equal to (100/100)=1
Now we need to solve for all TBs of all stakers. Since we have only one other Staker, we can derive Staker #2s TBs by using:
This means that the sum of all TBs is:
and we can now take individual stakers BS/LB and divide it by TBs which is 1.5 meaning:
This looks familiar to their bag size rewards in the standard staking calculation provided above. Now our equation looks like this:
Wait a minute, is it complete? Yup. Let’s solve for R.
15,000 * .01 = 150 (This is our total staking rewards)
150 * ((.2000 + .66666)/2) = $65 in rewards to Staker #1
15,000 * .01 = 150 (This is our total staking rewards)
Now let’s quickly look at Staker #2’s rewards using the same equation.
150 * ((.8000 + .33333333)/2) = $85 in rewards to Staker #2.
The rewards of $85 and $65 equal $150 in total rewards earned.
Analysis
Staker #1 holds double the amount of DVT that Staker #2 holds but receives a smaller amount of staking rewards. This is pretty cool right? Now before we see what a table looks like with more Stares, lets answer first what happens to the reflections going to stakers? Do you remember that the 2% fee is split 1% to stakers and 1% to holders? A larger holder would not be incentivized to stake their tokens considering Temporal staking allow for smaller holders to out earn them in rewards and given the previous example, would get less share than they would if they simply just staked. Well, we have only given you the part of the rewards equation that calculates staking rewards. Reflections are still paid out on a prorata basis. Let’s take a look:
We know that SR or Staking Rewards is calculated as follows:
Typically, reflections are calculated as follows:
RR = Reflections
Vol remains $15,000
The tax is 1%
BS = Bag Size
TS = Total Supply
RR = Reflections
So, for Staker #1, they would earn: 150 * ( 100/150) = 100 (66.666% of the reflections)
Staker #2 would earn: 150 * (50/150) = 50 (33.3333% of the Reflections
These typical reflections are paid out ahead of the adjusted temporal reflection equation to prevent a scenario where larger holders are discouraged from staking.
You know how up until this point we have been using 1% as the volume for staking rewards? Well, remember that the total rewards are 2%, with 1% going to stakers and 1% going to traditional reflections. So let’s see how our two Stakers are actually rewarded.
Staker #1 Reflections = 150 * (100/150) = 100
Staking Rewards = 150 * ((.2000 + .66666)/2) = $65 in rewards to Staker #1.
Total Rewards is $100 + $65 = $165
Staker #2
Staker #2 Reflections = 150 * (50/15
Staking Rewards = 150 * ((.8000 + .333333)/2) = $85 in rewards to Staker #1
Total Rewards is $50 + $85 = $135
In conclusion, the equation used to calculate total rewards for Reflections and staking is as follows:
We will add some more interesting conversation around rest and reflect soon but we hope this is an insightful look at our unique reward mechanism.
Last updated