Runaway Guard
- 유틸리티
- 버전: 1.0
- 활성화: 10
리스크 도구는 손실을 지켜봅니다. 주문 속도를 지켜보는 것은 아무것도 없습니다. 사서 붙인 도구가 1분에 마흔 번을 쏟아내기 전까지는요.
Runaway Guard 는 계좌에 주문이 얼마나 빠르게 나가는지를 출처별로 측정하고, 속도 상한을 넘었을 때만 동작합니다. 매매의 금액 결과는 보지 않습니다. 무언가가 폭주하면 실제 거래 티켓 번호가 담긴 사건 파일을 하나 기록합니다. 말다툼 대신 무슨 일이 있었는지 제시할 수 있습니다.
네 가지 속도 상한, 이동 시간창으로 측정
- 체결 빈도: 빠른 창 안에 몇 건의 체결이 들어왔는가. 기본값 5분에 20건.
- 왕복: 몇 초 만에 열었다가 다시 닫힌 포지션. 기본값 15분에 10회의 짧은 청산이며, 여기서 짧다는 것은 보유 60초 미만을 뜻합니다.
- 재진입: 청산 직후 같은 종목을 같은 방향으로 다시 여는 것. 기본값 15분에 5회이며, 여기서 직후란 30초 이내를 뜻합니다.
- 회전으로 태운 비용: 느린 창 동안의 수수료와 스왑과 실현 결과의 합을 잔고 대비 비율로 봅니다. 기본값 15분에 0.5 퍼센트.
어느 상한이든 0 을 넣으면 꺼집니다.
계좌 단위가 아니라 출처 단위
모든 체결에는 그것을 만들어 낸 대상의 매직 넘버가 붙어 있습니다. Runaway Guard 는 매직 넘버마다 따로 세고, 수동 주문도 Manual / no magic 으로 함께 셉니다. 계좌 전체 합계는 별도의 한 줄로 표시됩니다.
이것이 중요한 이유는, 폭주하는 것은 대개 계좌 전체가 아니라 하나의 EA 또는 하나의 도구이기 때문입니다. 나머지는 계속 돌릴 수 있습니다.
무슨 일이 일어날지 출처별로 고릅니다
- Alert. 알리기만 하고 아무것도 바꾸지 않습니다. 이것이 기본값입니다.
- Cancel pendings. 그 출처에 속한 대기 주문을 거둡니다.
- Stop the chart. 그 출처가 올라가 있는 차트를 닫아, 새 주문이 더 나오지 않게 합니다.
- Close the terminal. 기본값은 꺼짐이며 두 번째 스위치 뒤에 있습니다. 이것은 실제로 MetaTrader 를 닫기 때문입니다.
사건 파일 - 이것이 이 제품의 나머지 절반입니다
상한을 넘으면 MQL5/Files/RunawayGuard/ 아래에 CSV 파일이 하나 기록됩니다. 열은 열다섯 개입니다. 세 개의 시계(브로커 시각, UTC, 로컬 시각), 어떤 상한을 넘었는지, 실측값과 상한, 매직 넘버, 종목, 체결 수, 왕복 수, 수수료, 스왑, 실현 결과, 실행한 동작, 그리고 체결 티켓 목록입니다.
티켓은 실제 번호입니다. 하나하나 단말기의 내역과 대조할 수 있습니다. 파일 안에는 평가도, 점수도, 추정치도 없습니다.
파일은 덮어쓰이지 않으며 자동으로 지워지지도 않습니다.
괜히 소란을 떨지 않기 위한 세 가지 걸러내기
- 예열. 시작 후 60초 동안은 동작하지 않습니다. 그 사이에 내역을 읽습니다.
- 장 시작. 세션이 열린 뒤 120초 동안은 상한을 두 배로 둡니다.
- 제외. 어떤 매직 넘버든 제외할 수 있습니다. 제외한 출처는 계좌 합계에서도 빠집니다. 빼지 않으면 제외해도 계좌 줄이 그대로 걸리기 때문입니다.
한 번 발동한 출처는 같은 상한으로 10분 동안 다시 발동하지 않습니다. 그동안에도 계속 세고, 화면에도 계속 나타냅니다.
두 개의 화면
- Watch: 계좌, 잔고, 상태, 창 길이, 출처마다 한 줄(체결 수·왕복·재진입·비용·선택한 동작), 그리고 최근 세 건의 사건과 그 파일 이름.
- Sources: 선택한 출처에 대한 동작, 제외 전환, 차트 연결, 그리고 현재값과 상한의 대조.
상태는 WATCHING, TRIGGERED, DISABLED 세 가지입니다. DISABLED 는 세는 것을 그만두었다는 뜻이 결코 아닙니다. 선택한 동작을 지금 실행할 수 없다는 뜻이며, 그 이유가 한 줄로 표시됩니다.
패널은 끌어서 옮길 수 있고 위치를 기억합니다. 차트 크기가 바뀌면 몇 줄이 들어가는지 다시 계산합니다. 설정은 시간 단위를 바꾸어도, 단말기를 다시 켜도 남습니다.
이 제품이 할 수 없는 것
- 포지션을 열거나 닫거나 수정하지 않습니다. 열고 닫고 수정하는 데 쓰이는 거래 동작 상수(DEAL, PENDING, SLTP, MODIFY, CLOSE_BY)는 소스 어디에도 나오지 않습니다. 유일한 거래 호출은 대기 주문의 취소이며, 그것이 Cancel pendings 의 내용입니다.
- 다른 EA 를 정지시킬 수 없습니다. MQL5 에 그런 호출이 없습니다. 할 수 있는 것은 그 EA 가 올라가 있는 차트를 닫는 것뿐입니다.
- 단말기의 Algo Trading 버튼을 끌 수 없습니다. MQL5 로는 조작할 수 없습니다.
- 휴대전화나 다른 단말기에서 나간 주문을 멈출 수 없습니다. 계좌 내역에 들어오므로 검출은 되지만, 이 단말기 밖으로는 손이 닿지 않습니다.
- 이미 체결된 거래를 되돌릴 수 없습니다. 할 수 있는 것은 더 늘지 않게 하는 것과, 들어온 것을 적어 두는 것입니다.
- 원인을 단정하지 않습니다. 어떤 매직 넘버가 언제 몇 건을 냈는지까지 보고합니다.
- 손실이나 낙폭을 방아쇠로 쓰지 않습니다. 방아쇠는 속도입니다. 금액 상한은 다른 도구의 몫입니다.
- 무엇도 어디로도 보내지 않습니다. 웹 요청도, 저희 쪽 서버도, 외부 파일도, DLL 도 없습니다.
무료 데모
데모는 전략 테스터에서 돌아갑니다. 이 제품은 주문을 내지 않으므로, 테스터에서는 합성한 체결 다발을 계수 계층으로 흘려보냅니다. 기본 설정 그대로 검출과 화면과 사건 파일을 직접 확인하실 수 있습니다. 그동안 패널에는 TESTER DEMO - synthetic sample, no orders are placed 가 표시됩니다. Cancel pendings, Stop the chart, Close the terminal 은 테스터 안에 대상이 없어 그곳에서는 한 번도 호출되지 않습니다.
동작 조건
- MetaTrader 5, 브로커와 종목을 가리지 않습니다. 보고 있는 것은 차트가 아니라 계좌입니다.
- 헤징 계좌에서 만들고 검증했습니다. 네팅 계좌는 구현되어 있으나 검증하지 않았습니다.
- 입력은 열아홉 개이며 모두 기본값 그대로 동작합니다. set 파일을 따로 받아 올 필요가 없습니다.
- 화면 표시는 영어입니다.
