monteCarloStandardError
Binomial SE √(p̂(1−p̂)/n).
monteCarloStandardError(pHat: number, nTrials: 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
After a Monte Carlo run, report uncertainty on the estimated equity pHat with the standard error of a binomial proportion. Compare to monteCarloTrialsForStandardErrorBound when planning how many trials to run.
How to use
const pHat = 0.412;
const n = 20000;
const se = poker.monteCarloStandardError(pHat, n);
console.log(`equity ${(pHat * 100).toFixed(1)}% ± ${(se * 100).toFixed(2)}% (1 SE)`);
const nNeeded = poker.monteCarloTrialsForStandardErrorBound(pHat, 0.005);
console.log('trials for SE ≤ 0.5%:', nNeeded);