Breaking Curation Down!

in #steemit6 years ago (edited)

Curation sure is complicated, isn't it? You may have heard something about the square root curation rewards curve, e.g. here.

In this post we will walk through where this is implemented, and look at some scenarios.

This is the part of the code that that assigns the weight of a vote.

uint64_t old_weight = util::evaluate_reward_curve( old_vote_rshares.value, curve, reward_fund.content_constant ).to_uint64();
uint64_t new_weight = util::evaluate_reward_curve( comment.vote_rshares.value, curve, reward_fund.content_constant ).to_uint64();
cv.weight = new_weight - old_weight;

If you look now at evaluate_reward_curve, it simply takes the square root of the value, since curve is set to square root for hardfork 19, which is done here.

Note that this weight gets tallied up into the comment's total vote weight, and the fraction of the curation rewards pool you will get is given by this weight divided by the total vote weight.

If you voted earlier than 30 minutes, then the amount you get is discounted further, as discussed in this post.

Now rshares is simply the number of VESTS assigned to the post. If OV is the old value on the post before your vote, and YV is the value you assign to the post, and TV is the total value assigned at payout, then we have

ovyvtv.png

as the fraction of the curation rewards that goes to you.

But note that as in the last post we can translate from VESTS to STEEM using the steem_per_mvests parameter, and then to the $ amount shown in the UI by multiplying by feed_price everywhere, but these factors cancel out in the numerator and denominator. Thus, the formula above applies to the $ vote value as well!

If that last part didn't make sense to you, just take the last formula to be in terms of the $ value of the post before your vote, the $ value of your vote, and the total $ value of the post.

Full Formula

Now putting it all together, the amount of curation rewards for a given vote is

curationf.png

where OV is the old value of the post before your vote, YV is the value of your vote, TV is the total value of the post at payout, and r is the discount due to voting early (as a reminder, r=0 if you vote at 0 minutes, r=0.5 if you vote at 15 minutes, and r=1 if you vote after 30 minutes).

Sample Scenario #1

Now for some sample scenarios to run through.

Say you cast the first vote after 30 minutes, and your vote is worth 1$, and your vote comes before a 99$ whale vote, and then that's all.

Then OV=0, YV=1, TV=99 and you get 1/10th of the curation rewards, and the whale gets the other 9/10ths, of 25$ in curation rewards. So author gets 75$, you get 2.5$, and the whale gets 22.5$.

(These are again not in SBD or USD, see e.g. how payout works.)

The Square Root Property

Here's an interesting property of the square root function: taking the square root (or any root, really) of a particular value will pull that value towards 1. For instance, the square root of 0.01 is 0.1 and the square root of 100 is 10.

This property actually allows even minnows to get a "good" chunk of the curation for voting first on a post that eventually blows up in value. And if you're lucky while browsing the bot tracker for posts that you might be able to front run, you may be able to find one that can get you a little more curation.

Curation for lower SP folks?

Let's say that your vote is worth 0.005, which would be common when just starting. And let's say you vote on a fresh post with no votes (admittedly rare, because most people self-vote at 0 minutes), and that you get lucky or are stalking a bot-- that post eventually gets 100 total value.

According to the formula, OV=0, YV=0.005, TV=100, and if you voted after 30 minutes, you would get 0.177 of that value in rewards (half of that to SBD, the other half divide by price feed and goes to SP).

It's not much, but not bad considering your stake is very low!

However, if the author self-votes at 1$ worth say (or the post already has 1$ worth of votes), then this quickly disappears. OV=1, and you'd get

(sqrt(1.005) - sqrt(1)) * 10 / 4 = 0.006

in rewards.

Summary

There is no summary, curation rewards are complicated. However, you now have a formula to estimate what you would get in curation rewards if you were to front run a bot vote that you know is coming.

Also, I suspect I may have messed something up, so I will be testing out my computations on real bot votes soon just to see how it goes. Will record any updates I make to this post in an Addendum section, if there are any.

Let me know below if you want to run through some examples perhaps!

Addendum

@yabapmatt has a tool for doing this computation, and you can find out more in his post here. The same tool that lets you stalk upcoming bids let's you find what your curation possibilities are.


steemengineBanner.png
eonwarped_tax.png

Sort:  

It's a complicated subject, thanks for the explanation!

I've experimented with front running the bidding bots, and the reward (for me at least) simply wasn't worth the effort. I can do far better using my time to write a new post or to read others posts and engage in a useful commentary. I'm not saying it can't work, just satin' it hasn't worked for me.

It's probably not worth it, but have you tried out the curation reward estimator I put at the bottom of the post?

Oh that's cool. I'll have to put aside some time to play with that and see if it would help.

understanding maths be like hehe sorry
maths.gif

Ha! Glad someone posted this gif.

At the end of the day I'm hoping more people focus on creating better content and a more engaged community rather than trying to mathematically game the system for a profit.

Agreed on content and community. However I think it will be important to understand what are all the pieces in terms of incentives built into the system, to figure out if there's anything to be done that can push people towards better behavior. Because if there are gaps or loopholes, you can be sure someone is using it.

Thank you for the formulas, very usefull!

Interesting ! So how much more curation rewards do you get with more steem power? I'm just wondering what qualifies as a whale vote.

I made the mistake of powering down early on so I could invest in other crypto asserts (rather than put my own money in), and I'm wondering if it would me more profitable to just power up and have a bunch of steem power.

As an experiment, it would be interesting to just put a crap ton of money into steem power and see what happens when you upvote or resteem something.

Do you have any experience with this?

Well, I don't know about that. Certainly resteeming does nothing for you. Upvoting and curation rewards in general is not so lucrative unless you maybe program a bot to seek out the good curation opportunities (which is hard to figure out... unless possibly you look at the bottracker for opportunities).

In terms of author rewards, STEEM POWER just helps you with self-vote, so you do get some value there. Ah! And you can sell your vote with services like minnowbooster and smartsteem, which seems to be pretty lucrative. Otherwise, it seems feasible just to keep making good posts and try to get exposure to gain more STEEM.

In other words, I don't really have experience with what you are asking, but I have a few ideas.

Hmm interesting, so do you usually power up, and send all your steem to steem power or do you cash out?

Everyone's goal is different. I do not intend to cash out, so I am powering up. If you want to diversify then selling makes sense too. I happen to be optimistic about STEEM's platform, so I will continue to power up.

Going thru this much to calculate, just reminds me to sit and wait, there is no changing it, why obsess. I could reap more rewards by jumping back on the comments, yeah?

Probably make more by writing good comments on other people's post, agreed. Though with the tool, it doesn't take much to compute now :)

I'm glad you wrote this. I hope you got it out of your system. (Please don't hurt me anymore.)

I'll alternate! :S

Just take my tax and don't kill my few remaining braincells that still accept math haha.

I'm like really looking at those numbers and formulas and..........cricket sound

I'm just amazed how you can do this Evan. Well, I'll leave it to you and I look forward on how much you'd really get on curation. Aja!

Another impressive post explaining the inner workings of steemit :-D

Coin Marketplace

STEEM 0.18
TRX 0.14
JST 0.029
BTC 57305.83
ETH 3076.79
USDT 1.00
SBD 2.40