Pauan / SaltyBetBot

Bot which automatically bets on saltybet.com
39 stars 12 forks source link

Couple o' questions #42

Closed dndallasta closed 2 years ago

dndallasta commented 2 years ago

Hey. Recently installed the bot and it seems to be working fine but I was curious as to how exactly it's picking the bets.

At first I thought it was going by off upset chance, but then I noticed it also seems to bet on the lower upset but higher win chance fighter sometimes.

So I'm assuming it's calculating whether the odds are going to be worth it to bet on the upset and if not, then goes for the higher win probability? I'm just curious as to how exactly it's deciding the pick.

Also, matches are saved automatically and that impacts the calculations for future fights, right? (i.e.: the more you use the bot the more data it has to make a decision).

Last one: what's the difference between "Winrate" and "Win chance"? Is "win chance" taking into account both fighters stats to determine a likely winner? Because sometimes they're drastically different values.

Anyway, thanks in advance. Great job on the scripting!

Pauan commented 2 years ago

So I'm assuming it's calculating whether the odds are going to be worth it to bet on the upset and if not, then goes for the higher win probability? I'm just curious as to how exactly it's deciding the pick.

The betting strategy can be found here. It calculates a win ELO and upset ELO for every character, and it picks the character with the better upset ELO, unless the win ELO is significantly bigger.

Also, matches are saved automatically and that impacts the calculations for future fights, right? (i.e.: the more you use the bot the more data it has to make a decision).

That is correct, though it is preloaded with a huge database of hundreds of thousands of past matches, so it should work properly even without any extra data.

Last one: what's the difference between "Winrate" and "Win chance"? Is "win chance" taking into account both fighters stats to determine a likely winner? Because sometimes they're drastically different values.

Winrate is just the percentage of matches that character has won (e.g. winning 2 out of 11 matches would be a ~18% winrate).

Win chance is using the Glicko 2 ELO system to rank every character, and then calculating the chances of winning based on the ELO. This is much more accurate than winrate.

Upset chance also uses Glicko 2, except it calculates the chance of the character upsetting, instead of the chance of the character winning.

dndallasta commented 2 years ago

Thanks for the reply. Trying to read the raw code goes a bit over my head but I think I got the gist of it. I remember using another bot a ways back that was verbose in Chrome's console. Is it possible to do something like that here? Seeing the bot 'in action' sort of speak? I'd like to know more about how it works but console shows nothing when running.

Last question: in general, the bot seems very conservative (e.g.: went from 500k to 524k in 8+ hours and usually seems to bet on higher win rate over upset). To me, it doesn't jive with the description found in the readme. That coupled with the fact that it seems to be missing data from characters that are already more or less well-established, it makes me wonder if I set up something wrong and that it's actually betting wrongly... is that even possible?

PS: Also, what is causing some bets to be just $1? (in Matchmaking).

Anywho! Thanks again.

Pauan commented 2 years ago

Is it possible to do something like that here? Seeing the bot 'in action' sort of speak? I'd like to know more about how it works but console shows nothing when running.

Printing things to the console can slow things down, it's not a good idea to flood the console with messages.

Instead, I put the relevant information in the main screen (such as the winrate, odds, ELO, etc.)

The bot doesn't really do anything particularly interesting from the user's perspective, it's just doing some math based on the past matches and then clicking buttons. So I'm not sure what sort of information you would want to see.

went from 500k to 524k in 8+ hours and usually seems to bet on higher win rate over upset

That's a quite good result, I normally make $1,000,000 every few weeks or so. Keep in mind that there are 10+ people using my bot, and the more people that use my bot, the worse the results will be, because all the bot users are "competing" with the other bot users.

That coupled with the fact that it seems to be missing data from characters that are already more or less well-established, it makes me wonder if I set up something wrong and that it's actually betting wrongly... is that even possible?

It shouldn't be possible, no. If you want to make sure, the console displays the number of recorded matches (for example Initialized 470976 records).

Also, what is causing some bets to be just $1? (in Matchmaking).

This could happen because there isn't enough data for the characters, or because the upset chance is close to 50% (there's no point in betting if it's a 50% chance of success).

dndallasta commented 2 years ago

Cool. Thanks for the replies. Very helpful!