Smaller Staking Wallets — The Rest of Us
This week we examine the balances of a bunch of recent block reward winners, some very lucky wallets with 250 coins, and then we crunch a whole lot of wallet addresses with Excel to derive an alternate measure of network weight — you might be interested in the results.
We know a lot about the “big guys”, those big staking wallets with > 100,000 QTUM who leave their footprints all over the block reward list. But what about the rest of us? How are the “little guys and gals” doing? This week in the educational feature we take a closer look at all the full range of wallet sizes and see some interesting behavior.
First a quick explanation on data gathering. To see the wallet balance of recent block reward winners, I used a screen macro program to step through a list of the winning addresses and scraped their Final Balance from explorer.qtum.org. The macro recorder worked well, taking about 15 seconds to scrape each balance. (I didn’t have time to set it up, but if you want to try a screen automation program that does true image recognition, then Sikuli (developed at MIT — “God’s Eye” in Huichol Indian culture — Mexico, home of 4 nodes, but I digress) is a very powerful tool.
If you want to see the balance of an address, the Explorer does all the work for you, tracking back through the blockchain to show all the transactions for that address, where “received” — “sent” is the balance, and I am assuming that for the block reward winners the balance is all used for staking. Note the Explorer “Final Balance” (Total Received — Total Sent) is a slightly different calculation than the wallet makes for “balance” — the wallet would subtract any current stake from the balance, the Explorer does not, but for our purposes, the Explorer calculation works well.
I scraped through 11 days of data starting from November 1st, with data from block 37,021 to block 43,593, or 6,572 blocks total. If you would like to compare your wallet address with all the others, the data set is available on GitHub.
These results assume all the staking wallets kept their balances fairly constant (aside from the block reward payments arriving) although there probably were some changes and 91 wallets were zeroed out by the time I scraped their balances (maybe cashing out to play the bitcoin fork — good luck with that).
For these 6,572 blocks, there were 412 winners with weights under 1,000 QTUM, including 233 under 500, 7 under 100, and the luckiest of all picked off block 40,754 with a balance of only 26.5 QTUM!
If your wallet was not chosen for a block reward this past week, just be patient. The smaller wallets are doing well, and there is hope for us all!
Let’s put this trove of data on a chart and see if there are any interesting patterns. First, a histogram showing the number of wallets with less than 1,000 coins, in buckets of 20:
This chart shows the number of block reward winners for balances in buckets of 20. If you have been reading any of my past educational features, you can see a few anomalies in the data. Your researcher has been accused in a friendly way as “being a little snoop” on the Slack, but, hey, it’s a public blockchain. If you could see all the account balances at your bank would you be curious? If the fiat in those accounts controlled your interest rate at the bank, would you take a look?
The first thing that jumped out was the wonderful luck of a number of 250 QTUM wallets, 47 of them (the red arrow). The time to expected reward per day for a wallet with 250 QTUM, given a network weight of 13,000,000 is:
We should expect to see a few wallets at 250 coins in 11 days of data, not 47. And some of these 250s like “y74Z” received two awards, what’s up with that? (I abbreviate the full address using the last 4 characters) Why do we see such success for these little guys after they started only a month ago?
I think it is possible that these 250s are part of a larger wallet that split the coins into different addresses, and will leave as an Explorer exercise if you would like to look at address QMSLNB4tcPEXhu8WBZSn1Uf4aSNKNoy74Z. If these 250s are all part of a larger wallet, their block rewards imply a wallet weight in the 90,000-coin size.
Teasing out this data and making guesses about this wallet behavior is interesting, but leads to a serious question. Knowing what you know about how the network weight is calculated (it is a moving average of inverted target) would there be any distortions to the network weight number if a miner is staking with a single address with 90,000 QTUM or as 360 addresses with 250 QTUM?
What if everybody did this? Suppose all the miners decided tomorrow to split up their wallets into addresses of 250 QTUM each? In this case, the target adjustment algorithm of the wallets would still keep the blocks running through at the target spacing of 128 seconds, so there would be no change in network weight with all these little wallets. In this scenario though, a real little guy with a single wallet of 250 coins would be looking at all the other successful 250-coin wallets and wondering when their turn will come. The answer is, on average, in 77 days, because the SHA-256 hash algorithm is ruthlessly fair.
Test your understanding: would any of these network configurations have a different target (and different network weight):
The answer is: no. These three configurations would have the same target, the same network weight, and the same block rewards spread equally (over the long run) among all the wallets/coins.
On the subreddit and Slack there are still questions about block reward probability from splitting up coins to different addresses, different wallets, etc. The probability is based only on how many coins you are staking, not how they are deployed. The SHA-256 hash algorithm is ruthlessly fair in choosing the block reward winner. If this were not the case, an angry mob of bitcoin miners carrying torches and pitchforks would have tracked down Team Satoshi years ago and made them fix it. There is only one way to improve your block reward probability: “BMQ” — Buy More QTUM.
A related issue is the behavior of the wallet to split the stake UTXOs (transactions) if it is above 200 and combine UTXOs if they are below 100. Will this lead us to UTXOs of 150 in the fullness of time? I think so, but ask me again in 5 million blocks.
For the medium-sized wallets, there are 795 winning addresses with balances between 1,000 and 10,000 coins. On the histogram chart, we can see the preference for sizes at 1,000, 2,000, 3,000, etc. People like these round numbers:
There were 228 wallet addresses with balances over 10,000 coins, and all the wallets staking for these sizes should have won block rewards during the 11 days. There were 26 wallets with balances over 100,000 coins.
For this data set, the median (middle value) wallet size was 2,008 coins.
Alternate Network Weight
We finish the educational section with a sensitive topic. Regular readers of these reports will remember that I offered a minor tweak to correct the staking returns calculation previously, and I would like to apologize in advance for the information in this section about network weight. I believe there is truth in math (and open source software); we must understand things as they really area, and unlike this clip, I think you can handle the truth.
Having the set of data from the “little guy” analysis discussed above, I took another look using these assumptions:
1. The staking wallets are in-place and stable now, and stakers leave their wallets running 24x7.
2. Stakers, especially with large wallets, do not arbitrarily change their addresses over time. There is really no privacy offered (with some people snooping around the blockchain, ya know), and they would lose 500 blocks of potential rewards waiting for moved coins to mature.
3. Over a period of a week+, all the big and medium wallets will win block rewards, and be captured in the data set, including their total balance.
Perhaps you can see where this is heading, given the title of this section. For an 11 day period, on average there will be 6,600 blocks at the current rate of 600 per day. On average, wallets of 1,970 QTUM and greater will win one block reward during these 11 days, and their address will appear in the data set.
If there are no new big and medium wallets joining the network, then by the later days of the 11-day period, we should expect to be adding new addresses for smaller and smaller wallets. Let’s see if that is true by looking at the balances of new wallets joining the data set starting at 7 days in on November 8:
How do you read this chart? On November 8 there were 102 new addresses for reward winners that hadn’t been seen in the previous week, and those addresses had 0.3 million in total weight.
Aside from November 11, the expected pattern seems to hold with a declining number of new wallet winners found, with the average size in the 3,000-coin range. Looks like there was a bigger wallet joining on November 11, and it was “7gRT” weighing in with 690,000 coins.
At the end of the 11-day period, we can estimate the population of remaining small wallets that have not received a block reward (and thus not show up in the data set) and simply add that estimate to the sum of all the other block reward winners to get an accurate value for the true network weight.
Before doing that calculation, let’s look at the network weight over this same time period. Remember that “network weight” is a moving average calculated by the wallet based on the difficulty (that target stuff) of recent blocks. Here is a chart that shows the network weight starting November 1st, every 100 blocks, 6 times a day:
There is quite a bit of variability in network weight, for reasons covered last week, and if we calculate the average for these values from November 1 to November 11, the average is 12.54 million.
Going back to the data set, to estimate the balance for those smaller wallets that haven’t claimed a block reward since November 1st (and haven’t appeared in the data set) I will just add up the balance of the wallets under 1,970 again, figuring on average half received a block reward and half didn’t. This may not be statistically correct, but it is not a big number.
This is a troubling number compared to the average network weight of 12.54 million. Is there any way to verify this alternate network weight with another approach?
Let me suggest looking at the largest wallets with known balances. These wallets are the stalwarts of the network, their heft ensuring security, and processing many transactions through their blocks. Knowing that the probability of block rewards depends only the mature coins being staked, we can easily compare the weight of these big guys to their block rewards and calculate the true network weight. As a sample calculation, if these wallets have a known balance of 5 million coins and they claim a quarter of the block rewards, then the true network weight must be 20 million, otherwise, you know, the angry mob of bitcoin miners with torches and pitchforks are on the way.
We can look at the big 5 (fyRy, S9cx, Vtvp, xUxY and XQXu), and they have been active since November 1, raking in some big block rewards, enough to get us past some of the random variability. For this analysis, we will ignore the block rewards they are receiving, and just add their balances on November 11 to give approximately 5.07 million. The table of their block reward winnings is:
Together these five wallets won 1,538 block rewards from November 1 to November 11, and for the 6,572 blocks during this period, this gives them 23.4% of the block rewards. What does this mean for network weight? The formula is:
Note, these calculations are meaningful because these big wallets have a large number of rewards during this 11-day period, to minimize the effects of randomness. 1,538 block rewards feel like a statistically meaningful sample to me, but I am not a statistician. You couldn’t get meaningful results doing this calculation with medium sized wallets.
Where does this leave us after this second approach indicating a higher network weight? I think it means the true network weight is around 20 million, and sorry to say, my advice is: for a realistic time to expected reward, and for a realistic return calculation, take the wallet network weight and add 60%. Sorry to be the bearer of this news, but I believe you can handle the truth.
We finish this week in Beijing, a modern commercial city with wide boulevards, expansive historical areas, and very few of the old neighborhoods left, where your taxi has to squeeze through narrow lanes between old buildings. At the center of Beijing is the Forbidden City, a cultural and historical colossus where generations of emperors lived and ruled. No longer forbidden, this unique cultural site is now open to all.
Wishing you good luck and prosperity; may you win countless block rewards.
祝你幸運快樂, 財運亨通, 并赢得了许多無數的奖励