Conceptual question: systematic tree of betting patterns

Forum for users that want to write their own custom queries against the PT database either via the Structured Query Language (SQL) or using the PT3 custom stats/reports interface.

Moderator: Moderators

Re: Conceptual question: systematic tree of betting patterns

Postby kraada » Fri Oct 30, 2009 4:03 pm

I guess there are certain cases where it's irrelevant and that bothers me somewhat in a theoretical sense. I'd want something like this to carve up the sample space of actions in a uniform fashion. Maybe it's not possible, I'm not sure (though I suspect it is, I just don't have quite the right pattern yet).

Also, I'm not 100% certain whether W$SD/L$SD are the best stats to be looking at - these are, after all, going to be largely dependent on their opponents and how aware they are. For example, say there's a player who is the world's worst calling station (CS). He only bets or raises with the absolute nuts, and he checks and calls with nearly everything else. Preflop he's something like a 50/.5. Further, on top of that he's playing with a guy we'll call Intelligent Player (IP). IP knows that CS calls bets super light. So IP is going to bet a ton more against this particular villain. Now say our sample on IP only contains hands at the table with CS - all of a sudden IP is going to have a very different profile as he's going to be involved a whole lot more than he would be at a table including a bunch of nits. But even worse, if you're only looking at something like river cbets, even if you have a big sample on IP, the hands with CS may skew (quite dramatically) the data here. If this session ends up being 200 hands (with IP and CS) and IP manages to have hands a reasonable amount and gets to 20 showdowns with CS by betting all three streets, those 20 river cbets might well drown out a couple thousand hands of other data.

Like I said, this is awfully complicated. I'll try and write up my thoughts more generally in a bit and post them for your (and others') benefits :)
kraada
Moderator
 
Posts: 54430
Joined: Wed Mar 05, 2008 2:32 am
Location: NY

Re: Conceptual question: systematic tree of betting patterns

Postby preparac » Fri Oct 30, 2009 6:33 pm

Yeah this is correct. I also think that W$SD/L$S are oponent-dependent. But I think to a certain degree you can argue like this about most of the stats. IP's stats allways will - should - be dependent of vilains profils ... If IP plays against Mr. Meganit, IP should bluff/bet mor agressively and therefore have a higher WwoSD ... and if IP plays against Mr. Maniac his calling frequency i.e. his WTSD percentage should increase .... so we only can hope that over a large sample the effects of the different opponets profiles neutralize each other.
preparac
 
Posts: 323
Joined: Thu May 15, 2008 6:23 am

Re: Conceptual question: systematic tree of betting patterns

Postby WhiteRider » Sat Oct 31, 2009 5:23 am

Yes, that sounds reasonable - this sort of thing will always come down to having a large enough sample, but then you'll have to pay attention to who the player is playing against.
It would be nice to be able to have some sort of measure of how much (if at all) a player varies their play (i.e. how different their stats are) when playing against a tight or loose player, but that sort of thing isn't currently possible.
WhiteRider
Moderator
 
Posts: 54025
Joined: Sat Jan 19, 2008 7:06 pm
Location: UK

Re: Conceptual question: systematic tree of betting patterns

Postby preparac » Sat Oct 31, 2009 6:08 pm

For the case cnt_f_donk_missed_hu (denominator) =
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2,1,0])

I defined the 7 patterns (nominators) like this:

cnt_f_donk_missed_foldwoa_hu =
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2 AND NOT (tourney_holdem_hand_player_detail.amt_f_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_f_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0) AND NOT tourney_holdem_hand_player_statistics.flg_showdown,1,0])

cnt_f_donk_missed_foldwa_hu =
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2 AND (tourney_holdem_hand_player_detail.amt_f_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0) AND NOT tourney_holdem_hand_player_statistics.flg_showdown AND NOT tourney_holdem_hand_player_statistics.flg_won_hand,1,0])

cnt_f_donk_missed_L$SDwoa_hu =
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2 AND NOT (tourney_holdem_hand_player_detail.amt_f_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0) AND tourney_holdem_hand_player_statistics.flg_showdown AND NOT tourney_holdem_hand_player_statistics.flg_won_hand,1,0])

