plukhead wrote:

hola, necesito ayuda para escribir 2 stats

la primera es "wwsdwbr <35% del pozo"

% de veces que gana al SD cuando da bet en river < 35% del pozo y recibe un call ,sin importar si pagan uno o mas oponentes

sum(if[tourney_hand_player_statistics.flg_r_bet AND tourney_hand_player_statistics.flg_showdown AND NOT(tourney_hand_player_statistics.flg_r_3bet_opp) AND tourney_hand_player_statistics.flg_won_hand AND NOT (lookup_actions_r.action='BC'), 1, 0])

sum(if[tourney_hand_player_statistics.flg_r_bet AND tourney_hand_player_statistics.flg_showdown AND NOT(tourney_hand_player_statistics.flg_r_3bet_opp) AND NOT (lookup_actions_r.action='BC'), 1, 0])

hola, necesito ayuda para escribir 2 stats

la primera es "wwsdwbr <35% del pozo"

% de veces que gana al SD cuando da bet en river < 35% del pozo y recibe un call ,sin importar si pagan uno o mas oponentes

sum(if[tourney_hand_player_statistics.flg_r_bet AND tourney_hand_player_statistics.flg_showdown AND NOT(tourney_hand_player_statistics.flg_r_3bet_opp) AND tourney_hand_player_statistics.flg_won_hand AND NOT (lookup_actions_r.action='BC'), 1, 0])

sum(if[tourney_hand_player_statistics.flg_r_bet AND tourney_hand_player_statistics.flg_showdown AND NOT(tourney_hand_player_statistics.flg_r_3bet_opp) AND NOT (lookup_actions_r.action='BC'), 1, 0])

You can just use:

- Code:
`tourney_hand_player_statistics.flg_showdown AND lookup_actions_r.action = 'B'`

instead of:

- Code:
`tourney_hand_player_statistics.flg_r_bet AND tourney_hand_player_statistics.flg_showdown AND NOT(tourney_hand_player_statistics.flg_r_3bet_opp) AND NOT (lookup_actions_r.action='BC')`

It's a simplified expression and more accurate. For example these (incorrect) hands would be counted with your expressions:

br.PNG

plukhead wrote:

si esto es correcto solo faltaria la condicion para bets< 35% del pozo

- Code:
`tourney_hand_player_statistics.val_r_bet_made_pct <= 35`

plukhead wrote:

y la segunada stats es "fold to river bet < 35% del pozo"

% de veces que foldea en river cuando recibe bets <35 % del pozo

sum(if[tourney_hand_player_statistics.amt_r_bet_facing > 0 AND (lookup_actions_r.action SIMILAR TO '(F|XF)%'), 1, 0])

sum(if[tourney_hand_player_statistics.amt_r_bet_facing > 0, 1, 0])

faltaria que filtre bets < 35 % del pozo .Gracias

- Code:
`tourney_hand_player_statistics.val_r_bet_facing_pct < 25.9`

(35 / (100 + 35)) * 100 = 25.9

The percentage of the pot faced is how much a player has to call - it's the pot odds and the bet amount is included. This definition is necessary in order to distinguish between situations where a bet has been called before a player or not (as the pot odds change as a result).

Statistics: Posted by Flag_Hippo — Sat May 08, 2021 5:48 am

]]>

% de veces que gana al SD cuando da bet en river < 35% del pozo y recibe un call ,sin importar si pagan uno o mas oponentes

sum(if[tourney_hand_player_statistics.flg_r_bet AND tourney_hand_player_statistics.flg_showdown AND NOT(tourney_hand_player_statistics.flg_r_3bet_opp) AND tourney_hand_player_statistics.flg_won_hand AND NOT (lookup_actions_r.action='BC'), 1, 0])

sum(if[tourney_hand_player_statistics.flg_r_bet AND tourney_hand_player_statistics.flg_showdown AND NOT(tourney_hand_player_statistics.flg_r_3bet_opp) AND NOT (lookup_actions_r.action='BC'), 1, 0])

si esto es correcto solo faltaria la condicion para bets< 35% del pozo

y la segunada stats es "fold to river bet < 35% del pozo"

% de veces que foldea en river cuando recibe bets <35 % del pozo

sum(if[tourney_hand_player_statistics.amt_r_bet_facing > 0 AND (lookup_actions_r.action SIMILAR TO '(F|XF)%'), 1, 0])

sum(if[tourney_hand_player_statistics.amt_r_bet_facing > 0, 1, 0])

faltaria que filtre bets < 35 % del pozo .Gracias

Statistics: Posted by plukhead — Fri May 07, 2021 10:13 am

]]>

]]>

Evoke_89 wrote:

I thought there was a "last_aggresor" expression

I thought there was a "last_aggresor" expression

val_p_raise_aggressor_pos is the position of the last player other than the active player to raise.

