こんにちは、クリプタクトでデータサイエンスを担当しているニコラと申します。私は、2019年1月にクリプタクトに入社しました。簡単に私の経歴を申し上げると、2010年にフランス放射線防護原子力安全研究所(IRSN)にてデータモデリング及び分析の研究で博士号を取得した後、2011年に福島第1原子力発電所の事故をうけて来日しました。
データサイエンティストとして筑波大学にて放射性物質の環境移行の研究に従事し、その後、最新の機械学習・深層学習を用いた株価予測モデルや様々なプロジェクトに携わってきました。
今回、暗号資産の価格予測と人工知能(AI)をテーマに、コラムを執筆することになりました。最後までお付き合い頂けると幸いです。
人工知能(AI)とは
人工知能(AI)と聞くと謎めいたものに思うかもしれません。AIのアルゴリズムは、脳のニューラルネットワークを基本的なレベルで複製したり、問題を解くために単純な線形代数を使用したりするのですが、AIが様々な課題を人間よりも速く、そして優れた形で解決する能力を持つであろうことに疑いの余地はないでしょう。
有名な例では、脳腫瘍診断におけるBioMind、囲碁ゲームにおけるAlphaGo、顔認識におけるDeepFaceなどがあります。
AIは日々進化し、多くの企業にとって、投資、リスク管理、人材育成・評価など、企業活動をより円滑にするためにも無視できないものとなっていますが、なぜこのテクノロジーはこれほどまでに強力で多くの企業が用いようとするのでしょうか。
当コラムでは、暗号通貨価格を予測するためのAIを例として、なぜAIが使用されるのか、そして背後にある課題は何かについて簡単に説明したいと思います。
人はどのように最適な投資を行うのか
投資戦略は、運用スタイルや資産クラスによって異なります。その根幹となる資産価格の予測は簡単ではなく、政治・経済、あるいは投資家のセンチメントなど、影響を与える要素は数多くあります。
まず、人間の投資家について考えてみましょう。投資家は通常、誰もが独自の投資戦略を持っており、自分たちの経験から関連があると考えている指標に注目し、資産価格の予測や最適な資産構成の判断を行います。
この指標と判断(ここでは「意思決定プロセス」と呼びます)を、コンピューター上でルールベースの手法で自動化もできるでしょう。これはRPA(Robotic Process Automation)と呼ばれるものです。
しかし市場は継続的に変化するため、意思決定プロセスもまた市場環境に応じて変化しなければならず、同じものが永続的に機能することはありません。正しい投資判断を行うには、例えばどの指標が現在有効かを常に把握しなければなりませんが、仮に前もって多くの指標を用いた意思決定プロセスをRPAで自動化したとしても、うまく機能しません。
なぜなら、市場環境に応じた変化をあらかじめルールとして意思決定プロセスに実装するのは非常に難しいからです。
簡単な例として、ビットコインの値動きを予測して投資判断を行う際に、移動平均価格をその指標として採用することを考えてみましょう。2017年3月1日から2017年3月7日までの1分毎のビットコイン価格データで実験してみました。期間の短さや日付はランダムに選択したものですが、ルールベースの手法がうまく機能しないことをよく表せています。
シンプルなルールベースの移動平均戦略
まず、24分毎と48分毎の2つの移動平均価格を計算し、それぞれ短期平均、長期平均と名付けてみます。なお、後ほど理由は説明しますが、この2つの期間はどのように選んでも結構です。
投資判断は、この短期平均や長期平均の値に基づいて行います。例えば短期平均が長期平均よりも高い場合、投資判断は「買い」、逆は「売り」とします。そこで、下記のような前提をおいてこの戦略のパフォーマンスを測定しました。
- 「買い」が出たらビットコインを1万円分購入。「売り」の場合は空売り。
- すでに1万円分のポジションがある状態で、次に同じ投資判断が出た場合は何もしない。つまり追加で購入または空売りはしない。
- 今保有しているポジションと逆の投資判断が出た場合は、そのポジションはクローズし、新規で1万円分の「買い」または「売り」を行う。例えば、1万円分買った後に「売り」が出た場合、現在のポジションはすべて売却し、その上で新規で1万円分のビットコインを空売りする。
この結果を示したのが図表1となります。ご覧のように、移動平均戦略は持続可能な戦略ではありません。例えば、3月2日から3月3日にかけて、この戦略は成功して収益はプラスでしたが、それ以外の期間ではマイナスになったり不安定でした。この違いは、移動平均の計算期間の選択の差で説明することができます。
最適な期間を選択するには、市場価格と移動平均価格は、2つの共鳴する振動として見る必要があります。これら2つの振動の位相差が小さい場合は機能し(利益がでる)、そうでない場合は機能しません。
移動平均の振動の「周波数」は、計算期間(短期で24、長期で48など)で変わります。実験で採用した移動平均の計算期間(24と48)は、3月1日における市場の振動周波数から計算したのですが、市場の振動周波数は急速に変化するため、結果的に収益の最大化にはつながりませんでした。
このように、最適なパラメータ値の設定すら事前にわからないため、ルールベースの意思決定プロセスはうまく機能しません。フーリエ変換を使用するなど時間をかけて価格変動頻度を測定することで、精度の改善を試みることはできますが、それでもやはり値の設定は事後的なものとなり、持続可能な戦略として機能しないでしょう。
他のテクニカル指標やファンダメンタル分析を組み合わせても、手動または半自動で設定するパラメータを増やすだけでは機能しません。ある限定された期間で非常に高い精度が得られても、一般化できる戦略にはならないでしょう。
とても単純な例ですが、たとえ多くのルールを用意したとしても、こういったルールベースの手法は持続可能な戦略には向いていないことがわかります。
AIが強みとする特徴
一方、AIは入力情報からその特徴を捉え、そして結果の予測を行うことに非常に優れています。さらにAIのもう1つの特徴は、事前にルールを作らなくてもよいことです。つまりAI自身がこれらのルールを発見し用いることができます。
そこで得られる意思決定プロセスは、人間の経験や常識ではなく、そのAIがどのような情報を用いて学習されてきたかに基づきます。これらの情報について、仮にある特定の期間において無関係な情報があったとしても、AIは情報を内部的に分別し関係する情報だけを保持することができます。
優れたアルゴリズムを使用すると、AIは常に予測を調整するため、適応的かつ最適となります。これは当然魔法でもなんでもなく、数学的なアプローチです。その意味では、AIはランダム性やアノマリーを予測することはできません。しかし例えば、世界の投資家による市場への影響の中で最も可能性の高いものを見抜き、その市場環境でベストな決定を下すことができます。
AIはどのように機能するのか
AIの目的が何であれ、その概念はしばしば同じです。AIの中核はモデルです。モデルとは、入力情報を目的の出力に変換する数学的関数のようなものです。
ビットコインの価格予測の場合、入力情報として例えばMACD、MA、RSIなどの多数のテクニカル指標があり得ます。同時に、価格のヒストリカルデータや、SNS、経済ニュースを数値データ(浮動小数点テンソル)に置き換えたものも入力情報とできるでしょう。
価格に影響を与える可能性のある全ての情報は、モデルへの入力になり得ます。一方、出力させたい情報は当然価格予測です。(例えば、次の10分間の価格を予測するなど)。
モデルに学習させて価格予測させるには、期間に応じた適切な教師データを使用します。予測したい期間ごとに、最新の市場情報を把握できるよう、注意深く選択された教師データに基づいて学習されます。
学習とは、誤差逆伝播法と呼ばれる手法で、予測を期待値に近づけるためにモデルのすべての内部パラメータを最適化するプロセスです。モデルの内部パラメータを手動で設定するルールベースの手法と異なり、直近のデータから常に数学的にパラメータが調整され最適な予測を行います。
これは、モデルの複雑さや内部パラメータの数にかかわらず、特定の予測したい期間でパラメータが最適な値へ変化することを意味し、この最適化は各期間で実行され、モデルは非常に適応的になります。
AIを用いた移動平均戦略
同じ例を使用して、移動平均戦略をAIに置き換えてみた結果が図表2となります。 ご覧の通りAIは期間中、価格変動の少ない期間であっても、持続して利益を上げております。
なお、市場で実際に取引を行うには、AI の予測結果を注文に翻訳するシステムとの連携が不可欠です。こういったシステムとAIを組み合わせた実験は今回行っていませんが、AIが古典的なルールベースのアプローチより持続可能であるのは間違いないでしょう。