AIに仮想通貨Botを研究させてみた。数千通り検証して分かった「勝つより難しいこと」

AIに仮想通貨Botの研究を任せ、大量検証と自動研究へ進む記事のアイキャッチ 仮想通貨bot

前回の記事では、仮想通貨の相場データを自動で集める「Market Research Recorder」を作りました。

前回:AIで仮想通貨の相場研究をするために、Market Research Recorderを作った話

価格だけを見るのではなく、BID / ASK、スプレッド、約定履歴、板、1分足などをVPSに保存し続ける仕組みです。

今回は、そのデータを使ってAIに大量の売買条件を検証させるところまで進めました。

先に結論を書くと、まだ「利益を出せるBot」は完成していません。むしろ今回は、テクニカル指標を増やせば勝てるわけでも、Maker注文にすれば簡単に解決するわけでもないという、かなり現実的な結果になりました。

ただ、その過程で大事なことが分かりました。

AIの強みは、必ず勝てる方法を一発で教えてくれることではなく、人間なら面倒で試し切れない数の仮説を高速で潰せること。

まず、過去データを「研究できる形」に整えた

Market Research Recorderで集めたデータに加え、過去の1分足も取得してみると、銘柄によってデータの密度がかなり違うことが分かりました。

BTCは比較的データが多い一方、アルトコインでは「1分ごとに必ず取引がある」とは限りません。

そこで、元データはそのまま残しつつ、研究専用の5分足を別に生成しました。さらに各5分足に、その区間のうち何分が実データだったかという情報も持たせています。

これで、単純に価格をつなぐだけではなく、流動性の薄さも含めて検証できるようになりました。

MAだけではなく、複数の条件をまとめて試す

これまでのBotは移動平均線(MA)を中心にしていましたが、研究ではそこから条件を増やしました。

  • MA:トレンド方向
  • ADX:トレンドの強さ
  • ATR:値動きの大きさ
  • RSI:勢いや過熱感
  • 流動性
  • BTCとの方向一致
  • 保有時間の違い

そして、条件の組み合わせやパラメータを変えながら大量にテストします。

ここで面白かったのが、アルトコイン単体を見るよりもBTCと同じ方向のときだけ取引する条件が上位に入りやすかったことです。

たとえばLINKでは「MA + ADX + RSI + BTC方向一致」の組み合わせで、30分先の値動きが学習期間、検証期間、最後の未使用期間の3区間すべてでプラスになった候補がありました。

ここだけ見ると、「ようやく勝てる条件が見つかった?」と思いたくなります。

ところが、売買コストを入れると厳しい

バックテストで数bpsの優位性が見えても、実際の売買にはスプレッドや手数料があります。

狙っている値幅そのものが小さいので、売買コストがそれ以上なら利益は残りません。

そこで次に考えたのがMaker注文です。

板に指値を置いて待つMakerを使えば、Takerを多用するよりコスト面で有利になる可能性があります。

ただし、ここには別の問題があります。

指値の価格まで相場が来ても、自分の注文が実際に約定するとは限りません。

「価格に触れた」ではなく、本当にMakerで刺さるかをPAPERで測る

そこで、過去チャートだけのバックテストではなく、Market Research Recorderが保存している板と約定データを使って、Maker注文のフォワードPAPERテストを動かしました。

単に価格が指値へ到達しただけでは約定扱いにしません。自分より前に並んでいると考えられる注文量まで約定した場合だけ、「厳格Maker約定」と判定する保守的なモデルです。

約15時間動かした時点で、結果は次のようになりました。

Maker注文のENTRY候補362件から厳格Maker約定21件までの推移

  • ENTRY候補:362回
  • Maker価格まで到達:84回(23.2%)
  • 厳格Maker約定:21回(5.8%)
  • 完了取引:21回

つまり、良さそうなシグナルが362回出ても、今回の厳格モデルで実際にMakerで入れたと考えられるのは21回だけでした。

「価格が触れたから約定したことにする」バックテストとは、かなり違います。

値動きだけなら+287円。でも最終結果は-891円

