Post Promoter JavaScript Voting Bot - Round Fill Limits, Minimum Post Age, and more!

in #utopian-io6 years ago (edited)

loudspeaker-1459128_640.png

It's been a really busy week but I've finally finished what I think are a very nice set of new updates to the Post Promoter software that should benefit both bot owners and users alike! So find a comfortable seat, cancel your appointments, and let's get into it!

Updates to Delegator Payouts

A number of bot owners using the software brought up the issue that if a new or updated delegation comes in right before a withdrawal then that delegator receives an oversized portion of the payout even though their SP did not contribute much to that round.

The code has now been updated so that new or updated delegations do not take effect until the next withdrawal period. If withdrawals are daily then they will not receive their payout until the following day, and if withdrawals are after each round then they will not receive their payout until the following round.

This was a relatively simple change code-wise. Now whenever a delegation transaction comes in the updated amount of vesting shares is saved in a "new_vesting_shares" property in the code's internal list of delegators, rather than updating the "vesting_shares" property which is used for calculating the payouts.

Then after a withdrawal is finished a new function is called which updates the "vesting_shares" property to be equal to the "new_vesting_shares" value for any delegators with new_vesting_shares > 0. Here's the code for that function:

function updateDelegations() {
  // Find any delegators with a new or updated delegation amount.
  var updates = delegators.filter(d => parseFloat(d.new_vesting_shares) > 0);

  for (var i = 0; i < updates.length; i++) {
    var delegator = updates[i];

    // Copy the new_vesting_shares value to vesting_shares and set new_vesting_shares to 0
    delegator.vesting_shares = delegator.new_vesting_shares;
    delegator.new_vesting_shares = 0;
  }

  saveDelegators();
}

Allow sending certain delegators' payouts to a beneficiary

Another delegation-related change requested by a few bot owners is the ability to specify certain delegators whose payouts should be sent to a different beneficiary account. In certain cases a delegator may wish to decline a payout or donate their payout to another account, and now the software supports that using the "overrides" property within the "auto_withdrawal.accounts" list like so:

