# Expression stats
If you come here by the link in Hand2Note app, please read our Range Research guide first.
First, let's define the difference between plain and expression stats in Hand2Note once again. Plain stats, like Open Raise or CBet, can show frequencies only in a specific spots in a hand. Expression stats, for example, Aggression or Went to showdown, don't show frequencies in any specific spot and are calculated based on mathematical expression.
You may create expression stats in Expression stats editor where your should specify an expression which will be used to calculate a stat. Please keep in mind, that only plain stats can be used as an arguments in the expression. You can't use other expression stats in formula.
# Available functions
Value | Returns a value of a stat in percents |
Cases | Returns count of cases on a stat. In other words, returns count of hands in which action of a player hit a filter |
Opps | Returns count of hands in which player had an opportunity to hit a filter. It is also called "sample" on a stat. |
VsHeroCases | Returns amount of hands in which player played against Hero and hit a filter. |
vsHeroOpps | Returns amount of hands in which player played against Hero and had an opportunity to hit a filter. |
WonHandCases | Returns count of hands in which player hit a filter and won a hand |
WentToSDCases | Returns count of hands in which player hit a filter and went to showdown |
WonHandAtSDCases | Returns count of hands in which player hit a filter, won hand and went to showdown |
AmountWon | Returns amount of big blinds won in hands hit a filter. |
ActionProfit | Returns ActionProfit value in big blinds in each hand hit a filter. |
You may also use conditional operator "if" and other mathematical functions. More info... (opens new window)
# Examples
Most of these stats are already present in Hand2Note by default and you can manage them in "Expression stats" section
# Went to Showdown
WentToSDCases(Flop Any Action) / Cases(Flop Any Action) * 100
Flop Any Action is a specially created plain stat that doesn’t make any sense by itself. It describes the spots when the opponent makes any action on the flop. Such a stat always has a value of 100, but an expression stat Cases(Flop Any Action) means the number of hands in which the player saw the flop, and WentToSDCases(Flop Any Action) – the number of hands in which the player reached the showdown after seeing the flop. Any Action stats for each street are present in Hand2Note by default.
# Went to Showdown after Cbet Flop
WentToSDCases(Flop Cbet) / Cases(Flop Cbet) * 100
# Won at Showdown
WonHandAtSDCases(Preflop any action) / WentToSDCases(Preflop any action) * 100
# Won When Seen Flop
WonHandCases(Flop Any Action) / Cases(Flop Any Action) * 100
# Aggression Frequency Flop
Cases(Flop Raise or Bet)/Cases(Flop Any Action) * 100
# Aggression Factor Total
(Cases(Flop Bet or Raise) + Cases(Turn Bet or Raise) + Cases(River Bet or Raise) ) / (Cases(Flop Call) + Cases(Turn Call) + Cases(River Call))
# Aggression Factor Flop
(Cases(Bet Flop) + Cases(Raise Flop)) / (Cases(Call Flop))
# 4Bet Range
Value(Open Raise) * Value(4Bet) / 100
# Sample size of "Went to Shodown" stat
Cases(Flop Any Action)
This is an example of a stat that shows sample size for an expression stat. Hand2Note doesn't calculate sample on expression stats by default. So if you want to see sample size for an expression stat in your HUD or popup, you need to create a separate expression stat for that.
# Number of hands
Cases(all hands)
# Cash winrate BB/100
AmountWon(all hands) / Cases(all hands) * 100
To calculate player's cash winrate, we take an amount of BB they've won in all played hands, divide it by a number of hands, and multiple that number by 100.
# How to insert expression stat in HUD
Right click on the cell in HUD editor and select Insert → Expression stat...