Metatrader Mcp

Metatrader Mcp

🚀 MetaTrader 5 MCP 服务器与 Distrobox 自动化

本项目提供了一套完全自动化的流程,用于运行、优化并记录 MetaTrader 5 (MT5) 专家顾问 (EA)。借助 Distrobox 容器、Flask REST API 以及 MCP 服务器,能高效完成相关操作。

🚀 快速开始

1. Distrobox 容器设置

若要组装并进入 Distrobox 容器,可从项目根目录运行以下命令:

distrobox-assemble create --file src/mt5.ini -R
distrobox-enter mt5
  • 可查看 src/mt5.ini 了解完整的自动化 Distrobox 配置。
  • 在容器创建过程中,会自动完成以下操作:
    • 安装并配置 Wine、MT5、Python3、pip、Flask、MetaTrader5、pandas、jinja2、git 以及所有必需工具。
    • 自动启动 Flask API。
    • 初始化一个 git 仓库并提交所有文件。

2. Flask REST API

  • 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/:检查优化状态。
    • GET /optimization_results/:获取结果。
    • POST /save_results:将结果保存为 HTML/Markdown/CSV/JSON。
  • 结果将保存到 ~/mt5-dev/result/manual/tuning/_tuning.html.md

3. MCP 服务器

  • 可查看 src/mt5-server.ts 了解 MCP 服务器实现。
  • 工具包含:
    • 交易操作(如 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 报告以获取清晰概述。

✨ 主要特性

  • MetaTrader 5 在 Wine/Distrobox 中:实现自动化设置和启动。
  • Flask REST API:可程序化优化 EA,提供运行、监控和保存结果的端点。
  • MCP 服务器:提供统一接口用于交易、优化和结果检索。
  • 自动文档生成:优化结果以 HTML 和 Markdown 报告的形式保存,每个 EA 都有独立记录。
  • Git 版本控制:从一开始就对所有代码和配置进行版本化。

📚 详细文档

工作目录与配置

默认情况下,所有日志、数据、结果和输出存储在 ~/mt5-dev 中,确保了便携性和一致性。
若要覆盖任何配置值以进行本地开发,请复制 src/mt5.inisrc/mt5-dev.ini 并按需自定义。
src/mt5-dev.ini 文件未被 Git 跟踪或推送。

  • 0 关注
  • 0 收藏,35 浏览
  • system 提出于 2025-09-26 12:57

相似服务问题

相关AI产品