Poker Hand Range Equity Calculator

The Pokerbots Equity Calculator

  1. Jul 26, 2019  Poker Odds Calculator Odds of Winning w/ Any Poker Hand PokerListings.com’s Poker Odds Calculator is the fastest, most accurate and easy-to-use poker odds calculator online. It’s just like what you see when you watch poker on TV. Use it in real-time to know exactly what your chances of winning and losing are at any point in a poker hand.
  2. Poker Equity (Pot Equity) Equity percentages in this article have been calculated using the handy (and free) PokerStove. Pot equity (or just 'Poker equity') is a mathematical application to poker that helps to explain why you should bet or check in certain situations.

This is a discussion on Hand Equity vs Opponents Range within the online poker forums, in the Learning Poker section; Hello Guys, I would just want to ask on how do you calculate (manually) your.

Introduction

Abstract: pbots_calc is a ranged Equity Calculator for use by anyone, butparticularly poker bots in the MIT Pokerbots Competition! (mitpokerbots.com)

pbots_calc is a simple library for calculating the showdown equity for regulartexas hold'em hands, with limited support for pineapple variants. It supportscommon 2-card hand range syntax (see documentation for full details), andhandles any number of players. It's built in C, using the poker-eval libraryfor fast hand evaluation, and provides wrappers for python and java. It hasreasonable speed, but there are certainly many areas for optimization andimprovements.

The pbots_calc library is Free Software and is released under theterms of the GNU General Public License. See the COPYING file in theroot directory of the distribution.

Installation

The next several sections provide descriptions of how one can compile the sourcecode. Note that because this is still considered in alpha, the currentcompilation will just install everything locally. I would encourage you to leaveit that way until we reach a more stable version.

After following the instructions for your OS, you will be left with the compiledlibrary in the pbots_calc directory, under export/your OS type/lib and includefolders.

The final note regarding 32-bit vs 64-bit platforms and this library. I haveonly really tested this extensively as a 32-bit library, for use with 32-bitpython and 32-bit java. So I would say that if you're in doubt or not sure whatyou're doing, just stick with 32-bit installs (even if you have a 64-bitsystem - it will still work!). However, there's nothing prohibiting this fromworking with 64-bit tools (we've confirmed it worked on a mac), so feel free totry. However, these instructions were written for 32-bit tools (c compiler,java, and python).

Linux Installation

First, make sure that you have gcc, python and scons installed. Installationshould be as simple as sudo apt-get install gcc python scons

Calculator

Now you'll need to download, patch, and install the poker-eval library:

  1. Download the source and extract it.
    1. You need to patch the source code: You can find the patch in thisdirectory, called poker-eval_patch.diff. If you're in the poker-evaldirectory, you can just patch -p0 <path/to/poker-eval_patch.diff. This will fix an #include typo andremove a bunch of unneeded folders from the build path.
  2. If not already installed, you'll need to grab the autoconf and libtoolpackages: sudo apt-get install autoconf libtool
  3. Proceed according to the instructions in poker-eval/README. (summarized belowfor reference.
    1. autoreconf --install
    2. ./configure
    3. make
    4. (assuming no errors) sudo make install

Finally, to compile the pbots_calc library, just run scons from thepbots_calc directory. This will compile the pbots_calc library, the c examplecode, and the java example code. It will also create calculator.sh scripts foreach of the examples (more below).

Mac OSX Installation

  1. Follow step 1 from the Linux installation.
    1. Install homebrew.
    2. If not already installed, you need to grab the autoconf and libtoolpackages: brew install autoconf libtool
  2. Follow step 3 and onwards from the Linux installation

Windows Installation

Software you will need to have installed:

  1. Python 2.7: Don't bother with 64 bit version. Required by scons.
  2. Microsoft Visual C++ 2010 Express: Needed in order to compilecalculator. After installing, you will need to add C:/Program Files(x86)/Microsoft Visual Studio 10.0/VC/bin to your PATH (get help here). Youcan check you did this right by opening a command prompt and typing 'setPATH'
  3. Scons - get the latest windows installer for the production release (2.2.0 asof last update)

Next, you'll need download, modify, compile, and install the poker-eval library

  1. Download the source. You'll need to use 7-zip or similar to extract source code
  2. Use Microsoft Visual C++ 2010 Express to open the poker-eval.sln found inthe source.
    1. You'll be prompted to convert the 'old' solution to a newer version - justdo what it wants and click 'Finish'.
    2. Go to Tools>Options>Projects and Solutions>Build and Run and set themaximum number of parallel project builds to 1.
    3. Open poker-eval/Header Files/rules_std.h in the project and change #include<pokereval_export.h> to #include 'pokereval_export.h' and save it.
    4. Ensure you are set to build a 'Release' version (and not 'Debug') byselecting 'Release' from the drop down menu next to the 'run' button(should be right below the help menu).
    5. Finally, right-click on the poker-eval project and select 'build' - theoutput console should not report any failures!
  3. Open a file explorer and navigate to the location of the poker-eval libraryyou downloaded (and just built).
    1. Navigate to the 'Release' directory and copy the file 'poker-eval.lib' toC:/Program Files (x86)/Microsof Visual Studio 10.0/VC/lib
    2. Also copy the all the contents from the include folder in the poker-eval library, including the 'inline' folder, to a newfolder called poker-eval in C:/Program Files (x86)/Microsof VisualStudio 10.0/VC/include

Now, you should be able to build and install the pbots_calc library:

  1. Open a command prompt
  2. Navigate, by using the cd command, to the pbots_calc library folder.
  3. Run scons.

Running the Demos

Included in the library are 3 demo applications, showing how to use the libraryfrom C, Python, and Java. The demo is the same in all languages, and is just acommand-line tool for running the library. Use standard hand range notation forspecifying cards (see examples below for clues). In each folder, you should finda calculator.sh (or calculator.bat on Windows platforms). You can execute thedemos using this script (you may need to set the script to be executable).

Specifying Hands

Each hand can be represented by one or more hand ranges, specified in acomma-separated list. Multiple hands are separated by colons. Board cards areoptional and must either be 0, 3, 4 or 5 cards. You can specify 0 or more dead(discarded) cards.

Sample 2-card hand ranges:

Poker Range Chart Calculator

  • 8sTd - single hand range
  • 8sTd, 8sTc - 2 hand range
  • 8Ts - 4 hand range: [8sTs, 8cTc, 8dTd, 8hTh]
  • 8To = [8sTc, 8sTd, 8sTh, 8cTs, ...]
  • 88 = [8s8c 8s8d 8s8h 8c8d 8c8h 8d8h]
  • 8T = [8Ts, 8To]
  • JJ+ = [JJ, QQ, KK, AA]
  • 88-TT = [88, 99, TT]
  • xx = random (all possible 2-card hands)

Free Poker Range Equity Calculator

3-card hand ranges are heard to specify. Currently you can only enumerate allthe hands you mean, or specify random:

  • 8s9cTd,8s9cTh,8s9sTd,...
  • xxx = random (all possible 3-card hands)

Examples

Poker Opening Range Calculator

  • calculator.sh 4hqd:js9h askcqh will calculate the post-flop equities for ahand of 4 hearts and queen spades against the jack spades and 9 hearts, with aboard of ace spades, king clubs, and queen hearts.
  • calculator.sh 4qo:jts+ will calculate pre-flop equities for the range ofall 4-queen offsuit hands against all jack-ten or better suited hands.
  • calculator.sh 6d8h:xxx 4c9d7ctskd 2c will calculate the post-river equityof a hand of 6 diamonds 8 hearts vs a random (unknown) 2-card hand with a fullboard and the 2 clubs discarded.