"auto_withdrawal": {
    "active": true,
    "accounts": [
      {
        "name": "$delegators",
        "stake": 8000,
        "overrides": [
          { "name": "delegator_account", "beneficiary": "beneficiary_account" }
        ]
      },
...

In the example above 80% of the bot's earnings are set to be paid out to delegators based on their delegation amount. With the new "overrides" property you can now specify a beneficiary account where payouts should be sent for specific delegators. "overrides" is an array so you can add multiple delegator beneficiaries.

Added Minimum Post Age Setting

As you know there already exists a Maximum Post Age setting (max_post_age) to prevent users from buying upvotes for their posts at the last possible minute before payout to try to avoid downvotes, however there are also some spammers who grab profits from bid-based voting bots by posting right at the end of the bidding round and then buying a vote on their post right after it was published in order to take the 25% normally reserved for curators for themselves.

In order to prevent this there is now an option to specify a minimum age for posts that can be submitted to the bot:

"min_post_age": 20, // In minutes, minimum age of post that will be accepted

I suggest a minimum post age of 20 minutes, but each bot owner can choose an amount of time that they feel works best.

Setting to limit the amount of bids in each round

This setting, if enabled, offers a very big benefit to bot users in that it prevents a situation where a round gets seriously over-bid causing everyone to lose out. Every so often, for whatever reason, a round gets bids worth significantly more than the bot's vote value and everyone in the round takes a big loss. While this is good in the short term for the bot owner, in the long run it's a really bad experience for users and will undermine confidence in, and usage of, bid-based voting bots.

So now bot owners have the option of limiting the value of the bids that can be accepted in each round as a percentage of the bot's vote value (based on the current market prices of STEEM and SBD, and after factoring in 25% curation rewards) using the new "round_fill_limit" setting:

"round_fill_limit": 1.1  // Limit the round to 110% full to guarantee no worse than a -10% ROI

If it is set to 1 then it will limit the value of the bids in each round to at most the value of the bot's vote. If it is set to 0.9 then it will limit it to 90% of the bot's vote guaranteeing a minimum 10% ROI, and 1.1 will limit to 110% of the bot's vote limiting the ROI to no worse than -10%. Hopefully you get the idea at this point.

If any bids come in that will push the round over the set limit then they will be refunded to the sender. My suggestion is that bot owners set this to 1.1 and that's what @postpromoter is currently set to. In my opinion voting bots should not be used to directly profit off of the value of their vote, but instead should be used to gain visibility for posts which leads to a much larger ROI (for good posts) from increased followers and organic upvotes.

Based on that I think that breaking even or getting a slightly negative direct return from the bot's vote is ideal, and also offers a good trade-off for bot owners. But each bot owner can decide whether or not they would like to use this feature and what value works best for them. I know a few smaller bots are using it already in addition to @postpromoter and if it catches on I will also add info about it on the Steem Bot Tracker website.

Thanks for your support!

So looks like it was another marathon post, but for those of you who made it all the way here - thank you! As always I want to also thank everyone who has helped and supported me in creating this software. Please stay tuned for more updates in the coming weeks!

Links to relevant commits:



Posted on Utopian.io - Rewarding Open Source Contributors

Sort:  
There are 2 pages
Pages

Hello @yabapmatt, do bot owners have to operate a full Steem node and be a witness? What are the requirements? And are you sharing the code for the bot you created for a % fee?

You don't have to operate a node or be a witness to run a bot. You simply have to run bot software. The Post Promoter voting bot code is freely available on GitHub, however if you don't want or are not able to set it up and run it yourself I offer a service to host and run a bot for you for a 5% fee.

@yabapmatt i read about the SAAS bot service from this article (https://steemit.com/bots/@yabapmatt/so-you-want-to-run-a-voting-bot) a few days ago, how do i actually do it ? is there a site to signup or just login on steembottracker site ? appreciate if you can guide me on steps

Hi @onepercentbetter - you'll need to get in touch with me to get that set up. You can reach me on Discord or Steemit.Chat.

Hi @yabapmatt I'm interested in this too. FYI, I sent you a message on Steemit.Chat , my username there is Tropical. 👍

How do I sign up to your service?

Please contact me on Discord or Steemit.Chat to discuss.

hello friends, visit my blog and reply any of my post and vote me i will reply on your post and will vote you too.
https://steemit.com/@fakheralamsher
thankyou..

Thank you for the contribution. It has been approved.

Great post, a great help in the bot world and clean code.

You can contact us on Discord.
[utopian-moderator]

Sadly, I can only vote for you as witness once!

I think our philosophies align pretty well, except, I don't think bots themselves should become whales. A small return on investment for minnows, say $1-2 for a 100% vote and the extra steem power should go into another bot, maybe? More overhead, I know!

Maybe as I hang out on Steemit more I'll see the error of my ways. ;)

But seeing as I was just laid off and was looking for an excuse to learn javascript, if I want to see how my vision of how a bot should work, then I should make a bot myself. Put up or shut up, eh?

Thanks @trickbrown! I don't understand what you mean by the following:

I don't think bots themselves should become whales. A small return on investment for minnows, say $1-2 for a 100% vote and the extra steem power should go into another bot, maybe?

Can you explain what you mean? Also sorry to hear that you were laid off but hopefully you can turn that into an opportunity. Let me know if you do jump into javascript and I would be happy to help out if you have any questions!

I see some bots with a voting power over $1000 or $1500. That just strikes me as crazy, unless they are opting to vote every 1.2 hours @ 50% or every 36 minutes at 25%. (Or maybe I'm misunderstanding some aspect of the voting math.)

Maybe after a night's sleep I'm waffling a little, but my thinking last night was that bots would be the best way for a minnow to get some exposure and those who already had some exposure/steempower really didn't need it.

But as I think of the flip side, I used to own my own restaurant. A tough business even with a lot of advertising. These bots are glorified paid advertising, and advertising does not work unless it is constantly applied. So under that thought process (rationalization?) I can see where a dolphin or whale would need to use a higher powered bot from time to time to keep themselves going.

Thanks for the upvote! And especially thanks for the offer for any help with questions.

Yes I think you might be misunderstanding how it works. The full value of a particular bot's vote may be $1,000+ (that's USD value by the way, not what will show on steemit.com), however that value is split up among everyone who sends a bid in the current bidding round.

So for example for a bot whose vote is worth $1,000, if 100 people all send in a $10 bid in the round then they will each receive a $10 value vote. So the larger bots are able to handle both large bids and small bids at the same time - they just split up the vote value accordingly.

And you are correct that the bots are just a method of advertising. On SteemIt.com your business is your blog and advertising via the voting bots is an effective way of increasing traffic to your business. Ultimately the value of the content provided in your blog will determine what type of ROI you get from that advertising.

No, I understand how it all gets split up. Math is, kind of, my thing.

I suppose I'm more curious as to where all the value comes from on the back end. It just seems like magic to me, that that much value can refill in 2.4 hours. I guess I need to delve into the white papers to see how all this works. So much to learn and so little time...

But first, after lurking for a few days, I should write my introduce myself post and actually "join" the community. :)

Ah, that's a very different question - maybe this post can help explain it at a very high level, and if you're mathematically inclined then definitely read the bluepaper and whitepaper for more details.

Let me know when you make your intro post!

NICE.

23 days ago I posted this: https://steemit.com/bidbot/@abh12345/dear-the-greatest-bid-bot-owner-on-steemit

The main point being:

Stop accepting bids that take the R.O.I. into the negative

Very glad to see this is now an option to become the best bid-bot owner!

Questions, is the setting visible on the bottracker site?

Have any owners adopted even/profitable ROI yet?

Great stuff

Time to go and pester themarkymark a bit more now :D

It is not visible on the bottracker site yet, but I promise it will be in the near future! I believe a few smaller bots may be implementing even/profitable ROI but i'm not sure. As I mentioned in the post, @postpromoter is set to no worse than -10% ROI and I gave my reasons for setting it to that level.

As a user, I'm happy seeing any sort of setting that stops crazy-sized bids coming in late and killing the ROI and promotion aspects.

-10% is a great start, and I'll be looking out for the addition to the site which is a great asset for addicts like myself.

Cheers!

thanks so much for all you do! you've blessed all of us so much with the steembottracker website...

Setting to limit the amount of bids in each round

and this is huge for anyone who uses voting bots! out of all the critiques on bots, this is the biggest, that they don't limit when the overflow ROI... i don't use them b/c of that, but your update is a game-changer..!!! WoooHooo!

Hey yabapmatt,

I have just stumbled across this post, I wasn’t aware the creator of postpromoter and steembottracker were one and the same!

But I am still very new here, I used postpromoter once, I definitely got a negative ROI but I see other people using it have got upvotes worth a lot more than mine was (only $7).

Are there better times of the day to use it? As in where the bot is used less and hence you get a higher share?

Also do you have a resource you can share on how to delegate SP to postpromoter? This might be a better way for me to grow my SP short term.

Thanks again for all your efforts.

A lot of people have asked what are good times of day to use the bots and if I can make a service to track and report on that, but as I mentioned in the post I don't think the bots should be used to try to make an instant profit off of their vote so I focus my attention more on making them better tools for content promotion.

For bots that use this new feature to limit the number of bids that are accepted in each round you shouldn't have to worry about what time of day is best - just send a bid when you have a post to promote and you can be sure you will not get a big loss.

Regarding delegation, you can use this link to delegate to @postpromoter and earn a share of the rewards every day: https://steembottracker.com/delegation.html?delegatee=postpromoter

If you would like to be a passive investor on the platform then I think that's a great way to earn a return on your investment, but if you're an active content publisher I think keeping the SP in your account will help you grow your following and your earnings more than delegating it.

Hi yabapmatt!

Sorry for the late reply but thank you for both the upvote and the honest advice about actively using my SP! An upvote like yours makes a massive difference to a new account. I've written previously about how I think it can be hard on new joiners who don't have any money for SP, as their upvotes can't even generate $0.01 of value on posts.

Anyway I will continue to actively use my SP, but like you say if for some reason I'm not able to post for a while, delegation is an excellent option for me.

So is it simply the case of delegating to PP, and then the software is clever enough to figure out what proportion of rewards I will receive and automatically transfers them over periodically?

What a time to be alive!

Holy cow! I had no idea there was open source "botting" software for Steem. I saw a bot yesterday (I'm pretty new) and started wondering if I could program something... Looks like you've done most of the hard work for me!

Thank you!

To give credit where credit is due, the first widely used open source bot software is the "drotto" bot by @inertia. That was the inspiration behind the post promoter software which I built to improve the fairness and user friendliness of the bots.

@yabapmatt, first off, thank you for your amazing contribution! This looks easy enough that I'm looking into setting up my own bot based on your postpromoter code.

I'm curious, is there a guide to getting the bot listed on steembottracker.com?

As of right now you just have to contact me to get it listed but if I ever have time I plan to create a guide and an automated process because there's starting to be too many new bots popping up for me to handle!

I should note that due to the huge growth in the number of bid-based voting bots I am trying to limit the bots I add to the site to those that have 5,000 SP or more in or delegated to the account. A bot with 100 SP takes the same resources to show on the site as a bot with 100,000 SP and I don't think it's worth it for bots whose upvote value is only a few cents.

I think you should make two lists of bid bots that have less and more than 5,000 SP if its possible for you but don't exclude minor bid bots as listing on your website is a chance for them to grow and secondly minnows will get help by those minor bots as the bigger bid bots' minimum bid value is very high for minnows especially newbies.
Another question that I want to know , Is there any online process through which our bot could run 24/7 while our computer is off?
Anyway thanks a lot for your valuable efforts for community.

Yes, I would very much like to work out a way to be able to list small bots on the site but I just haven't had time yet. I promise I will get to it because I really don't like turning anyone away!

As for your question - typically bots are run on a server hosted at a data center such as AWS for example. That way they run 24/7. It is never advisable to run a bot or any 24/7 service off a computer in your home. Data centers are set up with fast, redundant internet connections and power supplies so that your servers never go down.

Thanks a lot my friend. Can you please tell us more about AWS like data centers or give us a link about comparison between online data centers, it would be great help for bot owners. A detailed post about this issue would also be very helpful but its only a request ♥

aws.amazon.com
Great service. It has a lot to it so it takes a bit to get the hang of it but it is very powerful. There is an option to create 2 free servers for the first year - one linux and one windows. These are servers with very little in the way of CPU but you get a certain amount of burst CPU each day.

Make sure you know how to secure a server though.

@yabapmatt yes having the small bots with .01/.05 bid sizes is all we little plankton can use :)

Yeay you implemented the change!! woohoo. Now I don't have to worry about new delegator anymore. DAng the code is so simple. You're the man!

“In my opinion voting bots should not be used to directly profit off of the value of their vote, but instead should be used to gain visibility for posts which leads to a much larger ROI (for good posts) from increased followers and organic upvotes.“

I think there is some middle ground here where everyone can profit. What is the average rate of return on delegated steem power to a bot with 0.9/1/1.1 settings? I believe it is quite high no matter what.

Publishing the settings on steembottracker would be a good idea. It may actually increase the number of maxed out rounds if all bidders know they won’t end up with a large negative investment.

The problem is that if people can profit from only the value of the bot's vote, vs from the added visibility to their post, then that encourages spammers to make a bunch of low effort, low quality posts just to grab some profit from the bots.

By setting the fill limit to 1.1 or 110% (in addition to setting the min_post_age to 20 minutes) I believe that it will help prevent this type of spam - since it will no longer be profitable - and encourage promotion of actual quality content.

I definitely plan to publish this information on steembottracker.com in the near future.

Yes there can be more indirect value that comes to posts after a vote comes in.

Ultimately the market will determine how this plays out. As long as bid bots are profitable more will be added and when they are not profitable people will stop using them.

Interesting perspective you had earlier with the idea that your blog on steem is a business rather than thinking of it as another social media site.

Your platform, steembottracker, has helped me so much. I am a minnow, and this way I can reinvest the earning that I have made to make more earnings. I would like to thank you on behalf of the Steemit community for making such a useful tool. I am now on my way to becoming a whale. I obviously have a long road ahead of me, but your software will help me get there!
Also btw I voted for you for witness! :-)

@yabapmatt this is a great service you have. Is there any way for the bot to "not" post the upvote message? Thanks so much. (Voted for you as a witness by the way) :-)

