Poker Tool Box 8.0

La version 2 de Poker Tool Box est disponible à l’adresse suivante:

N’hésitez à rapporter les bugs rencontrés.

La grosse nouvelle fonctionnalité est qu’il intègre un replayer.
Il est pas aussi sexy que popopop mais il offre quelques fonctions en plus (stats, cotes).

Une autre fonction qui, je pense, va intéressé pas mal de joueur de sit n go est le calcul de l’équité gagné/perdu sur vos push preflop. En gros le soft calcul la différence entre l’équité théorique et l’équité réel.
Ca vous indique si vous avez été plutot chanceux ou pas sur vos push.
Voici un exemple de résultat:

                  ************** Preflop push list ************** 

Summary: 497 Push | Preflop Push Equity=-42.633$

Qd Ah vs Qc As : Split | Win %=0.022 | Lose %=0.022 | Win Equity=8.458 | Lose equity=0 | Equity Won=0.059
3h 4c vs Ks Qh : Won | Win %=0.352 | Lose %=0.641 | Win Equity=10.907 | Lose equity=0 | Equity Won=7.068
As Jd vs Kc Ks : Lost | Win %=0.288 | Lose %=0.708 | Win Equity=9.604 | Lose equity=4.214 | Equity Won=-1.535
9s 5c vs 7d 7c : Lost | Win %=0.287 | Lose %=0.704 | Win Equity=10.779 | Lose equity=5.4 | Equity Won=-1.495
Jd Tc vs 7c 7d : Won | Win %=0.485 | Lose %=0.510 | Win Equity=9.451 | Lose equity=0 | Equity Won=4.867
Ac 8d vs Tc Kd : Won | Win %=0.572 | Lose %=0.423 | Win Equity=9.118 | Lose equity=4.450 | Equity Won=2.020
Ad 9h vs 8d Jd : Lost | Win %=0.587 | Lose %=0.408 | Win Equity=6.717 | Lose equity=3.415 | Equity Won=-1.921
Ts Td vs 4s 4h : Lost | Win %=0.807 | Lose %=0.188 | Win Equity=9.690 | Lose equity=0.491 | Equity Won=-7.421
Kh 3c vs Ad 8h : Lost | Win %=0.360 | Lose %=0.635 | Win Equity=4.272 | Lose equity=0 | Equity Won=-1.538

Je viens de lire tout ca Fab, merci encore, maintenant pourrais tu expliquer et détailler un peu tout ca …

En gros expliquer a quoi correspondent ces chiffres ?
Comment les interpréter ?
Et surtout comment les mettre en rapport avec le coup ?

[quote]Summary: 497 Push | Preflop Push Equity=-42.633$

Qd Ah vs Qc As : Split | Win %=0.022 | Lose %=0.022 | Win Equity=8.458 | Lose equity=0 | Equity Won=0.059[/quote]

Par exemple… qu est ce que tout ca voudrait dire ???

Merci a toi

sebaja wrote:

[quote]Je viens de lire tout ca Fab, merci encore, maintenant pourrais tu expliquer et détailler un peu tout ca …

En gros expliquer a quoi correspondent ces chiffres ?
Comment les interpréter ?
Et surtout comment les mettre en rapport avec le coup ?

[quote]Summary: 497 Push | Preflop Push Equity=-42.633$

Qd Ah vs Qc As : Split | Win %=0.022 | Lose %=0.022 | Win Equity=8.458 | Lose equity=0 | Equity Won=0.059[/quote]

Par exemple… qu est ce que tout ca voudrait dire ???

Merci a toi[/quote]

Effectivement c’est pas évident a priori:

Qd Ah vs Qc As : Hero a Qd Ah contre vilain Qc As en push preflop
Split : Le resultat final est un partage du pot
Win %=0.022 Probablité (divisée par 100) que hero gagne le pot. Ici 2.2%.
Lose %=0.022 Probabilité que hero perde le pot
Win Equity=8.458 Equité de hero s’il gagne
Lose equity=0 Equité de hero s’il perd
Equity Won=0.059 Différence entre l’équité réelle (fonction du résultat) et l’équité théorique. Ici ca devrait être 0 mais l’arrondi a du provoquer une petite imprecision. Ou alors c’est un bug.

Mais le plus important est la ligne summary

Summary: 497 Push | Preflop Push Equity=-42.633$ Siginifie que sur 497 push hero a perdu 42.6$.

Petite remarque. Ce n’est pas cette fonctionalité de poker Tool Box qui t’aidera a prendre des décisions en temps réel (là ca te permet juste de savoir si tu as été plutot chanceux ou malchanceux sur tes push preflop)
Mais plutot la fonctionalité multi table et en particulier le menu contextuel equity.
Voir le tutorial:

Bon la version 2.1 est déjà disponible.
J’ai aussi mis les fichiers sources.

Et puis je viens de créer un thread sur 2+2 pour les anglo saxon:

La version 2.4 vient de sortir téléchargeable ici:

Les nouveautés:

  1. Moins de bug
  2. Les cartes de hero sont affiché dans la liste sur la droite du replayer
  3. Quelques fonctions de positionnement et de redimensionnement de tables.
  4. Une raccourci clavier configurable pour sauvegarder dans un fichier les mains que vous voulez revoir plus tard pendant vos session de multi tabling (non documenté pour l’instant - faut aller dans parameters - define hotkeys ).
  5. Un raccourci clavier pour faire un resume en terme de ROI / Argent gagné / Position finales sur plusieurs tournois 1 table.

Les autres fonctions sont décrites ici

J’ai fait une video par ailleurs ou je fait une revue de 2 DON 5$ en utilisant le replayer dans la partie video membre. Mais je ne la vois pas personellement…

fab12 wrote:

[quote]La version 2.4 vient de sortir téléchargeable ici:

