TradingAgents: オープンソースLLM取引フレームワーク

Ashley Innocent

Ashley Innocent

7 5月 2026

TradingAgents: オープンソースLLM取引フレームワーク

Apidog エンタープライズ

オンプレミスデプロイ

SSO & RBAC

SOC 2 準拠

Apidog Enterpriseを見る

ほとんどのマルチエージェントLLMフレームワークは、約束するほどの成果を出していません。しかし、TradingAgentsは数少ない例外の1つです。Tauric ResearchによってarXiv論文と共にオープンソース化され、現在バージョン0.2.4で、他のフレームワークが説明するものの滅多に実装されないようなクリーンな役割分解を実現しています。このシステムは、実際の調査デスクを模倣しています。ファンダメンタルズ、センチメント、ニュース、テクニカルアナリストがブル/ベアのリサーチ討論を行い、その後トレーダー、リスク管理委員会へと繋がり、監査のために記録される構造化された意思決定で締めくくられます。

このレビューでは、TradingAgentsが実際に何をするのか、v0.2.4で何がリリースされたのか、LangGraphやCrewAIと比較してどうか、そしてApidogを使ってLLMやマーケットデータ層をどのようにテストするかを詳しく説明します。エージェント契約層についてすでに深く掘り下げている場合は、当社のAPIチーム向け agents.mdガイドがこの記事と相乗効果を発揮するでしょう。

TL;DR(要約)

TradingAgentsとは何か

このフレームワークは、トレーディングのワークフローを専門的な役割に分解するPythonパッケージおよびCLIです。各役割は、職務記述書でプロンプトされ、特定のツールセットへのアクセスが与えられ、LangGraphによってオーケストレーションされるLLMエージェントです。意思決定は、データ収集、議論、決定、ログ記録の各段階を経て行われます。

READMEには、これは投資助言ではなく、研究コードであると記載されています。この位置づけは重要です。その目的は、マルチエージェントのコラボレーションがシングルプロンプトのセットアップと比較して結果をどのように変えるかを研究することであり、ラップトップから本番環境のトレーディングボットを出荷することではありません。

エンジニアリングの観点から興味深いのは、役割の分離がいかに明確かということです。ファンダメンタルズアナリストは企業の財務を評価します。センチメントアナリストはソーシャルメディアを採点します。ニュースアナリストはマクロ経済指標を監視します。テクニカルアナリストはMACDとRSIを計算します。ブルとベアのリサーチ担当者は議論します。トレーダーは全員のレポートを読み、決定します。リスク管理は制約に対して決定をチェックします。すべてのエージェントは1つの仕事と1つのツールセットを持っています。

これは、専門的な役割、議論フェーズ、決定フェーズ、検証ステップといった、あらゆる複雑なエージェントワークフローで設計するのと同じパターンです。TradingAgentsは、午後には読み解けるような、動作する参照実装です。

v0.2.4で提供されたもの

2026年4月のリリースは、本番環境での利用に興味のあるユーザーにとって意味のあるものです。

構造化出力エージェント。 リサーチマネージャー、トレーダー、ポートフォリオマネージャーは、OpenAI Responses APIまたはAnthropicのツール利用チャネルを通じて構造化された出力を生成するようになりました。これにより、以前の自由形式テキスト解析が型付きJSONに置き換えられ、下流の自動化が信頼できるようになります。

LangGraphのチェックポイントからの再開。 長時間実行される処理は、保存されたチェックポイントから一時停止および再開できます。マーケットデータAPIがスロットリングされたり、LLMプロバイダーが429エラーを返したりしても、最初からやり直す必要はありません。

永続的な意思決定ログ。 トレーダーが行うすべての決定は、理由、入力、タイムスタンプとともにSQLiteログに記録されます。これにより、レビューしたり評価にフィードバックしたりできる監査証跡が得られます。

マルチプロバイダーサポート。 v0.2.4では、既存のOpenAI、Anthropic、Gemini、Grokのラインナップに、DeepSeek、Qwen、GLM、Azure OpenAIが追加されました。トークンあたりの推論コストを最も安くしたい場合は、OpenAI互換エンドポイントを介してDeepSeek V4に切り替えることができます。長いコンテキストやビジョンが必要な場合は、Geminiに切り替えてください。

DockerサポートとWindows UTF-8の修正。 地味だが重要:このフレームワークにはDockerfileが付属するようになり、v0.2.3のWindowsパスエンコーディングバグが解消されました。

エージェントアーキテクチャの詳細

