Unexploitable shoving

This example uses the following file: unexploitableshoving.stx
Make sure that the math engine is turned on (Math engine->mathematical solution).

Let's say you are in a situation where you want to either shove or fold.

For instance, it's heads up, you're in the small blind and raise with a certain range of hands. The big blind reraises you and you decide to 4 bet. The big blind calls and the flop is AKT rainbow. You decide to either go with the hand or give up. With what range can you shove if the big blind will make the perfect call (he calls all his +EV hands against your range and folds the others).

To let StoxEV calculate this take the following steps:

Step 1: Setup the tree
Step 2: Set a checkpoint at the shove or fold decision
Step 3: Push the AI button (circled in red)

The calculation will take seconds if the decision point is preflop, at the turn or at the river. At the flop it takes between one and two minutes.


Unexploitable shoving requires the math engine to be turned on.
It asumes that villain will call all his +EV hands against the shove and fold the -EV ones.
The results may be of by a very small amount but are always extremely close to the true answer.
Unexploitable shoving also works in tournaments.


Some nuanes:
In the above example the shoving decision is an empty decision. If however you do have actions attached to the decision these will be shifted downwards and the shove or fold tree is put on top.

If the board is known beyond the point where you want to shove or fold (for instance if the turn is given in the above example) then these cards will be put back in the deck. The board is considered to be unknown beyond the shoving point.

For unexploitable shoving calculations the option "math engine->forced enumeration" is turned on so that all results are mathematically correct. If however you decide to have a closer look at the results with this option turned off you may find very small discrepancies.