Skip to main content
Glama

MetaTrader 5 (MT5) MCP Server & Web GUI Workstation

Python 3.10+ MCP MetaTrader 5 License: MIT

Высокопроизводительный Model Context Protocol (MCP) сервер и интерактивная Web GUI Workstation для MetaTrader 5 на Windows. Этот проект подключает AI-ассистентов (Antigravity, Claude Desktop, Cursor и др.) и количественных трейдеров напрямую к их локальной установке MT5 для:

  1. Получения исторических рыночных данных (бары OHLCV на таймфреймах M1–MN1 и потоки тиков с точностью до миллисекунды) с быстрым экспортом в Parquet и CSV.

  2. Запуска бэктестов стратегий с помощью встроенных количественных движков на Python и автоматизации нативного тестера стратегий MT5 (terminal64.exe /config:tester.ini).

  3. Просмотра статуса демо-счета, кривых капитала, активных символов, котировок в окне рынка и открытых позиций.

  4. Интерактивный финансовый веб-интерфейс: создан с использованием TradingView Lightweight Charts, телеметрии в реальном времени, Strategy Studio с визуализатором кривой капитала и менеджером входа в аккаунт.

  5. Строгая защита торговли: гарантирует, что демо- и реальные ордера могут исполняться только при явном подтверждении.


Обзор архитектуры

 ┌────────────────────────────────────────────────────────┐
 │                      AI Client                         │
 │        (Antigravity / Claude Desktop / Cursor)         │
 └───────────────────────────┬────────────────────────────┘
                             │ MCP Protocol (stdio)
 ┌───────────────────────────▼────────────────────────────┐
 │                  MT5 MCP Server (Python)               │
 │   - FastMCP Server (`src/mt5_mcp/server.py`)           │
 │   - Data Caching & Parquet/CSV Export Engine           │
 │   - Quantitative Strategy Backtesting Engine           │
 └─────────────┬────────────────────────────┬─────────────┘
               │                            │
 ┌─────────────▼──────────────┐  ┌──────────▼─────────────┐
 │    MetaTrader5 Python API  │  │ MT5 Native Tester Auto │
 │  - copy_rates_range()      │  │  - tester.ini builder  │
 │  - copy_ticks_range()      │  │  - terminal64.exe CLI  │
 │  - account_info() / login()│  │  - Report XML/HTML     │
 └─────────────┬──────────────┘  └──────────┬─────────────┘
               │                            │
 ┌─────────────▼────────────────────────────▼─────────────┐
 │               MetaTrader 5 Windows Terminal            │
 │               (Demo Account Connected)                 │
 └────────────────────────────────────────────────────────┘

Related MCP server: Meta-Trader-MCP

Установка и предварительные требования

1. Требования

  • Windows 10 / 11 (64-bit)

  • установленный настольный терминал MetaTrader 5

  • Python 3.10, 3.11 или 3.12 (64-bit)

  • uv (рекомендуется) или стандартный pip

2. Включение алгоритмической торговли в MT5

В вашем терминале MetaTrader 5:

  • Перейдите в Сервис -> Параметры -> Советники.

  • Установите флажок Разрешить алгоритмическую торговлю.

  • Установите флажок Разрешить импорт DLL (если требуется пользовательскими индикаторами).

3. Настройка виртуальной среды

# Clone the repository
git clone https://github.com/remomein05/mt5-mcp.git
cd mt5-mcp

# Create virtual environment and install dependencies
uv venv --python 3.12 .venv
.venv\Scripts\activate
uv pip install -e ".[dev]"

Web GUI Workstation (Интерактивный дашборд)

Репозиторий включает специализированную финансовую Web GUI Dashboard с графиками TradingView, просмотром рынка в реальном времени, студией бэктеста стратегий и управлением аккаунтом:

# Launch via console script
mt5-mcp-gui

# Or launch via Python module
.venv\Scripts\python -m mt5_mcp.gui --port 8000

Затем откройте http://127.0.0.1:8000 в вашем браузере.

Возможности GUI:

  • 📊 TradingView Lightweight Charts: Плавные графики свечей и объемов с интерактивным выбором таймфрейма (M1, M5, M15, M30, H1, H4, D1).

  • 📈 Strategy Backtest Studio: Настройка параметров стратегий (SMA Crossover, RSI Reversal, Bollinger Bands), запуск симуляций и просмотр кривых роста капитала, KPI (коэффициент Шарпа, максимальная просадка %, процент выигрышных сделок) и журналов закрытых сделок.

  • 📦 Historical Data Exporter: Мгновенное извлечение данных свечей в файлы Parquet и CSV в один клик.

  • 🔍 Market Watch: Исследование символов в реальном времени с поиском по шаблону (например, *USD*, Crypto*) и индикаторами плавающего спреда.

  • ⚙️ MT5 Connect & Account Login Modal: Бесшовное подключение к активному терминалу MT5 или переключение/вход в любой демо-счет с указанием логина, пароля, брокера/сервера и необязательного пути к исполняемому файлу (отправка по Enter, закрытие по Esc).

  • 📋 Open Positions & Native MT5 Tester Panel: Просмотр открытых сделок и автоматизация нативных MQL5-советников в фоновом режиме с помощью пакетных .ini конфигураций.

