Curation Reward Estimation ToolsteemCreated with Sketch.

in #utopian-io6 years ago (edited)

The Problem

Recently i've noticed a lot of questions / confusion / misunderstandings around curation rewards. That's to be expected since the curation reward calculation is quite complex. Rather than me trying to explain how it works I'll refer everyone to this post by @miniature-tiger that does it much better than I ever could:

An Illustrated Guide to Curation

But even if you understand exactly how curation rewards work, it's still really difficult to have any idea what your reward might be if you vote on a particular post since it's not math that's easily done in one's head.

Enter the Curation Reward Estimation Tool!

Screen Shot 2017-11-16 at 3.05.22 PM.png

Simply enter your Steem username (or anyone's username really) and enter the URL of a post or comment and hit the button and voila!

Screen Shot 2017-11-16 at 3.05.39 PM.png

If you've already voted on the post then you can see an estimate of what your curation rewards will be and if you haven't already voted you can see an estimate of what they would be if you vote right now.

Additionally you can use the "Expected Total Payout" slider to estimate what your curation rewards will be based on different final payout values for the post. For example if you vote early on a post that you expect will end up with $50 in rewards, you can estimate what your curation reward payout will be in that scenario.

Please note that this is an ESTIMATED amount. The actual curation reward paid out after the post hits 7 days old may vary based on a number of different factors.

The Details

For those of you who are interested, the calculations work as follows:

let [before] = the value of votes before the specified account voted
let [vote] = the value of the specified account's vote
let [total] = the total payout value of the post (as specified using the slider bar)
let [reverse_auction_%] = the portion of your curation rewards that will go to the author if you voted before the post was 30 minutes old

Each of the above amounts is multiplied by 25% since that is the amount of rewards that go to curation. Then the curation value can be calculated by:

(√([before] + [vote]) - √([before])) * √([total]) * (1 - [reverse_auction_%])

The first parentheses group calculates the "weight" of your vote which is used to determine the amount of the total available curation rewards you will receive. Due to how the square root function works your "weight" will decrease very quickly as [before] increases.

Then once the weight is calculated it gets multiplied by the square root of the total curation rewards for the post and reduced by the [reverse_auction_%] if the vote came in before the post was 30 minutes old, and we're done!

The only situation that this doesn't take into account (that I am aware of) is if a user votes on a post, then removes their vote and then votes again - in this case that user is not entitled to any curation rewards so their weight gets adjusted to 0 and their rewards are distributed to everyone else. I plan to take this into account in a future update, but it's a relatively rare scenario and will only lead to more rewards than expected, so I figured it can wait.

I have added this tool to the Steem Bot Tracker site and GitHub repo here: https://github.com/mattyice/bottracker
Links to the commits:
https://github.com/MattyIce/bottracker/commit/980960c03a8b8a6e446d7974b1c5a32b4dbe0c21
https://github.com/MattyIce/bottracker/commit/e6ba52494a232981214eb7f87c1877298bbae030
https://github.com/MattyIce/bottracker/commit/a870fe7b9fc6cb66ba38a318a90f20c2a68ca5d0

I hope you find this tool helpful. It has definitely helped me find a lot of great curation opportunities that I wouldn't have realized otherwise. Let me know your thoughts in the comments!



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  

I am replying so i can refer later. I am using the estimation tool.

OMG. This is marvellous.
You are a magician.
I always like your work.
I don't find any similar tool before.
👌

How to get link of comment to send in booster memo

This comment has received a 0.61 % upvote from @booster thanks to: @uxair.

Good work thank you :)

The complexity of the system makes me wonder if it wouldn't be somewhat profitable to design a bot that watched Steemit for a week, built a rough lexicographical model of posts which are likely to be upvoted, was staked a modest value, and then started farming curation based purely on investment versus likely payout.

The computer can surely do that across the database a lot faster than I can. This seems like a classic optimization problem.

If someone hasn't done it yet, I'll be deeply disappointed in humanity.

Yes, i've had this same thought. This is a clear cut machine learning problem. No one has done it yet (as far as I know) but no one has done a lot of relatively obvious things here yet because Steem is still very, very young. That means there is a lot of opportunity.

I don't have any experience with machine learning but if I did I would definitely do something like this. One of the most interesting things to see, in my opinion, is whether this ML algorithm would actually end learning to identify "high quality content".

The irony is that they wouldn't have to identify "high-quality content" in any way that would be useful to you or I content consumers at all. A simple, naked, brain-dead lexigraphical process that simply looks for sliding windows of characters that occur together frequently in highly rated content would be more than enough.

This is old-school machine learning, straight up character-cell pattern recognition, of the kind kids today seem to have never learned existed. Derive a pattern, act on that pattern, reinforce that pattern.

Like I said, if none of the bot swarms currently working on Steemit aren't doing something like this right now, I'll be terribly disappointed. It's simple. It's straightforward.

It does nothing for us as consumers who aren't "playing the system", but I increasingly get the feeling that there are very few of those floating around here.

If someone has already done it, they probably won't tell the rest of Steem about it :P

If everyone curates with bots, there's no point to 'curation' anymore!

If someone's already done it, you're right – they're going to keep that to themselves. It might be visible via an analysis of the blockchain and looking for users which have a lot of mutualism and an unnatural pattern of interaction, but I'm not sure it's worth doing. There is no system on earth which people will not try to game, so a good game designer designs with that in mind.

