Pauan / SaltyBetBot

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

Betting Strategy #20

Closed Zyrixion closed 4 years ago

Zyrixion commented 4 years ago

So, I've been running this for a couple days now, checking it out to see what it's doing. It's making salt, but there are some interesting tendencies I've noticed, and some thoughts to offer.

Sometimes it bets against its own calculations of simulated profit, even with relatively close w/l ELO. As well, the strategy seems to fall apart a bit in tournaments, as so far every tournament it has been outperformed by simple winrate betting. Perhaps this is a limited set bias, I'm not sure yet, but perhaps a different strategy crafted for tournaments would be worthwhile, since in the past even with Saltbot's basically-just-winrate betting, I managed to take a fair few tournaments in a relatively short about of time.

The only other thoughts I'd add is that, while I know the bot uses a hybrid betting strategy and is not strictly an upset bot, it does tend to bet most things that aren't highly statistically favored as upset. While this does seem to work, as the bot's making salt, the odds these days are very much closer than they were in the past on most fights that I've seen, regardless of how close the fight is, past being very far apart in winrate. That being the case, at what average odds does the statistics for betting upset at all break down? Most matches seem to hover in the 2-3:1 range, which would tend to bear that a bot with a 67-75% wr would make more money actually calling winners instead of mostly fishing for upsets. One other thought, though I know this is a long-term strategy, there could be some sort of consideration for increasing bet amount on extremely high confidence bets (outside of P/X tier probably) as a strategy of higher growth (since it doesn't bet upset on extremely high confidence matches anyway).

Also, the bot's bets are really quite small sometimes (sub-1k even), even with extremely high confidence, which confuses me greatly.

Pauan commented 4 years ago

Sometimes it bets against its own calculations of simulated profit, even with relatively close w/l ELO.

That's correct, it completely ignores the simulated profit, that's just there to give you more information. The algorithm it uses for betting is complicated and isn't shown to the user.

It calculates the winrate and upset chance using the Glicko2 rating system, then uses some complex algorithms to calculate how much to bet (this is based on the deviation and confidence, and also how much money you have). The algorithm also takes into account the fact that ~10 people are using my bot.

As well, the strategy seems to fall apart a bit in tournaments, as so far every tournament it has been outperformed by simple winrate betting.

During tournaments it bets based on winrate, it has completely separate strategies for matchmaking and tournament.

the odds these days are very much closer than they were in the past on most fights that I've seen, regardless of how close the fight is, past being very far apart in winrate.

Yes, that's because too many people are using my bot, and since my bot bets upsets, that means the odds are being skewed closer to even. It's very tricky to figure out a solution for that.

That being the case, at what average odds does the statistics for betting upset at all break down? Most matches seem to hover in the 2-3:1 range, which would tend to bear that a bot with a 67-75% wr would make more money actually calling winners instead of mostly fishing for upsets.

You don't need to speculate: just go into the chart page and simulate various strategies. There are literally dozens of strategies programmed into the bot which you can test.

I've spent an incredibly large amount of time testing out many different strategies in order to figure out the best ones. But I kept the old strategies around, so they're available in the charts page.

One other thought, though I know this is a long-term strategy, there could be some sort of consideration for increasing bet amount on extremely high confidence bets (outside of P/X tier probably) as a strategy of higher growth (since it doesn't bet upset on extremely high confidence matches anyway).

It already does that. The algorithm is extremely sophisticated and has been carefully tweaked and improved over the past 2 years.

Also, the bot's bets are really quite small sometimes (sub-1k even), even with extremely high confidence, which confuses me greatly.

That means it didn't have high confidence, or it means that the characters were very close together: there's no point in betting a high amount if the chance of guessing correctly is 50/50.

Note that "guessing correctly" in this case means "guessing which one will make me money", not "guessing which one will win the match". Those two things are very different from each other.

Zyrixion commented 4 years ago

That explains most of it I guess. I guess the other thing is I noticed it stopped going all-in in tournament matches after it had some larger amounts of salt. Perhaps some config options, both for this, and for a general betting multiplier, and/or scalar on the increased betting from high confidence? Either way I could dig into the files for it myself probably, but not very elegantly, and it would be nice to be able to play with that a bit for rates of return, since some people will have well enough salt to be able to absorb betting more than 1-10k/match.

Ultimately I'm aware that going for the full tourney win may not be the most ultimately profitable way, but it'd be nice to have the option to make it go for it anyway, since I know it should be capable of it. :)

Pauan commented 4 years ago

I guess the other thing is I noticed it stopped going all-in in tournament matches after it had some larger amounts of salt.

Yes, that was done specifically to increase its chances of winning a tournament. If it goes all-in then a single mistake will cost it the tournament win, but if it doesn't all-in then it can still survive with enough money to still win.

Until it reaches $60,000 it will all-in. After that it will bet less money until it reaches $100,000. At that point it only bets 25% of its current money.

This has been tested in practice: the current algorithm gets more tournament wins than the previous algorithm which always all-inned.