スパイシーな日常をかみしめる

理系大学院生のほんのちょっと変わった日常

#15 pythonで競馬に勝つ!序章

Python をギャンブルに使いたいと思います。
4月までにプログラムを作り上げて評価しておきます。

具体的に何がしたいのか
目的:競馬の勝つ馬を予測する

Pythonも全くの初心者なので、難易度とかは知らないですが、これぐらいならできそうですね。




手段
1、全ての馬のデータを入れる。

やり方はスクレイピング?手作業?
この辺はわからないけど、挑戦します。

スクレイピングとは、
自動でWebサイトから情報をインプットすることです。



2、1で入力したデータの中で、
どの要素か勝つことの高い相関を持つのか分析する。

例えば、遺伝子?過去の同じ会場での実績?最近の実績?レーン?季節?時間帯?

やり方は重回帰分析かな?
これにより、モデルを作成しましょう。
各会場毎のモデルになりそう。




3、最後は、出場する馬の各データを入れると勝つ確率順に並び替えてくれるプログラムの作成 





実際のプログラムのイメージ
データ収集が終わり、データのクレンジング(悪いデータを抜くこと)も終わってるとします。 
つまり関数のモデルとして出来上がっている

1、インプットで要素を入力させる。
会場や、要素、季節、時間帯などの入力を促す。

2、機械がどの目的関数を使用するかを決め、
各馬にたいして目的関数の結果を出力する。

3、最適化問題のように、この中で目的関数の値が最大となるものを選ぶ。

4、出力される文字は以下のようにします。笑

各レーンの情報を入力してください。

各レーンの馬の勝率は...
1レーン:
2レーン:
‥‥‥

各買い方の期待値は‥‥ 
3連複 をおすすめします。‥‥


ってなってくれたら嬉しいですね笑




このプログラムの悪い点は、
・毎レース毎、競馬の新聞のデータを入力ないといけないため手間がかかる。
→ここでもスクレイピングを使えたらいいかも。

・会場を絞る必要がありそう。
・遺伝子の情報は親の勝率とか?

 



理想は、、
どの買い方をしたら、いちばん儲かるのかを教えてくれるところまでやりたい。 

それぞれの馬の勝率がわかるので、
そこから各買い方の確率を計算し、期待値を出す。
 
例えば、これを携帯アプリにしてしまえば
簡単に予測が出来るという夢がありますね。




3月末までに必ず実行します。
少々お待ちください。急ぎの方はコメントしてください。