深層強化学習はビットコインのmmbotに応用可能か?

強化学習を用いたトレードに関するイントロダクション

まずはこちらの秀逸なブログ記事を紹介したい。

Introduction to Learning to Trade with Reinforcement Learning

2018年2月10日にDenny Britz氏により投稿されたもの。始めに断っておくが、

「トレードに強化学習を応用して良好な結果が得られたことを周知する体験記」

というような内容ではない(※そういった記事・論文は英語圏において非常に多いが、往々にしてそういったものは、まず結果の妥当性を疑ってかかるべきである。AbstractとConclusionを読んでスクリーニングすべきだ。特に修士論文レベルのものには要注意)。

記事タイトルの通り、イントロダクション・検討結果という色合いが強い。これはBritz氏も冒頭で強調している。

これは「Deep Learningを使った価格予測」の記事ではありません。したがって、サンプルコードとモデルを探しているなら、あなたは失望するかもしれません。代わりに、私はMachine Learningを使ってトレードを学ぶことがなぜ難しいのか、いくつかの課題があること、そして強化学習がうまくいくと思うところについて、より高いレベルで話したいと思います。
(ーGoogle翻訳による日本語訳)

予備専門知識や英語力が無くても十分に読み進められる分かりやすさ

専門的な論文は苦手、という人でもかなりの割合で内容を理解できるはず。何より書き方がMotivatingだ。

彼はスタンフォードとUCバークレーの元学生であり、Google Brain(TensorFlowを開発したGoogleのチーム)が提供しているDeep Learningの研究プログラムのResidentとして活動していた経験がある。日本で生活したこともあるとのことだ。記事は

・マーケットマイクロストラクチャーの基礎
・仮想通貨取引所からのAPI出力データ
・トレード戦略の評価指標
・教師あり学習
・典型的なストラテジー開発ワークフロー
・トレードのための深層強化学習
・強化学習によるモデルのEnd-to-End最適化
・トレードAgentに関する検討

という構成である。過剰な信仰を持たず、課題と展望を順序立てて平易に記述している点には好感が持てる。

また、コメント欄が示唆に富んでいる。案の定、「Finance分野での強化学習の適用は不可能だ」「ルールが変わる囲碁のようなものだからだ」といった懐疑的なコメントがチラホラと並んでいる。そこから派生するやり取りを見るだけでも面白い。

mmbot戦略の構築に役立つ可能性

個人的にはMarket Microstructureとしてモデル化できる極短期での値動きに限っては、強化学習によるトレードAgentが一定程度意味のあるものであり、検討する価値はあると思っている。板情報(LOB=Limit Order Book)などをState、Discountされた未実現損益などをRewardとするべきか。

まずはAgentによるMarket Impactはゼロという前提を置きつつ、Lot固定でActionをHold/Market Buy/Market Sellに限定した単純なSimulatorを作るのが良いだろう。ただし、それだけではOHLCV情報のみを使った場合とあまり結果に差が出ないかもしれない。

最終的にはMarket Making戦略を学習させるとして、Limit OrderとそのCancelもActionとして加え、どの程度それらが他者のMarket Orderにより食われるかどうか、歩み値(約定履歴)情報を追加で用いてSimulateすると、強化学習を活用したmmbotへの道が開かれるはず。

最近の強化学習モデルの急速な進化

ちなみに、強化学習アルゴリズムは、世界最強の人間のプロ囲碁棋士に勝利したAI(AlphaGo)で使われていることで有名なDQN(Google DeepMindが開発)や、A3Cくらいしか知らなかったのだが、当該記事のコメント欄にてRainbowというものを知った。

DQNの発展形をいわゆる「全部のせ」したモデルであり、学習速度・性能ともに従来の手法を大きく凌駕するものである。Natureに掲載されたオリジナルDQNの最高パフォーマンスをわずか7Mフレームで達成している。Fancyな虹色のグラフには著者の遊び心・ネタ精神を感じる。。

上記のRainbowは2017年の研究発表結果。十分凄いのだが、なんと2018年にはさらにヤバイものが登場した。Ape-Xだ。

下記の左のグラフでx軸が学習時間、y軸が人間の能力に合わせて正規化した性能。DQNやRainbowに圧倒的な差を付けている。分散学習+優先順位付き経験再生(Prioritized Experience Replay)を活用しているとのこと。GoogleのDeepMindの研究成果だ。

2018年の最強手法(State-of-The-Art)はApe-Xか。。と誰しもが思っていた中、2018年の秋頃にさらにぶっ飛んでいるものが登場してきた!R2D2だ。

下記の左のグラフでDQN, Rainbow, Ape-X, R2D2を比べてみてほしい。古典的なDQN(と言っても高度技術の結晶)と比べて、桁が違ってきている。人間並みや人間を超えた!で喜んでいたのは数年前ですが、今や人間の10倍の成績(!)。

本記事執筆時点でICLR2019のOpenReview中であり、著者は不明(Anonymous authors)だ。

RNNによる拡張も進んでくるとなると、Finance分野における時系列の複雑性にもより適応できるようになってくるのかもしれない。アルゴリズムの進化が速すぎてなかなか追いきれないね。。

関連ツイート

https://twitter.com/am_nimitz3/status/1062959623068471301

続編となる記事を書いています。こちらもご覧ください。

深層強化学習はビットコインのmmbotに応用可能か?〜その2〜