Skip to main content
Glama

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가 기본적으로 제공하지 않는 기능입니다.

Related MCP server: mt5ctl

빠른 시작

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

바이너리를 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 (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_results

MT5 완료 후 최적화 결과 파싱

list_jobs

상태와 함께 모든 최적화 작업 나열

analyze_report

모든 리포트 디렉토리에서 analysis.json 읽기

compare_baseline

리포트와 기준선 비교, 승/패 판정 반환

compile_ea

MetaEditor를 통해 MQL5 EA 컴파일

list_experts

MQL5/Experts 디렉토리의 모든 EA 나열

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

매수 vs 매도 성과

analyze_streaks

연승/연패 분석

analyze_concurrent_peak

최대 동시 포지션

이들을 사용하여 목표 지향적 분석을 하거나, analyze_report로 한 번에 모두 실행하세요.

딜 수준 분석 (신규)

도구

설명

list_deals

필터(유형, 수익 범위, 볼륨, 날짜)로 개별 딜 나열

search_deals_by_comment

딜 코멘트 전체 텍스트 검색 (예: "Layer #3")

search_deals_by_magic

EA 매직 넘버로 딜 필터링

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 버전, EA/set 파일 수 확인

get_optimization_status

백그라운드 최적화 작업의 실시간 상태 확인

list_jobs

한 번의 호출로 모든 최적화 작업의 간략한 상태 확인

리포트 및 로그

도구

설명

list_reports

모든 실행의 주요 지표를 담은 간결한 테이블 — 전체 분석 불필요

get_latest_report

가장 최근 리포트를 선택적 에쿼티 차트와 함께 가져오기

search_reports

EA, 심볼, 날짜 범위 또는 수익 기준으로 리포트 검색

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

비교 가능한 리포트 찾기 (동일 EA/심볼/타임프레임)

tail_log

모든 로그의 마지막 N줄 읽기; filter=errors로 실패만 보기

prune_reports

오래된 리포트 디렉토리 삭제, 마지막 N개 유지 (_opt 디렉토리 제외)

promote_to_baseline

기록 항목 또는 리포트를 baseline.json에 작성하여 compare_baseline에 사용

기록 및 기준선

도구

설명

archive_report

하나의 리포트 디렉토리를 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_status

MT5 터미널이 설치되어 준비되었는지 확인

validate_ea_syntax

전체 컴파일을 실행하지 않고 사전 컴파일 구문 검사

디버깅 및 진단 (신규)

도구

설명

diagnose_wine

Wine 설치, 버전, 프리픽스 상태 확인

get_mt5_logs

필터링을 지원하는 MT5 터미널, 테스터 또는 MetaEditor 로그 가져오기

search_mt5_errors

로그에서 오류 패턴(크래시, 예외, 액세스 위반) 검색

check_mt5_process

MT5 프로세스 실행 여부 확인, PID, CPU, 메모리 사용량 가져오기

kill_mt5_process

멈춘 MT5 프로세스 종료 (wineserver의 경우 force=true)

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를 최신 릴리스로 업데이트

프로젝트 관리

도구

설명

init_project

템플릿(scalper/swing/grid/basic)으로 새 MQL5 프로젝트 생성

create_set_template

EA 입력 변수에서 .set 파라미터 파일 생성

export_report

백테스트 리포트를 CSV, JSON 또는 Markdown으로 내보내기

기록 및 비교

도구

설명

get_backtest_history

요약 지표와 함께 EA/심볼의 모든 백테스트 나열

compare_backtests

분석과 함께 2개 이상의 백테스트 결과를 나란히 비교

.set 파일 — 읽기 / 쓰기

도구

설명

list_set_files

테스터 프로필 디렉터리의 모든 .set 파일 (스윕 통계 및 조합 수 포함)

read_set_file

UTF-16LE .set 파일 파싱 → 구조화된 JSON 파라미터

write_set_file

전체 파라미터 사전 작성 → chmod 444가 적용된 UTF-16LE .set 파일

patch_set_file

특정 파라미터를 제자리에서 업데이트하고 diff 반환 — 읽기→편집→쓰기 대체

clone_set_file

한 번의 호출로 선택적 재정의와 함께 .set 파일을 새 경로에 복사

.set 파일 — 분석 및 생성

도구

설명

describe_sweep

스윕된 파라미터, 값 개수, 총 최적화 조합 수

diff_set_files

두 .set 파일의 나란한 diff — 변경된 파라미터만 반환

set_from_optimization

get_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_TOOLS

90개 전체 도구의 입출력 스키마

CONFIG

구성 참조 (config/mt5-quant.yaml)

ARCHITECTURE

설계 원칙 및 내부 모듈 구조

REMOTE_AGENTS

Wine을 통해 Linux 에이전트에 최적화 분산

TROUBLESHOOTING

Wine, 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


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
    -