mcpField
M
MT5-Quant

MT5-Quant

ローカル
github.com/masdevid金融データ462 週間前に更新

MT5-Quant について

MT5-Quant は macOS と Linux で MT5 の戦略開発を行う MCP サーバーで、Windows を使わずに MQL5 エキスパートアドバイザーのコンパイル、バックテスト、最適化、分析を行えます。バックテストレポートの整理、約定単位の分析、クラッシュ診断を必要とする量子取引の開発者向けです。

主な機能

  1. 01GUI を使わない MQL5 のコンパイルと一連のバックテスト
  2. 02レポートと約定データの SQLite 保存と検索
  3. 03複数の観点からの約定データ分析
  4. 04結果解析を伴うバックグラウンドの遺伝的最適化
  5. 05パラメータファイル (.set) の読み書きと比較
  6. 06Wine と MT5 プロセスの診断

活用シーン

  1. 01バックテスト期間中のドローダウンの原因を調査
  2. 02複数のバックテスト結果を比較し、パラメータを選定
  3. 03macOS や Linux での MT5 バックテストのクラッシュ診断

MCP 対応

MCP サーバーとして、コンパイル、バックテスト、レポート検索、パラメータファイル、診断などの 89 のツールをクライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
mcpbmcp-mt5-quant-macos-arm64.tar.gz1.34.3

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

MT5-Quant

OpenSSF Scorecard CII Best Practices Rust CI crates.io License: MIT CodeQL

macOS/Linux での MT5 戦略開発向け MCP サーバーです。 コンパイル、バックテスト、分析、最適化、クラッシュのデバッグ、MQL5 エキスパートアドバイザーの管理を行う 89 個のツールを備えています。Windows は不要です。

You: "Backtest MyEA Jan-Mar, what caused the February drawdown?"

Claude: [compile → clean → backtest → analyze 1,847 deals]
        → Feb 14: BUY grid at L6, locking lot 1.75× base
        → Cutloss fired 17 points later
        → Recommendation: cap locking multiplier to ≤1.2×

MT5-Quant を選ぶ理由

重点分野: バックテストの整理、レポート作成、分析です。これらは MT5 自体にはない機能です。

MT5-Quantその他
プラットフォームmacOS/Linux ネイティブWindows のみ
バックテストのパイプライン✅ 完全対応(コンパイル → 実行 → 分析)✅ MT5 Python パッケージ経由
取引単位の分析✅ 19 の切り口、DB に保存❌
レポートの整理✅ SQLite(レポート + 取引)+ 検索 + 履歴❌
MQL5 のコンパイル✅ ヘッドレス(Wine 経由の MetaEditor、GUI 不要)⚠️ GUI またはターミナル経由
最適化✅ バックグラウンド実行 + 結果の解析 + .set の生成⚠️ ターミナルのみ、解析機能なし
クラッシュのデバッグ✅ Wine/MT5 の診断❌

その他のツールは、通常 Windows 上でMetaTrader5 Python パッケージを使って実行され、ターミナルの全操作に対応しています。MT5-Quant はそのギャップを埋めます。バックテストレポートの整理、取引単位の分析情報の抽出、最適化ワークフローの管理を行います。これらの機能は、MT5 にもその Python API にも標準ではありません。

クイックスタート

MT5-Quant をインストールする
オプション A — Cargo(推奨、Rust ツールチェーンが必要)
cargo install mt5-quant --locked
オプション B — ビルド済みバイナリ(ツールチェーン不要)
# macOS Apple Silicon
curl -LO https://github.com/masdevid/mt5-quant/releases/latest/download/mcp-mt5-quant-macos-arm64.tar.gz
tar xzf mcp-mt5-quant-macos-arm64.tar.gz   # → mcp-mt5-quant-macos/mt5-quant

# Linux x64
curl -LO https://github.com/masdevid/mt5-quant/releases/latest/download/mcp-mt5-quant-linux-x64.tar.gz
tar xzf mcp-mt5-quant-linux-x64.tar.gz     # → mcp-mt5-quant-linux/mt5-quant

クライアントが mt5-quant として起動できるよう、バイナリを PATH 上の場所(例:/usr/local/bin または ~/.local/bin)に移動します。

オプション C — LLM クライアントに登録する(コピー&ペースト)

Claude Code

claude mcp add mt5-quant -- mt5-quant --stdio

Claude Desktop — ~/Library/Application Support/Claude/claude_desktop_config.json

{ "mcpServers": { "mt5-quant": { "command": "mt5-quant", "args": ["--stdio"] } } }

