mcpField
M
MetaTrader 5 MCP Server & Distrobox Automation

MetaTrader 5 MCP Server & Distrobox Automation

ローカル
github.com/chymian生産性2781 週間前に更新

MetaTrader 5 MCP Server & Distrobox Automation について

MetaTrader 5 を操作して Expert Advisor を最適化する MCP サーバーで、Distrobox コンテナ、Flask REST API、自動生成されるレポートを組み合わせています。EA の最適化を自動化し、結果を記録したいユーザーを想定しています。

主な機能

  1. 01Distrobox コンテナ内での MT5 の自動セットアップ
  2. 02最適化の開始と監視を行う Flask REST API
  3. 03取引と最適化の機能を公開する MCP サーバー
  4. 04HTML と Markdown の最適化レポート
  5. 05コードと設定の Git によるバージョン管理

活用シーン

  1. 01Expert Advisor のパラメータ最適化の自動化
  2. 02MCP クライアントからの最適化結果の取得
  3. 03複数の EA に対する最適化レポートの作成

MCP 対応

TypeScript で実装された MCP サーバーとして、口座情報の取得、注文の作成、最適化の実行・状態確認・結果取得などのツールを MCP クライアントに公開します。

設定

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

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

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

リポジトリ

ツール

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

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

詳細

MetaTrader 5 MCP サーバー & Distrobox 自動化

このプロジェクトは、Distrobox コンテナ、Flask REST API、および MCP サーバーを使用して、MetaTrader 5 (MT5) のエキスパートアドバイザー (EA) を実行、最適化、およびドキュメント化するための完全に自動化されたワークフローを提供します。


機能

  • Wine/Distrobox 内の MetaTrader 5: 自動セットアップと起動。
  • Flask REST API: EA のプログラムによる最適化。実行、監視、結果の保存用のエンドポイントを備えています。
  • MCP サーバー: 取引、最適化、および結果取得のための統一インターフェース。
  • 自動ドキュメント生成: 最適化結果は、各 EA ごとに明確な HTML および Markdown レポートとして保存されます。
  • Git バージョン管理: すべてのコードと設定は最初からバージョン管理されています。

クイックスタート

1. Distrobox コンテナのセットアップ

Distrobox コンテナを構築して入るには、プロジェクトルートから以下のコマンドを実行します:

distrobox-assemble create --file src/mt5.ini -R
distrobox-enter mt5
  • 完全に自動化された Distrobox 設定については、src/mt5.ini を参照してください。
  • コンテナ作成時に、以下がインストールおよび設定されます:
    • Wine、MT5、Python3、pip、Flask、MetaTrader5、pandas、jinja2、git、および必要なすべてのツール。
    • Flask API が自動的に起動されます。
    • git リポジトリが初期化され、すべてのファイルがコミットされます。
2. Flask REST API
  • src/mt5_flask_api.py にあります。
  • API はホストから http://localhost:5000 でアクセスできます (ポート 5000 はデフォルトで公開されています。src/mt5.ini を参照してください)。
  • 例: ホストシステムから API をテストするには:
    curl http://localhost:5000/optimization_status/some-id
    
  • エンドポイント:
    • POST /optimize: 最適化実行を開始します。
    • GET /optimization_status/<id>: 最適化ステータスを確認します。
    • GET /optimization_results/<id>: 結果を取得します。
    • POST /save_results: 結果を HTML/Markdown/CSV/JSON として保存します。
  • 結果は ~/mt5-dev/result/manual/tuning/<EA_NAME>_tuning.html および .md に保存されます。
3. MCP サーバー
  • MCP サーバーの実装については、src/mt5-server.ts を参照してください。
  • ツールには以下が含まれます:
    • 取引操作 (get_account_info、create_order など)
    • 最適化操作 (run_optimization、get_optimization_status、get_optimization_results、save_optimization_results)
4. 使用例
  • コンテナを起動します (Distrobox がすべてのセットアップを実行し、Flask API を起動します)。
  • MCP サーバーを使用して最適化をトリガーし、レポートを生成します。
  • ~/mt5-dev/result/manual/tuning/ 内の HTML/Markdown レポートを開いて、明確な概要を確認します。

作業ディレクトリと設定

デフォルトでは、すべてのログ、データ、結果、および出力は、移植性と一貫性のために ~/mt5-dev に保存されます。
ローカル開発用に設定値を上書きするには、src/mt5.ini を src/mt5-dev.ini にコピーし、必要に応じてカスタマイズしてください。
src/mt5-dev.ini ファイルは git によって無視され、追跡またはプッシュされません。

コメント

MCP は初めてですか?

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

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