|
|
| Author |
Message |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Wed Aug 20, 2008 3:38 pm Post subject: Simulating Variance (warning, many pictures) |
|
|
I've decided to do a little experiment to look at variance. For that purpose, I've created a small computer program that simulates a large number of 'games'.
Both players have a 50% chance to win any given game (a poker hand). But when our hero wins, he wins slightly more compared to his opponent (assuming our hero has a positive edge). And when our hero loses, he loses slightly less. In the end, our will have a 2bb/100 edge in this game. A 2bb/100 edge is very hard to achieve except for the micro's.
The simulation works by simulating a large number of poker hands. Each player has a 50% chance to win the hand. But when our hero wins the hand, he wins the pot plus 0.02bb. When villain wins, he wins the pot minus 0.02bb. The size of the pot is random between 2bb and 8bb. So with a pot size of 5, hero wins 5.02bb while villain would only win 4.98bb. (All with a 2bb/100 edge for hero).
This all will make the standard deviation around 2.34 which is consistent with my own results (Heads-up LHE).
Here is the run long of 1 billion hands. Not much variance at this scale.

Last edited by Willem on Mon Aug 25, 2008 1:01 pm; edited 4 times in total |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Wed Aug 20, 2008 3:51 pm Post subject: |
|
|
1 billion hands is a lot. Lets suppose our hero usually plays 500 hands in a day. Here is how his days would look like.

Last edited by Willem on Thu Aug 21, 2008 6:34 am; edited 4 times in total |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Wed Aug 20, 2008 3:51 pm Post subject: |
|
|
Suppose our hero plays 20 days in a month. WIth 500 hand per day, he would play 10000 hands in a month. How do typical 10000 hand swings look like?

Last edited by Willem on Thu Aug 21, 2008 6:44 am; edited 4 times in total |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Wed Aug 20, 2008 3:53 pm Post subject: |
|
|
Now we look at how things look in a year's time. A few 120000 hand swings.
An average year.
A crappy year.
And a very good year.

Last edited by Willem on Thu Aug 21, 2008 6:57 am; edited 2 times in total |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Wed Aug 20, 2008 4:36 pm Post subject: |
|
|
And for completeness. A few 1 million hand streaks.

Last edited by Willem on Thu Aug 21, 2008 7:03 am; edited 2 times in total |
|
| Back to top |
|
 |
nsidestrate Suited's Love Monkey
Joined: 26 May 2004 Posts: 22457
|
Posted: Wed Aug 20, 2008 4:38 pm Post subject: |
|
|
| Do you know what the SD is for your sample data? It looks a bit more swingy than I would expect. |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Wed Aug 20, 2008 4:54 pm Post subject: |
|
|
| nsidestrate wrote: | | Do you know what the SD is for your sample data? It looks a bit more swingy than I would expect. |
It is more swingy since hero plays every single hand. Even HU play isn't this swingy as some people actually preflop. Games with more players produce even less swings since the player folds more.
I don't know what the standard deviation is. I suspect gnuplot is capable of determining it though, I'll look at it tomorrow. |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Thu Aug 21, 2008 7:04 am Post subject: |
|
|
| Ok, updated now. I'm now using a 2.34 standard deviation which is typical for HU LHE. |
|
| Back to top |
|
 |
toronexti 53o
Joined: 03 Sep 2004 Posts: 4171
|
Posted: Mon Sep 22, 2008 5:26 pm Post subject: |
|
|
| doesn't hero have a 4bb/100 edge here? |
|
| Back to top |
|
 |
PauliF Shoes in Safe
Joined: 16 Jun 2004 Posts: 2787 Location: London
|
Posted: Mon Sep 22, 2008 5:40 pm Post subject: |
|
|
| toronexti wrote: | | doesn't hero have a 4bb/100 edge here? |
very good point
Willem what programme are you using for this?
I have been thinking about crunching numbers for some time and would dearly love to do some curve fitting for MTT results to see if we can find a distribution which describes what goes in a bit better
man this rocks though |
|
| Back to top |
|
 |
toronexti 53o
Joined: 03 Sep 2004 Posts: 4171
|
Posted: Mon Sep 22, 2008 6:01 pm Post subject: |
|
|
| Also it'd be nice if you could graph all the possible results of say 10k hands on a normal graph since that would be far easier to visualize the likelihood of the good/average/bad years. |
|
| Back to top |
|
 |
PauliF Shoes in Safe
Joined: 16 Jun 2004 Posts: 2787 Location: London
|
Posted: Tue Sep 23, 2008 1:32 am Post subject: |
|
|
I think you mean a few runs on the same graph so we get one of those pretty tunnel of doubt pictures
Willem I am gonna be in Amsterdam the weekend after next if you fancy a smook and a took |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Tue Sep 23, 2008 1:53 am Post subject: |
|
|
It's something I made myself. I'll look later today and maybe post the code that actually does the work. I can probably adjust it for MTT's.
| PauliF wrote: | | Willem I am gonna be in Amsterdam the weekend after next if you fancy a smook and a took |
I was in Amsterdam a few weeks ago, but don't remember that much from the evening. I do remember not feeling all to well the next morning. Anyway, I already have other obligations. |
|
| Back to top |
|
 |
Willem 2K Club
Joined: 16 Sep 2006 Posts: 2652 Location: Netherlands
|
Posted: Wed Sep 24, 2008 2:47 pm Post subject: |
|
|
| toronexti wrote: | | doesn't hero have a 4bb/100 edge here? |
If you look at the first picture, you see hero winning 20M big bets in 1000M hands, averaging 2bb/100.
It works in the following way. I made a routine which simulates a single hand:
| Code: |
double run_hand( double edge ){
/**
* @param edge The number of bets Hero win in 100 hands.
*/
// Determine pot size
double pot_size = rand() % 5;
// Determine winner. All players win half the time.
if( rand() > INT_MAX / 2 ){
// Hero wins the pot
// Adjust pot_size according to hero's edge. He win a little more here.
pot_size += edge / 100.0;
return pot_size;
}else{
// Hero loses the pot
// Adjust pot_size according to hero's edge. He loses a little less here.
pot_size -= edge / 100.0;
return -pot_size;
}
}
|
I then run this routine a lot of times and keep track of a bankroll. After it's done, I plot the bankroll progress and get the pictures you see above.
If you want to simulate MTT's, all you need to do is make a different routine which simulates a single MTT. |
|
| Back to top |
|
 |
PauliF Shoes in Safe
Joined: 16 Jun 2004 Posts: 2787 Location: London
|
Posted: Wed Sep 24, 2008 4:04 pm Post subject: |
|
|
| hmmmm |
|
| Back to top |
|
 |
|