Les nouveautés:

  1. Moins de bug
  2. Les cartes de hero sont affiché dans la liste sur la droite du replayer
  3. Quelques fonctions de positionnement et de redimensionnement de tables.
  4. Une raccourci clavier configurable pour sauvegarder dans un fichier les mains que vous voulez revoir plus tard pendant vos session de multi tabling (non documenté pour l’instant - faut aller dans parameters - define hotkeys ).
  5. Un raccourci clavier pour faire un resume en terme de ROI / Argent gagné / Position finales sur plusieurs tournois 1 table.

Les autres fonctions sont décrites ici

J’ai fait une video par ailleurs ou je fait une revue de 2 DON 5$ en utilisant le replayer dans la partie video membre. Mais je ne la vois pas personellement…[/quote]

Fab, ça commence à avoir de la gueule :wink:
Moi je l’utiliserai quand tu ajouteras plein de raccourcis, genre déplacer table, ouvrir n parties, check/call,fold,…
SI tu t’en sens capable, je pourrai peut-être te donner un coup de main dans la définition du besoin d’un multitabler crazy… enfin crazy, tout est relatif, je suis pas Boku :wink:

Nice work, continue…

Canonbis

snif le replayer ne marche pas avec moi

je ne joue quand play money c est pour ca ??

canonbis wrote:

[quote]
Fab, ça commence à avoir de la gueule :wink:
Moi je l’utiliserai quand tu ajouteras plein de raccourcis, genre déplacer table, ouvrir n parties, check/call,fold,…
SI tu t’en sens capable, je pourrai peut-être te donner un coup de main dans la définition du besoin d’un multitabler crazy… enfin crazy, tout est relatif, je suis pas Boku :wink:

Nice work, continue…

Canonbis[/quote]

Merci.
Toutes les suggestions sont les bienvenus.
Il y a déjà pas mal de raccourcis que tu peux paramétrer dans la partie parameter - Define hotkeys dont qelquesuns pour déplacer redimensionner les tables. Mais je n’ai pas trop documenté cette partie.
Cela dit c’est assez basique, je pense qu’il y a d’autre soft dédié à ca qui offrent plus de possibilités.

Quant aux check/fold y’a starhotkeys que j’utilise perso, mais si tu as des idées de touches à ajouter elles sont les bienvenues. Le côté enregistrement automatique à un tournois me parait interessant…

wenda wrote:

[quote]snif le replayer ne marche pas avec moi

je ne joue quand play money c est pour ca ??[/quote]

Ca marche chez moi en play money sur poker stars (c bien cette room?).

Tu n’aurais pas configurer PokerStars en francais? Parce que ca ne marche que si les hand history sont en anglais.
(sur pokerstars il faut aller dans Options puis qqchose comme instant hand history options).

Si ca ne marche tjrs pas j’aurai besoin de plus d’info…

ok suis en francais oui je testerais en anglais plus tard

Pour info suite à une demande sur 2+2, j’ai envoyé un mail au support PS pour savoir si mon soft était autorisé d’après les règles de la room.

Verdict, c’est Ok d’avoir le calcul d’équité en temps réel mais pas d’utiliser l’auto fold même s’il fold toutes les mains.
Du coups je supprimerai cette fonction dans la prochaine version.

J’attend encore une réponse de PS sur le calcul du bubble factor.

Une nouvelle version de poker tool box est dispo.

Pour ceux qui multitable sur PokerStars cette version comprend une fonction qui clique automatiquement sur les boutons « sitting out » et « time bank » même si la fenêtre est masquée.

J’aimerais bien avoir un peu de retour sur cette fonctionalité. Pour le timebank ca ne marche pas 100% du temps j’ai l’impression et ça doit dépendre du thème que vous utilisez.
Moi j’utilise le thème poker stars classique.

hi fab,

  • utilise tu la fonction hud de ptb ,

si oui puis je jeter mon tracker ? :slight_smile:

  • je multitable parfois différent ormat de sng: 6 max , 9 max, 18 j est ce que ça va poser des problemes avec ptb ,

thx

Tiens, j’avais loupé ce post.
Nice, je vais essayé :wink:

ryer wrote:

[quote]hi fab,

  • utilise tu la fonction hud de ptb ,

si oui puis je jeter mon tracker ? :slight_smile:

[/quote]

Honêtement pour le HUD je ne suis pas trop satisfait parce que ça a tendance à clignoter. Je préfère utiliser PT3.
Aussi si tu utilises Windows 7 le HUD ne marche pas. Quand il est activé on ne peut plus cliquer sur la table ce qui est gênant.

Mais tu peux essayer. Moi je joue en overlap, je pense que ca clignote moins si tu joues en mode tile.

[quote]

  • je multitable parfois différent ormat de sng: 6 max , 9 max, 18 j est ce que ça va poser des problemes avec ptb ,

thx[/quote]

Non ca ne devrait pas poser de pb. Si tu ne t’en sers pas pour le HUD tu peux t’en servir pour faire des calculs d’équité en temps réel. C’est pour ça que je m’en sert perso (notamment le raccourci clavier “hero’s WPR” qui donne quel équité du dois avoir par rapport au range de push d’un vilain pour pouvoir call).
Cela dit si tu as des formats différent il faut que tu indiques pour chaque tournois le prize pool (bouton droit sur l’onglet multitabling puis “set prize pool” )

L’autre fonction utile est l’autositback mais il ne marche que pour PS.
Le soft est d’ailleurs beaucoups moins tester sur FTP que sur PS car je ne joue que sur PS.

ok je joue quasi que sur ps, merci de tes réponses, je vais l’utiliser sans Hud + hem + stars hotkey.

ty fab

Trop fort le Vador, j’avais pas vu que t’avais fait ce soft, bravo.

