1. プロジェクト概要:AI駆動型量取取引戦略ワークショップ
量取取引に興味はあるものの、ゼロから戦略を書いたり、データを探したり、バックテストを行ったりする敷居が高すぎると感じているなら、Vibe-Tradingの出現はあなたのワークフローを根本から変えるかもしれません。これは単なる指標計算器でも、ブラックボックス戦略ライブラリのラッパーでもありません。それは大規模言語モデルによって駆動され、マルチエージェントが協調する金融研究プラットフォームです。その核心思想は非常に直接的:あなたが自然言語で取引のアイデアや研究ニーズを説明するだけで、背後の一連の専門的な「金融スキル」を呼び出し、自動で実行可能な戦略コードを生成し、多市場バックテストを実行し、詳細な分析レポートを出力し、さらには異なる役割のAIで構成される「投資委員会」を組織してあなたの戦略の優劣を議論させることさえ可能です。
このプロジェクトに初めて触れたとき、最も惹きつけられたのは「ゼロ設定、全市場」のデータ取得能力でした。伝統的に、A株のバックテストを行うにはTushareのトークンを取得し、米株ではYahoo FinanceのAPIを研究し、暗号通貨では取引所のキーを登録する必要があり、データソースの接続だけで多くの人が諦めてしまいます。Vibe-Tradingは5つのデータソースを内蔵し、自動的なフォールバック切り替えを実装しています。例えば、「貴州茅台」を分析させると、Tushare(トークンがある場合)を優先的に使用し、なければ無料のAKShareにシームレスに切り替えます。BTC/USDTでは、OKXの公開行情インターフェースを使用します。この設計により、初心者はほぼコストゼロですぐにアイデアを検証でき、上級者も独自の高品質データソースを接続できます。
アーキテクチャから見ると、それは高度にモジュール化されたレゴ工場のようです。バックエンドのコアはReAct(推論-行動)モードに基づくAIエージェントで、69の金融スキルを含むツールボックスを持ち、データ取得、テクニカル分析、因子研究、オプション価格付け、マクロ分析などあらゆる面をカバーしています。フロントエンドはモダンなWebインターフェースで、機能を備えた完全なコマンドラインツールとMCPプロトコルに準拠したプラグインも提供しており、Claude Desktop、CursorなどのモダンなAI開発環境に簡単に統合できます。特に巧妙だと感じたのは「スウォーム」プレセット機能で、ボタン一つで複数のAI役割で構成される専門チームを起動できます。例えば「グローバル株式リサーチデスク」は、A株、香港株、米株、暗号通貨の協調研究を自動的に役割を割り当てて行い、最終的に統合レポートを提供し、これは実際の投資研究機関のワークフローを模倣しています。
2. 核心的設計思想とアーキテクチャ分解
2.1 エージェントコア:スキル駆動のモジュラー実行エンジン
Vibe-Tradingの「脳」は典型的なAIエージェントですが、その設計は単一の大規模モデルがすべてを処理するという非現実的な幻想を放棄し、スキル指向のモジュラー構築を採用しています。その背後の論理は明確です:GPT-4がマクロ経済と話せるかもしれませんが、直接ストップロスを組み込み、TradingViewで実行できるPine Scriptコードを書き、構文が100%正しいことを保証するのは不安定です。そのため、プロジェクトは複雑な金融タスクを69の独立した「スキル」に分解しています。
各スキルは自己完結型のMarkdownファイル(SKILL.md)で、その用途、入出力形式、およびどの下位ツールを呼び出すかが明確に定義されています。例えば、strategy-generateスキルは自然言語記述をPython戦略コードに変換し、backtest-diagnoseスキルはバックテストを実行して結果を分析します。ユーザーがリクエストを提出すると、エージェントは最初に意図を識別し、スキルライブラリから1つ以上の最も関連するスキルを選択して実行します。この設計はいくつかの重要な利点をもたらします:
- 決定性の向上:各スキルの裏には慎重に作成されテストされたコードツールがあり、LLMが複雑なコードや計算を生成する際に起こりうる「幻覚」やエラーを回避します。
- 保守性と拡張性:新しい分析分野(例:ESG投資)を追加するには、新しいスキルファイルと対応するツール関数を記述するだけで、コアエンジンを変更する必要はありません。
- 透明性と説明可能性:実行プロセスは追跡および再検討可能(
/traceコマンドで)であり、どのスキルがどのツールを呼び出し、どの結果を出力したかを明確に追跡でき、これは黒ボックスの出力よりも信頼性が高いです。
2.2 データ層:フォールトトレラントかつ無料優先のローダーチェーン
データは量取分析の基盤であり、問題が最も起こりやすい部分です。Vibe-Tradingのデータ層設計は実用主義者の知恵を反映しています—多重フォールバックと自動切り替え。それはDataLoaderプロトコルを抽象化し、各市場(A株、香港株/米株、暗号通貨、先物、外貨)に優先順位順に並べられたローダーチェーンを登録しています。
A株データの例では、そのローダーチェーンはTushareProLoader→AKShareLoaderのようになります。000001.SZ(平安銀行)のデータを要求した場合、システムはまずTushare Pro(トークンが必要、データ品質が高く安定)を使用しようと試みます。ユーザーがトークンを設定していないか、Tushareサービスが一時的に利用できない場合、システムはエラーでクラッシュするのではなく、自動的に静かに無料の代替データソースであるAKShareに切り替えます。暗号通貨では、チェーンはOKXLoader→CCXTLoaderのようになり、常にデータを取得できることを保証します。
実践的アドバイス:データソースの選択とトレードオフ実際の使用では、個人開発者であっても、Tushareの無料トークンを取得することを強くお勧めします。AKShareは素晴らしく無料ですが、そのデータインターフェースの安定性と更新頻度は、ソースサイトの変更により影響を受けることがあります。Tushare Proのポイントシステムは、低頻度のバックテストと研究には個人ユーザーにはほとんど十分であり、より安定し、標準化されたA株の基本面データを提供します。Tushareを第一選択肢、AKShareを保険として使用するのが最も確実なアプローチです。米株ではyfinanceは非常に信頼でき、暗号通貨ではOKXの公開行情インターフェースは戦略研究には十分です。
2.3 バックテストエンジン:多市場と専門的統計検証に対応
バックテストモジュールはプロジェクトの目玉であり、単なる「買い売り」シミュレーターではなく、7つの独立した市場エンジンと1つの複合エンジンを含む専門フレームワークです。各エンジンは特定市場の取引ルールにカスタマイズされており、例えばA株エンジンはT+1取引制度、上げ板・下げ板を考慮し、暗号通貨エンジンは24時間365日の取引をサポートします。
複合エンジンの設計は特に精巧です。それは資産配分バックテストの痛みを解決します。伝統的に、「60%沪深300指数 + 40%ビットコイン」のポートフォリオをバックテストしたい場合、2つの戦略をそれぞれバックテストし、手動でポートフォリオ収益を計算する必要があり、これは資産間の動的リバランスを無視します。複合エンジンは共有資金プールを定義し、A株と暗号通貨に異なる戦略とルールを割り当てることができ、エンジンは各タイムステップですべての市場の信号を統一的に処理し、実際の資金配分とリバランス計算を行い、より現実に近いポートフォリオバックテスト結果を得ます。
さらに、バックテストシステムはモンテカルロシミュレーション、ブートストップ信頼区間、ウォークフォワード分析などの高度な統計方法を統合しています。これは戦略の歴史収益だけでなく、歴史パスをランダムにリサンプリング(モンテカルロ)または収益シーケンスをランダムにシャッフル(ブートストラップ)して戦略の堅牢性と過適合リスクを評価します。ウォークフォワード分析は歴史データを複数のトレーニングセットとテストセットに分割し、ローリングで進めて戦略のサンプル外継続的パフォーマンスを検証します。これらの機能は通常、専門的な量取プラットフォームでしか見られません。
2.4 スウォームシステム:DAGに基づくマルチエージェント協調
「スウォーム」はプロジェクトで最も想像力豊かな機能です。事前定義または一時的に複数のAIエージェントで構成されるチームを組織し、各エージェントが特定の役割(例:「テクニカルアナリスト」、「リスクマネージャー」、「マクロアナリスト」)を担い、有向非巡回グラフで定義されたプロセスに従って協調作業できるようにします。
例えば、investment_committeeという事前設定スウォームを実行すると、「多頭アナリスト」、「空頭アナリスト」、「リスク審査官」、「投資ディレクター」を含むチームが起動します。プロセスは概ね以下のようになります:
- 多頭アナリストと空頭アナリストは提供されたテーマ(例:「テスラの今後3ヶ月の動向」)に基づき、それぞれ買い材料と売り材料を収集し、独立した分析レポートを生成します。
- リスク審査官はこれら2つのレポートをレビューし、論理的欠陥、データバイアス、言及されていないリスクポイントを特定します。
- 投資ディレクターは前3者の出力を統合し、最終的な「投資アドバイス」を決定し、その理由を述べます。
プロセスの途中結果と最終結論はストリーミング出力でリアルタイムに表示され、異なる役割間の「議論」思考プロセスを確認できます。これは本質的に複雑な分析タスクをプロセス化、役割化された分解し、複数のAIの「ブレインストーミング」を利用して単一AIの視点の限界を補い、分析レポートの深さと包括性を大幅に向上させます。
3. からの完全なデプロイメントと実践ガイド
3.1 環準備と3つのデプロイメントオプション
Vibe-Tradingは大きな柔軟性を提供し、使用シナリオに応じて最適なデプロイ方法を選択できます。私の提案は:素早く体験したい場合はDocker、深く開発またはCLIを使用したい場合はローカルインストール、既存のAIワークフローに統合したい場合はMCPプラグインです。
**オプションA:Dockerワンクリックデプロイ(最速、すべてのユーザー向け)**これはWeb UIをゼロ設定で起動する最適な方法です。システムにDockerとDocker Composeがインストールされていることを確認してください。
git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
cp agent/.env.example agent/.env
次に、agent/.envファイルを編集します。これが最も重要なステップです。使用するLLMプロバイダーブロックを見つけ、コメントを解除しAPIキーを記入します。例えば、DeepSeekを使用する場合:
# DeepSeek
LANGCHAIN_PROVIDER=deepseek
DEEPSEEK_API_KEY=sk-your-actual-api-key-here
DEEPSEEK_BASE_URL=https://api.deepseek.com
LANGCHAIN_MODEL_NAME=deepseek/deepseek-v3.2
保存後、一行のコマンドですべてのサービスを起動します:
docker compose up --build
http://localhost:8899にアクセスすると、完全なWebインターフェースを使用できます。バックエンド(FastAPI)とフロントエンド(React)は同じコンテナで実行され、非常に便利です。
**オプションB:ローカルPython環境インストール(機能が最も全面的、開発者向け)**機能豊富なコマンドラインインタラクティブインターフェースを使用したい場合、またはコードに基づいて二次開発を行いたい場合、これが最適です。
git clone https://github.com/HKUDS/Vibe-Trading.git
cd Vibe-Trading
python -m venv .venv # 仮想環境を作成
# 仮想環境を有効化
# Linux/macOS:
source .venv/bin/activate
# Windows PowerShell:
# .venv\Scripts\Activate.ps1
pip install -e . # 編集可能モードでインストール、コード変更に便利
cp agent/.env.example agent/.env
# 同様に.envファイルを編集してLLM APIを設定
vibe-trading # 素晴らしいテキストユーザーインターフェースを起動
ローカルインストール後、完全なCLI機能、すべてのコマンドラインパラメータ、および直接Pythonスクリプトを実行する能力を得ることができます。
**オプションC:MCPプラグインとして統合(既存AIアシスタントにシームレス統合)**日常的にClaude Desktop、Cursor、またはOpenClawを使用している場合、このオプションはVibe-Tradingの69の金融スキルをあなたのAIアシスタントの「外部脳」に直接できます。インストール後、チャットウィンドウでアシスタントに「沪深300の移動平均線戦略をバックテストして」と直接依頼できるようになり、アシスタントは自動的にVibe-Tradingのbacktestツールを呼び出します。Claude Desktopを例に、設定ファイルclaude_desktop_config.json(通常は~/Library/Application Support/Claude/または%APPDATA%\Claude\にあります)を見つけ、以下を追加します:
{
"mcpServers": {
"vibe-trading": {
"command": "vibe-trading-mcp"
}
}
}
Claude Desktopを再起動すると、あなたのアシスタントは金融分析の超能力を手に入れます。
3.2 核心ワークフロー実践:アイデアから実行可能戦略へ
完全な例を通じて、漠然とした取引のアイデアをバックテストレポート付きで実行可能な戦略に変える方法を見てみましょう。私たちが研究したいのは「RSI指標に基づくビットコインでの短期取引戦略」です。
ステップ1:インタラクティブセッションの起動プロジェクトルートディレクトリでvibe-tradingを実行してテキストユーザーインターフェースに入ります。ウェルカム画面とコマンドプロンプトが表示されます。ここで直接自然言語コマンドを入力できます。
ステップ2:分析リクエストの提出プロンプト後に以下を入力します:
/p BTC-USDTを分析し、RSI指標を使用して短期取引戦略を設計し、30日間バックテストし、詳細なレポートを提供してください。
ここで/pは/promptの略です。システムは作業を開始し、リアルタイムの思考プロセスが見られます:
- スキルルーティング:エージェントはあなたのリクエストが「データ取得」「戦略生成」「バックテスト診断」などの複数のスキルを含むと識別します。
- データ取得:
okx-marketまたはccxtスキルを自動的に呼び出し、最近30日のBTC-USDTのOHLCVデータを取得します。 - 戦略生成:
strategy-generateスキルがトリガーされ、以下のようなPython戦略コード断片を生成する可能性があります:
def trading_strategy(price_data):
# 14日RSIを計算
price_diff = price_data['close'].diff()
upward_moves = (price_diff.where(price_diff > 0, 0)).rolling(window=14).mean()
downward_moves = (-price_diff.where(price_diff < 0, 0)).rolling(window=14).mean()
relative_strength = upward_moves / downward_moves
rsi_value = 100 - (100 / (1 + relative_strength))
# シグナル生成:RSIが30以下で買い、70以上で売り
price_data['signal'] = 0
price_data.loc[rsi_value < 30, 'signal'] = 1 # 買いシグナル
price_data.loc[rsi_value > 70, 'signal'] = -1 # 売りシグナル
price_data['position'] = price_data['signal'].replace(0, method='ffill').fillna(0)
return price_data
- バックテスト実行:
backtest-diagnoseスキルが引き継ぎ、生成された戦略と取得したデータを暗号通貨バックテストエンジンに送り、収益率、シャープレシオ、最大ドローダウンなどの主要指標を計算します。
ステップ3:結果の確認と精緻化実行が終了すると、システムはrun_idを提供します。コマンドで詳細な結果を確認します:
/show <run_id>
構造化されたレポートが表示され、純資産曲線図、収益統計表、取引リスト、リスク指標が含まれます。結果に満足できない場合、例えば取引回数が少なすぎると感じる場合、以下のように継続して最適化できます:
/continue <run_id> RSIの買われすぎ・売られすぎしきい値を20と80に調整し、単純な移動ストップロスを追加してください。ストップロス幅は5%です。
エージェントは前のコンテキストに基づき、戦略コードを調整し再バックテストし、アイデアを迅速に反復させることができます。
ステップ4:戦略のエクスポートと適用満足のいく戦略が得られたら、実際の取引プラットフォームにエクスポートできます。これはVibe-Tradingのキラーフィーチャーの1つです:
/pine <run_id>
このコマンドは一度に3つのコードを生成します:
- Pine Script v6:TradingViewプラットフォーム用で、TradingViewの戦略エディタに直接コピー&ペーストできます。
- TDX式:国内主流株式ソフトウェア(通達信、同花順、東方富騰など)の式システムに適用します。
- MQL5コード:MetaTrader 5プラットフォームで自動取引を行うために使用します。
注意:戦略の過剰最適化と汎化能力この迅速な反復プロセスは非常に効率的ですが、「過剰適合」のリスクも潜んでいます。歴史バックテスト結果を完璧に見せるためにパラメータ(RSI期間、しきい値など)を継続的に調整すると、その戦略が将来無効になる可能性も増加します。プロジェクトが提供するモンテカルロシミュレーションとウォークフォワード分析機能を必ず使用して戦略の堅牢性を検証してください。歴史データ上の収益は平凡でも堅牢性検験を通過した戦略は、歴史収益は驚異的でも極度に脆弱な戦術よりもはるかに価値があります。
3.3 スウォームモードの深い体験:AI投資デバットの組織
スウォームモードはより開かれ、複雑な研究問題に適しています。例えば「AIチップ業界の今後半年の投資機会とリスク」について包括的な理解を得たい場合を考えてみましょう。
CLIで以下を実行します:
/swarm run global_equities_desk '{"topic": "AIチップ業界(例:NVIDIA、AMD、Cambriconなど)の今後半年の投資機会とリスク分析"}'
このコマンドは「グローバル株式リサーチデスク」スウォームを起動します。ストリーミング出力で、異なる「リサーチャー」が並行して作業を開始します:
- A株リサーチャー:Cambricon、海光情報などの国内企業の財務報告、政策の利点と国産代替ロジックを分析しています。
- 香港株/米株リサーチャー:NVIDIA、AMDのサプライチェーン状況、財務会議議事録、アナリスト評価の変化を掘り下げています。
- 暗号通貨リサーチャー:AI関連の暗号通貨プロジェクト(例:Render Network)またはマイニングリース市場に関連分析を行うかもしれません。
- グローバルストラテジスト:上記情報を統合し、地政学、技術イテレーションサイクル、業界競合格局などのマクロ視点から要約しています。
最終的に、多市場・多視点の分析レポートが得られます。このモードは個人研究者の情報処理の広さと深さを大幅に拡張し、あなたが同時に数分野のジュニアアナリストを雇い、シニアストラテジストがまとめるのと同じです。
4. 核心ツールと高度機能の詳細解析
4.1 バックテストエンジンの詳細:収益率曲線以上に
Vibe-Tradingのバックテスト出力は単なる純資産曲線ではありません。その出力の各指標を理解することは、戦略の真の品質を評価する上で極めて重要です。以下は典型的なバックテストレポートの主要部分の解析です:
| 指標 | 意味と解釈 | 経験的なしきい値参考 |
|---|---|---|
| **累積収益率** | バックテスト期間全体での戦略の総収益。 | ベンチマーク(例:沪深300)と比較が必要。単純に高収益は高リスクを伴う可能性がある。 |
| **年化収益率** | 総収益を年化収益に換算し、異なる期間の戦略を比較しやすくする。 | 20%を超えかつ堅実な長期戦略は非常に優秀。 |
| **年化ボラティリティ** | 収益率の標準偏差、戦略のリスクを測定。ボラティリティが大きいほど収益が不安定。 | 低いほど良い。通常ベンチマークボラティリティを下回ることが望ましい。 |
| **シャープレシオ** | (年化収益率 - 無リスク利率) / 年化ボラティリティ。単位リスクあたりの超過収益を測定。 | >1 は許容範囲、>1.5 は良好、>2 は優秀。 |
| **最大ドローダウン** | 資産純資産がピークから底までの最大下落幅。戦略が直面しうる最悪のシナリオを測定。 | **極めて重要**。30%を超えるドローダウン戦略は心理的耐久性とリスク管理の圧力が非常に大きい。 |
| **カルマレシオ** | 年化収益率 / 最大ドローダウン。収益とドローダウンのバランスを測定。 | >1 は合格、>3 は非常に優秀。 |
| **勝率** | 利益を出した取引回数の総取引回数に占める割合。 | 必ずしも高い方が良いわけではなく、高勝率は低損益比を伴うことが多い。組み合わせて考慮する必要がある。 |
| **平均損益比** | 平均利益額 / 平均損失額。 | >1.2 は基本要件、>1.5 は良好。高い損益比は低い勝率を補うことができる。 |
| **取引頻度** | 一定期間内の資産の売買の頻度。 | 高すぎると多くの取引コストが発生し利益を侵食し、低すぎると機会を逃す可能性がある。 |
モンテカルロシミュレーションは歴史収益分布に基づき、数千もの将来純資産パスをランダムに生成し、収益とドローダウンの信頼区間(例:「95%の確率で来年一年の最大ドローダウンは25%を超えない」)を提供します。ウォークフォワード分析は歴史データを複数のウィンドウに分割し、各ウィンドウで戦略をトレーニングしてテストし、最終的にサンプル外テストの平均パフォーマンスを提供します。戦略がウォークフォワード分析で全体的なバックテストに比べて著しく劣る場合、それは歴史データの特定のパターンに過剰適合している可能性が高いことを示します。
4.2 量取分析ツールボックス実践:因子研究とオプション価格付け
戦略バックテストに加え、プロジェクト内蔵の量取ツールは専門研究にも非常に役立ちます。
因子IC/IR分析:A株で「時価総額因子」が有効かどうか検証したいとします。factor_analysisツール(またはMCP経由で呼び出し)を使用できます。各時点での株式の時価総額と次期収益の横断相関性(IC)を計算し、その平均値と標準偏差を計算し、最終的に情報レシオを出力します。これは因子の選株能力が安定しているか科学的に評価します。
オプション価格付けとギリシャ値計算:オプション取引者にとって、analyze_optionsツールは非常に実用的です。原資産価格、行使価格、無リスク利率、ボラティリティ、満期時間を入力すると、瞬時にブラック-ショールズモデル(またはその他のモデル)を使用してオプションの理論価格を計算し、デルタ、ガンマ、ベガ、シータ、ローなどの全ギリシャ値を提供します。これはオプションポジションのリスク暴露を理解し、ヘッジ戦略を設計する上で極めて重要です。
テクニカルパターン認識:pattern_recognitionツールはK線チャートを自動スキャンし、「頭肩頂」「ダブルボトム」「三角形整理」などの古典的テクニカルパターンを識別できます。パターン分析は主観性が強いですが、多因子モデルでのシグナルソースとして、または市場センチメントの補助判断として使用すると一定の価値があります。
4.3 プロジェクト構造と二次開発ガイド
Vibe-Tradingに基づいてカスタム開発を行いたい場合、そのプロジェクト構造を理解することが重要です。核心ロジックはすべてagent/src/ディレクトリにあります:
agent/src/skills/:ここに69のスキルの「説明書」が保存されています。各SKILL.mdファイルはスキルのメタ情報を定義します。もし「センチメント分析」スキルを追加したい場合、このディレクトリに新規ファイルを作成し、既存の形式に従って記述するだけです。agent/src/tools/:ここはスキルが呼び出す具体的な「ツール」の実装です。スキルは説明、ツールは実行体です。例えば、backtest_tool.pyはバックテストの実行ロジックのすべてを実装します。新しいツールはここでPythonクラスを作成し、統一インターフェースを実装する必要があります。agent/src/swarm/:スウォームシステムの実行エンジン。29の事前設定チームはconfig/swarm/ディレクトリのYAMLファイルに設定されています。これらのファイルを参考に、独自のマルチエージェント協調プロセスを定義できます。agent/backtest/:バックテストエンジンの核心。engines/ディレクトリには異なる市場のエンジン、loaders/にはデータローダー、optimizers/にはポートフォリオ最適化器があります。
二次開発例:単純な「低ボラティリティ選股」スキルの追加
skills/にlow-volatility-screening.SKILL.mdを作成し、スキルの用途と入出力を記述します。tools/にlow_volatility_tool.pyを作成し、株式のボラティリティを計算して順序付けするロジックを実装します。agent/src/agent/skills.pyでこの新しいスキルを登録します。 4.サービスを再起動すると、自然言語コマンドでこの新しいスキルを使用できます。
5. よくある問題、トラブルシューティングとパフォーマンスチューニング
実際の使用中、いくつかの問題に遭遇するかもしれません。以下は私が深く使用してまとめたよくある状況とその解決策です。
5.1 LLM API関連問題
問題:応答速度が遅いまたは頻繁にタイムアウトする。
- 原因:デフォルトのLLM呼び出しタイムアウトは120秒です。複雑な分析やスウォームタスクはこの時間を超える可能性があります。
- 解決策:
.envファイルでTIMEOUT_SECONDS=300またはそれ以上に増やします。同時に、推論速度がより速いモデル(例:DeepSeek、GroqのLlamaモデル、またはローカルデプロイのOllama)を使用することを検討してください。
問題:API呼び出し費用が急増する。
- 原因:スウォームモードまたは複雑な多段階推論は大量のLLM呼び出しを生成します。
- 解決策:
- 重要でない分析では、より経済的なモデル(例:DeepSeek)に切り替えます。
- CLIで
/settingsを使用して現在の設定を確認し、非常に高価なモデル(例:GPT-4 Turbo)を誤用していないことを確認します。 - Ollamaをローカルにデプロイし
qwen2.5:7bやllama3.2:3bなどの軽量モデルを実行することで、ほとんどの機能を完全に無料で実行できます(オンライン検索を除く)。
5.2 データ取得の失敗
問題:A株データ取得時にエラーが表示されるかデータが空。
- トラブルシューティング:
- まず
TUSHARE_TOKENが設定されているか確認します。設定されていない場合、システムはAKShareにフォールバックします。 - AKShareを使用する場合、一部インターフェースはデータソースサイトの改版により一時的に無効になることがあります。これは無料データソースの一般的な問題です。
- 株式コードの形式を指定してみてください。A株では
000001.SZ(深交所)または600000.SH(上交所)形式を使用すると成功率が高くなります。
- 解決策:優先的にTushareトークンを申請して使用します。AKShareを使用する必要がある場合、プロジェクトのIssueやAKShareのドキュメントを確認し、インターフェースの更新がないか確認してください。
問題:暗号通貨データが取得できない。
- トラブルシューティング:OKXの公開APIは時々アクセス制限や変動があります。
- 解決策:システムは自動的にCCXTにフォールバックします。CCXTは100以上の取引所をサポートし、常に利用可能なものがあります。コードでCCXTを使用し
binanceなどの他の取引所をデータソースとして指定することもできます。
5.3 バックテスト結果が不理想または異常
問題:バックテスト収益率が異常に高い(例:年化1000%)。
- 原因:ほぼ確実に「未来関数」またはデータ・ペネトレーションです。例えば、戦略で当日の終値を使用してシグナルを計算し、当日に取引を実行している場合、これは現実では不可能です。
- トラブルシューティング:
/trace <run_id>コマンドを使用し、生成された戦略コードを注意深く確認します。すべての価格データ(open、high、low、close)のインデックスが厳密に1期遅れているか確認します。買い/売りシグナルがt-1時点および以前の情報に基づいて作られていることを確認してください。 - 解決策:スキルの説明またはAIへのプロンプトで「未来関数を避ける」「遅延データを使用する」と明確に述べます。生成されたコードは
data['signal'] = np.where(data['close'].shift(1) > data['ma'].shift(1), 1, -1)のようになっているべきです。
問題:取引回数がゼロまたは非常に少ない。
- 原因:戦略ロジックが厳格すぎ、バックテスト期間中にトリガー条件がほとんど満たされません。例えば、RSIしきい値を10と90に設定するとか。
- 解決策:戦略パラメータを調整するか、
/continueコマンドでAIに条件を緩和するよう依頼します。複数の時間枠を組み合わせたより頻繁なシグナルを導入することも検討できます。
5.4 パフォーマンスとリソースの最適化
問題:長期間、多銘柄のバックテスト時にメモリ使用量が高くまたは速度が遅い。
- 最適化提案:
- データキャッシュ:Vibe-Trading自体は一部データをキャッシュします。軽量データベースをローカルに構築し、よく使用される歴史データ(例:A株全市場日次)をキャッシュし、データローダーが優先的にローカルから読み込むように変更することを検討できます。
- バックテスト範囲の制限:初期研究段階では、長期間(10年)や多すぎる銘柄(全市場)を一度にバックテストしないでください。まず近1-2年間のデータと代表的な銘柄セット(例:沪深300成分株)を使用して迅速に反復してください。
- ハードウェアのアップグレード:複雑なモンテカルロシミュレーションとスウォームタスクはCPU単核性能に高い要求があります。より高性能なマシンの使用を検討してください。
問題:Web UIで複雑なグラフや長期間のストリーミング出力時にフリーズする。
- 解決策:これは通常、大量のデータをレンダリングすることによる前端の問題です。バックテスト設定で出力データのポイント数を減らす(例:分次データではなく日次データのみを出力)か、またはスウォームタスクではCLIの
--jsonパラメータを使用して結果をファイルに出力してから分析することを試みてください。
5.5 デプロイとネットワーク問題
問題:Dockerコンテナの起動に失敗し、ポートが使用中と表示される。
- 解決策:デフォルトのWeb UIポートは8899です。
docker-compose.ymlファイルのポートマッピングを変更するか、docker compose up -p 8890:8899を使用して新しいホストポートを指定できます。
問題:中国大陸で一部のLLM APIまたはデータソースにアクセスできない。
- 解決策:これは客観的なネットワーク環境の問題です。LLMでは、DeepSeek、智谱GLM、月之暗面Kimiなど中国大陸で安定してアクセスできるプロバイダーを優先的に選択します。データソースでは、プロジェクト内蔵のAKShare、Tushare(国内サーバー)、OKX(国際サイト)は通常アクセスに問題ありません。yfinanceは不安定な場合があり、その場合AKShareは一部の米株と香港株データを代替として提供します。
最後に、このプロジェクトのコミュニティは非常に活発で、GitHubのIssuesとDiscordチャンネルは助けを求めたり経験を共有したりする良い場所です。量取取引自体は挑戦に満ちた分野であり、ツールは効率を大幅に向上させますが、真のアルファ源は常にあなたの独立した思考と継続的な改善です。Vibe-Tradingはあなたに強力な研究室を提供しますが、実験の設計者と結果の審判官は常にあなた自身です。多くのバックテストと検証を行い、市場への畏敬の念を持ち続け、戦略研究の道で何かを得られることを願っています。