Blackjack bot idea

#1
Hi everyone,

First off, a little introduction. I'm an engineering student interested in blackjack, but I'm not old enough to go to a b+m casino, nor do I live close enough to one to be able to. Plus, I'm not sure I would if I could, except out of sheer curiosity.

Anyway, down to the point: based on a number of assumptions, I think it might be possible to profit from online blackjack through the use of computer automation. In other words, the way I see it, the only way to consistently win against online casinos is to use a piece of software custom-written for online casinos. I realize there are lots of programs out there which will help you count cards, tell you what to do based on strategies, etc., but what I'm considering is slightly different, and I think a lot more in-depth. Here is a (probably incomplete) list of the "prerequisites" for this to work:

  • the ability for a piece of software to interface with the online casino and simulate an actual person clicking inside a browser
  • the availability of favorable games on a regular basis -- if you have to wait hours for a "winnable" game to show up, it probably wouldn't be worth the effort
  • the theoretical ability to win using only strategies (i.e., no counting)

I'm fairly confident about the first two, but not so much about the third one. That's why I'm posting this here: does anyone have any advice on how to come up with a strategy fine-tuned to online blackjack, keeping in mind the processing power of a computer? I have a fair amount of programming experience, so I'm not worried about being able to simulate mouse clicks, etc. in the program.

I understand it's not possible to win using only basic strategy. My thought right now would be to look at all of the cards out there (the dealer's up card plus everyone who's playing) and remove those from the cards available. Then the program would run through all of the possible combinations and bet a certain amount which would vary based on the most likely outcome. So it's sort of like a counting system, except slightly more sophisticated in that it utilizes a lot more probability than humans are capable of, and the number of cards known is much smaller.

I'd like to come up with a theoretical basis for why this could potentially work before I actually put a lot of work into it. I know that I can come up with the bot, but I'd like to know for sure -- mathematically -- that I could potentially turn a profit.

Thanks for any thoughts on this!
 

Nynefingers

Well-Known Member
#3
According to The Wizard, perfect composition dependent strategy alone won't turn any standard BJ game that is negative EV into a positive EV game. I'm with sabre...where is the edge? Don't give up though...there are a lot of games offered by online casinos. If you can find a game that can be made to have a player edge, at a reputable casino, then a bot might be practical.
 

tezzadiver

Well-Known Member
#4
msquared said:
Hi everyone,

First off, a little introduction. I'm an engineering student interested in blackjack, but I'm not old enough to go to a b+m casino, nor do I live close enough to one to be able to. Plus, I'm not sure I would if I could, except out of sheer curiosity.

Anyway, down to the point: based on a number of assumptions, I think it might be possible to profit from online blackjack through the use of computer automation. In other words, the way I see it, the only way to consistently win against online casinos is to use a piece of software custom-written for online casinos. I realize there are lots of programs out there which will help you count cards, tell you what to do based on strategies, etc., but what I'm considering is slightly different, and I think a lot more in-depth. Here is a (probably incomplete) list of the "prerequisites" for this to work:

  • the ability for a piece of software to interface with the online casino and simulate an actual person clicking inside a browser
  • the availability of favorable games on a regular basis -- if you have to wait hours for a "winnable" game to show up, it probably wouldn't be worth the effort
  • the theoretical ability to win using only strategies (i.e., no counting)

I'm fairly confident about the first two, but not so much about the third one. That's why I'm posting this here: does anyone have any advice on how to come up with a strategy fine-tuned to online blackjack, keeping in mind the processing power of a computer? I have a fair amount of programming experience, so I'm not worried about being able to simulate mouse clicks, etc. in the program.

I understand it's not possible to win using only basic strategy. My thought right now would be to look at all of the cards out there (the dealer's up card plus everyone who's playing) and remove those from the cards available. Then the program would run through all of the possible combinations and bet a certain amount which would vary based on the most likely outcome. So it's sort of like a counting system, except slightly more sophisticated in that it utilizes a lot more probability than humans are capable of, and the number of cards known is much smaller.

I'd like to come up with a theoretical basis for why this could potentially work before I actually put a lot of work into it. I know that I can come up with the bot, but I'd like to know for sure -- mathematically -- that I could potentially turn a profit.