Petite question, est ce que le timebank et le never sit out fonctionne pour le cash game?

gregus84 wrote:

[quote]Trop fort le Vador, j’avais pas vu que t’avais fait ce soft, bravo.

Petite question, est ce que le timebank et le never sit out fonctionne pour le cash game?[/quote]

Le soft est clairement orienté tournois mais a priori la fonction autositback devrait marcher en cash game.

Attention quand même je sais qu’il y a un bug connu d’une fonction microsoft qui est utilisé dans le script.
L’affichage de la table peut être perturbé et du coups le bouton fold disparait par exemple.

Cela dit sur windows 7 je n’ai jamais eu de problème à moins de changer de thème (qui définit l’apparence des fenêtres) pour le thème de base qui correspond à XP je crois.
Donc peut être que le même problème existe sous XP je n’ai jamais essayé.

De toute facon y’a pas trop de risque a essayé (moi je m’en sert tous les jours sans problème). Mais si tu vois des boutons qui disparaissent (suffit de passer la souris dessus pour qu’il réapparaisse) alors il faut mieux ne pas utiliser cette fonction du script.

[confidential]

Introduction

Par définition lorsqu’un move est EV+ c’est qu’il nous rapporte de l’argent sur le long terme. Il semble donc clair qu’un joueur va toujours choisir le move qu’il considère le plus EV+. Cependant un joueur peut préférer un move moins profitable dans certains cas.

Un exemple typique est lorsque l’on a gagné un tiquet pour un gros tournois et que l’on préfère assurer une place dans l’argent plutot que de prendre des risques pour jouer la victoire. C’est un choix tout à fait acceptable lorsque le montant du prix que l’on veux assurer est important par rapport à notre bankroll.

Mais si le joueur est un joueur professionnel jouant de nombreux tournois, son intérêt est de maximiser ses gains sur le long terme. Il n’a alors a priori aucune raison de ne pas effectuer le move le plus EV+.

Pourtant on voit parfois certains de ces joueurs, face à une situation légèrement EV+ en tournois, préférer jeter leur main parce qu’ils pensent avoir un edge.

Dans cette article nous allons tenter de voir si cela peut se justifier mathématiquement.

Modelisation sur un sit n go

Sur Sit’n go wizzard un des paramètres est « l’edge ».

Cela se présente comme cela:

EdgeWizard.jpg

Wizard nous indique:

Notre équité si on Push EqP% (10.57)
Notre équité si on fold EqF% (10.43)

EqP>EqF donc je dois call sauf que le paramètre edge intervient 0.26.
Comme la différence entre l’équité du push et celle du fold (10.57-10.43) est inférieur à l’edge sit n go wizard nous conseille de fold.

Par défaut la modélisation de l’edge de sit n go wizard ne correspond cependant pas à la supériorité (positive ou négative) que nous avons par rapport aux autres joueurs. Elle est calculée en fonction de notre position par rapport à la BB (notre edge diminue si on doit payer la BB la main suivante) et la taille de notre tapis (edge plus grand quand on a un gros tapis).

Il s’agit donc d’un edge conjoncturel (edge du à notre situation dans le sit n go à l’instante t) et non structurel (edge du à notre niveau). Ici on va s’interesser plutot à l’edge structurel même si au final les 2 edges devraient s’additionner.

Comment exprimer notre edge?

Dans mon exemple on est en DON.
Mettons que je gagne 60% de mes DONs. Si je n’avais pas d’edge je gagnerais 50%.
Donc je serais tenté d’exprimer mon edge sous forme d’un ratio: 60/50=1.2 que j’appliquerais à mon équité sans edge calculée avec l’ICM. J’appelle cela le « Edge Factor » EF.

Donc si l’ICM me calcul une équité Eq j’en déduis que mon équité réel est plutot Eq x EF

Maintenant si l’on suit le processus de sit n go wizard :
SGW calcule l’équité du Fold EqF ==> J’applique le facteur edge j’obtiens EqF’=(EqFxEF)
SGW calcule l’équité du push EqP
Pour cela il calcul

  1. Pw la probabilité de gagner le pot au showdown
  2. Mon équité si je gagne le coup EqW (équité ICM) que je remplace par l’équité avec prise en compte de l’edge EqW’=(EqWxEF)
  3. Mon équité si je perd le coup EqL (équité ICM) que je remplace par l’équité avec prise en compte de l’edge EqL’=(EqLxEF)

Finalement je dois push si EqF’< Pw x EqW’ + (1-Pw) x EqL’

soit EFxEqF< Pw x EF x EqW + (1-Pw) x EF x EqL (2)

==> Je peux tout diviser par EF
==> EqF< Pw x EqW + (1-Pw) x EqL

Donc l’edge n’intervient pas!!

Mais tout cela n’est pas correct car la définition du facteur edge n’est pas cohérente.
Supposons que je joue un DON, et que l’ICM me donne une équité de 90%
==> 90x1.2=108% absurde car je ne peux pas gagner plus de 100% de mon buyin.

En fait le facteur edge est une fonction qui dépend de la taille de mon stack et des stacks des autres c’est à dire de mon équité ICM. C’est à dire que notre edge ne va pas jouer autant si j’ai beaucoup (ou très peu) de jeton ou si j’ai un stack moyen.

Par exemple, si j’ai 99% des jetons de la table que mon ROI soit de 15% ou de 0% j’ai a peu près la même équité dans les 2 cas (proche de 100%). De même si je n’ai plus qu’un jeton, même si je suis le meilleur joueur du monde, c’est avant tout la chance qui peut me permettre de gagner le tournois.

On peut donc exprimer l’edge factor sous la forme suivante:

EF=f(Eq) avec Eq l’équité ICM.

Si je reprend la formule (2)