さらに重要だったのが、21回の完了取引の中身です。

Grossプラス287円から手数料等の効果マイナス1178円を差し引きNETマイナス891円になった結果

値動きによるGross損益は+287円でした。

ところが、手数料などの効果が-1,178円となり、最終的なNETは-891円です。

今回のPAPERでは、ENTRYはMakerで約定できても、EXIT側のMaker注文が刺さらず、21回すべて最終的にTakerへフォールバックしました。

つまり、方向を読む部分が完全にダメだったというより、短期の小さな優位性を売買コストが上回ったという形です。

「Makerにすれば勝てる」でもなかった

ここまでで、いくつかの思い込みを数字で潰せました。

  • テクニカル指標を増やせば簡単に勝てるわけではない
  • 長く持てば解決するわけでもない
  • BTCとの連動は有力な特徴量になりそう
  • 短期ではTakerコストの影響がかなり大きい
  • Makerはコスト面で有利でも、そもそも約定しにくい
  • ENTRYだけでなくEXITの約定方法が結果を大きく左右する

一見すると「またマイナスか」と思う結果ですが、研究としてはかなり重要です。

ダメな方向を感覚ではなく、データで切り捨てられるからです。

ただし、本当に問題だったのは「人間が操作しすぎていた」こと

ここまで研究を進めて、別の問題にも気づきました。

AIを使っているのに、

「次はADXを試そう」→ プログラムを作る → 実行する → 結果を見る → 「じゃあ次はATR」

という進め方をしていました。

これでは、AIを使っているのに人間が研究助手になっています。

人間が毎回操作する研究からCrypto Research Autopilotによる自動研究へ移行する流れ

そこで「戦略を探すBot」を作ることにした

次に作り始めたのがCrypto Research Autopilotです。

これは売買するBotではありません。

「良さそうな売買Botを探すBot」です。

毎晩、自動で次の処理を回す構成に変えます。

  1. 最新の研究データを読み込む
  2. 複数の戦略ファミリーとパラメータを生成する
  3. 大量にバックテストする
  4. Train / Validation / 未使用Testに分けて評価する
  5. 売買コストを入れて再評価する
  6. 弱い候補を落とす
  7. 有力候補だけ残す
  8. 意味のある変化だけDiscordへ通知する

現在は、MAトレンドフォローだけでなく、Donchianブレイクアウト、RSI逆張り、Momentum、BTC先行→アルト追随、トレンド中の押し目・戻りなどを自動で競わせる方向にしています。

「5,000通り全部ダメ」も価値のある結果

AIを使う価値は、「絶対に儲かる戦略」を魔法のように見つけることではないと思っています。

むしろ、5,000通り試して全部ダメなら、人間が何週間も同じ方向を微調整し続けずに、その仮説を捨てられることの方が大きい。

研究の失敗速度を上げられる、ということです。

次は、人間が毎日操作しない研究へ

最終的には、

  • 仕事中にデータを自動収集
  • 夜中にAIが自動検証
  • 候補をPAPERへ自動昇格
  • 一定期間で自動採点
  • 悪ければ自動退場
  • 良い候補だけ人間へ通知

というところまで持っていきたいと思っています。

朝Discordを見たら、

昨夜1,200戦略を検証
1,150件棄却
再検証50件
PAPER候補2件

くらいしか書いていない状態が理想です。

人間は毎日コマンドを打つ側ではなく、研究結果を見て判断する側になります。

まとめ

まだ利益を出せるBotは完成していません。

でも今回、Market Research Recorderでデータを貯めるだけの段階から、AIに大量検証させ、さらに研究そのものを自動化する段階へ進みました。

「AIと一緒にBotを作る」から、「AIにBotを研究させる」へ。

次回は、Crypto Research Autopilotを実際に自動運転させて、どんな戦略が残るのかを追っていきます。


※この記事は個人の技術研究・PAPER検証の記録です。利益を保証するものではなく、特定の暗号資産や取引手法を推奨するものでもありません。暗号資産取引には価格変動や損失のリスクがあります。

コメント

タイトルとURLをコピーしました