TradingAgentsの完全な実行は次のようになります。

  1. CLIがティッカーシンボルと日付範囲を受け取ります。
  2. アナリストチームが展開します。4人のアナリストそれぞれが独立してティッカーのデータを取得し、レポートを作成します。
  3. リサーチチームが4つのレポートを受け取ります。ブルリサーチ担当者は強気な論文を書き、ベアリサーチ担当者は弱気な論文を書きます。彼らは議論します。
  4. リサーチマネージャーは議論を統合して推奨事項を作成します。
  5. トレーダーは推奨事項を受け取り、永続的な意思決定ログと照合し、取引計画を作成します。
  6. リスク管理チームがレビューします。3つのリスクエージェント(アグレッシブ、コンサバティブ、ニュートラル)が異なる角度から計画に異議を唱えます。
  7. ポートフォリオマネージャーは計画を承認するか、修正のために差し戻します。
  8. 最終的な決定はSQLiteログに記録されます。

LLMのコストのほとんどは、複数のエージェントが議論するステップ3と6に集中しています。ここで小規模モデルの欠点が露呈します。7Bモデルがブル/ベアの議論を行うと、ノイズが多く反復的な議論が生成されます。推論モデル(DeepSeek V4思考モード、GPT-5.5、Claude 4.5)は、実際の研究会議に似た構造化されたやり取りを生成します。

APIツールでLLM層をテストする理由

TradingAgentsを実行すると、本番環境で2つの側面が失敗する可能性があります。それは、マーケットデータAPI(Yahoo Finance、FinnHub、Polygon、OpenBB)とLLMプロバイダーAPIです。

マーケットデータ側は扱いにくいです。無料ティアではレート制限が一貫せず、文書化されていないフィールドが出現したり消えたりし、ベンダーによって取引日の境界が異なります。火曜日には動作していた実行が、ベンダーがregularMarketTimeregular_market_timeに名前変更したために、水曜日には黙って壊れることがあります。

LLM側も、異なる意味で扱いにくいです。DeepSeek V4の思考モードはコストを2倍にし、OpenAI Responses APIには独自の癖があり、Anthropicのツール利用は、一部の下流パーサーが処理に困るようなコンテンツブロックを返します。

両方の側面があなたに求めるものは同じです。アサーション付きで保存・リプレイ可能な正規のリクエストコレクションです。まさにそれがApidogの目的です。当社はMCPサーバーテストプレイブックで、プロトコルレベルでの同じテストパターンを扱いました。

ApidogでのマーケットデータAPIのモック化

TradingAgentsのテスト実行からベンダーの不安定さを取り除く3つのステップ。

ステップ1:アップストリームエンドポイントを定義する。 Apidogプロジェクトで、TradingAgentsが呼び出すYahoo Finance、FinnHub、Polygon、OpenBBのエンドポイントを追加します。各ツール仕様のREADMEに正確なURLが記載されています。それぞれを、実際のレスポンスから取得した例示レスポンスボディを持つリクエストとして保存します。

ステップ2:モックサーバーをオンにする。 Apidogのモックサーバーは、実際のベンダーが使用するのと同じURLパスで例示レスポンスを返します。TradingAgentsのツール設定をモックURLに向けます。これにより、ファンダメンタルズアナリストは決定論的なデータに対して実行され、テストがYahooのレート制限に左右されることはなくなります。

ステップ3:ベンダーの変動を捕捉する。 週に一度、ライブエンドポイントをリプレイし、レスポンスの形状を保存されたフィクスチャと比較します。Apidogは、追加、削除、または名前変更されたフィールドを強調表示します。これにより、regularMarketTimeの名前変更が実行を停止させる前に検出できます。

当社は、より広範なワークフローを記述する契約優先API開発で、まったく同じパターンを使用しています。

LLMプロバイダー層のテスト

実行をスケールアップする前に、プロバイダー層では3つのことをテストする必要があります。

役割ごとのコスト。 1つのティッカーを4人のアナリストすべてと議論に通します。Apidogのリクエストログで、エージェントごとのトークン数をキャプチャします。ブル/ベアの議論は通常、アナリストよりも3〜5倍高価です。そうでない場合、モデルはショートサーキットしています。

出力形式。 v0.2.4の構造化出力エージェント(リサーチマネージャー、トレーダー、ポートフォリオマネージャー)は、常に整形式のJSONを返すべきです。ApidogでJSONPathアサーションを追加して検証します。ここでのリグレッションは静かに壊滅的であり、下流のコードがクラッシュしたときに初めて気づきます。

