AI(機械学習)を使ったアルトコインPUMP予測【あずまっちAIコインプロジェクト】
はじめに
仮想通貨トレーダーのあずまっち(@azuma_bitcoin)です。
今回の記事では、2019年7月からスタートした「あずまっちAIコインプロジェクト」の総まとめをしようと思います。ツイートで報告した内容を交えながら、現状の運用成績や今後の展望、裏話なども含めて一通り紹介したいと思います。
【読むにあたっての注意点】
・今回紹介するのは現在進行形で運用していて利益をあげているシステムの内容です。明かすことによって私たちのエッジが失われる可能性があると判断したところは、ぼかすようにしています。
・note後半では用いた機械学習の手法について解説していますが、私自身が機械学習に精通しているわけではないため、自分がAIチームから解説してもらって理解できた範囲で説明しています。機械学習がわかる人には物足りない内容かもしれませんが、ご容赦ください。
チーム結成
今回私のプロジェクトに協力してもらったのは、東京大学の情報系の院生3人です。この3人は実は今回のプロジェクトで初めて招集されたメンバーというわけではなく、プロジェクト発案の半年前以上から私のチームでbot開発に携わっていました。
なぜわざわざAI人材を選んでチームに引き入れたというと、ゆくゆくは「AIを用いたトレード戦略を構築したい」という目論見があったためです。そのため、あずまっちAIコインプロジェクトには私のチームが「AIによる相場攻略」を実現するための最初の試みという意味合いがあります。
2019年7月 AIコインプロジェクト始動 決起会
プロジェクトの勝算
数ある機械学習による相場攻略のアプローチの中から、私が「草コインのPUMP検知」に焦点を当てた理由はいくつかあります。
1. データが豊富にあるため
もちろん、初めはBTCのような時価総額の大きい通貨の値動きをAIで予測することを考えていました。BTCの値動きを予測する上で一番のネックになると考えたのは、データ量不足です。
ビットコインは歴史が浅いため、予測を行いたい対象であるPUMPの事例はそこまで多くないのです。その点、草コインは種類が膨大にあり、PUMPの条件を学習するのに十分なデータ量があると考えました。
2. 仕手・インサイダーの挙動は簡単に検知できると考えたため
相場は、市場参加者の思惑で動くものです。逆に言うと、普段は草コイン銘柄に関心が向くことはないため、価格が動くこともあまりありません。
つまり、「草コインの価格が動く」という現象には、それなりの理由があると私は考えていました。その最たる例が仕手によるPUMPです。
そして、仕手によるPUMPの場合、必ず事前に「仕込み」が発生します。なぜなら仕手からすればPUMPする前に仕込まないと、価格を釣り上げることによって利益をあげることができないからです。
同様に、重大なファンダ(ニュース)が出る場合も、規制がなされていない仮想通貨では高確率でインサイダーが仕込みを行うため、仕手の場合と同じような現象が起こると考えました。
このように、草コイン銘柄の高騰前には、仕手やインサイダーによる仕込みの痕跡が必ず残る。そしてその痕跡を見つけることで、のちに来る高騰に乗ることができるという仮説が生まれました。
この仮説には、私が小学生時代にやっていたオンラインゲームで、ナイーブだった私が仕手サロンに騙された経験が活きています。以下のnoteで紹介していますので、興味がある方はぜひ読んでみてください。
3. あずまっちのトレード知識が活かせると思ったため
ゲーム感覚でトレードしてお金を増やしたり減らしたりしている私ですが、毎日長時間やっていると自分の中で定石化されたトレード手法のようなものが出来上がってきます。
中でも、草コインのスキャルピング・デイトレなどは、私の十八番なのです。毎日のようにマイナーコインを板取引していた頃の経験から、板の動きや歩み値から仕手を含む様々な市場参加者の思惑を読み取り、立ち回る方法を身につけていました。
また私自身のトレード経験で、草コインの上がりそうな匂いを嗅ぎつけてエントリーした結果、大幅上昇を当てたことが何度かありました。
もちろんこれらは感覚的な部分が大きいのですが、過去のPUMP事例を地道に研究していけば言語化できる部分も出てくるだろうと考えました。これをAIの予測に組み込むことができれば、草コインの値動きを説明できるのではないかと考えたのです。
プロジェクトのゴール
2019年7月に始動したあずまっちAIコインプロジェクトですが、当初は以下の二つの軸でプロジェクトの進行を計画していました。
【AIの予想でbot化し、自動で運用する】
まずは、自動売買によって収益化することが第一のゴールでした。
AIの予想が当たるだけではダメで、botとして安定して利益をあげられるシステムを作れなければ、プロジェクト失敗と考えていました。ここには、botterとしてのプライドのようなものがあります。
こちらの目標は現在達成できていて、それなりのロットで安定運用ができています。
【有料サービスとしての展開】
次に、草コインのPUMPを高精度で予測できる良いシステムが作れたら、DiscordなどのコミュニティでAIの予想結果を公開する有料グループのようなものを考えていました。
Twitterで進捗報告をしていたのも、この有料サービスを視野に入れた宣伝のような意味合いもありました。
ただし、有料サービスに踏み切るためには、条件として「草コイン相場が盛り上がる」ことが必須でした。
これには二つほど理由があって、
まず第一に、盛り上がっていなければそれほど会員数を増やせないことが予想できていたからです。やるからには、一大ムーブメントにしたい気持ちがありました。
次に盛り上がっていない相場では、会員に十分な価値を提供できるか不安があったからです。後ほど説明しますが、盛り上がっている相場の方がやはりPUMP予測の難易度も低く、精度よく当たるものなのです。
草コイン相場が私たちが想定していたほどの盛り上がりを見せなかったため、まだこちらの目標は達成できていません。
botによる運用にしろ、有料サービスの展開にしろ、私たちは小銭稼ぎで終わらせるつもりはなく、来たる大相場を夢見て準備していました。そのため、このまま盛り上がることなく空振りに終わっても仕方ないと考えています。
下準備
【天才botterから助言をもらう】
プロジェクトを始めてしばらく経った頃に、普段からTwitterでお世話になっている天才東大生botterであるスナフキンさんを交えて、AIコインプロジェクトの可能性について話し合いました。
「PUMPの予測にはどのような指標が有効か」「仕手の典型的なパターンはどのようなものか」といったことをbotter目線で徹底的に討論しました。スナフキンさんの後押しもあり、私の仮説の正しさに対して自信が持てる内容になりました。
また、この時スナフキンさんが言った「(ビットコインじゃなくても)ウンコでもなんでも良いからトレードできればいいよね」という言葉が印象的で、草コインをシステムトレードすることによって利益をあげるイメージが湧きました。
【データ集め】
銘柄の選定
アルト銘柄の種類の多さ、および出来高の大きさから、攻略取引所はBinanceに決定しました。機械学習に用いる銘柄は、以下の基準で選定しました。
・Binanceが主要な出来高を占めている(Coinmarketcap.comで確認)
・メジャーアルト(ETH、XRP等)ではない
・価格が50sat以上
これで典型的な草コインについて、100銘柄余りを選定しました。
データの取得
選定した銘柄に対し、BTC建ての約定データをBinanceのAPIを使って取得しました。
一つ一つの歩み値そのものに仕手の形跡が残ると考えていたので、少しでも情報を落とさないように約定データがグルーピング保存されている Aggregated データではなく、全約定データを取得しました。ここで全約定データを取得したのは、後述するステップ2で大きく役立ちました。
【前処理】
機械学習のアルゴリズムは万能ではなく、入力するモデルごとに適切な形に加工する必要がありました。その際、結果をきれいに残して比較できるように、データパイプラインやインフラを構築しなければなりませんでした。
地味な作業ではありますがとても重要な工程なので、AI班のうち1人はデータ専門の担当として専念してもらいました。
ステップ1:とりあえず機械学習モデルにぶち込む
機械学習という名の魔法をとにかく一度使ってみたかった私は、AI班にうだうだ考えずにとりあえず適当に機械学習モデルに突っ込むように指示しました。
LSTMという機械学習モデルを用いて過去の草コインのOHLCVデータを入力し、前日までの値動き、出来高などの統計量から次の日の騰落率を予測する機構にしました。
この予測結果を元に、毎日騰落率の予測が高かった5銘柄に1BTC相当を振り分けるというルールでバックテストを行い、モデルの評価を行いました。
売買ルール
【結果】
LSTM①(2019年 6〜8月)
LSTM②(2019年 6〜8月)
*benchmark(ベンチマーク、黄線)は全草コイン銘柄を均等にホールドした場合の成績(単利)で、草コイン市場全体の値動きのインデックスを表します。profit(実際の利益、青線)がこのベンチマークを超えるモデルを作るのが、実運用に移行するための最低限の条件になります。
二通りのアプローチ(LSTM①・②)を試しましたが、結果は全然ダメでした。単純な機械学習モデルにデータをぶち込んだくらいでは、やはりベンチマークに大きく勝てる成績を出すことはできませんでした。
また、この期間では草コイン市場全体が下落傾向にあり(ベンチマークが約70%の損失)、モデルのシグナル通りに売買すると原資の6割以上を失ってしまうという結果になりました。
機械学習は、生のデータを突っ込んだだけで正解を与えてくれるような魔法ではないという事実を確認できただけでも、大きな収穫でした。
ステップ2:あずまっちの理論を反映したPUMP検出
大量のデータを単純なモデルに突っ込んだだけでは結果が出なかったので、草コインが大きくPUMPする背景には、仕手やインサイダーが必ず存在するという仮説のもと、仕手やインサイダーの仕込みにフォーカスした機械学習モデルを考案する方針で進めることにしました。
仕手・インサイダーの兆候について時間をかけて研究し、その特徴を最大限反映した独自の指標を定義し、モデルの入力に用いるようにしました。また、全約定データを系列データとして入力し、その後X日以内に上昇する確率を出力する機構にしました。
実際の運用においては、この上昇確度が高いとAIが判断した銘柄から買うという戦略(以下の売買ルール)で、バックテストを行いました。
売買ルール
以下がその結果です。ベンチマークは、-70%程度の大損失ですが、それに対して新モデルは-20%の損失で済むという結果になりました。ベンチマーク比で50%程度良い成績なので、有望な戦略だとわかります。
手法1(6月~8月)
また、結果は手法1ほどは良くなりませんでしたが、分類問題、異常検知、変化点検知などのアプローチを試した中から、有効なモデルをいくつか開発することができました。どれもPUMPの原理から考えて、仕手の特徴を掴むことを主眼においた手法です。
その他うまく行った手法の例(6月〜8月)
ステップ3:運用に向けたモデル改良
実運用に移行するに当たって、単に一つのモデルを使うのではなく、ステップ2で作成した様々なモデルを組み合わせる(アンサンブル)ことで安定性を追求しました。
また、PUMP判定の閾値をかなり大きく設定したことで、性能も向上しました。
完成したモデルの成績(6月〜8月)
最終的に完成したモデルは、予測精度、バックテスト結果共に納得のいく結果になったので、実運用に移行することにしました。(なお、検証に用いた期間では実利益自体はマイナスではありますが、ベンチマークを大幅にアウトパフォームしているので、許容しています)
運用成績
【テスト運用 9月半ば〜10月】
原資0.05btcを実際に運用し、戦略の有効性を確認しました。
テスト運用成績 9月半ば〜10月
9月半ば〜10月の成績は+0.022BTC(+44%)でした。
草コイン相場全体の上昇を加味しても優秀な成績で、期待通りの結果でした。
実はTwitterでAIコインプロジェクトの進捗の報告を控えていたのもこの時期からで、「もしかして聖杯を見つけたのではないか?あまり手の内を明かさない方が良いのかもしれない」ということで、静かにしていたという経緯があります。
【本格運用 11月〜12月】
約2ヶ月間のテスト運用により、戦略が有望だと確認できたので、大ロット(0.5BTC)での実運用を行うことにしました。
本格運用に当たって、テスト運用中もモデルの改良は少しずつ行なっていました。また、スプレッドや手数料負けしないように、売買アルゴリズムも大幅に改良しました。
本格運用成績 11月〜12月
11〜12月の成績は+0.152btc(+30%)で、非常に安定した運用結果になりました。12月はほとんど利益が出ていませんが、ベンチマーク(草コイン全体の値動き)も苦戦していたので、健闘したと言えます。
夢を見る
仕手の前兆を掴みPUMPを予測するという方針で、実運用でも安定して結果を出せることがわかったAIコインプロジェクトですが、やはり最近の地合いは草コインにとっては厳しく、大きな利益をあげることは難しいと考えています。
では、見え見えな仕手が大量に存在していたと考えられる、草コインの全盛期ではどうなっていたか、夢を見てみることにしましょう。
ステップ3と同様のモデルで2018〜2019年のデータを用いて仕手の挙動について学習させ、2017年12月〜2018年1月の仕手全盛期に当てはめてシミュレーションすることにしました。
未来のデータを学習に使って過去の期間に当てはめているので(ただし検証期間と被っているわけではないのでリークはない)、機械学習的には厳密にはNGらしいのですが、私は夢を見たかったので一旦許容することにしました。
2017年12月〜2018年1月の仕手全盛期にこのAIシステムを動かしていたらどうなっていたか、というのが以下のグラフになります。最大限に夢を見るため、複利運用をしています。
2017年12月〜2018年1月 資産曲線(複利)
なんと、わずか二ヶ月で原資が115.75倍まで膨れ上がる結果となりました。100万円を投じていれば、2ヶ月で億り人です。
非現実的に見える結果ですが、当時のデータを見ると明確に仕手による急騰の事例が大量にあったので、豊富なデータを与えて学習させたモデルにとってこのパフォーマンスを叩き出すのは、妥当な結果であると考えています。
(もちろん、実運用ではスプレッドや手数料が存在しますが、夢を見たいだけなのでそんなものは知りません。)
このシミュレーションにより、AIコインプロジェクトのポテンシャルが十分に存在するということが再確認できました。
今後仮想通貨相場が盛り上がっていけば、過去に存在していた草コイン専門の仕手グループは再び現れるだろうし、2017年末のような熱狂的なバブル相場を経験できる可能性があると考えています。その時に、今のAIを持っている状態で迎えることができるのは、非常に心強いと感じています。
プロジェクトのゴールで説明した通り、AIコインプロジェクトは小銭稼ぎで終わらせるつもりはなく、夢を見るというスタンスで続けています。来たるバブル相場を信じて、ひたすら改良を続けていくつもりです。
今後の展望
「草コインのPUMPを予測する」という比較的難易度の低いタスクではありますが、実運用でも結果を出せているので、「仮想通貨相場をAIで攻略する」という当初の目論見はとりあえず達成されたと言って良いでしょう。
もちろんこれで満足しているわけではなく、本格的な収益化を目指すため今後の取り組みの予定をまとめました。
【AI予想結果の公開について】
プロジェクトのゴールでも説明した通り、このまま草コイン相場が盛り上がっていけば、何らかの形でAIの予想結果を配信していくことを考えています。
そのためには、予想精度を高く維持するためにモデルを改良し続けなければいけません。モデルの改良は実運用の成績にも繋がるので、AI班と協力して絶えず力を入れていくつもりです。
なお進展等あれば、Twitterで告知を行う予定なので興味ある方はあずまっち(@azuma_bitcoin)のフォローをお願いします。
【他の市場への転用】
・他取引所への進出
現在バイナンスの草コイン銘柄でAIによる予測・運用を行っていますが、今後はKucoin等の草コイン取引所に進出しようと考えています。ただしまだ手が回っておらず、データの取得を一から行わなければならない段階です。
・個別株への転用
草コインと性質が似ているものとして、「仕手株」と言われるものが多数存在する個別株に目を向けて、取り組んでいます。
ただし、今のところは難航しています。やはり、私自身が個別株を取引したことがないため、草コインに比べると圧倒的にヒントに乏しい状態です。株の裁量トレードもずっとやってみようとは思っていますが、時間が足りずなかなか出来ていません。
【BTCをAIで攻略する挑戦】
最後に、無限の流動性を誇るBTCで、AIを使った何かが出来ないかを考えています。すでに1つ有力な仮説があり、現在はAI班に投げて検証段階です。
BTCについては公開できる情報はかなり限られてくると思いますが、面白い発見等あったらツイートしていくつもりです。
最後に
本noteを最後まで読んでいただき、ありがとうございました。
少しでも面白いと感じたら、シェアしていただけると喜びます。
まだまだ様々な挑戦をしていくつもりなので、今後ともあずまっちチームの応援をよろしくお願いします。
この記事が気に入ったらサポートをしてみませんか?