Cursor — .cursor/mcp.json(Claude Desktop と同じ JSON 形式)

{ "mcpServers": { "mt5-quant": { "command": "mt5-quant", "args": ["--stdio"] } } }

opencode — .opencode/opencode.jsonc

{ "mcp": { "mt5-quant": { "type": "local", "command": ["mt5-quant", "--stdio"], "enabled": true } } }

Codex CLI — ~/.codex/config.toml

[mcp_servers.mt5-quant]
command = "mt5-quant"
args = ["--stdio"]

次に、セットアップを完了します(Wine と MT5 のパスを自動検出します)。

bash scripts/setup.sh

ヒント: 上記の作業をすべて LLM コーディングエージェントに依頼することもできます。 「https://github.com/masdevid/mt5-quant から mt5-quant をインストールしてください。ダウンロードまたはビルドし、scripts/setup.sh を実行して Wine と MT5 のパスを自動検出し、MCP サーバーとして登録してください。」

最初のバックテスト
Run a backtest on MyEA from 2025.01.01 to 2025.03.31

AI がパイプライン全体を実行します:コンパイル → キャッシュのクリア → バックテスト → 抽出 → 分析。

MCP ツール(89 個)

コアワークフロー
ツール説明
run_backtest一連のパイプライン:コンパイル → クリーンアップ → バックテスト → 抽出 → 分析
run_backtest_quickコンパイル済み EA を使用したクイックバックテスト(コンパイルをスキップ)
run_backtest_onlyバックテストのみ実行します。生の取引データを抽出するだけで、分析は行いません
launch_backtest実行後は待機せずに MT5 バックテストを起動し、完了まで状態を確認します
get_backtest_status実行中のバックテストの状態を確認します(MT5 の実行状況、レポートの有無、経過時間)
run_optimization遺伝的最適化(バックグラウンドで実行し、すぐに戻ります)
get_optimization_resultsMT5 の終了後に最適化結果を解析します
list_jobsすべての最適化ジョブを状態とともに一覧表示します
analyze_report任意のレポートディレクトリから analysis.json を読み込みます
compare_baselineレポートとベースラインを比較し、勝者/敗者の判定を返します
compile_eaMetaEditor で MQL5 EA をコンパイルします
list_expertsMQL5/Experts ディレクトリ内のすべての EA を一覧表示します
list_indicatorsMQL5/Indicators ディレクトリ内のすべてのインジケーターを一覧表示します
list_scriptsMQL5/Scripts ディレクトリ内のすべてのスクリプトを一覧表示します
healthcheckサーバーの簡易ヘルスチェックを行います
list_symbolsMT5 ターミナルで利用可能なすべてのシンボルを一覧表示します
詳細分析(個別分析)
ツール説明
analyze_monthly_pnl月別の損益内訳のみ
analyze_drawdown_eventsドローダウンのイベントと原因のみ
analyze_top_losses損失額が最も大きい取引のみ
analyze_loss_sequences連続損失のパターンのみ
analyze_position_pairsポジションの保有時間と損益の組み合わせ
analyze_direction_bias買いと売りのパフォーマンス
analyze_streaks勝ち負けの連続記録を分析します
analyze_concurrent_peak同時保有ポジション数のピーク

対象を絞った分析にはこれらを使用するか、すべてを一度に実行するには analyze_report を使用してください。