プロバイダー間の同等性。 コストをテストするためにOpenAIからDeepSeek V4に切り替える際、トレーダーの決定は個々の実行では異なるかもしれませんが、多数の実行では同様の結論に収束するはずです。両方のプロバイダーで50のティッカーを実行し、永続的な意思決定ログを比較し、変動を定量化します。当社のDeepSeek V4 APIガイドはリクエストの形式を、GPT-5.5 APIガイドはOpenAI側を扱っています。Apidogのレスポンス差分は比較を視覚的に行います。

最小限のTradingAgents実行

READMEのクイックスタートはおおよそ次のようになります。

git clone https://github.com/TauricResearch/TradingAgents
cd TradingAgents
pip install -r requirements.txt

export OPENAI_API_KEY="sk-..."
export FINNHUB_API_KEY="..."

python -m tradingagents.cli \
  --ticker AAPL \
  --date 2026-04-30 \
  --models gpt-5.5 \
  --rounds 2

2回の議論が最も意味のある最小の実行です。出力はJSONとマークダウン形式の意思決定サマリーとしてtradingagents/results/に保存されます。

推論負荷の高い役割にDeepSeek V4 Proを切り替えるには、--modelsフラグを設定し、フレームワークのプロバイダー設定を通じてOpenAIクライアントをDeepSeekのベースURLに向けます。

export DEEPSEEK_API_KEY="sk-..."

python -m tradingagents.cli \
  --ticker AAPL \
  --date 2026-04-30 \
  --models deepseek-v4-pro \
  --provider deepseek \
  --rounds 2

同じパターンは、Qwen 3.6、GLM 5、またはOllamaやvLLMによって提供されるあらゆるローカルモデルにも適用できます。当社の2026年版ベストローカルLLMの記事では、ローカルでの提供について解説しています。

よくある落とし穴

これらはGitHubのIssueスレッドに現れています。

小規模モデルでの実行。 7Bのローカルモデルは、解決せずにループするブル/ベア議論を生成します。このフレームワークには、少なくとも中程度の推論品質が必要です。DeepSeek V4 Flash、Qwen 3.6 32B、GPT-5.5、Claude 4.5が現実的な最低ラインです。

マーケットデータキャッシュのスキップ。 各アナリストはデータ層を個別に呼び出します。キャッシュなしでは、実行ごとに4〜8件のベンダーリクエストが拡散され、レート制限の予算をすぐに使い果たしてしまいます。このフレームワークはキャッシュをサポートしているので、オンにしてください。

トレーディングボットとして扱うこと。 これは研究コードです。バックテストのパフォーマンスは、モデルの選択、プロンプトシード、議論の長さ、データ品質に左右されます。生成されるいかなる数値も、戦略ではなく仮説として扱ってください。

トークン消費量の記録忘れ。 1つのティッカーの実行には、モデルとラウンド数に応じて0.10ドルから5ドルの費用がかかります。Apidogのリプレイ履歴で実行ごとのコストを記録してください。議論フェーズでの暴走ループは、数分で実際の費用を膨らませる可能性があります。

1つのプロバイダーをハードコーディングすること。 v0.2.0では、切り替え可能にするために正確にマルチプロバイダーサポートが追加されました。それを使用してください。コミットする前に、3つのプロバイダーで少量のバッチを実行し、意思決定ログを比較してください。

開発ループにおけるApidogの役割

TradingAgentsプロジェクト全体でApidogがその価値を発揮する具体的な3つの場面。

1つ目は設計フェーズです。フレームワークを実際のベンダーに接続する前に、Apidogで各マーケットデータエンドポイントを例示ボディ付きのリクエストとしてスケッチします。スキーマビューは、フレームワークが実際にどのフィールドを使用しているかについて正直になることを促します。多くのチームは、ほとんど消費していないPolygonプランに料金を支払っていたことに気づきます。

2つ目はローカルCIです。Apidogのモックサーバーは、ユニットテスト実行中にすべてのベンダーの代わりを務めるため、テストスイートは5秒以内に完了し、週末の市場時間に依存しなくなります。当社はPostmanなしのAPIテストで、この正確なパターンを扱いました。

3つ目はリグレッション差分比較です。毎週の実行ごとに、ライブエンドポイントを保存されたフィクスチャに対してリプレイします。Apidogはフィールドの名前変更や形状の変動を強調表示します。これは、「データ層が壊れ、エージェントが数字を幻覚し始めた」という最も安価なアラームです。

トレーディング以外の分野でこれが重要な理由

TradingAgentsは、現在私たちが持っているエージェント分解の最も明確なオープンソースの例です。このパターンは、以下の分野に直接適用できます。

