본문으로 건너뛰기

© 2026 Molayo

GitHub요약2026. 06. 10. 21:37

Qoyyuum/mcp-metatrader5-server

요약

MetaTrader 5와 AI 어시스턴트를 연결하는 Model Context Protocol(MCP) 서버입니다. AI가 시장 데이터를 분석하고 직접 거래를 실행 및 관리할 수 있는 환경을 제공합니다.

핵심 포인트

  • MetaTrader 5 터미널과 AI 간의 상호작용 지원
  • 시장 데이터 접근 및 실시간 틱 정보 조회 가능
  • 거래 실행, 관리 및 거래 내역 분석 기능 제공
  • Claude Desktop, Cursor, Gemini CLI 등 다양한 MCP 클라이언트와 통합 가능

MetaTrader 5를 위한 Model Context Protocol (MCP) 서버로, AI 어시스턴트가 트레이딩 및 시장 데이터 분석을 위해 MetaTrader 5 플랫폼과 상호작용할 수 있도록 지원합니다. 문서

  • MetaTrader 5 터미널 연결
  • 시장 데이터 (심볼, 가격, 틱) 접근
  • 거래 실행 및 관리
  • 거래 내역 분석
  • Model Context Protocol을 통한 AI 어시스턴트 통합

uvx --from mcp-metatrader5-server mt5mcp

git clone https://github.com/Qoyyuum/mcp-metatrader5-server.git
cd mcp-metatrader5-server
uv sync
...

uv(권장) 또는 pip
Python 3.11 이상
Windows에 설치된 MetaTrader 5 터미널
MetaTrader 5 계정(데모 또는 실계좌)

이 서버는 Claude Desktop과 같은 MCP 클라이언트를 위해 기본적으로 stdio 모드로 실행됩니다:

uv run mt5mcp

HTTP 전송(transport) 방식으로 테스트하려면 .env 파일을 생성하세요:

MT5_MCP_TRANSPORT=http
MT5_MCP_HOST=127.0.0.1
MT5_MCP_PORT=8000

그 다음 실행하세요:

uv run mt5mcp

서버는 http://127.0.0.1:8000 에서 시작됩니다.

이 설정을 MCP 클라이언트의 설정 파일에 추가하세요:

Claude Desktop용 (claude_desktop_config.json):

{
"mcpServers": {
"mcp-metatrader5-server": {
...
git clone https://github.com/Qoyyuum/mcp-metatrader5-server
cd mcp-metatrader5-server

저장소를 git clone한 후, 다음 명령어를 실행하세요:

MCP JSON 형식용
uv run fastmcp install mcp-json src/mcp_mt5/main.py

Claude Desktop용
uv run fastmcp install claude-desktop src/mcp_mt5/main.py

Claude Code용
uv run fastmcp install claude-code src/mcp_mt5/main.py

Cursor용
uv run fastmcp install cursor src/mcp_mt5/main.py

Gemini CLI용
uv run fastmcp install gemini-cli src/mcp_mt5/main.py

이 내용을 claude_desktop_config.json 또는 기타 LLM 설정 파일에 추가하세요:

{
"mcpServers": {
"mcp-metatrader5-server": {
...

initialize()
: MT5 터미널 초기화
login(account, password, server)
: 트레이딩 계정 로그인
shutdown()
: MT5 터미널과의 연결 종료

get_symbols()

: 사용 가능한 모든 심볼 (symbols) 가져오기
get_symbols_by_group(group)

: 그룹별 심볼 (symbols) 가져오기
get_symbol_info(symbol)

: 특정 심볼 (symbol)에 대한 정보 가져오기
get_symbol_info_tick(symbol)

: 심볼 (symbol)의 최신 틱 (tick) 정보 가져오기
copy_rates_from_pos(symbol, timeframe, start_pos, count)

: 특정 위치 (position)로부터 바 (bars) 가져오기
copy_rates_from_date(symbol, timeframe, date_from, count)

: 특정 날짜 (date)로부터 바 (bars) 가져오기
copy_rates_range(symbol, timeframe, date_from, date_to)

: 특정 날짜 범위 (date range) 내의 바 (bars) 가져오기
copy_ticks_from_pos(symbol, start_pos, count)

: 특정 위치 (position)로부터 틱 (ticks) 가져오기
copy_ticks_from_date(symbol, date_from, count)

: 특정 날짜 (date)로부터 틱 (ticks) 가져오기
copy_ticks_range(symbol, date_from, date_to)

: 특정 날짜 범위 (date range) 내의 틱 (ticks) 가져오기

order_send(request)

: 트레이드 서버 (trade server)로 주문 (order) 전송
order_check(request)

: 지정된 파라미터로 주문 (order)을 실행할 수 있는지 확인
positions_get(symbol, group)

: 오픈 포지션 (open positions) 가져오기
positions_get_by_ticket(ticket)

: 티켓 (ticket)을 통해 오픈 포지션 (open position) 가져오기
orders_get(symbol, group)

: 활성 주문 (active orders) 가져오기
orders_get_by_ticket(ticket)

: 티켓 (ticket)을 통해 활성 주문 (active order) 가져오기
history_orders_get(symbol, group, ticket, position, from_date, to_date)

: 히스토리 (history)에서 주문 (orders) 가져오기
history_deals_get(symbol, group, ticket, position, from_date, to_date)

: 히스토리 (history)에서 딜 (deals) 가져오기

# MT5 초기화
initialize()
# 트레이딩 계정 로그인
...
# 초기화 및 로그인
initialize()
login(account=123456, password="your_password", server="your_server")
...

서버는 AI 어시스턴트가 MetaTrader 5 API 사용법을 이해할 수 있도록 다음과 같은 리소스 (resources)를 제공합니다:

mt5://getting_started

: MetaTrader 5 API 사용을 위한 기본 워크플로 (workflow)
mt5://trading_guide

: 거래 실행 및 관리를 위한 가이드
mt5://market_data_guide

: 시장 데이터 (market data) 접근 및 분석을 위한 가이드
mt5://order_types

: 주문 유형 (order types)에 관한 정보
mt5://order_filling_types

: 주문 체결 유형 (order filling types)에 관한 정보
mt5://order_time_types

mt5://order_time_types

: 주문 시간 유형 (order time types)에 관한 정보
mt5://trade_actions

: 거래 요청 액션 (trade request actions)에 관한 정보

서버는 AI 어시스턴트가 사용자와 상호작용할 수 있도록 다음과 같은 프롬프트 (prompts)를 제공합니다:

connect_to_mt5(account, password, server)

: MetaTrader 5에 연결 및 로그인
analyze_market_data(symbol, timeframe)

: 특정 심볼 (symbol)에 대한 시장 데이터 분석
place_trade(symbol, order_type, volume)

: 특정 심볼에 대한 거래 실행
manage_positions()

: 오픈 포지션 (open positions) 관리
analyze_trading_history(days)

: 거래 내역 (trading history) 분석

mcp-metatrader5-server/
├── src/
│ └── mcp_mt5/
...

uv 사용 시 (권장):

uv build

이 명령은 dist/ 디렉토리에 휠 (wheel) 및 소스 배포판 (source distributions)을 생성합니다.

uv 사용 시:

# 먼저 빌드
uv build
# PyPI에 게시
...

MIT

  • MetaTrader 5 플랫폼에 대한 MetaQuotes
  • MCP 서버 구현을 위한 FastMCP

AI 자동 생성 콘텐츠

본 콘텐츠는 GitHub AI Tools의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0