Skip to main content
Glama

MT5-Quant

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

MCP-сервер для разработки стратегий MT5 на macOS/Linux. 89 инструментов для компиляции, бэктестинга, анализа, оптимизации, отладки сбоев и управления советниками MQL5 — 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

Конвейер бэктеста

✅ Полный (компиляция → запуск → анализ)

✅ Через Python-пакет MT5

Аналитика на уровне сделок

✅ 19 измерений, на базе БД

❌

Организация отчётов

✅ SQLite (отчёты + сделки) + поиск + история

❌

Компиляция MQL5

✅ Без GUI (MetaEditor через Wine, без графического интерфейса)

⚠️ Через GUI или терминал

Оптимизация

✅ В фоне + разбор результатов + генерация .set

⚠️ Только терминал, без разбора

Отладка сбоев

✅ Диагностика Wine/MT5

❌

Другие обычно работают на Windows с использованием Python-пакета MetaTrader5, предоставляя полный набор операций с терминалом. MT5-Quant заполняет этот пробел: организация отчётов о бэктестах, извлечение аналитики на уровне сделок и управление процессами оптимизации — ничего из этого MT5 или его Python API не предоставляют нативно.

Related MCP server: mt5ctl

Быстрый старт

Установка MT5-Quant

Вариант A — Cargo (рекомендуется, требуется Rust toolchain)

cargo install mt5-quant --locked

Вариант B — Готовые сборки (без toolchain)

# 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

Переместите бинарный файл в каталог из вашего PATH (например, /usr/local/bin или ~/.local/bin), чтобы клиенты могли запускать его как mt5-quant.

Вариант 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 (та же структура JSON, что и у Claude Desktop)

