競艇予測プロジェクト途中経過。AIで公営ギャンブルを分析する仕組みを作っている話
今、競艇の予測プロジェクトを進めています。
といっても、まだ実際に舟券を買って利益が出ている段階ではありません。むしろ、今やっているのはその前段階です。データを集める。CSVに整理する。過去レースを使って検証する。そこから、どんな条件なら勝負になりそうかを探す。そういう地味な作業を続けています。
競艇そのものは、日本で合法的に行われている公営ギャンブルです。だから、データも比較的整理しやすい。開催日、競艇場、レース番号、出走表、結果、オッズなど、予測に使えそうな材料が多くあります。もちろん、それがあるから簡単に勝てるという意味ではありません。むしろ、多くの人が同じような情報を見ているので、単純な予想ではまず勝てないと思っています。
ただ、AIやプログラムを使うことで、人間が手作業では見落とすようなパターンを探せる可能性はあります。
ここでちょっと「その動機」についてのお話です。
まず私は「お金の奴隷」になりたくない。つまり金のために時間を犠牲にし信念を捻じ曲げてもしがみつきたくないと強く思っています。しかしマネーがなくては実際の生活に支障がでますね。
だから何らかの形でマネーを手に入れなくてはなりません。ここは考え方の違いもあるだろうし、そもそもどれくらいのマネーがあればいいか? という点もあると思う。
僕の場合は「できるだけ自分を犠牲にすることなく生活に支障のない範囲で」お金が手に入ればいいと考えています。
そもそも「なんで競艇か?」というところなんですが、それは最近のAIの進化によるところが大きい。つまり自分ではコードなんて書けないし、プログラムを一から設計するなんてことは無理だったんですが、そのハードルが一気に下がってきたことによる。
つまり時代が「AIエージェント」に・・つまりAIに代行してもらって「丸投げ」に近い形で分析できる環境になった。これが大きいです。
まずやっているのは「予想」ではなく「土台作り」
最初に取り組んでいるのは、予想そのものではありません。
今やっている中心作業は、データ収集と検証環境の整備です。具体的には、過去のレースデータを取得し、それをCSVに保存し、あとから分析できる形に整えることです。
ここで重要なのは、データが正しく取れているかどうかです。予測モデルを作る前に、元データが間違っていれば、その後の分析は全部おかしくなります。だから、レース数が合っているか、結果が正しく入っているか、オッズが欠けていないか、取得に失敗したレースがないかを確認しています。
実際、この段階でいくつか問題も出ています。
たとえば、データ取得に時間がかかること。数日分ならまだしも、30日分、300レース分と増やしていくと、処理時間がかなり長くなります。また、取得したCSVの中身を見たときに、「これは本当に正しい値なのか?」と確認が必要になる場面もありました。
つまり、AIで予測する前に、まずは地味なデータ整備でかなり時間を使っています。
Codexを使って、プログラムを組ませている
今回のプロジェクトでは、自分でゼロからコードを書くというより、ChatGPTやCodexに指示を出して、プログラムを作らせる形で進めています。
自分がやっているのは、「こういうデータを集めたい」「このCSVを分析したい」「この条件でバックテストしたい」といった指示を出すことです。そして、Codexにスクリプトを作らせる。その結果を見て、また修正指示を出す。この繰り返しです。
たとえば、これまでに次のような処理を作っています。
- レースデータを収集する処理
- 出走表や結果をCSVに保存する処理
- 取得失敗を確認する処理
- オッズ条件を使って絞り込む処理
- バックテストで回収率や的中率を見る処理
- どの競艇場が開催しているか確認する処理
まだ完全に自動化された完成品ではありませんが、「データを取る」「分析する」「条件を変えて試す」という流れは少しずつ形になってきました。
三連単をどう扱うかが大きなテーマ
競艇では、三連単が非常に大きな対象になります。
三連単は、1着、2着、3着を順番通りに当てる舟券です。配当が大きくなる可能性がある一方で、当然ながら当てるのは難しいです。
単純に人気順だけで買っても、期待値が出るとは限りません。逆に、穴を狙いすぎても的中率が落ちすぎる。だから、どこで絞るかが重要になります。
今のところ考えているのは、「予測確率」と「オッズ」の両方を見ることです。
たとえば、AIがある組み合わせを高く評価していて、なおかつオッズが低すぎない場合、その買い目には期待値があるかもしれません。逆に、的中しそうに見えてもオッズが安すぎれば、長期的には利益が出にくい可能性があります。
つまり、競艇予測で見たいのは「当たるかどうか」だけではありません。
大事なのは、「そのオッズで買う価値があるか」です。
まだ利益が出たとは言えない
ここは正直に書いておきます。
現時点では、まだ「この方法で勝てる」と言える段階ではありません。
データ収集の仕組みはできつつあります。バックテストも少しずつできるようになっています。ただ、検証件数が少ないうちは、たまたま良い結果が出ることもあります。逆に、条件を少し変えただけで成績が崩れることもあります。
だから、今はまだ結論を出す段階ではありません。
特に注意しているのは、少ないレース数で判断しないことです。たとえば、数十レースで回収率が良くても、それは偶然かもしれません。300レース、1000レースと増やしたときに、同じような傾向が残るかどうか。そこを見ないと意味がないと思っています。
このプロジェクトでは、短期的に当たった外れたで一喜一憂するのではなく、長期的に残る条件を探すことを重視しています。
やってみて感じたこと
実際に進めてみて感じたのは、予測モデル以前の作業がかなり大きいということです。
最初は、AIに予測させれば何か見えてくるのではないかと思っていました。でも実際には、その前にデータを集める仕組み、データを確認する仕組み、検証する仕組みが必要になります。
しかも、データ収集には時間がかかります。パソコンをつけっぱなしにして処理を走らせる場面もあります。処理が途中で止まったり、取得失敗が出たりすると、その原因を確認しないといけません。
これは、想像していたよりもずっと地味です。
ただ、その地味な部分を乗り越えないと、本当の意味での予測には進めないとも感じています。
今後やること
次にやるべきことは、検証データを増やすことです。
まずは300レース程度で条件を試し、そこで良さそうな条件が見つかるかを見る。その後、さらに期間を広げて、同じ条件が通用するかを確認します。
また、オッズを使った絞り込みも重要になります。単純にAIの予測上位を買うだけではなく、「買っていいオッズ」「買ってはいけないオッズ」を分ける必要があります。
さらに、競艇場ごとの差も見ていく必要があります。競艇は会場ごとに特徴がある可能性があります。インが強い場、荒れやすい場、風や水面の影響を受けやすい場など、そうした差がデータに出るかどうかも気になります。
今後は、次のような方向で進める予定です。
- レース数を増やして検証する
- 取得失敗データを減らす
- オッズ条件を細かく試す
- 競艇場ごとの傾向を見る
- 三連単だけでなく、他の舟券種も比較する
- 実際に買う前提の資金管理ルールを考える
まとめ
競艇予測プロジェクトは、まだ完成ではありません。
ただ、データを集めて、検証して、条件を探すところまでは少しずつ形になってきました。今の段階で大事なのは、「勝てそうな雰囲気」に飛びつかないことだと思っています。
AIを使えば、何でも簡単に当たるわけではありません。
むしろ、AIを使うからこそ、データの正確さ、検証の量、条件の再現性が重要になります。
競艇予測は、ギャンブルというより、今の自分にとってはデータ分析の実験です。合法的な公営ギャンブルを題材にして、AIとプログラムでどこまで予測に近づけるのか。その過程を、今後も記録していきたいと思います。
まだ結論は出ていません。
でも、少なくとも「勘で買う」段階から、「データで検証する」段階には進んできました。
ここから先、本当に使える条件が残るのか。そこが次の勝負です。


