証券市場においては、昔から各種データや数学的手法を駆使した分析が行われてきた。一方で、そのような分析ができるのは、膨大なデータや専門的な知見を持つ金融機関や機関投資家と呼ばれる大手の投資家に限られていたのもまた事実。そんな状況が変わり始めたのは、AI技術の進歩がきっかけだった。 現在では、初心者でも扱えるようなポートフォリオ分析等、ITを活用した投資手法が浸透し、個人投資家にもITやデータを活用した金融市場の分析や取引が拡大し始めている。しかし、そうした流れは日本ではまだまだメインストリームとなるには至っていない。そこで、初学者の方々を対象に金融データへ興味を持ってもらうべく、株式会社日本取引所グループ主催による「J-Quants※ データ分析コンペティション」が開催される運びとなった。 本コンペティションは、与えられた銘柄情報や株価情報、ファンダメンタル情報等を駆使して株価の最高値および最安値の予測を行う「ファンダメンタルズ分析チャレンジ」と、現金100万円を原資として、1週間の収益がより高くなるポートフォリオの予測を行う「ニュース分析チャレンジ」の異なるテーマを扱う2つのチャレンジから構成されている。 株価予測を行うファンダメンタルズ分析チャレンジで見事3位入賞を果たしたのが、谷合廣紀さんだ。コンペティションに参加するまで株式に関する知見がほとんどなかったにも関わらず、参加を決めた理由は一体何だったのか。大学院生としての研究、棋士としての仕事、そしてエンジニアとしての業務もある中で、どのような工夫をすることで結果を出せたのか。本音でお話しいただいた。 ※J-Quants:投資にまつわるデータ・環境を提供し、個人投資家の皆様によるデータ利活用の可能性を検証する、株式会社日本取引所グループによる期間限定の実証実験プロジェクト。
▼動画はコチラ▼
気付けば、知らないうちにAIの道に入っていた。
初めてAIに興味を持ったのは、2010年代の後半だったかと思います。ちょうどその頃、将棋の名人がコンピュータに負けたというニュースも出たり、当時から将棋の世界に身を置いていた私もAIが気になっていました。大学院の修士課程に在籍し、研究室で情報系を専攻していたこともあり、比較的AIが身近な環境だったことも興味を持った理由の一つかもしれません。 ただ、興味はありながらも学業、研究が忙しく、本格的にAIを学習していたわけではありませんでした。そんな私がAIにのめり込んでいくきっかけになったのが、将棋の関係者から紹介していただいた、東京大学特任准教授の辻真吾先生との出会いでした。データサイエンス領域の第一人者とお話しできる機会はそうそうないので、無駄にしないためにも少しずつAIを学ぶようになっていきました。 辻先生と何度かお会いするうちに、気付けばAI関連の仕事をいただくようになっていました。簡単なデータ分析から始まり、他にもさまざまなお仕事をいただけるようになりました。しまいには、仕事の延長で書籍を執筆させていただく機会もいただけたんです。こうして振り返ってみても、辻先生での出会いを契機として、プログラミングやAIの道にのめり込んでいったと感じています。
将棋の対局のように、誰かと競いながら高め合えるのがコンペティション。
仕事は責任を持って向き合っていましたが、一人で黙々と作業するというのは、少し性に合わない部分もありました。幼い頃から将棋をやっていたこともあり、誰かと競い合いながら自分を高めていくのが好きだったのです。そういう勝負というか、ゲーム感覚でAIも学べないかと思ったのが、コンペティションに参加したきっかけですね。 今回のコンペティションに参加するまでは、研究内容やこれまでの仕事に近い領域の画像認識系のコンペティションに多く参加していました。テーブルデータを扱うコンペティションは以前に一度だけ参加しただけでした。テーブルデータ解析の手法を忘れないためにもそろそろチャレンジしたいと思っていた時に、ちょうどテーブルデータを活用する今回のコンペティションのことを知りました。 株式というドメインについては、特段勉強していたわけではありません。「システムトレードってどのくらい儲かるのかなぁ」と多少の興味を持っていた程度でした。そんな僕でも、このコンペティションに参加すれば、少しは知識がつくかもしれない。それに、SIGNATEさんのコンペティションには以前にも参加したことがあったので、心理的なハードルも低く、参加を決めました。
自分の勝てるポイントを絞り、そこだけにフォーカスした。
最初にデータを見たときの感想は「よくわからない」というものでした。株価のデータはまだしも、財務諸表のデータは本当に何か重要で、どこに着目すべきなのか、まったくわかりませんでした。AIのスキルが特段高いわけでもなく、株式のドメインの知見もほとんどない。しかも、学業や棋士としての活動、エンジニアの仕事もあるので使える時間も少ない。これは、戦略を立てて、勝負どころを絞らないと戦えない。それが、このコンペティションの出発点でした。 そこで特徴量生成にフォーカスする作戦を立てました。チュートリアルやフォーラムを参考にしながらベースラインを作り込んだ後は、モデル自体の改良にはそこまで工数をかけませんでした。実際、最終的にサブミットしたモデルも、そこまで特徴的なものではなかったと思います。ただ、その分浮いた時間を特徴量生成に注ぎ込んだのです。 その肝心の特徴量に関しては、思いついたものを片っ端から作成していきました。一般的に使われる財務指標を調べて、少しでも有効そうだと思ったものはひたすら実装していきました。各指標だけでなく、前期と比較した際の指標の変化率も含めて、思いつく限り追加しましたね。その結果、最終的な特徴量は400近くになっていたと思います。
他の入賞者の解法にも刺激を受けたコンペティションだった。
この戦略が功を奏し、なんとか3位に入賞することができました。おそらく、モデル改良も含めて広く手をつけていたら、全てが中途半端になって、今回のような結果は得られなかったのではないかと思います。現時点でできることはやれたかなと思いますが、他の入賞者の解法を見ると、まだまだ学ぶ部分は多いですね。 特に印象的だったのが、2位で入賞されていた方の解法です。この方はシステムトレード界隈では有名な方で、豊富なドメイン知識を活用して丁寧に特徴量を作られていました。特徴量の数は自分よりはるかに少ないのに、高い精度を出されていて、やはりドメイン知識は非常に重要なのだと再認識しました。他の活動もあるので、割ける時間の問題はありますが、次回以降のコンペティションに参加する際はきちんとドメイン知識も深く勉強し、活用できたらと思っています。今回でテーブルデータの復習ができたので、次は音声分類など経験の少ない領域のコンペティションに参加したいです。
今後の目標
せっかく棋士を仕事にしているので、将棋とAIを結びつけて何かできればと考えています。例えば、盤面予測の根拠を示してくれるようなAI。盤面の有利不利を教えてくれるAIは既にあるのですが、なぜ有利と判断したのかまで示してくれるものはまだないはず。そんなAIができれば、将棋の勉強にも活用できると思うので、いつの日かつくれたらいいですね。 <株式会社日本取引所グループ主催「J-Quants データ分析コンペティション」ファンダメンタルズ分析チャレンジの入賞者レポートはこちら>