Current Proof of Stake Difficulty

There is a thread with piece of code as I asked before. Haven’t been able to decode it properly.
See if I can find the thread…

Here it is: Percentage of NSR Actively Minting
Hope you can work it out, I couldn’t.

If you have N shares and they mint M blocks in the last 24hr, you can use the number of all found blocks T in the period to calculate how many shares are minting with N / ( M / T)

"blocks" : 152088, 
"moneysupply" : 1006043795.25349998,
"connections" : 8,
"proxy" : "",
"ip" : "a.b.c.d",
"difficulty" : 0.00033034,

still rising:

"blocks" : 159996,
"moneysupply" : 1006359566.59759998,
"connections" : 8,
"proxy" : "",
"ip" : "a.b.c.d",
"difficulty" : 0.00035876,

My measurement in the last 36 hours shows that there are 700-800 million shares minting on average. I thought only 600 million have been distributed and allowed to mint. I wonder can this disagreement be explained.

I can confirm that 600 million NSR are reported as being distributed - at least this is the last report I found about distribution rate.
How do you come to the conclusion that 700-800 million are minting? Maybe the difficulty algorithm is a little bit laggy when it comes to adjusting the difficulty to the amount of minting NSR.
Not having the source code we don’t know how the difficulty is being adjusted…

Based on reports from people of how many blocks they mint and how many shares they are minting with the number of minting shares is between 300 and 400 million right now. It would be possible to give an exact number based on the difficulty number if the code were researched with that goal in mind. I don’t have time to do that. Not sure if it is worth sigmike’s time though. I am also curious about the methodology @mhps is using.

The only way of determining a number of minting shares would be to make a projection based on the own minting rate, but I doubt this can be accurate.
Assuming that the annual reward is approximately 2% no matter how many NSR mint, you can try to project the amount of total NSR minting based on that number.
With a total of ~1,000,000,000 (10⁹) NSR and ~2% of that being ~20,000,000 (2*10⁷) you can assume a daily generation of 55,000 NSR.
If you know how many NSR you have (say 5,000,000) and know how much you mint daily (say 825 NSR) you can calculate how many NSR mint.
In this example you have a share of 0.5% of all NSR and can expect to mint 275 NSR daily. If you mint 825 daily the minting ratio is 275/825=1/3
So you can assume that one third of all NSR mint, which would be 1/3 of 10⁹ and equals to 333,333,333.
But as this is based on some assumptions and not very accurate due to the minimum age to mint of 7 days (which is also the case for NSR having minted), this can only be a rough estimation.
Being able to interpret the value of the difficulty should be much more accurate, but I doubt that it’s worth digging in the code for that.

@mhps did you calculate in a way similar to the one I lined out? Did you assume an annual interest of 1% or 2%?
…calculating with 1% instead of 2% could explain the difference of factor 2 between your calculations and @JordanLee’s observations!

The 2% annual growth comes from this calculation: 40 NSR minted per minute * 60 * 24 * 365.25 = 21038400 new NSR minted per year.

Divide that by 1 billion NSR supply to get 0.0210384, or 2.1% growth in the first year.

The method was in my post 6 days ago in this thread. I assumed there were 1440 new blocks from all network in 24 hr. I would get a more accurate number from the blockexplorer but the explorer was stuck then.

The explorer is working now. In the last 48 hours the average block rate per 24 hr was not 1440 but 1616. So the minting shares is about 700 million.

On error analysis, random fluctuation of 1/sqrt(N) could be proper. 500 million minting would be within error.

I think difficulty will continue to rise until closer to 1440 blocks are minted per 24-hour period. It is still in a catch-up phase, reacting to newly-minting shares.

In the last 488 hours 1438 blocks were minted. The difficulty is 0.00036027. From my measurement there are equivalently 720 +/- 200 million NSR minting.

Thanks for the info! Is it possible to run the same wallet on two different machines?

If you mint with the same wallet on different machines they will always find the same kernel at the same time. The network will invalidate the block due to the same stake rejection mechanism. You will get an orphan. So don’'t do it.

1438 blocks is very close to target of 1440. Excellent! We should be able to get a much more accurate measurement by studying the source code and extrapolating backward from the difficulty of 0.00036027. Would anyone like to post the code in this thread?

Thanks! It’s just a thought.

Finding 1440 blocks a day means there is no push or pull on diff. But since diff is proportional to 7-day moving average of blocks found(IIRC), minus 1440/day so it has inertia and lags behind of the “instantaneous actual diff”. The diff is still falling currently and it will fall a bit more. I guess one can solve a differential equation to find out how many stakes are actually minting.

1355 blocks found in the last 24 hours. diff=0.00034885

The last 1440 blocks were solve in 29 hours instead of 24. diff=0.0003214 and dropping fast.

My simple estimation from data in the last 48 hours shows that there are equivalently 300 million shares minting on average. The apparent explanation is that many millions of shares are moved to the exchanges as a result of recent price appreciation.

1 Like

While people are free to do as they please with their NSR, I hope they heed our warnings that NSR should never be stored on an exchange longer than it takes to make a trade. While NSR are on an exchange they can’t mint to secure the network, can’t cast votes, and are out of the control of their owners. If a dividend is distributed, there is always a risk that the exchange will steal it.