cnt_f_donk_missed_W$SDwoa_hu=
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2 AND NOT (tourney_holdem_hand_player_detail.amt_f_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0) AND tourney_holdem_hand_player_statistics.flg_showdown AND tourney_holdem_hand_player_statistics.flg_won_hand,1,0])

cnt_f_donk_missed_L$SDwa_hu =
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2 AND (tourney_holdem_hand_player_detail.amt_f_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0) AND tourney_holdem_hand_player_statistics.flg_showdown AND NOT tourney_holdem_hand_player_statistics.flg_won_hand,1,0])

cnt_f_donk_missed_W$SDwa_hu =
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2 AND (tourney_holdem_hand_player_detail.amt_f_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0) AND tourney_holdem_hand_player_statistics.flg_showdown AND tourney_holdem_hand_player_statistics.flg_won_hand,1,0])

cnt_f_donk_missed_WwoSD_hu =
sum(if[tourney_holdem_hand_player_statistics.flg_p_face_raise AND NOT (tourney_holdem_hand_player_statistics.flg_p_3bet OR tourney_holdem_hand_player_statistics.flg_p_4bet) AND lookup_actions_f.action LIKE 'X%' AND NOT (tourney_holdem_hand_player_statistics.flg_f_cbet_opp) AND (( tourney_holdem_hand_summary.cnt_players > 2 and tourney_holdem_hand_player_detail.val_p_raise_aggressor_pos < tourney_holdem_hand_player_statistics.position) or (tourney_holdem_hand_player_statistics.flg_blind_b)) AND tourney_holdem_hand_summary.cnt_players_f = 2 AND NOT (tourney_holdem_hand_player_detail.amt_f_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0 OR tourney_holdem_hand_player_detail.amt_t_bet_made > 0 OR tourney_holdem_hand_player_detail.amt_t_raise_made > 0) AND NOT tourney_holdem_hand_player_statistics.flg_showdown AND tourney_holdem_hand_player_statistics.flg_won_hand,1,0])


But with this definitions I seem to miss still about 10% of the hands cnt_f_donk_missed_hu ...
Can you please help me to figure out which ones i do not cover with my 7 patterns 8nominators)? thanx alot for your help
preparac
 
Posts: 323
Joined: Thu May 15, 2008 6:23 am

Re: Conceptual question: systematic tree of betting patterns

Postby preparac » Sat Oct 31, 2009 6:47 pm

You do not need to check any more ... i found two mistakes and no it works correctly
thanx
preparac
 
Posts: 323
Joined: Thu May 15, 2008 6:23 am

Re: Conceptual question: systematic tree of betting patterns

Postby WhiteRider » Sun Nov 01, 2009 5:12 am

Great - thanks for letting us know!
WhiteRider
Moderator
 
Posts: 54025
Joined: Sat Jan 19, 2008 7:06 pm
Location: UK

Re: Conceptual question: systematic tree of betting patterns

Postby yaqb_pl » Fri Jan 01, 2010 5:33 pm

how you doing preparac with your idea?

i happy to find someone who is trying to work with betting patterns on PT3 database.
i work as SQL developer (mostly creating analysis on business databases), and i grinded ~500k hands last years.
i founded that my big lack is not paying to much attention on game (mass multitabling, and relaying on simply stats).
so the natural way for me is to write some queries, reports and analysis to: 1) let me know more about betting patterns 2) lern to how adjust to BP 3) allow me to keep mass multitabling and knowing the players BP. 4 by the way it probably will by part of my master thesis at Uni.:)
so the goal is similar. but i have quite different way to realize it. Probably cause im better in SQL then in Poker.
let my know if you like to share some thoughts.
yaqb_pl
 
Posts: 20
Joined: Thu Dec 18, 2008 9:29 am

Previous

Return to Custom Stats, Reports, and SQL [Read Only]

Who is online

Users browsing this forum: No registered users and 1 guest