MQL5 언어의 가장 큰 장점 중 하나는 멀티통화 지표와 EA(Expert Advisor)를 사용할 수 있다는 점입니다. MQL5의 Multicurrency OnTickMarketWatch 틱 이벤트 핸들러를 참고해보세요.
스크립트에서 제안된 개념은 여러 이벤트가 발생할 경우 다소 불편할 수 있습니다. 예를 들어, 이벤트 큐가 넘칠 수 있습니다.
MQL5 참고 문서에서 다음과 같은 주의 사항이 있습니다:
클라이언트 터미널은 발생하는 이벤트를 이벤트 큐에 추가합니다. 따라서 이벤트는 수신된 순서에 따라 차례로 처리됩니다. 새로운 틱 이벤트의 경우, 큐에 이미 해당 이벤트가 있거나 처리 중이라면 새로운 틱 이벤트는 큐에 추가되지 않습니다.
이벤트 큐의 크기는 제한되어 있습니다. 큐가 넘칠 경우, 오래된 이벤트는 처리되지 않은 채 삭제되어 새로운 이벤트 수신을 허용합니다. 따라서 효율적인 이벤트 핸들러를 작성하는 것이 좋으며, 무한 루프 사용은 권장되지 않습니다(시작 이벤트만 처리하는 스크립트의 경우는 예외입니다).
때때로 새로운 바가 생성되었을 때만 지표 값을 재계산해야 할 필요도 있습니다. 또는 멀티통화 EA에서 특정 심볼에 대한 거래를 즉시 중지하거나 다른 심볼의 시간 프레임을 변경해야 할 경우도 있습니다.
이러한 필요에 따라 외부 데이터를 활용할 수 있습니다. MCM(멀티통화 모드) 제어판은 이러한 아이디어를 바탕으로 개발되었습니다.
그런데 이 제어판은 단일 통화 거래에서도 사용할 수 있습니다.
MCM 제어판(대회 버전)의 특징:
멀티통화 모드를 EA와 지표에서 사용하기 위한 최소한의 기능을 제공하며:
- 거래 및 분석을 위한 심볼 추가/제거.
- 모든 심볼과 기간에 대해 "새 틱" 및 "새 바" 이벤트를 추적할 수 있습니다.
- 모든 설정을 EA나 지표를 재시작하지 않고
연관 포스트