예약주문 아이디어를 EA 요구사항으로 바꾸는 과정
인스타그램식 상하방 예약주문 아이디어를 실제 EA로 만들기 전에 주문, 상태, 중단 조건으로 쪼개는 과정을 정리합니다.
XAUUSD CFD 트레이더 · MT5 EA 개발 기록자
INFINOX 계좌 연계로 운영자에게 경제적 대가가 발생할 수 있습니다. 광고·제휴 고지
현재 판정 · HOLD
요구사항은 정리됐지만 계좌 규모별 lot, 장세별 중단 기준, 브로커별 체결 확인이 부족해 배포 판단은 보류합니다.
좋아 보이는 자동매매 아이디어도 EA로 만들기 전에는 주문 조건, 상태 전환, 실패 조건으로 쪼개야 합니다. 이 글은 StopGridBasketEA의 첫 요구사항을 공개 가능한 언어로 정리한 기록입니다.
아이디어는 주문 규칙으로 바뀌어야 한다
처음 본 아이디어는 단순했습니다. 현재가 위에는 Buy Stop을, 아래에는 Sell Stop을 깔고, 움직임이 나오면 체결된 포지션을 바스켓으로 정리하는 방식입니다.
하지만 EA는 “위아래에 깔아줘”라는 말만으로 움직일 수 없습니다. 몇 개를 깔지, 간격은 어떻게 둘지, 주문 중 일부가 실패하면 어떻게 할지, 체결된 포지션과 남은 pending을 어떻게 구분할지까지 정해야 합니다.
첫 요구사항은 수익보다 상태 관리였다
StopGridBasketEA에서 먼저 정한 것은 수익률이 아니라 상태였습니다. 시작 전, 주문 배치 중, 부분 체결, 전체 체결, full-lock, recovery, close warning을 구분하지 못하면 운용자가 지금 무엇을 보고 있는지 착각할 수 있습니다.
특히 Buy 10개와 Sell 10개가 모두 포지션이 되고 pending이 0개가 된 상태는 일반 운용 상태와 다르게 봐야 합니다. 이 상태를 full-lock으로 분리해야 다음 글에서 다룰 recovery 판단이 가능합니다.
요구사항에는 멈춤 조건이 들어가야 한다
EA 요구사항을 만들 때 빠지기 쉬운 부분은 “언제 멈출 것인가”입니다. 스프레드 과다, 주문 거절, 증거금 부족, 뉴스장, 계좌 모드 불일치 같은 조건은 기능보다 먼저 적어야 합니다.
이 기준이 없으면 좋은 장에서는 멋져 보이지만 나쁜 장에서는 계속 위험을 키우는 프로그램이 됩니다. 그래서 이번 요구사항 글의 판정은 PASS가 아니라 HOLD입니다.
- 예약주문 아이디어를 주문 수, 간격, 실패 처리로 쪼갔다.
- pending 주문과 실제 포지션을 별도 상태로 본다.
- full-lock 상태를 recovery 전 단계로 분리한다.
- 스프레드, 증거금, 주문 거절, 뉴스장을 중단 조건 후보로 남긴다.
- 요구사항 정리는 운용 가능 판정이 아닙니다.
- 계좌 규모와 lot, 브로커 체결 조건이 달라지면 같은 EA도 전혀 다르게 작동할 수 있습니다.
- 다운로드 연결은 장기 실전 기록과 중단 조건 검토 뒤에만 판단합니다.
투자 유의사항
이 글은 개인 기록과 교육 목적의 복기이며 투자 권유가 아닙니다. 레버리지 CFD·FX와 자동매매는 원금 손실 위험이 크고, 과거 기록이나 백테스트는 미래 수익을 보장하지 않습니다.