ランダムフォレストをクビにしてCNNとLSTMを導入し、相対リターンを説明するためのデータを用意した
AIを使って日本株のトレーディングをしようと思ってます。でも、なかなか現実的なモデルができません。絶対リターンが高くなるには、いつ、どの銘柄を買えばいいかについて学習させたところ、パフォーマンスのいいモデルを作ることはできました。
ただ、ちょっとしか買っちゃだめな日と、ありえないくらい大量に買わなければいけない日がでてきて、現実的に運用が難しいということがわかりました。ある日は100万円の投資額で、ある日は3億円の投資額といった感じです。
investor-satoshi.hatenablog.com
ということで、ある日に何百銘柄買うということがあってとしても、それらから優先的にどの銘柄を選べばいいのかを分析するAIも作っています。簡単にまとめると以下のようなデータ・セットとモデルを準備しました。
データ1:短期的なデータ・絶対リターン
データ2:長期的なデータ・絶対リターン
データ3:短期的なデータ・相対リターン
データ4:長期的なデータ・相対リターン
モデル1:xgboost
モデル2:ニューラルネットワーク
モデル3:CNN
モデル4:LSTM
データは、今まで絶対リターンのみでパフォーマンスをみていましたが、相対リターンについてを説明するようなデータ・セットを用意しました。たとえば、同じ1%のリターンでも、期間の平均が2%だったら悪く評価し、期間の平均が0%だった高く評価するものです。これにより、購入候補の銘柄が多い場合でも、どの銘柄を選択すべきかの基準ができるようになります。
モデルでは、ランダムフォレストはパフォーマンスがイマイチだったのでクビにして、ニューラルネットワークのCNNとLSTM新たに加えました。
これらのデータセットとモデルで新しく分析し直しています。うまく行けばいいですが。。
追記:いまのところデータ4はどのモデルでもうまくいかないことがわかりました。笑