Evoke_89 wrote:

1) I was the last aggressor preflop (attack).

You can compare your position to the position of the last aggressor with:

- Code:
`char_length(cash_hand_summary.str_aggressors_p) > 1 and cash_hand_player_statistics.position = substring(cash_hand_summary.str_aggressors_p from '.$')::int`

Evoke_89 wrote:

2) I was not the last aggressor preflop (defense).

- Code:
`char_length(cash_hand_summary.str_aggressors_p) > 1 and cash_hand_player_statistics.position != substring(cash_hand_summary.str_aggressors_p from '.$')::int`

Statistics: Posted by Flag_Hippo — Fri May 07, 2021 7:07 am

]]>

]]>

So i'm trying to improve my codes and make them as simple as possible. Now I have a pretty cool "Pot Type" stat, I don't need some of my custom report stats anymore.

A couple of stats I am trying to convert (hopefully with one rule for all) is my "attack" and "defend" stats.

Eg- either:

1) I was the last aggressor preflop (attack).

2) I was not the last aggressor preflop (defense).

Before converting I have one stat for each pot type, but now I am looking for the most basic way to divide attack situations from defense situations. I thought there was a "last_aggresor" expression, but looking at some sats I can't see any that use it (I looked at donk, cbet, float stats).

Can you point me in the right direction of an expression that will work the same, regardless of pot type?

Thank you

Statistics: Posted by Evoke_89 — Thu May 06, 2021 3:39 pm

]]>

]]>

]]>

Evoke_89 wrote:

I do have a limped pot stat, I just didn't add it to this. I have now added it, but are not been grouped separately

I do have a limped pot stat, I just didn't add it to this. I have now added it, but are not been grouped separately

I've done a version of this statistic for you including limped pots.

Evoke_89 wrote:

Also, this means all the hands that did not see a flop "preflop pots" will need to be included? How is this included in the "else[]" expression, or does it stay blank?

Those hands are accounted for with the else condition in the attached statistic.

Evoke_89 wrote:

If which case would use of "char_length(cash_hand_summary.str_aggressors_p) = 3" actually simplify my squeeze stat? I would still need to use "not (cash_hand_player_statistics.flg_p_squeeze or cash_hand_player_statistics.flg_p_squeeze_def_opp)", correct?

Yes if you want to separate standard 3bet pots and squeezed pots. I've done that in the attached statistic.

Evoke_89 wrote:

Also, considering people have a tendancy to call 4bets on occasions (be it either a leak, tricky play or being deep stacked), would using "char_length(cash_hand_summary.str_aggressors_p) = 4" & "char_length(cash_hand_summary.str_aggressors_p) >= 5" be suitable?

Yes. I've done that in the attached statistic.

Pot Type.zip

Statistics: Posted by Flag_Hippo — Tue May 04, 2021 12:05 pm

]]>

If your four cases cover all possible hands, then yes - you will want four values. It doesn't matter whether those cases are 0-3 or 1-4, but you would use three IF statements and have the final "else" be the fourth value. If you do that, though, you will end up including limped pots in the "else" case and I notice they're not on your list. With a grouping stat like this it isn't possible to exclude certain types of hands from the grouping altogether as they will always end up with the "else" case value. If you want to exclude certain hands altogether then you will need to use a filter as well.

I do have a limped pot stat, I just didn't add it to this. I have now added it, but are not been grouped separately

Also, this means all the hands that did not see a flop "preflop pots" will need to be included? How is this included in the "else[]" expression, or does it stay blank?

One thought just occurred to me - a "squeeze pot" will generally be a 3bet pot, so if you were to switch to using "char_length(cash_hand_summary.str_aggressors_p) = 3" to test for 3bet pots, then you would need to test for the squeezing case BEFORE that, otherwise, the squeezes will be counted as simple 3bet pots. (It looks as if the expressions you posted above explicitly exclude squeezes from the 3bet pots, so using those wouldn't have that problem.)

Also be aware that using "char_length(cash_hand_summary.str_aggressors_p) = 4" would exclude 5bet and higher pots, so you'd probably want to use "char_length(cash_hand_summary.str_aggressors_p) >= 4" in that case.

If which case would use of "char_length(cash_hand_summary.str_aggressors_p) = 3" actually simplify my squeeze stat? I would still need to use "not (cash_hand_player_statistics.flg_p_squeeze or cash_hand_player_statistics.flg_p_squeeze_def_opp)", correct?

Also, considering people have a tendancy to call 4bets on occasions (be it either a leak, tricky play or being deep stacked), would using "char_length(cash_hand_summary.str_aggressors_p) = 4" & "char_length(cash_hand_summary.str_aggressors_p) >= 5" be suitable?

Statistics: Posted by Evoke_89 — Mon May 03, 2021 1:53 pm

]]>