그리드
그리드 EA는 일정한 가격 간격으로 주문을 걸어 매수·매도 진입의 그물망을 만들고, 가격의 진동에서 수익을 얻습니다. 자본 집약적이며, 추세 국면을 견뎌내려면 세심한 드로다운 관리가 필요합니다.
메커니즘
EA는 가격 구간을 균등한 단계(예: 20핍마다)로 나누고 각 레벨에 매수 스톱과 매도 스톱 대기 주문을 겁니다. 가격이 그리드를 오르내리며 진동하면 체결된 주문이 진행 중인 수익을 만들어 냅니다. 순 미실현 손익이 설정한 임계값을 넘으면 포지션이 청산됩니다. 그리드 폭, 단계 크기, 랏 스케일링이 최대 드로다운을 결정합니다.
적합성
박스권을 형성하는 저추세 시장(ADX < 20)에서 수익성이 있습니다. 지속적인 추세 구간에서는 심각하게 불리합니다. 가격이 그리드 범위를 벗어나 돌파하면 미실현 손실이 빠르게 누적됩니다. 잔잔한 매크로 환경의 EUR/CHF, USD/CHF에서 가장 잘 맞습니다. 여러 레벨에 걸친 오픈 익스포저를 흡수하려면 최소 $3,000~$10,000이 필요합니다.
참고
그리드 트레이딩은 방향을 예측한다는 발상 자체를 버립니다. 대신 고정된 간격으로 매수·매도 주문의 그물망을 깔고 진동에서 수익을 거둡니다. 가격이 그리드를 이리저리 오갈 때마다 체결된 주문이 작은 이익을 쌓습니다. 조용한 박스권 시장에서는 이것이 매끄럽고 거의 지루할 정도의 자산 곡선을 만들어 내며, 그리드가 유혹적인 이유가 바로 이것입니다. 위험은 추세입니다. 가격이 그리드 범위를 돌파하고 계속 나아가면, EA는 애초에 청산할 계획이 없던 한쪽 방향의 손실 포지션을 누적시키고, 미실현 손실이 빠르게 불어납니다.
이 페이지에서는 그리드 엑스퍼트 어드바이저가 MetaTrader 5 안에서 실제로 어떻게 동작하는지 설명합니다. 그것이 살아남을지 여부를 결정하는 구체적인 입력값, 그것이 실패하는 방식, 그리고 실제 자본을 투입하기 전에 EA 빌더에서 그리드를 만들고 스트레스 테스트하는 방법을 다룹니다.
작동 원리: 그리드 메커니즘
그리드 EA는 가격 구간을 균등한 단계로 나누고 각 레벨에 대기 주문을 겁니다. EUR/USD가 1.1000에 거래되고 있고 20핍 단계를 설정했다고 합시다. EA는 위쪽 1.1020, 1.1040, 1.1060에 매수 스톱을, 아래쪽 1.0980, 1.0960, 1.0940에 매도 스톱을 뿌립니다(양방향 또는 “헤지형” 그리드). 가격이 1.1020을 넘어 오르면 그 매수가 체결되고, 이후 가격이 다시 내려오면 짝을 이루는 매도가 스프레드를 뺀 약 20핍으로 그것을 청산합니다. 그리드는 가격이 다음에 어느 방향으로 움직이는지에 관심이 없습니다. 오직 가격이 같은 레벨을 계속 넘나들기만 하면 됩니다.
세 가지 입력값이 이 기계 전체를 정의합니다.
- 단계 크기(간격) — 레벨 사이의 핍 거리입니다. 단계가 작을수록 더 많은 진동을 잡지만 오픈 포지션이 더 빨리 쌓입니다.
- 그리드 범위 / 레벨 수 — EA가 시작 가격의 위와 아래로 얼마나 멀리까지 계속 주문을 걸지를 정합니다. 이것은 잘못된 방향으로 얼마나 많은 손실 포지션이 누적될 수 있는지를 제한하기 때문에, 가장 중요한 단 하나의 위험 레버입니다.
- 테이크 프로핏 로직 — 대부분의 그리드는 각 다리를 개별적으로 청산하는 대신, 순 미실현 수익이 임계값(예:
+$50)을 넘으면 바스켓 전체를 청산합니다. 여러 작은 다리로 분산된 바스켓 목표가 바로 그리드가 높은 승률을 보일 수 있는 이유입니다.
수익 엔진은 진동이고, 손실 엔진은 추세입니다. 가격이 한 방향으로 그리드 범위를 벗어나면, 반대편의 모든 주문은 이제 EA가 실현할 계획이 없던 미실현 손실이 되고, 새 레벨을 뿌리면서 그 더미에 계속 보탭니다. 그 더미를 견뎌낼 수 있는지 여부는 전적으로 레벨 수와 여유 마진의 함수이며, 그래서 그리드 트레이딩은 사실 진입 전략의 탈을 쓴 포지션 사이징 문제입니다.
시장 상황: 그리드가 이길 때와 무너질 때
그리드는 평균회귀 베팅입니다. 가격이 한 방향으로 확정하지 않고 밴드 안에서 진동하며 갇혀 있을 때 이기고, 가격이 추세를 낼 때 집니다. 가장 명확한 필터는 Average Directional Index(ADX)입니다. 20 미만 수치는 그리드가 안정적으로 수확하는 박스권 국면을 알립니다. 25 위로 올라가는 수치는 추세가 형성되고 있으며 오픈 익스포저가 한쪽으로 쌓일 것이라고 경고합니다.
| 국면 | ADX (14) | 그리드의 동작 | 결과 |
|---|---|---|---|
| 좁은 박스권 | < 15 | 양쪽 다리가 체결되고 바스켓이 예정대로 청산 | 매끄럽고 꾸준한 이익 |
| 변동성/표류 | 15–25 | 바스켓이 더 느리게 청산되고 완만한 미실현 손실 누적 | 미미함, 익스포저 주시 |
| 지속 추세 | > 25 | 한쪽이 절대 청산되지 않고 손실 누적 | 드로다운 / 마진콜 위험 |
이것이 방향성 전략보다 통화쌍 선택이 더 중요한 이유입니다. 역사적으로 박스권을 형성해 온 통화쌍 — EUR/CHF, USD/CHF, 그리고 느리게 움직이는 매크로 관계에 묶인 다른 통화쌍들 — 은 진동에 더 많은 시간을, 추세에 더 적은 시간을 씁니다. 그것이 바로 그리드가 필요로 하는 식단입니다. 금리 인상 사이클 동안 폭넓게 추세를 내는 메이저와 JPY 크로스는 순진한 그리드의 무덤입니다. 중앙은행 서프라이즈나 리스크 오프 돌파를 관통하는 그리드는 교과서적인 실패 사례입니다. 매수자를 끌어들이는 바로 그 “수개월 동안 매끄러운” 곡선이, 그것을 한 번에 내주는 단 한 번의 랠리를 위한 설정입니다.
MT5의 파라미터와 설정
MetaTrader 5 안에서 그리드 EA는 전략 속성 대화상자의 몇 가지 입력값을 통해 위험을 드러냅니다. 다음은 결과를 결정하는 입력값들입니다. 반올림한 숫자가 아니라 통화쌍 자체의 변동성에서 설정하세요.
| 입력값 | 일반적인 시작점 | 무엇을 제어하는가 |
|---|---|---|
GridStepPips | 작업 타임프레임에서 ≈ 1× ATR(14) (EUR/USD H1에서 15–25) | 레벨 사이의 거리, 좁을수록 익스포저가 빠르게 쌓임 |
MaxLevels | 한쪽당 8–12개, 강제 상한 | 익스포저 상한 — 가장 중요한 단 하나의 안전 입력값 |
LotPerLevel | 고정(예: 0.01) | 각 레벨의 포지션 크기, 스케일링하지 말고 일정하게 유지 |
LotMultiplier | 1.0(즉 비활성화) | 1.0 초과의 어떤 값이든 그리드를 마틴게일로 바꿈 — 위험 신호 |
BasketTakeProfit | 모든 오픈 다리에 걸친 순 +$X | 바스켓 전체를 목표에서 청산 |
BasketStopLoss | 순 -$Y — 반드시 설정 | 최악의 경우를 제한하는 차단기 |
사람들이 건너뛰는 두 입력값이 바로 계좌를 살려두는 두 입력값입니다. MaxLevels는 EA가 주문 추가를 멈추기 전에 사다리가 얼마나 깊이 내려갈 수 있는지를 제한하고, BasketStopLoss는 EA가 열린 바스켓을 무한정 붙들고 있는 대신 손실을 실현하고 리셋하도록 강제합니다. MaxLevels에 상한이 없고 바스켓 스톱이 없는 그리드는 전략이 아닙니다. 그것은 지연된 마진콜입니다.
MT5 특유의 함정 두 가지를 짚을 만합니다. 첫째, 대기 그리드 주문은 체결되기 전까지 마진을 소비하지 않습니다. 그래서 전략 테스터의 마진 수치는 추세가 사다리 전체를 한꺼번에 체결하는 순간 직전까지 편안해 보입니다. 항상 체결된 사다리의 마진을 손으로 계산하세요. 둘째, 브로커는 계좌당 동시 대기·오픈 주문 수에 상한을 둡니다. 상한이 낮은 브로커에서 좁은 그리드는 더 깊은 레벨을 조용히 걸지 못할 수 있으며, 여러분이 돌리고 있다고 생각한 전략을 슬그머니 바꿔버립니다.
- MT5에서 EA 속성을 열고(차트에서
F7)GridStepPips를 반올림한 숫자가 아닌 ATR에서 설정하세요. MaxLevels에 강제 상한을 두고 0이 아닌BasketStopLoss를 설정하세요 — 둘 중 어느 것도 무제한으로 두지 마세요.- 마틴게일 최악의 경우를 명시적으로 모델링하지 않았다면
LotMultiplier가1.0인지 확인하세요. - 추세 구간에 대해 전략 테스터를 돌린 다음, 완전히 체결된 사다리가 끝단에서 소비할 마진을 계산하세요.
- 체결된 사다리의 마진이 여유를 두고 계좌에 맞는 것을 확인한 후에만, 최소 일주일 동안 데모에서 포워드 테스트를 하세요.
실패 방식: 그리드가 터지는 과정
모든 그리드 실패는 계좌가 감당하지 못한 오픈 익스포저로 거슬러 올라갑니다. 구체적인 경로는 다음과 같습니다.
- 추세 돌파. 가격이 범위를 벗어나 그리드의 한쪽이 절대 청산되지 않습니다. 바스켓 스톱이 발동될 때까지 — 또는 그것이 없으면 마진이 소진될 때까지 — 새 레벨마다 미실현 손실이 커집니다. 이것이 가장 지배적인 살해 요인입니다.
- 숨겨진 마틴게일. 많은 “그리드” EA가 더 깊은 레벨에서 조용히 랏을 키웁니다. 이는 백테스트에서 승률과 자산 곡선을 돋보이게 하지만, 추세 동안 선형적이고 견딜 만한 드로다운을 지수적이고 계좌를 끝장내는 것으로 바꿔버립니다.
- 자본 부족. 계좌가 완전히 체결된 사다리를 마진으로 감당하지 못합니다. EA는 부분 체결의 여러 달 동안 괜찮아 보이다가, 단 하루의 방향성 날에 모든 레벨이 한꺼번에 체결되어 최악의 가격에서 마진콜을 촉발합니다.
- 커브핏 간격. 단계 크기가 하나의 과거 범위에 최적화되었습니다. 변동성 국면이 전환되면 같은 간격이 너무 좁거나(과도한 매매) 너무 넓어지고(진동을 놓침), 엣지가 증발합니다.
- 비용 출혈. 좁은 그리드는 높은 거래 횟수를 만들어 냅니다. 수십 개의 작은 다리에 붙는 스프레드와 스왑이 얇은 다리당 이익을 조용히 갉아먹어, 백테스트에서 손익분기점을 찍는 그리드가 실제 비용이 붙는 실전에서는 종종 돈을 잃습니다.
mt5depot에서 그리드 EA를 만들고 스트레스 테스트하는 방법
규율 있는 그리드를 만드는 데 MQL5를 작성할 필요는 없습니다. 노코드 빌더에서 같은 기계 — 대기 주문 사다리, 레벨 상한, 바스켓 목표, 바스켓 스톱 — 를 조립하고, 결정적으로 자본을 위험에 노출하기 전에 최악의 경우를 스트레스 테스트할 수 있습니다.
- 실제로 돌릴 정확한 통화쌍과 타임프레임의 ATR에서 간격을 설정하고, 최소 세 가지 간격을 백테스트하세요.
- 레벨 수에 강제 상한을 두고, 완전히 체결된 사다리가 여유를 두고 여유 마진에 맞는지 확인하세요.
- 랏을 고정하고, 어떤 랏 배수든 자체적인 파산 확률 모델이 필요한 마틴게일로 취급하세요.
- 0이 아닌 바스켓 스톱로스를 붙여 최악의 방향성 랠리가 무한정이 아니라 제한되도록 하세요.
- 통화쌍의 가장 나쁜 추세 구간에 대해 백테스트한 다음, 최소 일주일 동안 데모에서 포워드 테스트를 하세요.
직접 만드는 것의 가치는 구매한 그리드 EA가 숨기는 드로다운을 볼 수 있다는 데 있습니다. 같은 그리드를 틱 데이터의 추세 구간에서 돌리면, 마케팅에서 “항상 회복된다”던 바스켓이 여러분의 마진 안에서 회복되거나 그러지 못하거나 둘 중 하나입니다. 빌더는 실계좌가 뼈아프게 알아채기 전에 어느 쪽인지 보여줍니다.
그리드 대 추세 전략
그리드는 진동에서 수익을 얻기 때문에 추세 추종 EA의 구조적 정반대이며, 두 전략은 정반대 조건에서 실패합니다. 그래서 트레이더들이 때때로 둘을 짝지어 쓰는 것입니다.
| 그리드 | 추세 추종 | |
|---|---|---|
| 최적 국면 | 박스권 (ADX < 20) | 추세 (ADX > 25) |
| 승률 | 높음 (작은 승리 다수) | 낮음 (큰 승리 소수) |
| 손실 형태 | 두꺼운 왼쪽 꼬리 (돌파) | 작은 손실 다수 (횡보) |
| 자본 필요 | 높음 (오픈 사다리 자금) | 보통 |
| 최악의 적 | 지속되는 추세 | 조용한 박스권 |
어느 쪽도 “더 낫지” 않습니다. 서로 다른 날씨를 위한 도구입니다. 실수는 그리드를 모든 조건에 대응하는 시스템인 것처럼 배포하는 것입니다. 그리드는 박스권 전문가이며, 시장이 한 방향으로 확정하는 순간 반드시 꺼지거나 — 강제 바스켓 스톱과 추세 필터로 보호되어야 — 합니다.
관련 글
자주 묻는 질문
- 그리드 트레이딩 EA란 무엇인가요?
- 그리드 트레이딩 EA는 방향을 예측하는 대신, 고정된 가격 간격(예: 20핍마다)으로 매수·매도 대기 주문을 거는 엑스퍼트 어드바이저입니다. 가격이 그리드를 오르내리며 진동하면 반대 방향 주문이 체결되어 작은 이익을 쌓고, 순 미실현 수익이 목표에 도달하면 바스켓 전체를 청산합니다. 박스권 시장에서 잘 작동하고 지속 추세에서는 어려움을 겪는 평균회귀 도구입니다.
- 그리드 트레이딩은 수익이 나나요?
- 그리드 EA는 가격이 같은 레벨을 반복적으로 넘나드는 박스권·저추세 환경에서는 수익을 낼 수 있지만, 그 자산 곡선은 두꺼운 왼쪽 꼬리를 숨기고 있습니다. 한 번의 방향성 돌파가 다수의 미실현 손실 포지션을 누적시켜 수개월의 이익을 지워버릴 수 있습니다. 수익성은 눈에 보이는 승률보다, 그리드 폭·강제 바스켓 스톱·고정(마틴게일이 아닌) 랏 같은 드로다운 통제에 훨씬 더 크게 좌우됩니다.
- MT5에서 그리드 간격은 어느 정도로 설정해야 하나요?
- 단계는 반올림한 숫자가 아니라 통화쌍 자체의 변동성에서 정해야 합니다. 흔한 규칙은 작업 타임프레임의 14기간 Average True Range 근처로 간격을 잡는 것입니다. EUR/USD H1에서는 대개 15~25핍이 됩니다. 간격이 넓으면 체결은 더 적고 크며 바스켓이 천천히 쌓이고, 간격이 좁으면 더 많은 진동을 잡지만 오픈 익스포저가 더 빨리 누적됩니다. 결정하기 전에 같은 틱 데이터로 최소 세 가지 간격을 백테스트하세요.
- 제 계좌로 그리드 레벨을 몇 개까지 감당할 수 있나요?
- 여유 마진을 해당 레버리지에서의 랏당 마진으로 나누고, 다시 레벨당 랏 크기로 나누면 마진콜 이전에 동시에 보유할 수 있는 최대 포지션 수가 나옵니다. 그리드가 0.01랏짜리 20레벨을 열 수 있는데 계좌가 그리드 끝단에서 20개 전부를 마진으로 감당할 수 없다면, 그 EA는 자본이 부족한 것입니다. 사다리는 항상 평균적인 달이 아니라 최악의 경우를 기준으로 크기를 잡으세요.
- 그리드 EA에 마틴게일 랏 스케일링을 써야 하나요?
- 고정 랏이 훨씬 안전합니다. 마틴게일식 스케일링, 즉 더 깊은 레벨마다 랏 크기를 키우는 방식은 백테스트에서 자산 곡선을 더 매끄럽게 보이게 하지만, 추세가 나올 때 그리드의 관리 가능한 드로다운을 계좌를 끝장내는 꼬리 위험으로 바꿔버립니다. 꼭 스케일링해야 한다면 배수와 레벨 수에 상한을 두고, 실전 투입 전에 정확한 최악의 손실을 모델링하세요.
- 그리드 트레이딩은 마틴게일과 같은 건가요?
- 아닙니다. 순수 그리드는 모든 레벨에서 랏 크기를 일정하게 유지하며 진동에서 수익을 얻지만, 마틴게일은 손실 이후 랏 크기를 늘려 회복 승리를 강제로 만들어 냅니다. 공개된 많은 그리드 EA가 조용히 마틴게일 스케일링을 그리드에 덧붙이는데, 대부분의 계좌 파산이 바로 여기서 나옵니다. 파라미터를 꼼꼼히 읽고, 최악의 경우를 검증하기 전까지는 어떤 랏 배수 입력값도 위험 신호로 취급하세요.