見出し画像

River betレンジの可視化

はじめに

この記事は集合分析のデータを使ってRiver betレンジを複数の視点で可視化した結果をまとめたものです

Riverの集合分析はデータ量がFlopと比較して膨大になるので、処理が難しくあまり分析が行われていない印象があります、なので簡素な内容ではありますがこの記事を書くことにしました


分析対象

BTNvsBB 2betとSBvsBTN 3betにおけるRiverを分析対象としています
詳細な集合分析の設定は付録に記載しています


IP編

BTNvsBB 2betにおけるBTN側のRiver戦略についての分析です

Bet頻度の分布

ボードを集計対象として、横軸をレンジ全体のアクションの頻度、縦軸をその頻度を持つボードの数としたヒストグラムです

bet戦略の分布を可視化することを目的としています

Riverまで全てチェック


Flop:33%CB→Call Turn: x


Flop:33%CB→Call Turn: 66%CB→Call


Flop:66%CB→Call Turn: 150%CB→Call

これらのグラフから次のことが分かります

River IPでも安betは使われる
トリプルバレル以外では33%betも使われます
これはBB側に低EQのハンドが残っていることが原因と思われます


分布の山が1つしかない

どのグラフも0%の部分を除けば、1つの山で構成されている
(山が複数あるパターンが存在しないのは意外でした)
なので0%を除いた最頻値を暗記しておくと困った時に救われるかも?


EQB毎のbet頻度

EQB別に全ボードの平均を取った表です

EQRはEQ0%のハンドのEQRを定義するために独自の定義をしています
EQR = EV(pot%) - EQ(pot%)

OOP, IP EQB列は各EQBがレンジ全体に占める割合を百分率で表しています

Riverまで全てCheck


Flop:33%CB→Call Turn: x


Flop:33%CB→Call Turn: 66%CB→Call


Flop:66%CB→Call Turn: 150%CB→Call


これらの表から次のことが分かります

EQが30-75%のハンドは90%以上の頻度でCheckが選択される
これはRiverにおけるIPのCheckがEQを100%実現できるアクションであり、均衡においては中程度EQハンドのEVがEQ以上になることが稀であることが原因だと考えれらます
実際にEQRを確認するとEQ30-75%の値はほぼ0で、CheckよりもEVの高いアクションが殆ど存在しないことの裏付けになっています


バリューレンジの強さ

ボードを集計対象として、横軸をbetレンジのEQ50%以上のハンドの平均EQ、縦軸をその平均EQを持つボードの数としたヒストグラムです
(レンジ全体で3%以上の頻度があるサイズをサンプルのみにしているので、サイズ毎のサンプル数は一致していません)

各サイズのバリューレンジの強さを把握することを目的としています

Riverまで全てCheck
Flop:33%CB→Call Turn: x
Flop:33%CB→Call Turn: 66%CB→Call
Flop:66%CB→Call Turn: 150%CB→Call

どのサイズも狭い範囲にデータが集中しており、バリューレンジの強さはボードとラインによる変化が少ないことが分かります

Flop:66%CB→Call Turn: 150%CB→Callの146.4%betのみ特殊な分布をしていますが、これはこのサイズがallinでありraiseされる可能性がないことが要因だと思われます

トラップ割合

ボードを集計対象として、横軸をbetレンジに含まれるEQ90%以上のハンドの割合(トラップ割合)、縦軸をそのトラップ頻度を持つボードの数としたヒストグラムです
(こちらもレンジ全体で3%以上の頻度があるサイズのみをサンプルにしています)

Riverまで全てCheck
Flop:33%CB→Call Turn: x
Flop:33%CB→Call Turn: 66%CB→Call
Flop:66%CB→Call Turn: 150%CB→Call


これらのグラフから次のことが分かります

33%betレンジはキャップされていることが多い
意外な結果でしたが、均衡でもキャップされたbetが多用されています

66%betレンジのトラップ割合は概ね20%
あまり綺麗な結果は出ませんでしたが、概ね20%付近に分布しています


OOP編

SBvsBTN 3bet 100BBのSB側のRiver betに対してIP編と同じ分析を行いました
EQB毎のbet頻度には大きな違いがあります

Bet頻度の分布

トリプルバレルのラインでは20%betは低頻度です、一方でFlop:50%CB→Call Turn: xのラインではbetはallin or 20%betに近いです

