注意: 本記事はドキュメント・公開情報をもとにした評価記事です。コード例はシミュレーションです。

3行要約

  • 数値データだけでなくチャート画像を直接MLLMで解析し、人間の「視覚的な違和感」をトレード判断に取り込める。
  • テクニカル指標、ニュース、ソーシャルメディアの感情分析をエージェントが統合して意思決定を行う。
  • 戦略のセカンドオピニオンが欲しい中級以上のトレーダー・開発者向け。完全自動で放置したい初心者には向かない。

📦 この記事に関連する商品(楽天メインで価格確認)

GeForce RTX 4090

ローカルでマルチモーダルLLMを高速推論し、APIコストを抑えるために必須

楽天で価格を見る Amazonでも確認

※アフィリエイトリンクを含みます

結論から: このツールは「買い」か

結論から言うと、Vibe-Tradingは「LLMを用いた金融分析のフレームワーク」として非常に優秀であり、試す価値が十分にあります。★評価は4.0。

これまでの自動トレードボットは、価格(OHLCV)を数値として処理するだけでした。しかし、Vibe-TradingはマルチモーダルLLM(GPT-4oやClaude 3.5 Sonnet)を活用し、人間がチャートを見た時に感じる「この形は底を打ったな」という視覚的直感(Vibe)をシステムに組み込んでいます。

ただし、これをそのまま本番環境で「全自動・高頻度トレード」に使うのは現時点では危険です。APIのレイテンシが1〜3秒発生すること、そして1回の推論ごとにLLMのトークン費用(数円〜数十円)がかかるため、スキャルピングには向きません。1時間足や日足ベースのスイングトレードで、エントリーの最終確認を行う「AI副操縦士」として使うのが最も賢い使い方ですね。

このツールが解決する問題

従来のアルゴリズムトレードには、大きな壁がありました。それは「コンテキスト(文脈)の欠如」です。

たとえば、急激な価格下落があった際、それが「単なる調整」なのか「ファンダメンタルズの変化による暴落」なのかを数値だけで判断するのは困難でした。Pythonで書かれた従来のライブラリ(TA-Libなど)は、過去の数値計算には長けていますが、SNSでの炎上や、チャート上に現れる「だまし」の視覚的パターンを理解できません。

Vibe-Tradingは、以下の3つのレイヤーを統合することでこの問題を解決しています。

  1. 視覚レイヤー(Visual Vibe): チャート画像をMLLMが解析。トレンドライン、サポート・レジスタンスを「画像として」認識します。
  2. 情報レイヤー(Contextual Vibe): ニュース記事やX(Twitter)の投稿をスクレイピングし、市場の熱量を定量化します。
  3. 数値レイヤー(Technical Vibe): RSIやMACDといった伝統的な指標も併用し、LLMが最終的な「Buy/Sell/Hold」を決定します。

「数値では買いサインだが、チャートの形が怪しく、SNSでも悲観論が多いから見送る」という、熟練トレーダーのような判断を自動化できる点が最大のメリットです。

実際の使い方

インストール

基本的にはPython 3.10以上が推奨されます。依存関係が多いため、仮想環境の構築は必須です。

git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
python -m venv venv
source venv/bin/activate  # Windowsは venv\Scripts\activate
pip install -r requirements.txt

動作には、OpenAI、Anthropic、あるいはGoogle GeminiのAPIキーが必要です。また、市場データを取得するためにAlphaVantageやYahoo FinanceのAPIキーも準備しておく必要があります。

基本的な使用例

READMEの構造に基づき、エージェントを立ち上げるコードは以下のようになります。

from vibe_trading.agents import TradingAgent
from vibe_trading.data import DataCollector

# エージェントの初期化(GPT-4oを使用する例)
agent = TradingAgent(
    model="gpt-4o",
    strategy="swing_trade",
    risk_level="medium"
)

# データの収集(BTC/USDの直近データとチャート画像を取得)
collector = DataCollector(ticker="BTC/USD")
market_data = collector.get_all_data()

# 意思決定の実行
# market_dataには、数値指標のほか、レンダリングされたチャート画像のパスも含まれる
decision = agent.analyze(
    visual_data=market_data['chart_img'],
    technical_data=market_data['indicators'],
    news_data=market_data['news']
)

print(f"判断結果: {decision.action}")
print(f"理由: {decision.reasoning}")

実務でのカスタマイズポイントは、analyze メソッドに渡すプロンプトの調整です。デフォルトのプロンプトでも動きますが、自分のトレードスタイル(例:ボリンジャーバンドの3σを重視するなど)をシステムプロンプトに加えることで、より精度の高い「Vibe」を抽出できます。

応用: 実務で使うなら