複数ステップのエージェントワークフローを設計している場合は、まずTradingAgentsのコードを読んでください。役割の分離、議論フェーズ、構造化された出力決定、永続的なログは再利用可能なパターンです。また、これらはテスト可能なパターンであり、フレームワークをApidogと組み合わせる意義でもあります。

実世界のユースケース

あるクオンツ研究の学生は、TradingAgentsを使用して、同じ30銘柄のバスケットでDeepSeek V4とGPT-5.5とClaude 4.5を比較しています。Apidogはすべてのリクエストとレスポンスをキャプチャするため、比較は再現可能です。

あるフィンテックエンジニアは、マルチエージェントパターン(トレーディングコードではない)を使用して、社内サービスのコードレビューを行っています。専門エージェントがセキュリティ、パフォーマンス、命名規則をチェックします。シンセサイザーがPRコメントを作成します。PRごとの合計レビューコスト:約0.04ドル。

10銘柄のウォッチリストでTradingAgentsを毎晩実行しているソロ開発者は、後の検査のためにすべての決定をPostgresにログ記録しています。Apidogのモックサーバーは、週末のテスト実行中にライブマーケットデータベンダーの代わりを務めます。

結論

TradingAgentsは、チャットではなく構造化された決定を生成するマルチエージェントLLMシステムを構築する方法を示す、機能的でよく設計された例です。v0.2.4では、構造化出力、チェックポイントからの再開、監査証跡、マルチプロバイダーといった機能が追加され、本番環境での利用に関心が高まります。しかし、基盤となるLLMとマーケットデータ層をテストできなければ、これらすべては意味がありません。ここで、Apidogと組み合わせることがその価値を発揮します。

5つの要点:

次のステップ:リポジトリをクローンし、好みのLLMに対して単一のティッカーを実行し、アップストリーム呼び出しをApidogモックサーバー経由でパイプします。1時間以内に、そのフレームワークがあなたのワークフローに適合するかどうかがわかるでしょう。

FAQ

TradingAgentsは実際の資金で使用しても安全ですか?

リポジトリには、これは研究コードであり、金融アドバイスではないと明記されています。その出力を仮説として扱ってください。ライブの証券会社に対してこれを展開する者は、個人的にリスクを負うことになります。メンテナーはその行為を推奨していません。

どのLLMプロバイダーが最高の費用対効果を提供しますか?

2026年初頭のほとんどのワークロードにおいて、思考モードを持つDeepSeek V4 Flashは、コスト面でGPT-5.5を大幅に上回り、ブル/ベアの議論品質では同等です。リクエスト形式については、当社のDeepSeek V4 APIガイドを参照してください。

ローカルモデルでTradingAgentsを実行できますか?

はい。v0.2.0でマルチプロバイダーサポートが追加され、Ollama、vLLM、LM Studioはすべて、このフレームワークが消費するOpenAI互換エンドポイントを提供しています。モデルの選択については、当社の2026年版ベストローカルLLMの記事を参照してください。

マーケットデータAPIをモックする方法は?

Apidogで各ベンダーエンドポイントを定義し、モックサーバーをオンにして、フレームワークのツール設定をモックURLに向けます。同じパターンはQAエンジニア向けのAPIテストツールに文書化されています。

これを実行するための最小ハードウェア要件は?

ホスト型LLM(OpenAI、Anthropic、DeepSeek)を呼び出す場合、Python 3.10以降がインストールされたどのラップトップでも実行できます。ローカルモデルを提供する場合は、モデルに応じて最小ハードウェア要件が異なります。24GBのGPUはDeepSeek V4 FlashまたはQwen 3.6 32Bを実行し、8GBのGPUはLlama 5.1 8Bを実行します。小規模モデルでは品質が低下します。

時間外および週末のシミュレーションをサポートしていますか?

マーケットデータベンダーは過去のデータを返します。フレームワークは選択した任意の日付で実行できます。ライブトレーディングは、このフレームワークが明示的に解決しない別の問題です。

他のマルチエージェントフレームワークと比較してどうですか?

TradingAgentsはトレーディング領域に特化しています。CrewAI、AutoGen、そしてLangGraph自体は汎用的なものです。パターンを学び、他の場所に応用したい場合はTradingAgentsを読み、汎用的なエージェントシステムを構築したい場合は、基盤となるLangGraphのコードから始めてください。

ApidogでAPIデザイン中心のアプローチを取る

APIの開発と利用をよりシンプルなことにする方法を発見できる