You're absolutely correct that if everyone "curates" (and I put that in quotes because it's not actually curation, which requires the intent to promote content based on that content and not arbitrary group membership) with a bot and there's no way for the rest of us to decide whether the results of that "curation" are good or not, then there is absolutely too much noise in the signal in the system is useless.

That's what we need to think about. Is the signal being given to individual users useful. Maybe some users, maybe most users, are perfectly happy to play a game in which they feel the waves of bots which interact via the blockchain in order to try and outscore one another. I don't know. I don't have any way of knowing.

I know that's not something I want to do. Because I am essentially self-interested, I want to facilitate things that I want to do.

At least I'm honest.

I'm self-interested as well. I do use bots to vote a lot of the time.

However, most people with bots simply vote for whales that are huge and get lots of rewards. If everyone did this, we'd just see a "the rich get richer and the poor get poorer" effect as the minnow/whale divide gets even bigger.

There should be more incentives in the system for people to manually curate posts. I'm not sure how that would work though.

Given that what you describe is exactly what we seem to be seeing, congratulations – you have a firm grasp on the situation as it stands.

(That sounds like I'm being an asshole, but the truth is I absolutely respect you for seeing the world as it is. Seriously.)

I haven't become so self-interested that I'm interested in using bots to vote, or to be more forthright with what it actually is, paying for upvotes. I'm not that invested into the "game" that Steemit describes. I mean no offense if you are, and I fully admit that STEEM is currently purely just a way of keeping score that you can exchange real money to avoid having to play the game.

Okay, maybe there is a little judgment there.

You are absolutely correct there should be more incentives in the system for people to manually curate posts, or to be clearer about what we mean, actually curating posts should change the user's experience in a way that makes them happier, that gives them gratification. As it stands, while I curate posts because upvoting things that make me happy makes me happy, I'm not laboring under the delusion that doing so will really make the things that I'm upvoting more visible to other people. My contributions as a new user/minnow are minuscule, and even taken in aggregate with the other minnows around me are swamped by the influence of a handful of whales with a swarm of power-delegated bots.

I know that. It's disheartening to know that, and discouraging to know that, and I'm sure that I'm not the only one that feels that way and probably bounced off the system and walked away feeling disenfranchised within the first few days of being on the site.

I don't know if the Powers That Be care enough to shake up the status quo to make that not the case. At least not on Steemit. Maybe there is/will be another steem blockchain social network tool which is interested in new user retention, even at the risk of diluting the pool of STEEM.

I keep writing, but I'm not holding my breath.

I'm looking at that system now,and will leave at least one comment over there. I'll say now it's interesting, but I do have one criticism.

This seems like a classic optimization problem.

I can imagine that this could work for a while, but then sometimes things happen that did not happen in the past and therefore are not covered by a model that is based on experiences from the past. Just like the stock markets. Prediction works to some extent, as long as the future works mostly like the past.

In this case, the system would be self adapting. After all, it just looks at a sliding window of what has been successful in the last X days and acts on that information. Something happens that is unexpected? Sure, efficiency drops for a little bit – and then the entire system moves on.

You mention the stock market, I'll counter with the weather. If you want a greater than 70% prediction rate, just assume that tomorrow will be within 4% to 5% similarity of today. Throw yesterday and, do a very basic trend analysis, and you can be over 80%. And that's with a very stupid algorithm.

I'm old-school when it comes to AI and markets. I firmly believe in "good enough" technology. It doesn't have to be perfect – it just has to be good enough. It doesn't have to be good enough all the time, it just has to be good enough for a good enough portion of the time.

You can get away with a lot of slop if that's your target space, and you can get to it very fast, and very cheap.

Upvoted and following...

Please think about buying a dedicated domain for your service

I have steembottracker.com but it is just forwarding to the page on S3 right now...i suppose I’ll set up a real web server soon, didn’t expect the bot tracker to take off like it did!

Thanks a lot for this intelligent tool! In fact, I was looking for one such tool. It's good to see your continuous valuable contribution to this platform and your quick grasping of the way things work here. I know, right from the day one you were very focused on the fundamentals of this platform and had put all your efforts to understand the intricacies of this blockchain. Your efforts have paid off well, I guess. I hear that you are now also running a witness server? If so, I'd love to vote for you.

P.S.:

After testing your tool for this post, I've decided to not to upvote this post. Please don't mind it 😜
(I'm thankful to utopian for upvoting your contributions).

Thanks @xyzashu, I am running a witness server and would very much appreciate your vote!

Done.

Wishing you all the best as a witness. You are the newest Steemian I've ever voted up as a witness but I'm very confident that you will make a positive impact to this community. I've high hopes on you 😊

This is pretty slick and honestly I think curation rewards need to be higher to entice people to comment and upvote on others content. That really seems to be the missing part of the puzzle at the moment.

Yes definitely agree with that! I can't make the rewards higher but at least I can help show people that it is possible to earn good rewards through curation. It's something that I myself didn't realize until recently.

Appreciate it!

Nice work again @yabapmatt! And thanks for the shout-out also!

This is really good! Very nice work @yabapmatt :)

Coin Marketplace

STEEM 0.35
TRX 0.12
JST 0.040
BTC 70734.57
ETH 3561.52
USDT 1.00
SBD 4.75