Конфигурация MCP-клиента

Claude Desktop / Antigravity / Cursor (mcp_config.json)

Добавьте MCP-сервер MT5 в конфигурацию вашего MCP-клиента:

{
  "mcpServers": {
    "mt5": {
      "command": "C:\\Users\\<USER>\\source\\repos\\mt5_mcp\\.venv\\Scripts\\python.exe",
      "args": [
        "-m",
        "mt5_mcp.server"
      ],
      "env": {
        "PYTHONUNBUFFERED": "1"
      }
    }
  }
}

Доступные MCP-инструменты

1. Подключение и управление счетом

Инструмент

Параметры

Описание

mt5_connect

path, login, password, server

Инициализирует подключение к терминалу MT5 или выполняет вход в конкретный демо-счет.

mt5_account_summary

None

Возвращает баланс демо-счета, капитал, плечо, свободную маржу и прибыль.

mt5_terminal_info

None

Возвращает версию сборки MT5, состояние подключения, пинг и каталоги данных.

2. Исследование рынка и исторические данные

Инструмент

Параметры

Описание

mt5_get_symbols

group (например, *USD*)

Ищет доступные символы с фильтрацией по шаблону.

mt5_symbol_details

symbol (например, EURUSD)

Возвращает спецификации контракта (спред, пункт, знаки, своп-ставки).

mt5_symbol_current_tick

symbol

Получает текущие цены bid, ask и последнюю цену.

mt5_fetch_historical_bars

symbol, timeframe, count, date_from, date_to, export_format

Извлекает исторические данные OHLCV на разных таймфреймах (M1–MN1) с возможностью экспорта в Parquet/CSV.

mt5_fetch_ticks

symbol, count, date_from, date_to, export_format

Извлекает потоки тиков с точностью до миллисекунды с возможностью экспорта в Parquet/CSV.

3. Тестирование стратегий и симуляция

Инструмент

Параметры

Описание

mt5_list_backtest_strategies

None

Выводит список встроенных моделей бэктеста (sma_crossover, rsi_reversal, bollinger_bands).

mt5_run_strategy_backtest

symbol, timeframe, strategy_name, bars_count, initial_cash, lot_size, params

Выполняет бэктест на исторических данных MT5 и возвращает коэффициент Шарпа, максимальную просадку %, процент выигрышных сделок, фактор прибыли и журнал сделок.

mt5_run_native_tester

expert_name, symbol, period, deposit, currency, leverage, model, from_date, to_date, visual

Автоматизирует нативный тестер стратегий MT5 с использованием сгенерированных .ini конфигураций и фонового запуска terminal64.exe.

4. Позиции и торговля (с защитой)

Инструмент

Параметры

Описание

mt5_get_open_positions

symbol (необязательно)

Показывает открытые позиции на демо-счете.

mt5_get_order_history

days, symbol (необязательно)

Показывает закрытые сделки и историю исполнения ордеров.

mt5_place_demo_order

symbol, order_type, volume, sl, tp, explicit_user_approval

Размещает демо-ордера со строгой защитой, требующей explicit_user_approval=True.

Запуск тестов

Запустите комплексный набор pytest, проверяющий подключение, извлечение исторических данных, количественные бэктесты и REST API графического интерфейса:

.venv\Scripts\pytest -v

Лицензия

Лицензия MIT.

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables AI applications to interact with MetaTrader 5 terminals via WebSocket MCP protocol for trading operations and account management.
    4
    -
  • A
    license
    Not graded
    quality
    A
    maintenance
    Exposes a unified AI interface to MetaTrader 5 over the Model Context Protocol, enabling live quotes, historical data, technical indicators, order execution, position management, and headless backtests.
    47 PyPI
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to trade on MetaTrader 5 using natural language, supporting account management, order placement, and real-time market data.
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    A local-first MCP server that bridges AI coding agents with MetaTrader 5 for inspection, market data, MQL5 development, compiling, Strategy Tester review, workspace sync, logs, audit trails, demo trading, and carefully gated live trading.
    MIT