이번 글에서는 MetaTrader 4(MT4)에서 사용할 수 있는 'EuroSurge' 자동매매 시스템에 대해 소개하겠습니다. 이 시스템은 다양한 기술 지표를 활용하여 매매 신호를 생성하며, 설정 가능한 롯트 크기와 특정 조건에 따른 거래 관리 기능을 제공합니다.
기본 설정은 EURUSD 5분 차트에 최적화되어 있습니다.
2020년 이후의 최적화를 기반으로 한 설정입니다.
입력 매개변수
-
거래 크기 계산:
- 이 EA는 세 가지 유형의 거래 크기 계산을 지원합니다:
- 고정 롯트 크기.
- 계좌 잔고 비율(계좌 잔고를 기준으로 롯트 크기를 계산).
- 자기자본 비율(계좌 자기자본을 기준으로 롯트 크기를 계산).
- FixedLotSize, TradeSizePercent, MagicNumber와 같은 입력 값이 롯트 크기를 설정하고 거래를 고유하게 식별합니다.
- 이 EA는 세 가지 유형의 거래 크기 계산을 지원합니다:
-
지표 설정:
- 이 EA는 매수 및 매도 신호 생성을 위해 다양한 지표를 사용합니다:
- 설정 가능한 기간의 이동 평균(MA).
- 설정 가능한 과매수/과매도 수준의 상대 강도 지수(RSI).
- 조정 가능한 EMA 및 신호선 설정을 가진 MACD.
- 설정 가능한 기간과 편차를 가진 볼린저 밴드.
- 설정 가능한 %K, %D 및 느림 매개변수를 가진 스토캐스틱 오실레이터.
- 각 지표는 UseMA, UseRSI 등의 입력 매개변수를 통해 켜거나 끌 수 있습니다.
- 이 EA는 매수 및 매도 신호 생성을 위해 다양한 지표를 사용합니다:
신호 감지
-
IsBuySignal(): 이 함수는 선택한 지표를 기반으로 모든 매수 조건이 충족되는지 확인합니다. 예를 들어:
- MA 조건: 짧은 기간의 MA가 긴 기간의 MA 위에 있는지 확인합니다.
- RSI 조건: RSI가 50 이하인지 확인합니다(과매도 수준인 30에서 완화됨).
- MACD 조건: MACD 라인과 신호선을 비교합니다.
- 볼린저 밴드 조건: 가격이 하단 밴드 아래에 있는지 확인합니다.
- 스토캐스틱 조건: %K 및 %D 값이 50 이하인지 확인합니다(20에서 완화됨).
-
IsSellSignal(): IsBuySignal()과 유사하지만 매도 조건에 맞춰 반전됩니다. 예를 들어:
- MA Short < MA Long,
- RSI > 50 (과매수 수준인 70에서 완화됨),
- MACD 라인이 신호선 아래에 있는지,
- 가격이 상단 볼린저 밴드 위에 있는지 등의 조건을 확인합니다.
거래 실행
- 매수 또는 매도 조건이 충족되면 EA는 계산된 손절매(SL) 및 이익 실현(TP) 값을 기준으로 거래를 실행합니다. 이를 위해 SL_Multiplier 및 TP_Multiplier를 사용합니다.
- 거래 크기는 CalculateLotSize() 함수를 사용하여 선택된 거래 크기 유형에 따라 조정됩니다.
- 주문은 OrderSend() 함수를 사용하여 실행되며, 거래 실행에 문제가 발생할 경우 오류 처리를 통해 확인합니다.