골드(XAUUSD)를 롱·숏 동시에 걸어 그리드로 교대 진입하는 헷지 마틴게일 전략을,
실매매 EA와 완전히 같은 로직의 백테스터로 먼저 검증하고 싶다 —
이 요청을 Python 백테스터와 MQL4 실매매 EA 두 형태로 구현한 사례입니다.
플랫폼
MetaTrader 4 / MQL4 EA(헤징 계좌) + Python 백테스터
특징
롱·숏 동시 그리드 교대진입 + 뉴스 동적 레버리지
유형
FX · 골드(XAUUSD)
제작 기간
약 2~3주
제작한 MT4 EA·백테스터 화면 — 골드 그리드 차트·마틴게일 수량 사다리·증거금 마진 레벨 (예시 화면)
01배경 · 고객 요구사항
고객은 골드(XAUUSD)에서 롱과 숏을 동시에 걸어두고, 가격이 일정 간격만큼 움직일 때마다
반대 방향으로 물량을 늘려가는 양방향 헷지 마틴게일 전략을 이미 손으로 굴려보고 있었습니다.
문제는 손실 구간에서 진입 수량이 계단식으로 불어나 증거금 관리가 사람 손으로는 벅찼고,
미국 고용·물가 지표 발표처럼 골드가 급하게 튀는 구간에서 특히 위험했다는 점이었습니다.
요청은 두 가지였습니다. ① 실제로 돈을 넣기 전에 같은 로직으로 과거 데이터를 돌려보는 백테스터,
② 검증이 끝나면 그대로 실매매로 옮기는 MQL4 EA. 두 개가 서로 다르게 동작하면 검증의 의미가 없으니,
"백테스터와 EA가 완전히 같은 로직"이어야 한다는 게 핵심 조건이었습니다.
골드는 24시간 움직이고 주말 갭도 크며, 마틴게일 특성상 한 번 방향을 잘못 잡으면 손실이 계단식으로 커집니다.
그래서 "얼마나 버틸 수 있는가(증거금·강제청산)"와 "뉴스 구간을 어떻게 다룰 것인가"를
숫자로 미리 확인하는 것이 이 프로젝트의 진짜 목적이었습니다.
02구현 방식
하나의 전략 엔진을 두 형태로 산출하는 구조로 설계했습니다. 흐름은 이렇습니다:
롱·숏 동시 진입 — 시작 시 XAUUSD를 양방향으로 동시에 오픈 (양방향 보유가 되는 헤징 계좌 필수)
그리드 교대 진입 — 가격이 설정 간격(예 $40)만큼 움직이면 반대 방향을 회차별 2배 수량으로 추가 (최대 10단계)
익절 · 손절 — 롱/숏 각각 평단 ±2% 도달 시 양방향 전량 청산 후 새 사이클, N회 모두 진입 후 시작가(Q0) 복귀 시 손절
두 산출물 — 동일 로직을 Python 백테스터 + MQL4 실매매 EA로 각각 제공
전략 흐름 — 롱·숏 동시진입 → 그리드 교대진입 → 뉴스 동적 레버리지 → 마진콜 시뮬, 그리고 동일 로직 이중 산출물
핵심은 "같은 규칙" — 백테스터에서 좋았던 설정값(그리드 간격·수량 사다리·익절률·레버리지)을 그대로 EA에 옮기면
실거래에서도 똑같이 동작하도록, 전략 로직을 한 곳에 모아 백테스터와 EA가 1:1로 일치하게 맞췄습니다.
한쪽에서 확인한 결과를 다른 쪽에서 다시 의심할 필요가 없어집니다.
또한 그리드 기준가를 이론가가 아닌 직전 실제 체결가로 잡고 주말 갭까지 반영해, 백테스트가
실거래에 최대한 가깝게 나오도록 했습니다. EA 쪽은 다음 진입을 BuyStop / SellStop 예약 주문으로 미리 걸어
갭이 벌어져도 서버가 실제 가격에 체결하게 처리합니다.
03해결한 기술 난제
마틴게일 마진 관리 + 뉴스 구간 동적 레버리지
마틴게일은 "얼마 버느냐"보다 "어디서 터지느냐"가 더 중요합니다. 그래서 백테스터에
실제 브로커식 강제청산(마진콜)을 그대로 시뮬레이션해 넣었습니다 — 헤지 증거금(양방향 중 큰 쪽만 계산),
마진 레벨 50%에서 스탑아웃, 마이너스 잔고 보호까지. 어느 회차·어느 가격에서 계좌가 버티지 못하는지 숫자로 보이게 한 것입니다.
여기에 미국 주요 지표·주말 구간에서는 신규 진입 레버리지를 자동으로 낮추는 동적 레버리지(HMR)를 더해,
가장 위험한 순간에 포지션이 과도하게 불어나는 것을 억제했습니다.
강제청산(마진콜) 시뮬 — 헤지 증거금(큰 쪽만)·스탑아웃 50%·마이너스 잔고 보호(NBP)를 실제 브로커 방식대로 재현해, 몇 회차·어느 가격에서 계좌가 청산되는지 백테스트에서 미리 확인
뉴스 구간 동적 레버리지(HMR) — 평상시 1:2000, 미국 고용·물가·FOMC·일일 마감·주말 구간에는 신규 진입만 1:500으로 자동 하향해 급변동 구간의 과진입을 억제
내장 뉴스 캘린더 + CSV 불러오기 — NFP·CPI·FOMC 일정을 2019~2026까지 내장하고, 사용자가 만든 일정 CSV도 불러오기(추가/대체). 날짜·시각을 항목별로 파싱해 오후 이벤트 누락을 막고, 한글 엑셀(cp949)·UTF-16 인코딩도 자동 처리
Pending Stop 그리드 + 재시작 복원 — 다음 진입을 예약 주문(BuyStop/SellStop)으로 걸어 주말 갭도 실제가에 체결하고, EA가 꺼졌다 켜져도 보유 포지션에서 사이클 상태를 다시 계산해 복원(임의 청산 없음)
04핵심 기능
양방향 헷지 마틴게일 자동 진입·청산 — 롱·숏 동시 운용, 그리드 간격마다 교대 진입
동일 로직 이중 산출물 — Python 백테스터와 MQL4 EA가 같은 규칙으로 동작
다크 테마 GUI 백테스터 — 코인/랏 모드 전환, 지표(수익률·MDD·샤프·손익비), 거래내역 더블클릭 시 사이클별 롱/숏 손익 분해
리포트 출력 — PDF·CSV·차트 PNG로 백테스트 결과 저장
MT4 EA 차트 패널 — 시작·전량청산·완전정지 버튼, 스프레드 필터, 중복 실행 방지, 자산 정지선(세션 대비 −30%)
설치 없이 실행 — 백테스터는 .exe로 배포(파이썬 설치 불필요), EA는 MT4에 넣기만 하면 동작
05제작 과정 (약 2~3주)
1주차 · 전략 엔진 + 백테스터 — 양방향 마틴게일 로직, 그리드 교대 진입, 강제청산·헤지 증거금 시뮬, 과거 데이터 수집(무료 데이터 소스) 구축
2주차 · 부가 기능 + 화면 — HMR 동적 레버리지·뉴스 캘린더, 다크 GUI, 지표·리포트(PDF/CSV/PNG), .exe 패키징
3주차 · EA 이식 + 검증 — 동일 로직을 MQL4 EA로 이식(Pending Stop·재시작 복원·청산 보장), 백테스트와 EA 동작을 대조 검증 후 인수인계
06납품 결과물
Python 백테스터 실행 파일 (.exe · 다크 GUI 포함)
MQL4 실매매 EA 파일 (헤징 계좌용)
내장 뉴스 캘린더 + 사용자 CSV 불러오기 양식
백테스트 리포트 샘플 (PDF·CSV·차트 PNG)
사용설명서 + 파라미터·설정 가이드
납품 후 30일 무료 AS (협의 범위 내)
07기술 스택
MetaTrader 4 / MQL4 EA (헤징 계좌)Python 3.10 (tkinter · numpy · pandas · matplotlib)마틴게일 백테스트 엔진 (헤지 증거금 · 강제청산 · NBP)HMR 동적 레버리지 · 뉴스 캘린더 CSVDukascopy 무료 데이터 · ccxtPyInstaller (.exe 패키징)
※ 본 사례는 과거 고객 요구사항을 익명 처리하여 재구성한 것이며, 수익률·수익금은 공개하지 않습니다.
알고랩은 매매 자동화 프로그램 제작 서비스이며, 종목 추천·투자 자문·수익 보장 서비스가 아닙니다.
과거 백테스트 결과가 미래 실거래 수익을 보장하지 않습니다. FX·CFD 및 고레버리지 마진 거래는 원금 전액을 초과하는 손실이 발생할 수 있으며,
특히 마틴게일 방식은 손실 구간에서 포지션과 증거금 부담이 급격히 커져 강제청산(마진콜)에 이를 수 있는 고위험 전략입니다.
마틴게일·그리드 전략, 먼저 백테스트로 확인해보세요
실매매에 넣기 전에 같은 로직으로 과거 데이터부터 돌려볼 수 있습니다.
아이디어 단계여도, MT4 EA만 필요하셔도 괜찮습니다. 알고랩이 24시간 빠르게 답변드립니다.