Thanks @jcobs! It's up to the bot owner whether or not the bot should comment on posts it upvotes. I may add an option in the software to pay a little extra for a "stealth" vote where there is no comment.

Also planning to add an indicator to the bot tracker site to see which bots comment and which don't.

Have to say that it's a bit demoralising to go down the comments of a post and see bot messages. But it's also good to know that the post has been artificially upvoted by bots. So it's 6 of one and half a dozen of the other :)

This change comes at the right time. I had already lost my faith in bid bots and had not decided to use them. Specially after losing to the tune of upto 40% on bids because of some people who would bid more than vote value available. At times when an ROI of 2% was available some one would come and put a bid to the tune of 10 to 15 SBD, creating a loss to everyone who had bid sensibly or early. Not small but huge loss. Now atleast that won't happen.

I Understand the use of bid bots should be done to get visibility and then votes should be expected from other users who would like your post. This is how it works even in offline world while advertising. Profit should be attained through sales. But steemit is heavily different. There are people here who could afford to buy bids to the tune of 50 to 100 SBD. What this does is that it gives the heavy bidders visibility. These bidders then get upvotes from other users who upvote in the hope of getting their comments upvoted.

Those bidders who can only afford to bid for small value hardly get any visibility. Even if they get visibility no one would upvote. This is what i have observed in my use of bid bots. I have observed that small bidders are mostly dependent on luck factor. In my case i have personally not seen any additional view or upvote on my posts after using bid bots. Thus i believe it will be better to get break even from bots. This way atleast i will get my money back, even if no one upvotes or clicks on my posts after advertising.