f(EqF) x EqF < Pw x f(EqW) x EqW + (1-Pw) x f(EqL) x EqL

Supposons EqL=0 (c.a.d vilain me couvre)

f(EqF) x EqF < Pw x f(EqW) x EqW

Maintenant il faudrait connaitre f(Eq). Ca parait pas simple mais on peut donner quelques caractéristiques de façon intuitive:

  1. C’est une fonction continue: Si je gagne 1 jetons mon EF ne va pas soudainement augmenter ou baisser
    f(Eq)=f(Eq+1)+Epsilon avec Epsilon très petit
  2. f(Eq) tend vers 1 quand Eq tend vers 0: Si je n’ai plus de jeton j’ai perdu quelque soit mon edge.
  3. f(Eq) tend vers 1 quand Eq tend vers 100%: Si j’ai tous les jetons j’ai gagné quelque soit mon edge.
  4. Si je fini ITM 60% du temps alors f(50)=60/50

A part ça je ne sais pas dire quelle forme a la courbe. Elle dépend du profil du joueur.
Si je reste sur l’exemple du DON, Entre 2 joueurs avec le même ROI il peut y en avoir un qui gère mieux la situation lorsqu’il est short et l’autre qui gère mieux la situation lorsqu’il double dans les 1er niveaux.
Pour définir sa courbe f(Eq) il faudrait par exemple faire une étude statistique basée sur ces HH.

Mais si l’on reprend à nouveau la formule et le problème de départ

f(EqF) x EqF < Pw x f(EqW) x EqW

Pour justifier qu’il faut fold alors que EqF est légèrement inférieure à Pw x EqW il faut supposer que f(EqF)>f(EqW).

D’après les caractérisques de la courbe citée plus haut on peut facilement imaginer que la courbe ait une forme de cloche (parabole ou autre) avec un Max pour f(50). Par ex.

Edge2.png

Dans ce cas là f(EqF)>f(EqW) si EqF est proche de 50% mais si EqF est suffisamment faible ou grand on aura f(EqF)<f(EqW) (par exemple si je suis SS il est possible qu’en doublant mon équité revienne à 50 et on a supposé que f(50) était le max de la courbe).

Conclusion:

Avec ce modèle je peux folder bien que mon équité ICM en cas de push est plus grande que mon équité en cas de fold seulement si mon équité en cas de fold est suffisamment proche de 50%.
Mais si elle est trop petite (ou trop grande) c’est le contraire et mon edge doit plutot m’insiter à caller (un peu) plus light.

Tout cela pouvant être remis en question si l’on fait des hypothèses différentes sur la forme de la courbe.

En tout cas cet article montre que si l’edge peut effectivement modifier le caractère EV+ d’une décision, il est loins d’être évident de savoir quand c’est le cas et dans quel sens.

[/confidential]

[confidential]
Introduction

L’utilisation d’un HUD est aujourd’hui la norme pour un joueur régulier de poker en ligne. Il constitue un outil qui va permettre de capitaliser les informations accumulées sur chaque joueur avec une exhaustivité et une précision inenvisageable pour un simple cerveau humain.

L’éventail impressionnant de statistiques offertes par les principaux trackers permet d’obtenir des informations sur des situations aussi précises que le pourcentage check/raise turn dans un pot 3 bet en SB. Si on ajoute à cela les statistiques du type « vs hero », qui indique le comportement du joueur contre soit même, il devient possible, sur le papier, de prendre des décisions « optimale » avec une connaissance quasi parfaite de la range adverse.

Par ex. : Supposons que vilain 3Bet 10% en BB contre notre ouverture au bouton et qu’il CBet 70% du temps dans les pot 3Bet.
Sachant qu’il s’agit d’un joueur régulier (chose que l’on voit immédiatement par les statistiques principales VPIP/PFR/3Bet/AF) on peut en déduire une range polarisée contenant 10% des mains du genre : [TT+, AQ, A8s-, K9s-,67s,65s]
Sur un flop Qs 9s 2h il va CBet en value [AA, KK, QQ, AQ,JJ] ce qui représente 25% de sa range, on peut compléter avec 70-25=45% de cbet en bluff (comprenant les semi-bluff AsXs,KsXs).

Cependant, le HUD reste une arme à double tranchant pour bon nombre de joueurs réguliers qui vont avoir tendance de considérer, souvent de façon inconsciente et/ou par facilité, que les chiffres qui s’affichent quasiment de façon magique sur nos tables, représentent une vérité absolue. Ce piège réside dans les limitations suivantes de cet outil :

o Les HUD ne tient pas compte de la dynamique qui peut exister entre hero et vilain et/ou de son état éventuel de tilt.

o Vilain peut avoir un style adaptatif en fonction du profil des joueurs à la table. Par exemple, on sait
qu’un joueur régulier va ouvrir plus de mains si les joueurs en blind sont récréatifs.

o Les statistiques accumulées sur un vilain peuvent être périmées. Par exemple, un joueur a pu passer d’un profil « NIT » à un profil « TAG » voire « LAG » suite à un coaching ou à une analyse/travail personnelle de son jeu.

o Enfin, et c’est l’objet principal de cet article, pour des raisons purement mathématiques, pour être fiable, les statistiques doivent être calculées sur un grand nombre de mains.

Dans la suite de cet article, nous tentons d’évaluer la précision d’une statistique en fonction du nombre de mains en s’appuyant sur le cas du taux de 3Bet.
Pour cela on débute par un rappel général sur les probabilités. Ensuite, on met en place un cadre théorique concernant le cas du taux de 3Bet. Dans la troisième partie, on applique les formules obtenues sur un exemple concret et l’on donne une interprétation des résultats observés.

