2025年6月、loto-optimizer でロト6/7 予想プロジェクトを集約した。2023年の loto6-predict → any-loto → 2025年の loto-picker と続いてきた「計画的娯楽」シリーズの、現時点での集大成。
当てるためではなく、データ分析を楽しむためのもの。ギャンブルではなく趣味のデータサイエンス、というスタンスは README にもしつこく書いた。
構成
今回は Python を捨てて、Next.js(TypeScript)に全部寄せた。データ取得から分析 API、フロントの可視化までを1リポに。
- ロト6(2000年〜・2000回以上)/ ロト7(2013年〜・600回以上)の全履歴を CSV で収録
- スクレイパは Python から TypeScript に移植(axios + cheerio + csv-writer)
- 分析は Next.js の API Route として実装
数学的アプローチを並べてみた
せっかくなので、当て方を1つに絞らず、いろんな「数学的アプローチ」を別々の API として並べた。
/api/number-theory/...— 数論・暗号理論アプローチ/api/stats/...— 統計分析・確率論/api/ml/train/api/ml/predict— 機械学習(TensorFlow.js)/api/game-theory/strategy/api/game-theory/risk— ゲーム理論・経済学アプローチ/api/wheel/...— ホイールシステム
それぞれにフロント UI とテスト(Vitest)を付けて、「アプローチごとに出方がどう違うか」を眺められるようにした。当然どれも当たらないけど、手法を横並びにすると、各手法が「ランダム性に対して何を仮定しているか」が見えてくるのが面白い。
学び
with test 方針で、各アプローチをロジック単位でテストしながら足していったのが効いた。アプローチが増えても、API とテストが1セットになっていると壊れに気づける。
数論・統計・ML・ゲーム理論を1つの題材(ロト)で実装し分けると、それぞれの考え方の輪郭がはっきりする、という意味では、勉強教材としてかなり良い遊びだった。
おわり
4年かけた private リポ群の総まとめ。「当たらないと分かっているものに、どれだけ真面目な手法を当てられるか」という遊びとしては、これで一区切り。次やるなら、可視化をもっと厚くして「手法ごとの偏りの見える化」に振りたい。