{ "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-агента кодирования сделать всё вышеперечисленное: «Пожалуйста, установите mt5-quant с https://github.com/masdevid/mt5-quant — скачайте или соберите его, запустите его scripts/setup.sh для автоматического определения путей Wine и MT5 и зарегистрируйте его как MCP-сервер».

Первый бэктест

Run a backtest on MyEA from 2025.01.01 to 2025.03.31

ИИ выполняет полный конвейер: компиляция → очистка кэша → бэктест → извлечение → анализ.

MCP-инструменты (89)

Основной рабочий процесс

Инструмент

Описание

run_backtest

Полный конвейер: компиляция → очистка → бэктест → извлечение → анализ

run_backtest_quick

Быстрый бэктест с использованием предварительно скомпилированного советника (без компиляции)

run_backtest_only

Только бэктест — просто извлечение сырых сделок, без анализа

launch_backtest

Запустил и забыл: запуск бэктеста MT5, опрос о завершении

get_backtest_status

Опрос статуса запущенного бэктеста (MT5 работает, отчёт найден, прошедшее время)

run_optimization

Генетическая оптимизация (в фоне, возвращается сразу)

get_optimization_results

Разбор результатов оптимизации после завершения MT5

list_jobs

Список всех задач оптимизации со статусом

analyze_report

Чтение analysis.json из любого каталога отчётов

compare_baseline

Сравнение отчёта с базовым, возврат вердикта победитель/проигравший

compile_ea

Компиляция советника MQL5 через MetaEditor

list_experts

Список всех советников в каталоге MQL5/Experts

list_indicators

Список всех индикаторов в каталоге MQL5/Indicators

list_scripts

Список всех скриптов в каталоге MQL5/Scripts

healthcheck

Быстрая проверка работоспособности сервера

list_symbols

Список всех доступных символов в терминале MT5

Детальная аналитика (отдельные анализы)

Инструмент

Описание

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_magic

Фильтрация сделок по магическому номеру советника

analyze_profit_distribution

Гистограмма прибыли: маленькие/средние/крупные прибыли и убытки

analyze_time_performance

Эффективность по часу дня и дню недели

analyze_hold_time_distribution

Корзины времени удержания + корреляция с прибылью

analyze_layer_performance

Анализ уровней сетки/мартингейла по комментариям

analyze_volume_vs_profit

Корреляция объёма + эффективность по размеру лота

analyze_costs

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

analyze_efficiency

Прибыль за час/день, годовая доходность, частота сделок

Мониторинг

Инструмент

Описание

verify_setup

Проверка путей Wine/MT5, версии Wine и количества файлов советников/.set

get_optimization_status

Проверка текущего состояния фоновой задачи оптимизации

list_jobs

Все задачи оптимизации с компактным статусом одним вызовом

Отчёты и журналы

Инструмент

Описание

list_reports

Компактная таблица всех запусков с ключевыми метриками — полный анализ не нужен

get_latest_report

Получение самого свежего отчёта с опциональным графиком эквити

search_reports

Поиск отчётов по советнику, символу, диапазону дат или критериям прибыли

get_report_by_id

Получение конкретного отчёта по ID с графиком эквити

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

Поиск сопоставимых отчётов (тот же советник/символ/таймфрейм)

tail_log

Чтение последних N строк любого журнала; filter=errors для просмотра только ошибок

prune_reports

Удаление старых каталогов отчётов, сохранение последних N (пропускает каталоги _opt)

promote_to_baseline

Запись записи истории или отчёта в baseline.json для compare_baseline

История и baseline

Инструмент

Описание

archive_report

Преобразование одного каталога отчёта → компактная запись JSON в backtest_history.json, опционально удаление источника

archive_all_reports

Массовое архивирование всех каталогов отчётов с последующим опциональным удалением; сохраняет N самых новых

get_history

Запрос истории с фильтрами (советник, символ, вердикт, прибыль, просадка) и параметрами сортировки

annotate_history

Прикрепление вердикта / заметок / тегов к любой записи истории

Управление кэшем

Инструмент

Описание

cache_status

Разбивка размера кэша тестера MT5 по символам — проверьте перед очисткой

clean_cache

Удаление файлов кэша тестера; поддерживает очистку по символам и dry_run

Предварительная проверка и валидация

Инструмент

Описание

get_active_account

Получение текущей сессии счёта MT5 (логин, сервер, доступные символы)

check_symbol_data_status

Проверка, что по символу достаточно исторических данных для диапазона дат

check_mt5_status

Проверка, установлен ли терминал MT5 и готов ли к работе

validate_ea_syntax

Предварительная проверка синтаксиса без полной компиляции

Отладка и диагностика (новое)

Tool

Description

diagnose_wine

Проверка установки Wine, версии и состояния префикса

get_mt5_logs

Получение журналов терминала MT5, тестера или MetaEditor с фильтрацией

search_mt5_errors

Поиск в журналах шаблонов ошибок (сбой, исключение, нарушение доступа)

check_mt5_process

Проверка запущенных процессов MT5, получение PID, использования CPU и памяти

kill_mt5_process

Завершение зависших процессов MT5 (force=true для wineserver)

check_system_resources

Проверка доступности дискового пространства, памяти и CPU

validate_mt5_config

Проверка конфигурационных файлов terminal.ini и тестера

get_wine_prefix_info

Получение сведений о префиксе Wine: версия Windows, установленные программы, реестр

get_backtest_crash_info

Расследование сбоев бэктеста: неполные маркеры, отсутствующий deals.csv, ошибки

check_update

Проверка наличия более новой версии MT5-Quant

update

Обновление MT5-Quant до последнего релиза

Управление проектами

Tool

Description

init_project

Создание нового проекта MQL5 с шаблонами (scalper/swing/grid/basic)

create_set_template

Генерация файла параметров .set из входных переменных советника

export_report

Экспорт отчёта о бэктесте в CSV, JSON или Markdown

История и сравнение

Tool

Description

get_backtest_history

Список всех бэктестов для советника/символа со сводными метриками

compare_backtests

Сравнение 2+ результатов бэктестов бок о бок с анализом

.set файл — чтение / запись

Tool

Description

list_set_files

Все файлы .set в каталоге профилей тестера со статистикой перебора и количеством комбинаций

read_set_file

Разбор файла .set в кодировке UTF-16LE → структурированные параметры JSON

write_set_file

Запись полного словаря параметров → .set в UTF-16LE с chmod 444

patch_set_file

Обновление конкретных параметров на месте, возврат diff — заменяет чтение→редактирование→запись

clone_set_file

Копирование .set по новому пути с опциональными переопределениями одним вызовом

.set файл — анализ и генерация

Tool

Description

describe_sweep

Перебираемые параметры, количество значений и общее число комбинаций оптимизации

diff_set_files

Сравнение двух файлов .set бок о бок — возвращаются только изменённые параметры

set_from_optimization

Генерация чистого .set для бэктеста из параметров get_optimization_results; возможность сузить перебор

Поиск и обнаружение

Tool

Description

search_experts

Поиск советников по шаблону имени во всех каталогах

search_indicators

Поиск индикаторов по шаблону имени

search_scripts

Поиск скриптов по шаблону имени

copy_indicator_to_project

Копирование индикатора в каталог проекта

copy_script_to_project

Копирование скрипта в каталог проекта

Полная схема: docs/MCP_TOOLS.md

Устранение неполадок

Сначала запустите verify_setup через вашу LLM — она проверит все пути и вернёт практические подсказки.

При сбоях или необъяснимых ошибках во время бэктеста/компиляции/оптимизации:

  • diagnose_wine — Проверка установки Wine и состояния префикса

  • search_mt5_errors — Поиск причин сбоев в журналах

  • check_mt5_process + kill_mt5_process — Обнаружение и завершение зависших процессов

  • get_backtest_crash_info — Расследование неудачных отчётов о бэктестах

Полное руководство по устранению неполадок →

Документация

Doc

Description

QUICKSTART

Пошаговая установка, настройка и первый бэктест

MCP_TOOLS

Полные схемы ввода/вывода для всех 90 инструментов

CONFIG

Справочник по конфигурации (config/mt5-quant.yaml)

ARCHITECTURE

Принципы проектирования и внутренняя структура модулей

REMOTE_AGENTS

Распределение оптимизации между Linux-агентами через Wine

TROUBLESHOOTING

Исправления для конкретных платформ: Wine, MT5 и бэктесты

Полный индекс с порядком чтения: docs/INDEX.md


Благодарности

MT5-Quant стоит на плечах выдающихся проектов с открытым исходным кодом:

  • Rust — Язык, который делает абстракции с нулевой стоимостью, безопасность памяти и бесстрашный параллелизм практичными

  • Tokio — Асинхронная среда выполнения, обеспечивающая все параллельные операции

  • Wine — Делает возможным запуск MT5 на macOS и Linux без лицензии Windows

  • MetaTrader 5 — Торговая платформа MetaQuotes (товарный знак MetaQuotes Software Corp.)

  • rusqlite — Эргономичные привязки SQLite для Rust

  • serde — Фреймворк сериализации, делающий работу с конфигурацией и отчётами безболезненной

  • scraper — Разбор HTML для извлечения отчётов MT5

  • tempfile — Безопасная работа с временными файлами

Особая благодарность команде Model Context Protocol (MCP) в Anthropic за определение стандарта, который делает возможными рабочие процессы разработки на основе ИИ.

Отказ от ответственности

Не является финансовой консультацией. MT5-Quant — это инструмент разработки и анализа алгоритмических торговых стратегий. Он не предоставляет инвестиционных советов, торговых рекомендаций и не гарантирует прибыльность. Все результаты бэктестов являются историческими симуляциями и не гарантируют будущей доходности.

Использование на свой страх и риск. Торговля финансовыми инструментами сопряжена с существенным риском потерь. Авторы и участники MT5-Quant не несут ответственности за:

  • Торговые убытки, понесённые при использовании стратегий, разработанных или протестированных с помощью этого инструмента

  • Потерю или повреждение данных в результате операций бэктеста

  • Ошибки, баги или некорректные результаты анализа

  • Системные сбои, проблемы совместимости с Wine или отказы MT5

Гарантия на программное обеспечение. Данное программное обеспечение предоставляется «как есть» без каких-либо гарантий, явных или подразумеваемых, включая, но не ограничиваясь гарантиями товарной пригодности, соответствия конкретным целям или ненарушения прав. Полные условия см. в LICENSE.

Стороннее программное обеспечение. MT5-Quant взаимодействует с MetaTrader 5, Wine и другим сторонним программным обеспечением. Пользователи обязаны соблюдать все применимые лицензии и условия обслуживания этих зависимостей. MetaTrader является товарным знаком MetaQuotes Software Corp. MT5-Quant не аффилирован с MetaQuotes, не одобрен и не спонсируется ею.

Соблюдение нормативных требований. Пользователи несут ответственность за соответствие своей торговой деятельности применимым финансовым нормам в своей юрисдикции. Автоматическая торговля может быть ограничена или требовать лицензирования в некоторых регионах.

Лицензия

MIT


Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Connects MCP clients to MetaTrader 5 MetaEditor on Linux via Wine, enabling automated MQL5 development workflows including code editing, compilation of EAs/indicators, and strategy backtesting.
    5
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server for operating headless MetaTrader 5 terminals — over SSH, from your agent.
    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
  • F
    license
    Not graded
    quality
    D
    maintenance
    Universal MCP server that enables AI assistants to control MetaTrader 5 directly, executing trades, managing data, and automating MT5 operations through natural language.
    2
    -