<株考察>9/2 考察、今後の予定

目次

  1. 現状の考察
  2. 今後の予定
  3. その他

1.現状の考察

なかなかうまくいかない(プログラムが間違ってる可能性もありますが)現状を鑑みるに、そもそもアプローチが間違っているのでは?という懸念が出てきました。

突然ですが、勝つ麻雀のAIを作るとしたらどうやって作りますか?

僕は、「14枚の手牌から期待値に基づき切る牌を正しく選択する」ことを正確にできるようにします。

間違っても、「次ツモる牌を高い精度で予想するモデルを作成し、その予想に基づいて切る牌を選択する」アプローチは取りません。

どの牌が山に残っているかの読みが正確にできても、その牌がツモれる確率が5%程度上がるだけです。
一番当たる確率の高いハイテイツモの予想ですら王牌14牌+ツモ1牌の15牌。特定の牌が4枚生きていると読んだとしても、ツモれる確率は4/15=26%程度。一番当たる確率の高いハイテイツモですらこの程度です。ツモる牌を高い精度で予想するなんて不可能です。(※以下のような場合を除く)

【数学】たかしくんが40枚一組のデッキの中から特定の切り札1枚を、第n回目のドローで引き当てる確率を求めなさい。ただし、たかしくんは真のデュエリストとし、たかしくんとカードの間の絆は十分に深いものとする。
※元ネタ:matome.naver.jp

今の僕がやっている株価予測、上の例でいうと後者をやろうとしている気がします。 こんなことを言っては元も子もないですが、株価の完全な予想なんてできません。
あくまで、期待値ベースで考えて期待値がプラスの行動を取るようにするべきだと思います。

なので、今のアプローチは間違っているんじゃないかと疑っています。 (RNN使いたくてとりあえず予想をやってみたという自分の無計画さが露呈しました。)

じゃあどうするか。
自分のなかでは、2択かなと考えています。

  • 株価の値を予測するのではなく、それぞれの確率を表示するようにする。
  • 強化学習(*)を用いる

(*)強化学習
説明は以下を参照ください。(自分もちゃんとわかってない) qiita.com

2.今後の予定

RNNで株価を予測するのは以下をやってひとまずおしまいにしようと思っています。

  • 1銘柄N日→次の日の終値の予想
    (完了、1次関数〜4次関数までほぼ正確に予測できたが、株価は予測できず)
  • 1銘柄N日→先30日の終値の最大値、最小値の予想
    (完了、1次関数は予測できたが2次関数は予測できず)
  • 1銘柄N日→先30日の終値の最大値、最小値を6分類する(値動き+10%以上、+5%〜+10%、0%〜+5%、-5%〜0%、-10%〜-5%、-10%以下)
    未完了
  • (・M銘柄N日→1銘柄の先30日の終値の最大値、最小値)
    ※自分的には結構パワフルなモデルになると思っています。が、M銘柄×N日→1銘柄を予想する汎用的なモデルをそもそも作れるのか、RNNの深い理解が必須です。。できればやる。

3.その他

  • 以下でソース公開しています。 github.com
  • 遊戯王のくだり、昔読んで爆笑したけどどこだったかなあと探すのに10分も費やしてしまいました。。
  • 最近いろいろと別のことしていてなかなか時間取れません。投資関係もこのブログで書いてみようかな…。