IPと同じく0%頻度を除くと分布の山が1つであり、最頻値の暗記は有効だと思われます

Riverまで全てCheck


Flop:50%CB→Call Turn: x


Flop:50%CB→Call Turn: 50%CB→Call


EQB毎のbet頻度

OOPはIPとは違いCheckをしてもSDにはならず、IPのポラーなbetを受ける可能性があります、それが原因でOOPのEQ20-70%のハンドの平均EQRは全てマイナスになっておりOOPの辛さが分かります

上記が原因でEQ50%以上のハンドは積極的にbetされます、しかしEQ25-50%のハンドはOOPでもCheck頻度が高く、全レンジでのブロックベットが使えるわけではありません

Riverまで全てCheck


Flop:50%CB→Call Turn: x


Flop:50%CB→Call Turn: 50%CB→Call


バリューレンジの強さ

IPと同じく最頻値付近に分布が集中していて、ラインとボードによる変化は少くなく見えますが、SPRの低いトリプルバレルのラインはばらつきが大きいです

Riverまで全てCheck
Flop:50%CB→Call Turn: x
Flop:50%CB→Call Turn: 50%CB→Call

トラップ割合

20%betレンジはキャップされている場合が多いです
Checkレンジは10%、50%betレンジは20%程度のトラップを含みます

Riverまで全てCheck
Flop:50%CB→Call Turn: x
Flop:50%CB→Call Turn: 50%CB→Call


OOP編2

BTNvsBB 2betpotのBB側のRiver betに対してIP編と同じ分析を行いました
前述のOOP編とほぼ同じ傾向です

Bet頻度の分布

33%が最も高頻度で使われます

他の場合と同じく0%頻度を除くと分布の山は1つしかありません

Riverまで全てチェック


Flop:33%CB→Call Turn: x


EQB毎のbet頻度

こちらも前述のSBと傾向は同じでEQ15-75までのハンドはEQ以下のEVしか得られません、ブロックベットをする閾値はEQ60%付近にあるように見えます

Riverまで全てチェック


Flop:33%CB→Call Turn: x


バリューレンジの強さ

こちらも前述と同じでデータのばらつきは小さく、特筆すべき点はありません

Riverまで全てチェック
Flop:33%CB→Call Turn: x


トラップ割合

やはり33%のブロックベットはレンジがキャップされている場合があります
それ以外だとトラップ割合は15%付近に集中しています

Riverまで全てチェック
Flop:33%CB→Call Turn: x


まとめ


IPでSDVがありそうだがEQが80%に満たなそうなハンドを持っていたら鉄チェック

OOPでSDVがありそうだがEQが50%に満たなそうなハンドを持っていたら鉄チェック

OOPでEQが50%を超えていそうなハンドを持っているならブロックベットを検討する

River bet頻度の分布は0%頻度を除けば1つの山しかないので、最頻値を暗記することは有効

付録1 Piosolverの設定

プリフロップレンジ: Wizard50nl simple
eff: 100BB
精度: 2betpot 0.3%, 3betpot 0.1%
Flop subset: 50種類(Piosolver付属のサブセット)
レーキ: 0%

付録2 River集合分析のTips

Piosolverを使ったRiverの集合分析をしたい方向けの情報です

Piosolverではソリューションの保存方法としてsmall saveが推奨されていますが、この保存方法だとTurnまでのツリーしか保存されず、River以降のツリーはTurn終了時のレンジを基に再計算されます

そのため、次の2つの問題が発生します
1.Riverを再計算しているので集合分析レポート(report.csv)の出力が非常に遅い
2.Turn終了時点でのレンジが均衡に存在しない場合に、Riverの戦略が明らかに不適切になる

2の具体例
IP側がFlopもしくはTurnで均衡での頻度が0%のサイズを使用すると、Riverを計算するためのIP側のレンジが定義できなくなるので上記の画像のような、明らかに不適切な戦略が出力されます

これらの問題を回避する方法は簡単で、保存方法をfull saveにするだけです
しかし新たな問題が発生します

プリフロレンジの広さとbetサイズの数によって異なりますが、今回のBTNvsBBの計算だと1Flopのサイズが約10Gになりました

この問題を解決する方法はFlopのsubsetを減らすか、ストレージを増やすかの2択で今回の分析でsubsetの数が50と少ないのはこれが原因の1つです

この記事が気に入ったらサポートをしてみませんか?