가상 손절매 및 이익 실현을 통한 시스템트레이딩
이번 포스트에서는 Virtual_SL_TP_Pending_with_SL_Trailing.mq4 스크립트에 대해 소개합니다. 이 스크립트는 가상 손절매와 이익 실현 수준을 설정하고, 선택적으로 트레일링 스탑 로스를 추가하여 거래를 관리하는 기능을 제공합니다.
스크립트 기능 분석
스크립트의 주요 기능은 다음과 같습니다:
- 저작권 및 링크: 저작권 정보 및 제작자의 웹사이트 링크를 지정합니다.
- 버전: 스크립트의 버전을 표시합니다.
- 설명: 스크립트에 대한 정보, 제작자의 이메일 주소, 지적 재산권 관련 내용과 소프트웨어 사용 시 주의사항을 제공합니다.
- 입력 매개변수: 사용자가 EA의 동작을 맞춤 설정할 수 있는 외부 변수를 포함합니다:
- StopLossPoints: 초기 손절매 포인트.
- TakeProfitPoints: 초기 이익 실현 포인트.
- SpreadThreshold: 가상 손절매/이익 실현을 위한 스프레드 기준 포인트.
- TrailingStopPoints: 가상 보류 주문을 위한 트레일링 스탑 포인트.
- EnableTrailing: 트레일링 스탑 사용 여부 설정.
- 전역 변수: 스크립트 전반에서 초기 스프레드, 가상 손절매, 가상 이익 실현, 보류 주문 가격을 저장하는 데 사용되는 변수입니다.
- 초기화 함수 (OnInit): 차트에 EA가 부착될 때 초기화됩니다. 입력 매개변수를 바탕으로 초기 가상 손절매, 이익 실현 및 보류 주문 가격을 계산합니다.
- 틱 함수 (OnTick): 가격의 매 틱마다 호출됩니다. 스프레드가 기준치를 초과할 경우 가상 손절매, 이익 실현 및 보류 주문 가격을 조정합니다. 또한, 가격이 가상 손절매 또는 이익 실현에 도달하면 포지션을 종료합니다. 만약 트레일링 스탑이 활성화되어 있고 가격이 보류 주문 가격에 도달하면 트레일링 스탑 로스를 포함한 가상 보류 주문을 설정합니다.
- 포지션 종료 함수 (ClosePosition): 가격이 가상 손절매 또는 이익 실현에 도달하면 포지션을 종료합니다.
- 보류 주문 설정 함수 (PlacePendingOrder): 트레일링 스탑이 활성화된 경우 트레일링 스탑 로스를 포함한 가상 보류 주문을 설정합니다.
이 EA는 가상 수준과 트레일링 스탑 기능을 통해 거래 관리를 유연하게 수행할 수 있는 방법을 제공하여, 트레이더가 MetaTrader 4에서 거래 관리 프로세스를 자동화할 수 있도록 돕습니다.
