Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Общий план #1

Open
8 of 41 tasks
cuamckuu opened this issue Aug 4, 2021 · 2 comments
Open
8 of 41 tasks

Общий план #1

cuamckuu opened this issue Aug 4, 2021 · 2 comments
Labels
documentation Improvements or additions to documentation

Comments

@cuamckuu
Copy link
Owner

cuamckuu commented Aug 4, 2021

Пишем покерного бота, базовый функционал:

Получение данных

Для начала берём . Позднее можно использовать MITM proxy

  • Скриншоты через winapi вместо pyautogui
  • Разметка через makesense.ai с сохранением csv
  • Парсинг через OpenCV
  • Получение карт в руке
  • Получение карт на столе
  • Получение банка в руке
  • Получение банка в игре
  • Получение банков игроков
  • Получение карт противников при их показе
  • Получение доступных ходов
  • Получение дилера и блайндов

Вычислять

Прочее

  • Логгирование
  • Записывать все ходы в БД
  • Записывать изменения банка в рамках сессии в БД
  • Графики изменения банков
  • Фундаментальная теорема покера
  • HUD overlay
  • Учитывать общие карты на столе
  • Запуск клиента Pokerstars внутри докера через WineHQ Управление VirtualBox через Python (внутри docker по инструкции)
  • Кросплатформенное снятие скриншотов (в т.ч. для нескольких окон)
  • Ресайз окна или работа с произвольным размером
  • Куча полезных штук на основе deuces
  • Конечный автомат с переходами по новым картам на руке и столе
  • Придумать какой-то критерий блефа. Например, случайный рейз на кат-оффе

Почитать

@cuamckuu
Copy link
Owner Author

cuamckuu commented Aug 5, 2021

Интересные комменты

  1. Жизнено необходимо сделать выгрузку статистики в стандартные форматы — я абсолютно не представляю как можно анализировать игру бота без инструментов типа holdem manager или poker traker
  2. 4500 рук в сутки плюс сброс статистики раз в день — это ни о чем.

Ну начнем с того что 4,5к рук в день — это дневная норма (две трех часовых сесиии) для обыкновенного (не гриндера) игрока.

Ну или математически — если наш бот имеет теоритическое премущество в +0.5 ptbb/100 над полем — и std dev в 40 ptbb (достаточно обычное значение) — то только через примерно 600к рук мы можем говорить что с вероятностью 95% этот бот хотя бы плюсовой. При +2.5 ptbb/100 (ничего себе премущество — можно говорить о том что он рвет поле) — при 25к рук можем говорить о том что мы плюсовые с вероятностью о пять же в 95%. А если нам нужно три сигмы — то уже совершенно другие числа.

Тут можно поигратся со сзначениями — но порядки останутся такими же.

Поэтому 30к рук должны отыгрыватся минут за 10-25, а в сутки должно наигрываться не менее 500к рук. И статистика не должна сбрасыватся — иначе как отслеживать динамику.


Тогда нужно на сервере считать и предоставлять статистику полную по каждому боту — начиная от банального процента 3-бетов и прочих базовых статистик, до таких как например — как процент чек-рейзов на терне при 4 флеш доске, в руках которых он был опен-рейзером на префлопе, и сыграл чек-кол на 3 флеш флопе.

Либо все будут считать и хранить это сами — если конечно будут к вопросу подходить серьезно.


Speaking from cash, once you choose your format, set aside an amount you have for 30 buy ins at the lowest available stake, so perhaps $60 for NL2, or more of you are comfortable losing that in a month. Commit to some number of hands, say 20,000. Don’t expect to win right away, just play. Spend two thirds of your time playing, one third of your time studying individual hands and talking with others. No matter what you do, do not switch stakes or format until your hand number is reached. Do not be discouraged if you are losing, you’re losing pennies. You expect to lose these 30 buy-ins, and are pleasantly surprised if you make it to 20K hands with money left. Do not worry about profit.

When you have a reasonable (but still small) sample of 20K hands or you are out of money, take a large amount of time spread over a few sessions, say 4-8 hours spread over 3 times. Reflect and line your stats up with recommended stats, and see where you are different. Read articles pertaining to your stat differences, download tools to work on your ranges, and try to write down some specific goals for your next 20K block of hands. If you have less than 30 buy ins, decide if you want to continue and add more money. If you have more than 50 buy ins, move up in stakes. If you have a 20K session of break even or winning play, feel free to move your time commitment to more studying and less playing, perhaps 50/50, and mix in other studying activities than just looking at your hands (reviewing others hands and seeing who agrees with you. Reading books while sitting at your computer with your hand database open, etc).

Repeat.

Eventually, you will either give up, try a different method, or make it to a stake where you remove 10 buyins everytime you make it to 40 or 50 buyins and this is enough to supplement your income.

The main takeaway here is that being anything other than a casual poker player isn’t about math, reading, manipulating, or loving GTO theory. It’s about temperament, focus, and patience.


Имеет 100% качества живого игрока, в точности:

выдерживает всегда различное время раздумывания перед каждым ходом, через определенное время иногда ставит статус отошел(sit out), потом возвращается;
в определенных ситуациях и позициях блефует и крадет блайнды;
следит за количеством игроков за столом и за их размерами стэков;
при выявлении сильного игрока, играет с ним с особой осторожнностью.

@cuamckuu cuamckuu added the documentation Improvements or additions to documentation label Aug 5, 2021
@cuamckuu
Copy link
Owner Author

cuamckuu commented Aug 5, 2021

I think it was right at $30 an hour EV.

Sounded good, but let's look at it objectively. What if I came to you and offered to supply you with all your food, shelter, and clothing needs, plus put a little extra spending cash in your pocket? And what do you have to do? Well, you have to lock yourself into a closet 8 hours a day where there is a little light and a button. Every time the light flashes, you have to push a button. Probably have to push the button about every 10 seconds.

That's it. Just sit in the closet and push a button. You can listen to music (you won't be able to read or watch TV), you can take a break and eat or go to the bathroom when ever you want, there is no set schedule, you can get in and out of the closet when ever you want. The only requirement is get your eight hours of button pushing in a day.

No advancement. No raises. No thought, discovery, or improvement. Just lock yourself in the closet and push the button. 8 hours. Every day. But, hey! All your bills are paid, and you got some spending money on your off-time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation
Projects
None yet
Development

No branches or pull requests

1 participant