Contract Change Watch
- 유틸리티
- 버전: 1.11
- 업데이트됨: 5 9월 2026
- 활성화: 10
Contract Change Watch는 이 계좌에 연결된 브로커가 설정한 심볼 값을 읽어, 그 값이 바뀌는 순간을 기록하는 도구입니다. 예측도, 조언도 하지 않습니다. 로그에 남는 것은 이 계좌의 브로커가 실제로 설정했던 값이 조금 전과 달랐다는 사실뿐입니다.
왜 필요한가: 브로커는 스왑율, 스톱 레벨, 거래량 단위, 필요 증거금 등 열일곱 개 항목 중 나머지 여섯 개도 언제든 예고 없이 바꿀 수 있습니다. 사양 대화상자에는 항상 현재 값만 표시됩니다. 변경되기 전부터 기록해두지 않는 한, 값이 언제 얼마나 바뀌었는지 알 방법은 없습니다.
설정 방법:
1. 어떤 차트에든 EA를 드래그해서 붙입니다. 심볼과 시간대는 상관없습니다. 실행 중인 차트가 아니라 Market Watch에 있는 모든 심볼을 읽습니다.
2. 패널이 좌측 상단에 나타납니다. 처음 실행하면 감시 대상 심볼마다 기준값을 저장하고 Changes recorded 0으로 표시됩니다.
3. 그 이후로는 60초마다 현재 값을 기준값과 비교합니다. 변화는 감지된 그 순간에 기록됩니다.
4. 그 외에는 아무것도 필요하지 않습니다. 조정해야 할 수치 설정이 없습니다.
입력값(일곱 개, 이 순서대로):
InpShowPanel(기본값 true) - 패널 표시 여부.
InpPanelCorner(기본값 좌측 상단) - 차트 네 모서리 중 패널이 위치할 곳.
InpPanelFontSize(기본값 9) - 패널 글자 크기. 화면 표시에만 영향.
InpColorText(기본값 흰색) - 패널 글자 색상.
InpAlertScreen(기본값 false) - 화면 알림.
InpAlertPush(기본값 false) - 푸시 알림.
InpAlertEmail(기본값 false) - 이메일 알림.
수치 임계값은 어디에도 없습니다. 60초 폴링 주기와 감시하는 17개 항목의 목록은 둘 다 고정되어 있으며 바꿀 수 없습니다.
감시하는 항목(17개, 읽기 전용 - 계산하지 않음):
스왑 관련 4개(매수 스왑율, 매도 스왑율, 스왑 방식, 3배 스왑이 적용되는 요일).
거래 제한 관련 5개(스톱 레벨, 프리즈 레벨, 최소 거래량, 최대 거래량, 거래량 단위).
계약 관련 5개(계약 크기, 초기 증거금, 틱 가치, 틱 크기, 소수점 자릿수).
모드 관련 3개(거래 모드, 변동 스프레드 여부, 체결 방식).
이 17개 값은 모두 이 계좌에서 해당 심볼 자체의 속성에서 직접 가져온 것이며, 추정치는 하나도 없습니다.
로그: 감지된 모든 변화는 DetectedAt, Symbol, Field, OldValue, NewValue, Kind 열을 가진 CSV 파일에 기록됩니다. 값이 바뀐 경우 Kind는 CHANGED이고, 어떤 심볼이 처음 나타난 경우에는 NEW_SYMBOL입니다. 파일은 추가만 될 뿐 덮어쓰이지 않으므로, 터미널을 재시작해도 전체 이력이 남습니다. 파일의 전체 경로는 패널에 표시되므로 따로 찾아볼 필요가 없습니다. 패널 자체에는 최근 10건의 변화가 표시되고, 파일에는 전부 저장됩니다.
틱 가치에 대한 참고 사항: 17개 항목 중 하나인 틱 가치는 브로커가 설정하는 값이지만, 심볼의 결제 통화가 계좌 통화와 다를 경우 시장 가격에 따라서도 움직입니다. 예를 들어 엔화 계좌로 미국 달러나 유로로 표시되는 크로스 통화쌍을 보는 경우입니다. 이런 심볼에서는 Contract Change Watch가 거의 매 폴링 주기마다 틱 가치 변경을 기록하게 되는데, 이는 브로커가 발표하는 수치를 시장 자체가 움직이기 때문입니다. 이것은 오류도 아니고 브로커 측 설정 변경도 아니며, MetaTrader가 이런 심볼의 틱 가치를 계산하는 방식 자체입니다. 나머지 16개 항목은 이렇게 동작하지 않으며, 일반적인 계좌에서는 그중 대부분이 오랫동안 아무런 변화도 보이지 않는 것이 정상적이고 조용한 상태입니다.
테스트하기 전에: 전략 테스터는 하나의 심볼에서만 동작하므로, 실거래나 데모 차트처럼 계좌 전체를 넘나드는 감시를 보여줄 수 없습니다. 테스터에 올려도 EA는 여전히 기준값을 저장하고 예정대로 폴링합니다. 오류 없이 동작하는지 확인하는 데는 유용하지만, 테스터는 다른 심볼에 대한 실제 브로커 연결을 시뮬레이션하지 않으므로 다른 심볼의 브로커 측 변경은 표시되지 않습니다.
하지 않는 일: 주문을 체결하거나 청산하거나 수정하는 일은 전혀 하지 않습니다. 터미널의 거래 기능과는 아무런 연결이 없습니다. 값이 왜 바뀌었는지는 알려주지 않습니다. 브로커의 판단 근거는 터미널에 공개되지 않기 때문입니다. 브로커를 비교하지도, 브로커를 바꾸라고 제안하지도 않습니다. 처음 부착되기 이전의 설정은 볼 수 없으며, 그 시점 이후의 변화만 기록됩니다. 변화가 발생했을 때 터미널이 꺼져 있었다면, 그 변화는 터미널이 다음번 실행될 때 감지되어 기록되며, 이때 남는 시각은 변화가 실제로 적용된 순간이 아니라 감지된 시각입니다.
