Creating a new stat

Discuss how to create custom stats, reports and HUD profiles and share your creations.

Moderators: WhiteRider, kraada, Flag_Hippo, morny, Moderators

Creating a new stat

Postby luis111angel » Tue Jun 23, 2026 4:14 pm

Hey there:

I`d to create the statistic: "3Bet vs ISO", thing is that it´s getting harder to create this column since it needs to be a limper and then a 2Bet, could you please give me a hand creating this new stat?

Thanks in advance
luis111angel
 
Posts: 77
Joined: Sat Dec 29, 2012 12:03 am

Re: Creating a new stat

Postby Flag_Hippo » Wed Jun 24, 2026 4:54 am

You can test and compare the aggressors and actors strings:

Code: Select all
char_length(cash_hand_summary.str_aggressors_p) >= 2 and char_length(cash_hand_summary.str_actors_p) >= 2 and substring(cash_hand_summary.str_aggressors_p from 2 for 1) ::int != substring(cash_hand_summary.str_actors_p from 1 for 1) ::int

See this post for more information on how the actors and aggressors strings work. This thread and this thread have more information on comparing/testing the strings.
Flag_Hippo
Moderator
 
Posts: 17044
Joined: Tue Jan 31, 2012 7:50 am

Re: Creating a new stat

Postby luis111angel » Thu Jun 25, 2026 12:00 pm

Amazing, thanks for such a response!

Now, i´m trying to create the stat "Straddle folds to a BB open raise"

My column:
sum(if[
lookup_actions_p.action LIKE '%S%'
AND lookup_actions_p.action LIKE '%F%'
AND cash_hand_player_statistics.val_p_raise_aggressor_pos=8
AND cash_hand_player_statistics.amt_p_2bet_facing > 0,
1,0])

Could you please help me creating the stat, i want it to not count if `BB raise with previous limpers` so i wonder how do i restrict the column to not count when there are limpers in the hand?

Thanks in advance for helping
luis111angel
 
Posts: 77
Joined: Sat Dec 29, 2012 12:03 am

Re: Creating a new stat

Postby Flag_Hippo » Fri Jun 26, 2026 8:05 am

luis111angel wrote:lookup_actions_p.action LIKE '%S%'
AND lookup_actions_p.action LIKE '%F%'

Straddling is a players first action so the first % prefix is redundant. Fold is always the last action so the % suffix is redundant but prefixing it with % will mean it will test for any preflop fold and the player may not fold to the open raise but later on preflop. You should test for an exact match on the lookup actions string and not separate the two:

Code: Select all
lookup_actions_p.action = 'SF'

luis111angel wrote:cash_hand_player_statistics.val_p_raise_aggressor_pos=8

This will not necessarily be true in hands that were not folded. I'd recommend testing the aggressors string:

Code: Select all
cash_hand_summary.str_aggressors_p LIKE '88%'

luis111angel wrote: want it to not count if `BB raise with previous limpers` so i wonder how do i restrict the column to not count when there are limpers in the hand?

Use what I provided for the isolation stat and change the comparison from not equals:

Code: Select all
!=

to equals

Code: Select all
=
Flag_Hippo
Moderator
 
Posts: 17044
Joined: Tue Jan 31, 2012 7:50 am

Re: Creating a new stat

Postby luis111angel » Fri Jun 26, 2026 11:50 am

So, the final column would be like this?

sum(if[
lookup_actions_p.action LIKE 'SF'
AND cash_hand_player_statistics.val_p_raise_aggressor_pos=8
AND cash_hand_summary.str_aggressors_p LIKE '88%'
AND cash_hand_player_statistics.amt_p_2bet_facing > 0,
1,0])

I don´t really understand much from creating columns, so could you please help me giving me the column i need? i`d really appreaciate it

Thanks in advance!
luis111angel
 
Posts: 77
Joined: Sat Dec 29, 2012 12:03 am

Re: Creating a new stat

Postby Flag_Hippo » Sat Jun 27, 2026 5:18 am

Your custom statistic will need two columns. One that counts the folds and one that counts the opportunities to fold:

Code: Select all
sum(if[cash_hand_player_statistics.amt_p_2bet_facing > 0 AND cash_hand_summary.str_aggressors_p LIKE '88%' AND lookup_actions_p.action = 'SF' AND char_length(cash_hand_summary.str_aggressors_p) >= 2 AND substring(cash_hand_summary.str_aggressors_p from 2 for 1) ::int = substring(cash_hand_summary.str_actors_p from 1 for 1) ::int, 1, 0])

Code: Select all
sum(if[cash_hand_player_statistics.amt_p_2bet_facing > 0 AND cash_hand_summary.str_aggressors_p LIKE '88%' AND lookup_actions_p.action LIKE 'S%' AND char_length(cash_hand_summary.str_aggressors_p) >= 2 AND substring(cash_hand_summary.str_aggressors_p from 2 for 1) ::int = substring(cash_hand_summary.str_actors_p from 1 for 1) ::int, 1, 0])
Flag_Hippo
Moderator
 
Posts: 17044
Joined: Tue Jan 31, 2012 7:50 am

Re: Creating a new stat

Postby luis111angel » Sat Jun 27, 2026 11:25 am

Amazing! is working, thank you so much!

Could you please give me the columns for 3Bet - Straddle vs BB open raise ?
luis111angel
 
Posts: 77
Joined: Sat Dec 29, 2012 12:03 am

Re: Creating a new stat

Postby Flag_Hippo » Sun Jun 28, 2026 6:24 am

You can use the same opportunities column for that. For the other column just change:

Code: Select all
lookup_actions_p.action = 'SF'

to

Code: Select all
lookup_actions_p.action LIKE 'SR%'
Flag_Hippo
Moderator
 
Posts: 17044
Joined: Tue Jan 31, 2012 7:50 am


Return to Custom Stats, Reports and HUD Profiles

Who is online

Users browsing this forum: No registered users and 15 guests