Skip to main content

icmPairwiseBubbleFactor

Pairwise bubble factor (finite differences on icmExpectedPayouts).

icmPairwiseBubbleFactor(stacks: number[], payouts: number[], heroIndex: number, villainIndex: number, potChips: number): number

Import

const poker = require('poker-calculations');

ESM (Node):

import { createRequire } from 'module';
const require = createRequire(import.meta.url);
const poker = require('poker-calculations');

When to use

Compare ICM cost of losing vs gain from winning a pot against one opponent—classic bubble-factor analysis for tournament all-ins. Uses finite differences on icmExpectedPayouts when stacks shift by potChips.

How to use

const stacks = [9000, 8500, 3000];
const payouts = [6000, 3600, 2400];
const hero = 0;
const villain = 2;
const pot = 3000;

const bf = poker.icmPairwiseBubbleFactor(
stacks,
payouts,
hero,
villain,
pot
);
console.log('bubble factor vs seat 2:', bf); // loss/gain ratio > 1 means ICM pressure

const evBefore = poker.icmExpectedPayouts(stacks, payouts);
console.log('hero ICM EV:', evBefore[hero]);

See also

icmExpectedPayouts · multiwaySymmetricBreakevenCallEquity