Thanks for any thoughts on this!
Agreed with the above comments. The only way you could get an edge is if you can find some non-random element in the software. For example try to see if there is a sequence in losses and wins .
In this case you could use a betting progression system which could beat the software sequences.
Unfortunately most online if not all online casino`s use a RNG(random number generator), so it is highly unlikely that you would be able to detect any exploitable blips.
But if you do- keep the information to yourself!:joker:
 
#5
Thanks for the feedback guys! D'oh, I guess I didn't really think that through. I will keep brainstorming though. It just seems like given all this technology I have access to, there has to be a way to make money short of, you know, getting a high-paying job. :grin:
 

farmdoggy

Well-Known Member
#8
msquared said:
  • the ability for a piece of software to interface with the online casino and simulate an actual person clicking inside a browser
  • the availability of favorable games on a regular basis -- if you have to wait hours for a "winnable" game to show up, it probably wouldn't be worth the effort
  • the theoretical ability to win using only strategies (i.e., no counting)

I'm fairly confident about the first two, but not so much about the third one. That's why I'm posting this here: does anyone have any advice on how to come up with a strategy fine-tuned to online blackjack, keeping in mind the processing power of a computer? I have a fair amount of programming experience, so I'm not worried about being able to simulate mouse clicks, etc. in the program.

I understand it's not possible to win using only basic strategy. My thought right now would be to look at all of the cards out there (the dealer's up card plus everyone who's playing) and remove those from the cards available.
Well I know a little Python myself and had this same idea :) Your strategy is counting, and it is the most efficient type of counting possible... I was sorely disapointed when I found that online casinos shuffle every shoe and I gave up on the idea for awhile, but that's not to say that a bot can't consistently beat an online casino. The problem is that a "winnable" game using counting will indeed be very rare.

If you were able to find a single deck game that payed 3:2 on blackjack AND allowed double after a split, then the house edge is around 0.04%. I only know of one place that has this game, and it's not an online casino BTW... However, this game could be beaten using playing decisions alone if there are several other players at the table and your bot sits in the last position (3rd base). However by beaten I mean your edge will certainly be less than 0.1% but I believe it can be greater than 0.

Assuming a huge bankroll, maybe the profit from several bots can more than pay for the electricity they use? Then there's the issue of actually collecting your money from the casino (so I hear, I don't play online).

Best o' luck
 

MangoJ

Well-Known Member
#9
Using a bot is almost surely against T&C, and will get you banned when caught, but is nothing illegal.

Using a bot in online casino has many advantages, which ARE tempting to pursue: perfect strategy, no mistakes, and does his job for you.
IF you find a slight edge using perfect strategy you can even exploit <0.1%, as minimum bet is usually low (often 10c) and have not to worry about profits per hours.

There was least one game in a reputable online casino that could be beaten by this - but now they changed their playing rules slightly. So keep your head up.

You won't make much money, but since you're not spending your time for it, it's still a money printing machine. And when you found a better game - sell your bot.
 
#10
yarh, that is counting, but the pen is way way low. On a game say the average cards per hand is 2.5 (just a guess) and there are 8 people playing, thats 20 cards, which is about 40% pen.

You cannot use any type of spread, because the count is lost each hand. So all you have are indices to use. There is a thread that started not so long ago that was talking about just using indices and no spread and the edge from that.

What the best to do would be to control the whole table with the largest bet on the last hand (might be wrong). I say last hand because this hand will have the highest TC know when it comes time to play that hand then compared to all the other hands, and there the indices played will be stronger and you can play more indices.

So i guess you would be spreading, but in a different sense. 1st hand lowest bid and every hand after that higher and higher and last hand the highest.

what kind of engineering student are you?
 

MangoJ

Well-Known Member
#11
Indices are only applicable to counting systems. However no counting system yields a 100% strategy efficiency for every decision - as any single count cannot reflect the whole state of the remaining deck.

For rough estimate, if one compares the house edge against a total-dependent basic strategy (ignoring remaining deck) with a composition-dependent strategy on single deck (knowledge of your drawed cards), one may gain ~0.2% in EV (don't have exact numbers yet). And that by just knowing 2-3 cards.

If one interpolates to a 3-hand play one knows 6-9 cards on the third hand, and may get an EV gain of 0.4%. Further, with 3-hand one gains 0.07% per hand by insurance.

This type of play might well be of positive EV to the player with exact strategy even if penetration is 15% at the last hand.

I believe an overall edge of 0.2% may be well enough, as you can most often take small bets (1$ and below), and win rate per hour is not a major issue if using a bot.
 

farmdoggy

Well-Known Member
#12
MangoJ said:
Indices are only applicable to counting systems. However no counting system yields a 100% strategy efficiency for every decision - as any single count cannot reflect the whole state of the remaining deck.
I disagree completely... None of my counting systems will ever approach 100% efficiency or even close. But we are talking about rainman here... Exact cards. Just as Deep Blue can remember a position he's encountered in play or simulation before (and build on it), so can a blackjack bot. There are a finite number of positions that can be seen in a chess game, and there is a finite number of deck compositions that can be reached near the end of a round in single deck blackjack.

The blackjack simulater I built can play 1,000,000 hands per minute on my crappy Toshiba laptop. Just as people think for a few seconds before making a difficult decision, a computer can run 100,000 sims or so before making a decision and add results to a tree of archives. The bot could reach a 99% playing efficiency in a matter of days, and given enough time it will achieve 100% PE.

Regarding penetration, the depth charging idea was a good one. Also though, the bot could "wong" in (innapropriate usage of the term) to games that have a decent number of players and 3rd base is available, and wong out after so many players have left.
 

MangoJ

Well-Known Member
#13
I have exactly zero experience with counting systems, just read the theory once or twice. So I might not be anywhere near to be qualified to say something. My apologies to any confusion. I'm not sure who/what "rainman" is.

All I was saying was that a 1-fold counting system (i.e. only keep a single number as a count) cannot yield a 100% strategy decision efficiency, because such a strategy involves the whole deck composition (which is 10-fold).
So when someone refers to an index play in this context I cannot see how it is 100% strategy efficient (unless you keep 10 running counts).
 

farmdoggy

Well-Known Member
#14
To Mango:

That's ok, you're right. A single number cannot accurately reflect deck composition. I was meaning that the program would keep a running count for each card value. Instead of +1 or -4 the count would look something like [3,4,1,3,3,2,4,4,3,11] which would completely reflect the deck composition. There are 4,194,304 different values that this count could have, and that's with 100% penetration. Because penetration could never be 100% or even 50 in one round, I'm guessing that not even half of these counts will ever be analyzed... Short work for a computer really, but impossible for humans, likely even Rain Man :)

Rain Man BTW, is a movie character in the movie "Rain Man" where Dustin Hoffman plays an autistic person with extraordinary math skills. His brother used him to help him count cards, and I think I remember that he could even know how many of each cards were left in six deck shoe... There's actually a Wikipedia page on the movie... http://en.wikipedia.org/wiki/Rain_Man
 
#15
the trick is finding a "winnable" game. i believe they change the "pool" in the ramdom number generator so that is their huge edge. Find what they are drawing from and you have a chance to get accurate odds. Unfortunately the drawing pool can change on every game and vary from bet to bet and hand to game by very simple programming.
 

sabre

Well-Known Member
#16
85tiger said:
the trick is finding a "winnable" game. i believe they change the "pool" in the ramdom number generator so that is their huge edge. Find what they are drawing from and you have a chance to get accurate odds. Unfortunately the drawing pool can change on every game and vary from bet to bet and hand to game by very simple programming.
You don't sound very intelligent.
 

BrianCP

Well-Known Member
#17
sabre said:
You don't sound very intelligent.
Yes, the pool they draw from varies from hand to hand to give them a huge advantage.


Wait, does that mean....you get a random hand? Could you possibly be interpreting a losing streak as being cheated? Your "random hands" must have actually been drawn from a pool heavily skewed against you! OF COURSE! What else could it possibly be!?

Or, it is a random hand. They don't need a huge edge, they already have a small edge with a large number of players.

Next thing you know he'll be hawking Martingale like it was the holy grail.
 

MangoJ

Well-Known Member
#18
BrianCP said:
Next thing you know he'll be hawking Martingale like it was the holy grail.
I bet any 3 year old monkey will come up with an martingale system by themselves, if you have an half hour play of heads-or-tail for sugar cubes with him.
 
Top