En conclusion sont faites quelques propositions de nouvelles fonctionnalités possibles sur les trackers afin de permettre au joueur d’avoir une meilleure interprétation des statistiques qu’il a sous les yeux.

Les personnes qui ne s’intéressent qu’à l’aspect pratique peuvent ignorer les 2 premières parties théoriques et se concentrer sur la dernière ainsi que sur la conclusion.

Principes généraux sur les probabilités

Commençons par poser quelques conventions qui seront utilisées dans le reste de l’article (si vous êtes familiers avec les probabilités vous pouvez aller directement au chapitre suivant).

Si C est un événement (par exemple l’événement « Zlatan marque un but ») alors on note P(E) la probabilité exprimée en pourcentage, que cet événement soit avéré.

Si A et C sont 2 événements, on note:

o P(A|C) la probabilité que l‘événement A soit vrai sachant que l’événement C est vrai.

Par exemple P(« PSG gagne »| « Zlatan marque un but ») est la probabilité que le PSG gagne si Zlatan marque.

o P(A U C) la probabilité qu’un des évènements A ou B au moins soit vrai.

Par exemple P(« PSG gagne » U « Zlatan marque un but ») est la probabilité que PSG gagne et/ou que Zlatan marque un but.
L’événement est donc vérifié si par exemple le PSG gagne même si Zlatan ne marque pas.

o P(A & C) la probabilité que les évènements A et C soient vrais tous les 2.

Par exemple P(« PSG gagne » & « Zlatan marque un but ») est la probabilité que le PSG gagne et Zlatan marque un but.

o P(!A) est la probabilité que A soit faux.

Par exemple P(!« PSG gagne ») est la probabilité que le PSG perde ou fasse match nul.

On dit que 2 événements A et C sont indépendants si la probabilité que A soit vrai ne dépend pas du fait que B soit vrai ou faux. D’un point de vue mathématique cela s’écrit de la façon suivante :
P(A)=P(A|C)=P(A|!C)

Par exemple, les évènements « Zlatan va marquer un but » et « Le PSG joue en blanc » sont indépendants. Car Zlatan n’est pas plus ou moins performant lorsqu’il joue en blanc plutôt qu’en bleu (a priori).