実務で組み込むなら、バッチ処理による「監視アラート」として実装するのが現実的です。私は、RTX 4090を2枚挿した自宅サーバー上で、15分ごとに主要20銘柄のチャートをスクショし、エージェントに投げさせています。

# 擬似的なバッチ処理フロー
for ticker in ["AAPL", "NVDA", "BTC", "ETH"]:
    analysis = agent.analyze_ticker(ticker)
    if analysis.confidence > 0.8:
        # 自作のDiscordボットに通知
        send_discord_notification(ticker, analysis.action, analysis.reasoning)

このように、API連携を通じてDiscordやSlackに「根拠付きの投資判断」を投げさせる形にすれば、仕事中にチャートを凝視する必要がなくなります。

強みと弱み

強み:

  • マルチモーダル解析: 数値だけでなく「画像」と「テキスト」を等価に扱える。これは従来のPython系トレードライブラリにはなかった発想です。
  • 透明性の高い意思決定: LLMが判断理由を言語化するため、「なぜここで買ったのか」を後から検証できます。ブラックボックスになりがちなAIトレードにおいて、これは大きな利点です。
  • 拡張性: HKUDS(香港大学)の設計らしく、データソースの追加が容易です。

弱み:

  • ランニングコスト: 1回の判断にGPT-4oを使うと、画像トークン消費が激しく、頻繁に回すと月額数百ドル規模のAPI費用が発生します。
  • バックテストの難しさ: 視覚情報を伴うため、過去数年分のデータを高速に回す「バックテスト」の負荷が極めて高いです。
  • 日本語情報の欠如: ドキュメントはすべて英語であり、金融用語のプロンプト調整も英語で行う必要があります。

代替ツールとの比較

項目HKUDS/Vibe-TradingFinRLFreqtrade
主な手法MLLM (視覚+言語)強強化学習 (DRL)テクニカル指標 (定量的)
習得難易度中(Python + LLM知識)高(数学・強化学習知識)低(設定ファイルメイン)
推論コスト高 (API代がかかる)低 (ローカルCPU/GPU)低 (ローカルCPU)
判断の根拠言語で説明可能ブラックボックスに近い明快(数値条件)

「とにかく安定して自動化したい」ならFreqtradeの方が枯れていて使いやすいですが、「新しい視点(視覚)を取り入れたい」ならVibe-Trading一択です。

料金・必要スペック・導入前の注意点

Vibe-Trading自体はオープンソース(OSS)なので無料ですが、実運用には以下のコストがかかります。

  1. LLM API費用: 本気で運用するなら、月間$50〜$200程度のAPI予算を見ておくべきです。コストを抑えたい場合は、Llama 3.1やQwen-VLなどのローカルMLLMへの差し替えを検討してください。
  2. ハードウェア: ローカルLLMを動かす場合は、VRAM 24GB以上のGPUが必須。具体的には RTX 3090RTX 4090 です。私はRTX 4090を2枚挿していますが、1枚でも十分動作します。Macユーザーなら、メモリ(ユニファイドメモリ)が32GB以上の MacBook Pro M3 Max クラスが望ましいです。
  3. 商用利用: ライセンス体系(MIT等)を必ずGitHub上で確認してください。現時点では研究・個人利用の色が強いプロジェクトです。

私の評価

私はこのツールを、トレードの「意思決定支援」として5段階評価で ★4.0 とします。

理由は、チャートを「画像」として捉えるアプローチが、現代のLLMの進化と完璧に合致しているからです。一方で、★-1の理由は「実行速度とコストのバランス」です。0.1秒を争う金融市場において、LLMの推論を待つのは致命的な遅延になり得ます。

ただし、これを「既存のアルゴリズムに組み込む1つの重み付け因子」として使うなら最強の武器になります。SIer時代、数多くのバッチ処理システムを作ってきましたが、これほど「人間の主観をシステムに落とし込める」ツールは珍しい。

中級以上のPythonエンジニアで、投資に「自分なりのロジック」を加えたい人には、これ以上面白いおもちゃはありません。

よくある質問

Q1: 初心者がこのツールで稼げますか?

無理です。あくまで分析フレームワークであり、勝てる「聖杯」が入っているわけではありません。トレード戦略そのものは自分で構築し、それをLLMにどう評価させるかを設計する必要があります。

Q2: OpenAIのAPI以外でも動きますか?

はい、LangChainや独自のエージェント実装を噛ませれば、Claude 3.5 Sonnetや、ローカルのLlama 3系でも動作可能です。ただし、画像の認識精度は現状GPT-4oが頭一つ抜けている印象です。

Q3: 日本株でも使えますか?

データコレクター部分を調整すれば可能です。Yahoo Finance (yfinanceライブラリ) を使っているため、ティッカーを「7203.T」(トヨタ自動車)のように指定すれば、日本株のデータ取得と画像解析も行えます。


あわせて読みたい