All in all i can tolerate a negative ROI between -6% to -10%. Because i cannot tolerate abusers benefit of the good will of the bots.

Hi @yabapmatt
I’ve recently discovered that I’m “blacklisted” from using several vote bots, in an attempt to establish which ones I can use I would appreciate it if you could take the time and advise me whether or not I can continue to use postpromoter.

Thank you

Hi @michaellamden68, you are not currently on the blacklist for @postpromoter however in the near future it will start using a shared blacklist provided by steem cleaners as well as many of the other bots. I would advise you to stop doing whatever it was that got you blacklisted by other bots going forward.

Thank you 😊

Hi @yabapmatt,
How about a filter for bots that use the publushed blacklist so users can avoid theft?
Like the steem filter and the guatanteed return filter?

Hi @yabapmatt,

I have developed a new tool for steemit that uses your work, it is called next vote. The idea is to show the next posts that will receive a vote from a bid bot in order to increase the curation rewards.

Thanks for your work in steemit, the steembottracker is very helpful.

Awesome! Great work with that!

@yabapamatt hey how can I get a hold of of you?

@noly I prefer Discord, you can find me in the PALnet server here: https://discord.gg/x4Bdzm but I am also available on Steemit.Chat. Same username as my Steem account in both places.

Hey @yabapmatt can i suggest the feature to automatically update delegators. This way i could crowd fund my bid bot and not have to spend hrs updating my delegation list.

