Probabilità nel poker per principianti: una guida completa
Se sai contare, puoi imparare a pensare come un giocatore di poker. Il poker sembra una questione di fortuna a breve termine, ma dietro ogni decisione si celano combinatoria, probabilità e valore atteso (EV). In questa guida imparerai i fondamenti: come calcolare le probabilità di ogni mano di 5 carte, come le informazioni condizionali modificano le probabilità nel Texas Hold'em e come simulare scenari con Python per convalidare la tua intuizione. L'obiettivo non è promettere vincite, ma aiutarti a prendere decisioni consapevoli , comprendere la varianza e apprezzare la bellezza del ragionamento statistico al tavolo.
Nota didattica: questo contenuto è destinato all'apprendimento della statistica e del processo decisionale. Non garantisce profitti né incoraggia il gioco d'azzardo.
Cosa imparerai (Riepilogo)
- Come un mazzo standard da 52 carte si traduce in conteggi combinatori.
- Probabilità esatte delle classiche mani da 5 carte.
- Come la probabilità condizionata e le nuove carte (flop/turn/river) aggiornano le tue possibilità.
- Il significato di pot odds, implied odds ed EV.
- Come eseguire simulazioni Monte Carlo in Python per stimare i tassi di vincita.
1) Il mazzo, le combinazioni e il linguaggio della probabilità
Un mazzo standard contiene 52 carte: 13 valori (A, 2,…, K) × 4 semi (♠♥♦♣). Nel poker a 5 carte, ogni mano è una combinazione di 5 carte senza ordine:
\text{Total 5-card hands}=\binom{52}{5}=\dfrac{52!}{5!,47!}=2{,}598{,}960Questo numero è il denominatore per tutte le probabilità esatte a 5 carte. Nel Texas Hold'em, dove si ricevono 2 carte coperte e le si combinano con 5 carte comuni, spesso si ricorre al conteggio condizionale o alla simulazione perché le sequenze di distribuzione e le interazioni tra i giocatori rendono i calcoli algebrici complessi.
2) Probabilità esatte delle mani di poker a 5 carte
Di seguito sono riportati i conteggi e le probabilità standard per mani con 5 carte. È possibile derivare ciascuna di esse utilizzando le combinazioni; mostro una derivazione, quindi fornisco la tabella.
Esempio di derivazione: una coppia
- Scegli il grado della coppia: \binom{13}{1}.
- Scegli i 2 semi per quel grado: \binom{4}{2}.
- Scegli 3 distinto classifica (non la classifica della coppia) tra i restanti 12: \binom{12}{3}.
- Per ognuno di questi 3 ranghi, scegli 1 seme tra 4: 4^{3}.
Probabilità standard di una mano di 5 carte
| Tipo di mano | Conteggio combinatorio | Probabilità |
|---|---|---|
| Scala reale | 4 | 0.000154% |
| Scala reale (ex-Royal) | 36 | 0.001385% |
| Quattro di un genere | 624 | 0.0240% |
| Full House | 3,744 | 0.1441% |
| Colore (ex scala reale) | 5,108 | 0.1965% |
| Scala (ex scala reale) | 10,200 | 0.3925% |
| Three of a Kind | 54,912 | 2.1128% |
| Due coppie | 123,552 | 4.7539% |
| una coppia | 1,098,240 | 42.2569% |
| Carta alta (nessuna coppia, nessuna scala/colore) | 1,302,540 | 50.1177% |
3) Dal conteggio al processo decisionale: Pot Odds e EV
Il conteggio è il fondamento; decisions dipendono dal valore atteso (EV). Se un'azione produce risultati x_i con probabilità p_i, allora:
\mathrm{EV}=\sum_{i} p_i,x_iNel poker, x_i è monetario: le fiches che vinci (+) o perdi (−). Una chiamata è redditizia se \mathrm{EV} > 0Con una mano in fase di progetto, spesso confrontiamo quote pot con le probabilità di progetto.
- Probabilità del piatto (come rapporto) = \dfrac{\text{importo da chiamare}}{\text{piatto dopo la chiamata}}.
- Probabilità di pareggio p^{\ast} necessario chiamare:
Esempio: Il piatto è di 90 $, l'avversario punta 10 $, devi chiamare 10 $ per vedere la carta successiva. Dopo aver chiamato, il piatto diventa 110 $.
Pareggiare p^{\ast} = \dfrac{10}{110} \approx 9.09%.
Se la tua possibilità di migliorare (e vincere) supera il 9.09%, il chiamata ha positivo chip EV—ignorando le scommesse future (cioè probabilità implicite).
4) Regole di approssimazione e di out al tavolo
An out è una carta non vista che migliora la tua mano rendendola probabilmente la migliore. Con una sola carta da pescare (river), la probabilità di pescare almeno una delle tue k out" con le carte rimanenti non viste è approssimata da:
P(\text{colpito sul fiume})\approx \dfrac{k}{46}Con due carte da giocare (turn e river), una comoda approssimazione è la regola del 4 e del 2:
- Dopo il flop (due carte da giocare), probabilità stimata \circa 4k%.
- Dopo il turno (una carta da distribuire), probabilità stimata \circa 2k%.
Uscite comuni
- Progetto di scala aperta: k = 8 → ~32% via fiume (regola del 4).
- Progetto di colore (dopo il flop): k = 9 → ~36% via fiume.
- Coppia di carte alte (due carte alte): approssimativamente k = 6 → ~24% via fiume.
5) Probabilità condizionata nel Texas Hold'em
Le informazioni arrivano a tappe (pre-flop → flop → turn → river). Ogni rivelazione condiziona lo spazio delle probabilità. Se A è l'evento "Faccio un colore al river" e B è l'evento "al flop esce un doppio del mio seme", allora:
P(A\mid B)=\dfrac{P(A\cap B)}{P(B)}Anziché eseguire ogni volta complesse enumerazioni, i giocatori utilizzano outs e approssimazioni, oppure ricorrono alla simulazione.
Esempio: Colore al river dato un 4-flush dopo il flop
Hai due cuori; il flop mostra due cuori, dandoti Cuori 4 combinati e 9 out (13 cuori − 4 visti). Calcolo complementare esatto per "mancare sia il turn che il river":
Così,
P(\text{fare flush con il river})\approx 1-0.676=0.324che corrisponde all'intuizione della Regola del 4 per k = 9 dopo il flop.
6) Python: conteggio, tabelle delle probabilità e un piccolo simulatore
Non hai bisogno di un risolutore per imparare. Inizia con tre script utili.
6.1 Contare esattamente le probabilità di una mano di 5 carte
import math
def nCk(n, k):
return math.comb(n, k)
total = nCk(52, 5)
counts = {
"royal_flush": 4,
"straight_flush_ex_royal": 36,
"four_of_a_kind": 624,
"full_house": 3744,
"flush_ex_straight_flush": 5108,
"straight_ex_straight_flush": 10200,
"three_of_a_kind": 54912,
"two_pair": 123552,
"one_pair": 1098240,
"high_card": 1302540
}
for hand, c in counts.items():
p = c / total
print(hand, c, f"{100*p:.6f}%")
6.2 Out, Pot Odds e EV Helper
def break_even_prob_to_call(amount_to_call, pot_before_call):
pot_after_call = pot_before_call + amount_to_call
return amount_to_call / pot_after_call
def approx_hit_prob(outs, cards_to_come=1):
# Rule of 2 and 4
if cards_to_come == 1:
return min(1.0, outs * 2 / 100)
elif cards_to_come == 2:
return min(1.0, outs * 4 / 100)
else:
raise ValueError("cards_to_come must be 1 or 2")
def call_chip_ev(amount_to_call, pot_before_call, win_prob):
pot_after_call = pot_before_call + amount_to_call
# EV = win_prob * pot_after_call - (1 - win_prob) * amount_to_call
return win_prob * pot_after_call - (1 - win_prob) * amount_to_call
# Example:
to_call = 10
pot = 90
p_be = break_even_prob_to_call(to_call, pot)
p_approx = approx_hit_prob(outs=9, cards_to_come=2) # flush draw after flop
ev = call_chip_ev(to_call, pot, p_approx)
print("Break-even prob:", round(p_be, 4))
print("Approx win prob:", round(p_approx, 4))
print("Chip EV of call:", round(ev, 2))
6.3 Mini Monte Carlo per Heads-Up Hold'em (molto semplificato)
import random from collections import Counter from itertools import combinations ranks = "23456789TJQKA" suits = "CDHS" deck = [r+s for r in ranks for s in suits] def hand_rank_5(cards5): rs = sorted([c[0] for c in cards5], key=ranks.index) ss = [c[1] for c in cards5] is_flush = len(set(ss)) == 1 vals = sorted([ranks.index(r) for r in rs]) is_straight = all(vals[i]+1 == vals[i+1] for i in range(4)) or vals == [0,1,2,3,12] cnt = Counter(rs).most_common() counts = sorted([c for _, c in cnt], reverse=True) if is_straight and is_flush: cat = 8 elif counts == [4,1]: cat = 7 elif counts == [3,2]: cat = 6 elif is_flush: cat = 5 elif is_straight: cat = 4 elif counts == [3,1,1]: cat = 3 elif counts == [2,2,1]: cat = 2 elif counts == [2,1,1,1]: cat = 1 else: cat = 0 order = [] for r,c in sorted(cnt, key=lambda x:(x[1], ranks.index(x[0])), reverse=True): order += [r]*c key = tuple(sorted([ranks.index(r) for r in order], reverse=True)) return (cat, key) def best_5_from_7(cards7): best = None for comb in combinations(cards7, 5): rank = hand_rank_5(comb) if best is None or rank > best: best = rank return best def simulate_heads_up(hole_hero, iters=20000): wins = ties = 0 for _ in range(iters): d = deck.copy() for c in hole_hero: d.remove(c) random.shuffle(d) villain = d[:2] board = d[2:7] hero_best = best_5_from_7(hole_hero + board) vill_best = best_5_from_7(villain + board) if hero_best > vill_best: wins += 1 elif hero_best == vill_best: ties += 1 return (wins + 0.5*ties) / iters # Example: simulate A♠K♠ hero = ["AS", "KS"] wr = simulate_heads_up(hero, iters=5000) print("Estimated win rate for AK suited (heads-up):", round(100*wr, 2), "%")
7) Teorema di Bayes: aggiornamento delle convinzioni dalle azioni degli avversari
Il poker non è solo un gioco di carte; è un'inferenza sulle gamme di carte. Il teorema di Bayes formalizza il modo in cui nuove prove (una puntata, un check o un rilancio dell'avversario) aggiornano la tua convinzione sulla sua mano.
P(H\mid E)=\dfrac{P(E\mid H),P(H)}{P(E)}- H: ipotesi (l'avversario ha una mano forte).
- E: prova (l'avversario fa 3-bet pre-flop).
- P(H): precedente—quanto spesso questo giocatore è forte prima di vedere l'azione.
- P(E\mid H): probabilità—quanto è probabile che una mano forte faccia una 3-bet qui.
- P(H\mid E): posteriore—probabilità aggiornata dopo aver osservato la scommessa 3.
In pratica, approssimiamo le priorità dalle tendenze della popolazione (ad esempio, un giocatore tight fa 3-bet circa dal 3 al 5% delle mani), quindi perfezioniamo con il nostro campione di mani viste.
8) Varianza vs. Abilità: perché la matematica vince nel lungo periodo
I risultati a breve termine sono soggetti a fluttuazioni. Anche con una strategia a valore atteso positivo, si verificano periodi di perdite. Su un numero elevato di mani, la Legge dei grandi numeri ci dice che le medie campionarie si avvicinano alle medie reali. Se le vostre decisioni hanno sistematicamente \mathrm{EV} > 0, il profitto atteso a lungo termine è positivo, sebbene la varianza (oscillazione) possa essere elevata.
Un modo semplice per visualizzarlo è simulare una moneta truccata (EV>0) e osservare i percorsi di profitto cumulativo: molti percorsi saranno negativi nel breve periodo, ma la tendenza è al rialzo con l'aumentare delle prove. Lo stesso vale per il poker: la verità dell'EV emerge con il volume e la disciplina.
9) Gioco etico: gestione del bankroll e autocontrollo
La matematica ti aiuta a evitare l'autoinganno:
- Impostato regole del bankroll (ad esempio, buy-in ≤ 5% del bankroll per i cash game; ≥ 100 buy-in per i tornei è una regola pratica conservativa).
- Rispetto stop-loss e stop-win limiti per ridurre l'inclinazione.
- Ricorda che gioco informato comporta comunque dei rischi. L'obiettivo è prendere decisioni migliori, non la certezza.
10) Mettere insieme il tutto: un piano di studio per principianti
- Memorizzare la tabella delle probabilità a 5 carte e comprendere la combinatoria.
- Fai pratica outs e il regola del 4 e del 2 finché non potrai calcolarli all'istante.
- Usa il pot-odds e aiutanti EV per controllare le mani reali che hai giocato.
- Correre Monte Carlo in scenari specifici (le tue due carte coperte contro un range di carte dell'avversario ipotizzato).
- Aggiungi Pensiero bayesiano: aggiorna il tuo modello di un avversario in base alle azioni osservate.
- Tieni un diario a mano: decisioni, calcoli, risultati. Vedrai schemi ed errori.
Conclusione
Il poker è un laboratorio ricco di probabilità, statistica e processi decisionali razionali. La combinatoria ti dice quanto è rara ogni mano. La probabilità condizionata e Bayes spiegano come le nuove informazioni rimodellano le tue convinzioni. EV e pot odds trasformano le convinzioni in scelte. La simulazione convalida la teoria e allena l'intuizione. Non eliminerai l'incertezza, ma sostituirai le congetture con struttura, integrità e disciplina.
Link interni suggeriti
- Valore atteso (EV) nel poker: dalle probabilità del piatto al profitto
- Simulazione Monte Carlo per mani di poker con Python
- Pensiero bayesiano al tavolo: intervalli, verosimiglianze e aggiornamenti

