All the cool kids are posting in #utopian-io...
I might as well join the crowd. Welcome to my first utopian.io analysis post.
A note on my professional backgroundwhile I focus my posting on Steem blockchain on art, music, family, marijuana and curation (among other creative/crazy type stuff), my professional background is in market research. I have held positions of project manager, survey author & programmer, data analyst, research facility manager, and district manager (for a national market research company with research facilities across the country).
Since October of 2017 I have been a full-time Steem'er. This is my employment now. I am a community rep, operator, curator and reviewer for @curie. I am also one of the co-founders of the C² Curation Collective, an inclusive community intended for all curators on the Steem blockchain. Join the community as a curator on Discord and follow the @c-squared vote trail on steemauto.com to support the curated authors.
Reason for Analysis
There is a lot of confusion surrounding the proposed changes to curation reward under HF20. Part of this confusion stems from the wording of the @steemitblog posting on the subject, which could be read to imply that only self-voting behavior will be impacted by the proposed change. Thanks to @tcpolymath for pointing me to the actual Github Proposal: Curation Reverse Auction Changes #1874, which makes it clear that the proposed changes will affect all votes (self-votes and otherwise).
The above linked Github proposal has a clear explanation of the current voting situation; see also this post by @paulag and these posts (first post on topic; updated proposal for alternative to HF20 proposal) by @tcpolymath for more background.
As @paulag noted in reply to me in the comments of above linked post, "the rewards pools and distribution of it is very complicated to understand". When analysis is conducted on the level of individual votes, there are many factors which determine how much each vote actually ends up affecting payout. An accurate analysis must include all votes on the post and account for vote time and rshare. Data sets quickly become unwieldy and it is difficult or impossible to analyze all authors/voters or even a representative sample across a decent time range to normalize for daily variance.
I believe a more constructive approach to this issue is to look at sum totals of author and curator reward by SP of author to understand the current situation, and how proposed HF20 changes will impact authors with different amounts of vested SP.
This approach will allow us to see not just how much authors will lose under HF20 (how much will be returned to the reward pool), but also what % of the reward pool is distributed to those authors (to determine the net effect of HF20).
Goal of Analysis
- Present a complete picture of current author rewards and curator rewards on total and by author SP
- Examine impact of HF20 proposed changes including likely changes in voter behavior
Analysis of Current Author Rewards and Curator rewards
I pulled the data for this analysis from the SteemSQL database on 7/6/2018. I looked at all posts (this includes comments, for the reason that author/curation rewards behave identically for top level posts and comments) from the time period of June 1st, 2018 through July 6th, 2018 when I pulled the data. This gives us a robust data set with 4.4 million posts, 90k unique authors and $2.3 million total reward payout.
SQL Query used:
SELECT SUM((c.total_payout_value)+(c.curator_payout_value)) as [Total_Post_Payout], SUM(c.total_payout_value) as [Author_Payout], SUM(c.curator_payout_value) as [Curator_Payout], COUNT(c.url) as [Number_Posts/Comments], COUNT (DISTINCT c.author) as [Number_Authors] FROM Comments c (NOLOCK) INNER JOIN Accounts a ON c.author = a.name WHERE datediff(month, c.created, GETUTCDATE()) between 0 and 1 AND cast(left(a.vesting_shares, len(a.vesting_shares)-6) as float)*492.725/1000000 [SP CONDITION]
NOTES ON QUERY:
- The above query returns the sum total of author payout, sum total of curator payout, count of posts/comments and count of distinct authors in each author SP grouping specified by the
[SP CONDITION]with an argument to specify SP range e.g. to include only authors with 0 - 499 SP replace
between 0 and 499. Remove the last line entirely to return results on total (all authors).
- Date range is specified as current and prior calendar month - adjust the
datediff(month, c.created, GETUTCDATE()) between 0 and 1line as needed to specify different date ranges e.g.
datediff(day, c.created, GETUTCDATE()) between 0 and 30for past 30 days data or
c.created between '[DATE 1 in timestamp format]' and '[DATE 2 in timestamp format]'to return results between specified date ranges.
I ran the query six times to generate a data set for the following author SP bands (breaks chosen somewhat arbitrarily based on prior knowledge of numbers of accounts in various SP ranges):
0-499 SP; 400-4,999 SP; 5,000-9,999 SP; 10,000-49,999 SP; 50,000-99,999 SP; 100,000SP+
I further created derived metrics from the data:
% of Total Reward Pool; % Author Reward; % Curation Reward; projected Author Reward given proposed 75% cap; Author Reward payout reduction per author given proposed 75% cap; and % of the total reduction in Author Reward.
You can see the spreadsheet and check the formulas used to generate these numbers at this Google Sheets link.
- The more SP an author has, the more the HF20 changes will affect author reward if current early self voting behavior continues (we will later examine impact of likely changes to voting behavior in response to HF20).
Solely considering reduction in author reward from proposed 75% cap (we will later examine how much of this reduction would be recovered based on % of reward pool controlled by each SP band) we can see that individual authors in the highest SP ranges will be returning a much larger amount to the reward pool:
The lowest SP users are currently the closest to the 75% author reward share and as SP increases so does average % author reward share:
These are not surprising findings. The more SP a user is voting with, the greater the opportunity to take advantage of the increased rewards available from current self-voting at 0 minute behavior.
- The two lowest SP bands (0-499 SP and 500-4,999 SP) are net beneficiaries from the proposed HF20 changes while all SP bands above are net losers, with net loss increasing as author SP increases. The smallest accounts with less than 500 SP are the largest net winners.
This can be seen by comparing the % of the total author reward reduction by SP band under HF20's 75% author reward cap, with the total % of the reward pool controlled by that SP band. If the SP band controls a greater % of the total reward pool than the % of the reduction in author rewards coming from that SP band, it is a net beneficiary of increased author payouts.
EDIT - as I noted below in a comment to @paulag, the actual % of the reward pool controlled by each SP band under HF20 will be different than the numbers used above (which are the current % of the reward pool controlled by each SP band). Without the 0 minute self vote returning well over 100% ROI, large accounts will control a relatively smaller % of the reward pool compared to status quo.
Impact of likely changes to voter behavior under HF20
- Large accounts self voting at 0 minutes will likely stop. There will be a clear incentive to delay self voting, either to 15 minutes to receive a full share of author and curation reward, or to some optimal point between 0 and 15 minutes to take advantage of curation reward from other early votes falling before 15 minutes (e.g. if an author knows a large automatic vote will come in at 12 minutes, it might be optimal to self-vote at 11 minutes). The optimal time to vote will vary depending on the behavior of other voters but clearly 0 minute self voting by large accounts will stop.
This change in voter behavior will still result in lower payouts for the highest SP authors
- Current author reward % above 75% is possible because a self-vote at 0 minutes gives a share of the curation from trailing votes; under HF20 self-voting at 15 minutes (while still giving the full value of the self-vote to the author) does not automatically result in a share of the curation reward from other voters. As noted in our original analysis above, it is the highest SP users that are currently able to take most advantage of this self-vote loophole that allows > 100% return - closing the loophole necessarily impacts them the most.
- Even to the extent that an author recovers some of the missing author reward from a post through increased curation reward from self-voting at the new delayed optimal time, this will still result in a net reduction of post payout value because of a net decrease in the proportion of the total reward paid out to the author in SBD. Interestingly, the total market value of all payouts will decrease under HF20 because of the weak SBD peg to the dollar. At any time that SBD is worth more than $1 USD, a net increase in total curator reward % results in a net decrease in total reward payout market value. However, the beneficiaries from this are still the lowest SP accounts. The important thing to look at here is total % of reward pool. The accounts that previously were best able to take advantage of the 0 minute self-vote will lose a relatively greater share of the reward pool. This is a net win for all smaller accounts.
- HF20 will change voter behavior by dis-incentivizing 0 minute self voting and will reduce the total market value of the reward pool payout by decreasing % of total payout in the form of SBD.
- Any account with vote power under the dust threshold will suffer no negative consequences under HF20 and can only be a beneficiary of increased payout. (EDIT - @tcpolymath points out in the comments this is not true RE the dust threshold - the broader point below holds, net effect of HF20 is negative for the largest SP accounts and positive for the smallest SP accounts in regards to % of reward pool distribution)
- The largest accounts previously able to take best advantage of > 100% ROI from self-voting will lose the largest relative share of the reward pool; the smallest accounts will be the biggest winners with a larger relative share of the reward pool.
- Under HF20 it will no longer be possible to automatically receive > 100% return on a self vote. Self-voting at 15 minutes opens the possibility that another voter has voted earlier and will receive a portion of the curation reward from the self vote. Self-voting earlier than 15 minutes necessarily results in a reduction of curation reward. ( EDIT - @tcpolymath points out in the comments that in practice, it is still possible to guarantee a 100% return, but not > 100%, on a self-vote through self-voting comments exploit )
- Actual future voter behavior cannot be accurately modeled beyond the broad trends identified above. If HF20 is implemented, future analysis on its impact should focus on actual combined author/curator reward realized by accounts at different SP bands, remembering to account for the reduction in market value of payout stemming from decreased SBD payout.