VWork バイブコーディングフレームワーク

SNSで見た「今ホットな銘柄」をAIトレードボットにそのまま追加しなかった話

エクスブリッジでは、Kurageプロジェクトの一環としてAIトレードボット「kfreqai」を紙上取引(dry-run、実資金は動いていません)で運用しています。今回書きたいのは、「SNSで見つけた今アツい銘柄リストを、そのまま監視対象に追加してほしい」という相談を受けた際に、AIエージェントがどう裏取りし、どこで線を引いたかという話です。


発端:SNSの「今ホットな銘柄」リスト

ある日、次のようなリストが持ち込まれました。

いかにも「今すぐ乗るべき」という体裁で書かれた内容でしたが、こういうリストをそのまま設定に反映するのは危険です。まず裏を取ることにしました。

裏取り:取引所APIに直接聞く

AIエージェントに、実際にボットが使っている取引所(MEXC)のAPIへ直接問い合わせさせ、次の3点を確認しました。

  1. 本当に上場しているか(spot市場に存在するか)
  2. 流動性は十分か(24時間出来高)
  3. FreqAI(機械学習モデル)が学習できるだけのデータ来歴があるか

結果は次の通りでした。

銘柄 上場 24h出来高 データ来歴 判定
ZEC / UNI / SOL 十分 十分 既に運用中(追加不要)
HYPE / TAO 既存の最小流動性銘柄と同程度 60日以上 追加OK
CASHCAT 既存最小銘柄の1/10以下 わずか2日分 見送り

CASHCATは上場からまだ2日しか経っておらず、日足データが2本しか取得できませんでした。このボットのAIモデル(FreqAI)は直近30日分のデータで学習する設計なので、そもそも学習が成立しません。さらに確認した時点で、すでに直近24時間で-13.93%の下落が始まっていました。「1,400%高騰した銘柄がSNSで拡散される頃には、すでに調整局面に入っている」という、よくあるパターンがそのまま現実になっていた形です。

裏取りの結果、ZEC・UNI・SOLは既に監視対象済みと判明し、HYPE・TAOの2銘柄だけを新たに追加しました。設定を変更した後は、ボットを再起動せずに設定リロードAPIを叩き、両銘柄の学習データが正常にダウンロードされてエラーが出ていないことをログで確認しています。

「ウォッチだけしたい」という要望と、システムの制約

CASHCATを追加候補から外した後、「今後活発化しそうだから見るだけでもしておきたい」という要望がありました。ここで一つ、システムの仕組み上の制約を説明する必要がありました。

このボットの銘柄リスト(pair_whitelist)には、「見るだけモード」が存在しません。 リストに入れた時点で、その銘柄は自動的に「AIモデルの学習→予測→エントリー判定」という一連のパイプラインに乗ります。データが足りない状態で無理に追加すると、

というどちらかが起こり得ます。「見るだけ」のつもりが、実質的には「データ不足のまま取引対象にする」ことと同義になってしまうわけです。

対策:取引パイプラインから完全に切り離した軽量ウォッチャー

そこで、pair_whitelistとは別に、値動きだけを記録する軽量なウォッチャーを新設しました。

systemdの日次タイマーに登録し、既存の市場地合い判定(1時間ごと)やリスク方針判断(1日3回)と同じ運用に乗せています。これで1ヶ月後には、CASHCATが本当に定着した銘柄なのか、それとも一時的な急騰で終わったのかを、実データで判断できるようになります。


まとめ

「SNSで話題」という情報は、意思決定の入力としては使えても、そのまま設定に反映していい理由にはなりません。今回は取引所APIに直接問い合わせて裏を取ったことで、

という、単純な「追加する/しない」の二択より一段細かい対応ができました。派手なリターンを狙う前に「暴走しないAI」を作ることを優先する、というkfreqaiの一貫した設計方針が、ここでも活きた形です。