Hi @cabbage-dealer - the software already does update the list of delegators automatically. It first loads the list of existing delegators when the software is first run and it updates the list whenever new or updated delegations come in. There are a number of bots using the software which have been successfully crowd-funded through delegation.

hello @yabapmatt, I have make fault I sen d 10steem to @postpromoter saving account, I want to make bid for upvote but can you solve my problem?

Your 10 STEEM has been refunded. Please be more careful next time!

Just seen this! Very useful updates to the bidbot software. Thanks!

Hi @yabapmatt. Did you lnow that it is impossible to place a bid on a post if you are using an iPad? The problem is that a second tap on the pop-up closes the pop-up, instead of allowing the user to navigate betwwen the three fields. In other words, I can enter a url, but then can’t navigate to the bid amount box without the pop-up closing.

It simply means that ipad owners have to find another machine if they want to vote a post.

I am generally aware that the site doesn't work very well on mobile devices. I'm unfortunately not very experienced with that and haven't had the time to spend on it. I would love to get some help to fix these issues if you know anyone that can do that, i could chip in some STEEM to make it worth their while.

Sadly, I can only vote for you as witness once!

Great great great post

Screenshot_2018-02-22-10-54-50.png
You've made it so easy for people to start their own bidding bots. First they can list on your Tracker themselves, and now there is an alternate bot program!
STEEM BOT TRACKER
THE MENU OPTION IS NOT WORKING PROPERLY ON MOBILE INTERFACE PLEASE FIX THE BUG
DQmTPmWWEmg1Dg1xvketLWput2P28oRkSPDaAy8eakyZDSH_1680x8400.png
Waiting for a bot app... Thanks for ur support 😊