A partir de ces définitions on peut mentionner les règles suivantes concernant les probabilités qui seront utilisées dans la suite :
[color=#bb2222]
[color=#ffffff]…/color P(A & C) = P(A) x P(C|A) = P(C) x P( A|C )

[color=#ffffff]…/color Si A et C sont indépendants on a P(A&C) = P(A) x P(C) (car si A et C sont indépendants P(A|C)=P(A) par définition)

/color P(A|C) = P(C|A) x P(A)/P(C)

b[/b] s’appelle le théorème de Bayes. C’est une règle essentielle pour la suite de l’article car il nous permet notamment d’affiner la probabilité réelle d’un événement en fonction de résultats statistiques observés.

C’est ce que nous allons faire dans la partie suivante en se demandant quel est la probabilité qu’un vilain que l’on a vu 3 Bet 6% du temps sur 100 mains, ait effectivement une range de 3Bet proche de 6%.

Estimation du taux de 3Bet réel d’un joueur : Théorie

Dans cette partie nous allons mettre en place les équations qui vont permettre d’estimer le taux de 3Bet réel d’un joueur en fonction de son taux de 3Bet observé.

La méthodologie présentée est construite à partir de mes connaissances en matière de statistiques et probabilités. Ces connaissances étant loin d’être exhaustives dans ces domaines que je pratique essentiellement au travers du Poker, j’ai comblé quelques lacunes par des hypothèses simplificatrices qui me paraissent intuitivement correctes.

Bien qu’au final ce chapitre présente une approche assez rigoureuse selon moi, elle peut donc être remise en question en particulier au niveau de ces hypothèses.

Ces hypothèses simplificatrices et leur but seront signalées explicitement et les commentaires de personnes compétentes sont bien sûr les bienvenus.

On note
T3Bo(n) : Taux de 3Bet observé sur n mains
T3Br : Taux de 3Bet réel de vilain

[color=#0000ff]Une première simplification doit être faite ici :

(H1) Toutes les valeurs de taux de 3Bet considérée sont arrondies à l’entier le plus près. On considère donc que des vilains qui ont respectivement un taux de 3Bet de 5,3% et de 4,8% ont en fait le même taux de 3Bet de 5%. Cela permet d’avoir une approche discrète et non pas continu ce qui simplifie énormément les calculs tout en gardant une validité du point de vu du résultat qui s’exprimera de toute façon en terme d’intervalle de confiance.[/color]

Avant de poursuivre, il est important de rappeler que le taux de 3Bet n’est pas le nombre de fois où le joueur 3Bet divisé par le nombre de mains mais le nombre de fois où le joueur 3Bet divisé par le nombre de fois où le joueur a eu l’opportunité de 3Bet.
Cette différence est essentielle car le joueur n’a pas l’occasion de 3Bet à chaque main. Il faut donc estimer le ratio entre le nombre d’opportunité de 3Bet et le nombre de mains jouées.

Par exemple le joueur ne pourra pas 3Bet lorsqu’il est UTG. Cela fait déjà un sixième des mains (à une table de 6-max) sur les n pour lesquels vilains ne pourra pas 3Bet. Ensuite il faut que quelqu’un ait ouvert en relançant avant.

En utilisant ma base de données et les filtres HEM2 je constate que j’ai eu l’occasion de 3Bet 31% des mains que j’ai jouées. Ce facteur est vraisemblablement très indépendant du joueur.
Nous allons donc estimer dans la suite que chaque joueur à l’occasion de 3Bet 31% des mains qu’il joue.

Remarque importante: Ce facteur de 0,31 propre au 3Bet est une donnée importante car c’est essentiellement lui (ainsi que l’ordre de grandeur de la statistique) qui va faire qu’une statistique converge plus ou moins vite. Par exemple, pour le VPIP ce facteur est de 1 (car un joueur a l’opportunité de miser à toutes les mains). C’est pour cette raison que le VPIP converge rapidement. Par contre si l’on prend le taux de check/raise river dans un pot 3Bet ce facteur sera très faible car on se retrouve rarement en position d’effectuer cette action. Cette statistique mettra par conséquent beaucoup de temps avant d’être significative.

Nous cherchons donc, à estimer la probabilité que le taux de 3 bet réel (T3Br) soit égal au taux de 3Bet observé sur n mains ce qui peut s’écrire de la façon suivante : P(T3Br=x | T3Bo(n)=x).

Le théorème de Bayes nous permet d’écrire l’égalité suivante:

(F1) P(T3Br=x | T3Bo(n)=x) = P(T3Bo(n)=x | T3Br=x ) x P(T3Br=x)/P(T3Bo(n)=x)

Tentons d’évaluer les 3 probabilités à droite de cette équation.

P(T3Br=x) correspond à la probabilité qu’un vilain ait un 3Bet de x% sans connaissance de son 3Bet observé. Cela revient donc à se demander quel pourcentage de joueurs a un 3Bet réel de x%. Pour déterminer cela il faudrait disposer d’une base de données avec tous les joueurs et leur taux de 3Bet sur un très grand nombre de mains afin d’être confiant sur la précision de la donnée.

Je ne dispose bien sûr par d’une telle base de donnée, mais je peux utiliser en première approximation la base de donnée de mon tracker.

Il est possible d’affiner le résultat si l’on considère que l’on a quelques infos sur le joueur considéré. Dans le cas présent je vais supposer que celui-ci est un joueur régulier.

De ce fait je ne vais extraire de ma base de données uniquement les joueurs avec un VPIP compris entre 15% et 28% et sur lesquels j’ai au moins 500 mains.

Cet échantillon va nous permettre d’établir une répartition des taux de 3Bet sur une population de joueurs réguliers.

[color=#0000ff]Il s’agit d’une seconde hypothèse simplificatrice :

(H2) La répartition des taux de 3Bet réels des joueurs réguliers est suffisamment proche de la répartition donnée par l’échantillon de joueurs obtenu grâce à mon tracker.[/color]

P(T3Bo(n)=x) correspond à la probabilité qu’un vilain ait un taux de 3Bet observé sur n mains de x%. Il est important de rester cohérent avec l’hypothèse précédente et ne calculer cette probabilité que sur l’éventail des joueurs « régulier » (c’est à dire avec un VPIP compris 15% et 28%).

La probabilité qu’un vilain pris au hasard dans l’échantillon des joueurs « régulier » ait un taux de 3Bet observé de x% sur n mains va dépendre de son taux de 3 Bet réel. Il faut donc considérer chaque taux de 3Bet réel possibles et pondérer par la probabilité que vilain ait effectivement ce taux de 3Bet réel.

Cela se résume par l’équation suivante :

[center]
F1.png[/center]

Avec xi l’ensemble des valeurs de 3Bet réels possibles.

P(T3Br=xi) et les xi sont connus grâce à notre base de donnée extraite lors de l’étape précédente.

Reste à déterminer P(T3Bo(n)=x|T3Br=xi).

Du fait de l’hypothèse b[/b] P(T3Bo(n)=x) est en fait la probabilité que le taux de 3Bet observé soit compris dans l’intervalle (x-0,5, x+0,5( sur n mains.

[color=#008800]Prenons un exemple simple en supposant n=645 et x=6%. La probabilité que vilain 3 Bet 6% du temps sur 645 mains (soit 645 x 0,31=200 opportunités de 3Bet) revient à calculer la probabilité que vilain ait 3 Bet 11 fois ou 12 fois. Car s’il 3Bet 10 fois son taux de 3Bet sera de 5% et s’il 3Bet 13 fois il sera de 6,5 arrondi à 7%.

On a donc [/color]

[color=#008800]P(T3Bo(200)=6%|T3Br=xi))=P( (« vilain 3Bet 11 fois sur 645 mains » | T3Br=xi) U (« vilain 3Bet 12 fois sur 645 mains » | T3Br=xi) )

Soit [/color]

P(T3Bo(200)=6%|T3Br=xi)) = P(« vilain 3Bet 11 fois sur 645 mains » | T3Br=xi) + P(« vilain 3Bet 12 fois sur 645 mains » | T3Br=xi)

Si l’on généralise on peut écrire la formule suivante:

[center]
FormuleF2.png[/center]

Reste à déterminer P(T3Bo(n)=k|T3Br=x)

Posons m=n x 0,31 le nombre d’opportunités de 3Bet du joueur sur les n mains.

Vilain peut 3Bet k fois sur les m opportunités de plusieurs façons. Il peut 3Bet les k premières mains et ne plus 3Bet ensuite. Ou bien il peut 3Bet 1 main sur 2 jusqu’à avoir 3Bet k fois puis ne plus 3Bet. Il y a autant de possibilités de ce genre que de façon de choisir k mains parmi les m où le 3Bet était possible.

Ce nombre de combinaison, bien connu en théorie des probabilités, est donné par la formule Cm,p= !m / [ !p x !(m-p)]

La probabilité que chacune de ces possibilités se produise est égal à x^p * x^(m-p)

En effet, pour chacune des m mains le joueur a x% de chance de 3Bet (car T3Br=x).

La probabilité pour une combinaison donnée peut s’exprimer sous la forme P(C)=P(A1 & A2 & A3 … & Am) avec Ai l’événement « vilain 3bet cette main » ou l’événement « vilain ne 3Bet pas cette main » suivant la combinaison considérée.

Si l’on considère que ces probabilités sont indépendantes on a

P(C)=P(A1) x P(A2) x … x P(Am)

[color=#0000ff]Considérer que ces probabilités sont indépendantes est notre 3ème hypothèse simplificatrice (H3).

Elle est rigoureusement exacte si l’on suppose que chaque joueur ne 3Bet qu’en fonction de sa main. Dans la réalité ce n’est sans doute pas le cas car un joueur qui vient de 3Bet peut hésiter à 3Bet en bluff juste après. On imagine mal qu’un joueur qui a A5s dans sa range de 3Bet, 3Bet 5 fois de suite s’il recevait cette main autant de fois consécutivement. On estime cependant que cette erreur reste acceptable d’autant qu’elle peut être compensée par le fait que vilain peut avoir tendance a 3Bet plus finement en value lorsqu’il vient de 3Bet en bluff.

En outre, Le calcul si l’on considère que les probabilités ne sont pas indépendante devient très complexe voire impossible car il faudrait connaître les ajustements fait par les joueurs sur leur range de 3Bet en fonction des dynamiques.

[/color]

Avec l’hypothèse b[/b], on peut écrire P(C)=P(A1) x P(A2) x … x P(Am)

Or P(Ai) = x si Ai = « vilain 3Bet cette main » et P(Ai)=(1-x) si Ai= « Vilain ne 3Bet pas cette main »

On aboutit donc à la formule P(C)=x^p * x^(m-p)

P(T3Bo(n)=k|T3Br=x) est la probabilité qu’une de ces combinaisons se produise. Comme ces combinaisons sont exclusives (on ne peut pas observer 2 combinaisons en même temps), on en déduit l’égalité suivante :

P(T3Bo(n)=k|T3Br=x) = Cm,p * P(C) = Cm,p * x^p * x^(m-p)

Nous touchons bientôt au but de cette partie théorique.

Afin de féliciter ceux qui sont parvenus jusque-là (bravo !!), je propose une petite récompense sous forme du droit à participer à un tirage au sort vous permettant de gagner 1 licence gratuite du logiciel RoomLauncher. Pour cela envoyez moi un message via le formulaire de contact de pokertoolsonline.fr avec comme sujet « Article PA de décembre ».
Le tirage au sort sera effectué le 12 janvier.

Reprenons avec le le dernier terme de l’équation b[/b]: P(T3Bo(n)=x | T3Br=x)

Et la bonne nouvelle c’est que cette partie est qu’il n’y quasiment rien à faire car la partie précédente nous indique comment calculer P(T3Bo(n)=x | T3Br=x) grâce à la formule (F2)

Nous allons donc pouvoir passer à l’application numérique…

Estimation du taux de 3Bet réel d’un joueur : Application numérique

Pour cette application numérique, les formules étant relativement complexes il n’est pas concevable de les effectuer « à la main ».
J’utilise donc un outil très pratique pour ce genre de calcul, à savoir Excel.

Pour commencer il faut récupérer la base de données de mon tracker sous forme Excel, en filtrant sur les joueurs ayant un VPIP compris entre 15% et 28% et sur lesquels je possède au moins 500 mains. Il s’agit essentiellement de joueurs de NL20, NL30 et NL50 et uniquement en SH.
HEM2 permettant de faire des exports vers excel, j’obtiens un fichier avec la liste des joueurs, le nombre de mains jouées par chaque joueur et son taux de 3Bet.

A partir de ce fichier, grâce à un petit programme (aussi appelé macro excel), je détermine la répartition des taux de 3Bet c’est à dire le pourcentage de joueur qui 3Bet entre 0 et 0,5%, entre 0,5% et 1,5%, entre 1,5 et 2,5% etc…

Cela me permet d’obtenir la répartition représentée sur le graphique suivant:

[center]
Repartition.png[/center]

On observe que l’on a bien une répartition en cloche typique de ce type d’échantillonnage statistique.

On note également les points suivants :
o 50% odes joueurs ont un taux de 3Bet compris entre 3,5% et 6,5%
o 72% des joueurs ont un taux de 3Bet compris entre 2,5% et 7,5%
o 10% des joueurs ont un taux de 3Bet inférieur à 2,5%
o 10% des joueurs ont un taux de 3Bet supérieur à 8,5%

On peut dire, qu’intuitivement ces résultats ne surprennent pas énormément et rassurent sur la validité de l’hypothèse i[/i] malgré la taille relativement faible de l’échantillon (500 joueurs).

Et même si la répartition réelle des taux de 3Bet est sans doute légèrement différente, cela ne devrait pas impacter énormément les résultats de cette analyse.

J’utilise ensuite une autre macro excel qui permet d’estimer, pour un taux de 3Bet observé et un nombre de mains donné, la probabilité que le taux de 3Bet réel se trouve dans chaque intervalle défini (à savoir [0,0.5]; [0.5,1.5]; [1.5,2.5] ; … ; [10.5,11.5] et je m’arrête là car peu de joueurs ont un taux de 3Bet supérieur à 11%).

On obtient ainsi le tableau suivant:

ApplicationNumriqueTableau.png

Le tableau montre pour des taux de 3Bet observés de 5 et 10% la probabilité que le 3Bet réel se trouve dans chaque intervalle. Il est plus simple d’analyser ces résultats sous forme graphique et c’est ce que nous allons faire.
Cependant, avant cela, intéressons-nous aux dernières colonnes qui donnent respectivement le taux de 3Bet moyen, l’écart type par rapport à la moyenne et l’écart type par rapport à la valeur affichée dans le HUD.

L’écart type mesure la dispersion par rapport à la valeur (moyenne ou observée) respectivement. Il donne donc une idée de la précision par rapport à ces valeurs (plus il est petit plus la valeur réel à des chances d’être proche).

On constate donc (et ce n’est pas une surprise) que le 3Bet réel est plus proche statistiquement, de la valeur moyenne que de la valeur observée.
Cela est particulièrement significatif lorsque la valeur observée est loin de la moyenne comme c’est le cas dans l’exemple avec le taux de 3Bet de 10%.

Sur 200 mains on constate que si l’on observe un taux de 3Bet de 10% il y a plus de chances que le joueur ait en réalité un taux de 3Bet compris entre 6.5% et 7.5%.

Cela n’est pas surprennant lorsqu’on reprend le théorème de Bayes que nous avons utilisé.

Le fait que l’on observe un 3Bet de 10% augmente la probabilité que vilain ait un taux de 3Bet élevé. Mais cela est compensé par le fait que peu de joueurs ont effectivement un taux de 3Bet de 10%.
Sur peu de main il y a donc finalement plus de chance que le joueur ait eu un rush de mains « 3Bettables ».
Plus le nombre de mains augmentent et plus les chances que vilain ait eu un tel rush diminue et c’est alors le taux de 3Bet observé qui prend le dessus sur la rareté d’avoir un taux 3Bet à 10%.

Cela apparaît sur les graphiques suivants:

[center]
ApplicationNumriqueGraph.png[/center]

Sur la gauche les diagrammes pour un taux de 3Bet observé de 5% et sur la droite pour un taux de 3Bet de 10%.
Le phénomème décrit précédemment apparait sur le premier graph 10% à droite. L’histogramme est centré non pas sur la valeur observée mais plutôt sur une valeur proche des valeurs de taux de 3Bet réel plus standard.

Quand le nombre de mains augmente, le graph converge vers la valeur observée sans surprise.

De ces graphiques nous pouvons tirer les enseignements suivants:

o La valeur observée ne commence a donner une idée significative sur le taux de 3Bet qu’à partir de 1000 mains environ. Et encore il ne s’agit que d’une tendance qui permet de savoir avec suffisamment de confiance vilain est un 3Betteur standard ou plutôt élevé.

o Sur un nombre de main faible, le taux de 3Bet affiché est d’autant moins significatif que le celui-ci est très élevé (ou très bas). Il y a toute les chances que cela soit juste lié au hasard des cartes.

o Vers 5000 mains on a peu près 60% de chance que le taux de 3Bet affiché soit le taux de 3Bet réel du joueur (à 0.5% près)

Conclusion

Cet article montre que les données fournies par nos tracker doivent être utilisée avec précaution.
Cependant, ce n’est pas en premier lieu l’outil qui est à remettre en question mais surtout l’interprétation qui est faite par l’utilisateur des informations mises à disposition.

En effet, les données du tracker sont rigoureusement exactes (sauf bug).
Lorsqu’il indique qu’un vilain a check-raise 5 fois en 100 opportunités c’est bien la réalité.
C’est à hero de prendre conscience que cela ne signifie pas de façon absolue que vilain check/raise 5% du temps.

Ce travail demande un effort aussi bien d’un point de vue mathématique que d’un point de vue psychologique.
Nous avons vu une partie de l’aspect mathématique au travers de cet article. L’aspect psychologique est le travail à faire par chaque joueur pour accepter que l’on utilise pas son tracker toujours à bon escient. Il faut sans doute commencer par là pour trouver la motivation d’aborder l’aspect mathématique.

Ce travail peut tout de même être facilité par le tracker.
Bien que les données qu’il fournit soient exactes, la façon dont elle sont présentées sur l’interface utilisateur, joue un rôle important dans l’interprétention que le joueur en fait.

Ecrire cet article m’a permis d’identifier 3 axes d’amélioration de cette présentation:

1. Offrir un code couleur permettant d’indiquer la fiabilité de la statistique.

Aujourd’hui ce code couleur est utilisé pour indiquer si la valeur est standard, trop élevée ou trop faible. Selon moi l’information de fiabilité est plus importante.

Il y a plusieurs façon d’offrir un telle fonctionnalité:
La plus simple est de laisser le joueur configurer les couleurs en fonction du nombre de mains (ou plutôt d’occurences), comme cela est fait pour les codes couleurs actuels.

Une solution, certes plus complexe, serait d’offrir une coloration par défaut basée sur une étude du même genre que celle faite dans cette article (et qui est d’ailleurs applicable à toutes les statistiques).

2. Afficher une statistique sous forme de graphique.

[color=#ff4400]Sans aller jusqu’à représenter les histogrammes vus plus haut, le tracker pourrait, par exemple sous forme de popup, afficher une petite icone qui représente la forme générale de la statistique.
Il a, a priori, toutes les données pour le faire.

Le tracker pourrait simplement donner l’écart-type mais un visualisation graphique sera toujours plus facile à interpréter.

HUDGraph.png

3. Afficher la valeur moyenne plutôt que la valeur observée

Comme on l’a montré, si l’on utilise le modèle de cet article la valeur moyenne obtenue via le théorème de Bayes est plus précise statistiquement que la valeur affichée sur le HUD.

Ces 3 points nécessitent que le tracker s’appuie sur une répartition réelle de chaque statistique entre les joueurs. Cela peut se faire soit en utilisant la base de données du joueur lui même, si celle-ci est suffisamment importante, soit en se basant sur des statistiques générales obtenues potentiellement par une database centralisée plus importante.
On peut penser que les fournisseurs des principaux tracker possèdent une telle database. En particuliers HEM qui offre la possibilité aux utilisateurs de sauvegarder leur database sur leurs serveurs.

HEM travaille en outre sur une version cloud de son tracker. Esperons que cela leur donnera l’occasion de fournir de nouvelles fonctionnalités telles que celles présentées dans cet article…

[/confidential]

Chtite question, tu développes ça en quel langage ?