取引単位の分析(新機能)
ツール説明
list_deals条件(タイプ、利益範囲、数量、日付)で絞り込み、個々の取引を一覧表示します
search_deals_by_comment取引コメントを全文検索します(例:「Layer #3」)
search_deals_by_magicEA のマジックナンバーで取引を絞り込みます
analyze_profit_distribution利益のヒストグラム:小・中・大の利益と損失
analyze_time_performance時刻および曜日別のパフォーマンス
analyze_hold_time_distribution保有時間の区分と利益との相関
analyze_layer_performanceコメントからグリッド/マーチンゲールのレイヤーを分析します
analyze_volume_vs_profit数量との相関とロットサイズ別のパフォーマンス
analyze_costs収益性に対する手数料とスワップの影響
analyze_efficiency時間/日あたりの利益、年率換算リターン、取引頻度
モニタリング
ツール説明
verify_setupWine/MT5 のパス、Wine のバージョン、EA/set ファイル数を確認します
get_optimization_statusバックグラウンド最適化ジョブの現在の状態を確認します
list_jobsすべての最適化ジョブの簡潔な状態を1回の呼び出しで表示します
レポートとログ
ツール説明
list_reports主要な指標をまとめた、すべての実行結果の簡潔な表を取得します。詳細な分析は不要です
get_latest_reportオプションで損益曲線を含め、最新のレポートを取得します
search_reportsEA、シンボル、期間、または利益条件でレポートを検索します
get_report_by_idIDを指定して、損益曲線を含む特定のレポートを取得します
get_reports_summary件数、平均値、合格率などの集計統計を取得します
get_best_reports任意の指標(プロフィットファクター、ドローダウンなど)で並べ替えた上位N件のレポートを取得します
search_reports_by_tagsタグでレポートを検索します
search_reports_by_date_rangeバックテストの期間を指定して検索します
search_reports_by_notesレポートのメモを全文検索します
get_reports_by_set_file特定の.setファイルを使用するすべてのレポートを検索します
get_comparable_reports比較可能なレポート(同じEA/シンボル/時間足)を検索します
tail_log任意のログの末尾N行を読み込みます。filter=errorsを指定すると失敗のみを表示します
prune_reports古いレポートディレクトリを削除し、最新N件を保持します(_optディレクトリは除外されます)
promote_to_baselinebaseline.jsonに履歴エントリーまたはレポートを書き込み、compare_baselineで使用できるようにします
履歴とベースライン
ツール説明
archive_reportレポートディレクトリ1つを、backtest_history.json内の簡潔なJSONエントリーに変換します。必要に応じて元のデータを削除します
archive_all_reportsすべてのレポートディレクトリを一括でアーカイブし、必要に応じて削除します。安全な最新N件は保持します
get_historyフィルター(EA、シンボル、判定、利益、DD)と並べ替えオプションを指定して履歴を検索します
annotate_history任意の履歴エントリーに判定/メモ/タグを追加します
キャッシュ管理
ツール説明
cache_statusシンボル別にMT5テスターのキャッシュサイズの内訳を表示します。削除前の確認に使用します
clean_cacheテスターのキャッシュファイルを削除します。シンボル別指定とdry_runに対応しています
事前確認と検証
ツール説明
get_active_account現在のMT5アカウントセッション(ログイン、サーバー、利用可能なシンボル)を取得します
check_symbol_data_status指定期間に必要な履歴データがシンボルに十分あるか検証します
check_mt5_statusMT5ターミナルがインストールされ、使用可能な状態か確認します
validate_ea_syntaxコンパイル全体を実行せずに、コンパイル前の構文チェックを行います
デバッグと診断(新規)
ツール説明
diagnose_wineWineのインストール状況、バージョン、プレフィックスの状態を確認します
get_mt5_logsMT5ターミナル、テスター、またはMetaEditorのログをフィルター付きで取得します
search_mt5_errorsクラッシュ、例外、アクセス違反などのエラーパターンをログから検索します
check_mt5_processMT5のプロセスが実行中か確認し、PID、CPU、メモリ使用量を取得します
kill_mt5_process停止したMT5プロセスを終了します(wineserverにはforce=trueを指定します)
check_system_resourcesディスク容量、メモリ、CPUの利用状況を確認します
validate_mt5_configterminal.iniとテスターの構成ファイルを検証します
get_wine_prefix_infoWindowsのバージョン、インストール済みプログラム、レジストリなど、Wineプレフィックスの詳細を取得します
get_backtest_crash_info不完全マーカー、欠落したdeals.csv、エラーなどを調べ、バックテストの失敗原因を確認します
check_updateMT5-Quantの新しいバージョンが利用可能か確認します
updateMT5-Quantを最新リリースに更新します
プロジェクト管理
ツール説明
init_projectテンプレート(スキャルパー/スイング/グリッド/基本)を使用して、新しいMQL5プロジェクトのひな型を作成します
create_set_templateEAの入力変数から.setパラメーターファイルを生成します
export_reportバックテストレポートをCSV、JSON、またはMarkdown形式でエクスポートします
履歴と比較
ツール説明
get_backtest_historyEA/シンボルのすべてのバックテストを、概要指標とともに一覧表示します
compare_backtests2件以上のバックテスト結果を横並びで比較し、分析します
.set ファイル — 読み取り/書き込み
ツール説明
list_set_filesテスターのプロファイルディレクトリ内にあるすべての .set ファイルと、スイープ統計および組み合わせ数
read_set_fileUTF-16LE の .set ファイルを解析し、構造化された JSON パラメーターに変換
write_set_fileパラメーターの完全な辞書を書き込み、chmod 444 を適用した UTF-16LE の .set ファイルを作成
patch_set_file特定のパラメーターをその場で更新し、差分を返します。読み取り→編集→書き込みの代わりに使用できます
clone_set_fileオプションの上書きを指定して、1 回の呼び出しで .set を新しいパスにコピー
.set ファイル — 分析と生成
ツール説明
describe_sweepスイープ対象のパラメーター、値の数、最適化の組み合わせ総数
diff_set_files2 つの .set ファイルを並べて比較し、変更されたパラメーターのみを返します
set_from_optimizationget_optimization_results のパラメーターからクリーンなバックテスト用 .set を生成します。スイープ範囲を絞り込むこともできます
検索と検出
ツール説明
search_expertsすべてのディレクトリから名前のパターンで EA を検索
search_indicators名前のパターンでインジケーターを検索
search_scripts名前のパターンでスクリプトを検索
copy_indicator_to_projectインジケーターをプロジェクトディレクトリにコピー
copy_script_to_projectスクリプトをプロジェクトディレクトリにコピー

完全なスキーマ:docs/MCP_TOOLS.md

トラブルシューティング

まず LLM から verify_setup を実行してください。すべてのパスを確認し、対応に役立つヒントを返します。

バックテスト/コンパイル/最適化中にクラッシュや原因不明のエラーが発生した場合:

  • diagnose_wine — Wine のインストールとプレフィックスの状態を確認します
  • search_mt5_errors — ログからクラッシュの原因を検索します
  • check_mt5_process + kill_mt5_process — 停止したプロセスを検出して終了します
  • get_backtest_crash_info — 失敗したバックテストレポートを調査します

トラブルシューティングガイド全文 →

ドキュメント

ドキュメント説明
QUICKSTARTインストール、セットアップ、最初のバックテストを順を追って説明します
MCP_TOOLS90 種類すべてのツールの完全な入力/出力スキーマ
CONFIG設定リファレンス(config/mt5-quant.yaml)
ARCHITECTURE設計原則と内部モジュールの構成
REMOTE_AGENTSWine を使って Linux エージェント間で最適化を分散
TROUBLESHOOTINGWine、MT5、バックテストに関するプラットフォーム別の解決策

閲覧順を含む完全な目次:docs/INDEX.md


謝辞

MT5-Quant は、優れたオープンソースプロジェクトの成果の上に成り立っています。

  • Rust — ゼロコスト抽象化、メモリー安全性、そして安心して使える並行処理を実現する言語
  • Tokio — すべての並行処理を支える非同期ランタイム
  • Wine — Windows のライセンスなしで macOS と Linux 上で MT5 を実行可能にします
  • MetaTrader 5 — MetaQuotes のトレーディングプラットフォーム(MetaQuotes Software Corp. の商標)
  • rusqlite — Rust 向けの使いやすい SQLite バインディング
  • serde — 設定やレポートの処理を容易にするシリアライゼーションフレームワーク
  • scraper — MT5 レポートの抽出に使用する HTML パーサー
  • tempfile — 安全な一時ファイル処理

AI を活用した開発ワークフローを可能にする標準を定義してくださった、Anthropic の Model Context Protocol(MCP)チームに特別な感謝を申し上げます。

免責事項

投資助言ではありません。 MT5-Quant は、アルゴリズム取引戦略の開発および分析ツールです。投資助言や取引の推奨を行うものではなく、利益を保証するものでもありません。バックテストの結果はすべて過去のデータに基づくシミュレーションであり、将来の運用成績を保証するものではありません。

自己責任でご利用ください。 金融商品の取引には、重大な損失が発生するリスクがあります。MT5-Quant の作成者および貢献者は、以下について一切の責任を負いません。

  • このツールで開発またはテストした戦略を使用したことによる取引損失
  • バックテストの実行によるデータの損失または破損
  • バグ、エラー、または不正確な分析結果
  • システムクラッシュ、Wine の互換性問題、または MT5 の障害

ソフトウェア保証。 このソフトウェアは「現状有姿」で提供され、明示または黙示を問わず、商品性、特定目的への適合性、非侵害性などを含め、いかなる種類の保証もありません。詳細な条件については LICENSE をご覧ください。

サードパーティソフトウェア。 MT5-Quant は、MetaTrader 5、Wine、その他のサードパーティソフトウェアと連携します。ユーザーは、これらの依存関係に適用されるすべてのライセンスおよび利用規約を遵守する責任を負います。MetaTrader は MetaQuotes Software Corp. の商標です。MT5-Quant は MetaQuotes と提携、承認、または後援関係にありません。

規制の遵守。 ユーザーは、自身の取引活動が管轄地域で適用される金融規制を遵守していることを確認する責任を負います。一部の地域では、自動取引が制限されているか、ライセンスが必要な場合があります。

ライセンス

MIT


コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。