Hehh I've been searching for things like this since I came to your post. It was good to hear from someone reliable. thank you for the information. send a post more often Please

This is awesome

WOW steembotrocker

great service.thank you so much.

That's awesome! thanks for the update.
I'll try @postpromoter next time I'm promoting a post

This is great ! glad I vote you as witness !😀👍👍👍

Good update, I think now is more fair for the delegators.

@yabapmatt I had used you bot to upvote a post. The vote was made but after a day I got refund of the transfer amount. I think there is a bug which needs to be fixed.

I don't see any transfers to @postpromoter from the @kartikohri1712 account. Was there a different account you used to send the bid?

@yabapmatt I really appreciate your efforts to help and support the steemit community to get good returns and promote their posts with the help of your service. I often used and it's help me a lot.
I am really thankful to you and hope it will be more better in future.
Thanks for sharing

Sir, you are very good to read your post. I am very pleased to see you, I will show you the new and new steemit user please help me sir

Thank you for your contribution
@postpromoter agree with the bot code you created, i will support you
my best regards @tnoval hopefully continue to continue.

Is using the promotion button the same as sending SBD to the account of @postpromoter? @yabapmatt

No, it is very different! Using the promotion button will just show your post in the "promoted" section of steemit.com which I don't believe anyone really reads. You will not get any upvote in return for the SBD you spent so I would not recommend doing that.

Thanks for your reply, I will use @postpromoter

I am very impressed with the articles you make, from the description of one word to another word is very beneficial and motivational for the reader.
very good work

how to set want to run a voting bot in steemit bot tracker?
i want this https://steembottracker.com/ my owner bot how to set it my owo bot on this web?

how to solved it plz help me @yabapmatt

It is remarkable, new knowledge is very unique, thanks for the description...

hi, I have just one question. what % of earnings should I expect?
I sent 20sbd for my post and i see on the pending reward im gonna get, if lucky, the same amount back...

You should expect to get about the same amount back as you spent on the vote. The voting bots are not meant to be instant money makers, rather they are there to promote your posts so you get more view, followers, and organic upvotes.

Thanks for the answer! So I should expect more views?
At the moment I don't see a difference on that either... :/

Well it looks like you promoted the post after it was already a couple days old...to get the most visibility I would recommend promoting your posts as quickly as possible after they are posted. This is because the "hot" lists very heavily value recent posts over older ones.

So in this case your promotion wasn't enough to get on trending lists and it probably didn't show up on hot lists either because it was already a couple days old.

Oh! I see... I choose that one because I wanted to cash the reward as soon as possible... Ill try again and see if it gets better reward... thanks for replaying

Thank you so much for your support on my post!

ONE LOVE!

thanks for the info and the voting service sounds good, wanna try someday.

Quicky question.....how do I get a bot on steembrain website?

You got a 1.35% upvote from @danzy courtesy of @yabapmatt!

Thank you for your contribution, I would like to start a little bid bot. Please spell out what I need to do for my Computer Science major is away at college and my scholastic knowledge dates back to cobol, fortran and basic. Ok, stop laughing already..........Thank you for any help, if you look I did throw you a small donation and my vote for witness your way.

I'm looking for more information on creating a bitbot too. Anyone willing to share links to open-source bitbot projects?

I found this so far but will probably wait for my son to get home from college to set it up for me.
https://github.com/MattyIce/postpromoter/tree/f5999aa492d8893bb4846f11d9e580ead82d76b1

@bluehorseshoe thanks! I'll check it out.

Oh ya.... i just realized it featured "Allow sending certain delegators' payouts to a beneficiary" ... that's nice.... thanks @yabapmatt

So, I have just created my first bot with PostPromoter. Well I am the first bot created by @kellyjanderson anyway. I was wondering, now that I am a running bot out on the internet, how do I get listed in the Steem Bot Tracker?

@bluebot did you use open source code for the bot? Please share some info on how you created the bot. Thanks!

There are 2 pages
Pages