당사 팬 페이지에 가입하십시오
- 조회수:
- 5
- 평가:
- 게시됨:
-
이 코드를 기반으로 한 로봇이나 지표가 필요하신가요? 프리랜스로 주문하세요 프리랜스로 이동
그 배경이 되는 아이디어
"오늘 시장이 조용한지, 아니면 격동적인지"를 가늠하는 일반적인 방법은 일일 평균 변동폭 백분율입니다. 즉, 오늘의 변동폭을 지난 N일간의 평균으로 나눈 값입니다. 이 지표는 유용하지만, 단순히 평균값과만 비교하기 때문에 분포의 형태를 제대로 보여주지 못합니다. 대체로 차분하다가 가끔 큰 급등이 발생하는 시장의 경우, 평균값이 부풀려져 평소처럼 변동폭이 작은 날들이 실제보다 덜 극단적으로 보이게 됩니다. 이 지표는 대신 더 명확한 질문에 답합니다. 지난 N개의 완료된 기간 중, 오늘 현재까지의 등락폭보다 작은 등락폭을 보인 기간이 전체의 몇 퍼센트나 되는가? 이는 단일 평균값이 아닌, 과거 변동폭의 경험적 분포를 바탕으로 직접 산출된 진정한 백분위 순위입니다. 이는 통계학에서 관측값이 자체 분포 내에서 어느 위치에 속하는지를 설명하는 데 사용되는 개념과 동일하며, 여기서는 변동성에 적용된 것입니다.
통계적으로 압축된 상태(낮은 백분위수)는 종종 변동폭 확대를 예고하므로, 돌파 패턴이 형성되기 전에 압축 지표를 주시하는 것이 일반적입니다. 반대로 매우 높은 백분위수는 해당 날짜의 변동폭이 과거 거의 모든 날짜보다 더 크게 움직였음을 나타내며, 이는 현실적으로 남은 변동폭의 여지가 얼마나 되는지를 판단하는 데 영향을 미칩니다.
해석 방법
- 백분위수 값 — 지난 InpLookbackPeriods 기간 중 전체 변동폭이 현재 기간의 누적 변동폭보다 작았던 기간의 비율입니다. 12%는 오늘의 누적 변동폭이 지난 100일 중 88%보다 작음을 의미합니다.
- 압축 (기본값: 파란색) — InpCompressionPercentile 이하인 백분위수; 현재 기간은 자체 과거 기록에 비해 유난히 변동이 적습니다.
- EXPANDED (기본값: 빨간색) — InpExpansionPercentile 이상인 백분위수; 현재 기간은 이미 과거 대부분의 기간보다 더 크게 변동했습니다.
- NORMAL (기본값: 은색) — 두 임계값 사이의 어느 지점 — 현재까지 평범하고 눈에 띄지 않는 변동폭입니다.
- 게이지 막대 — 0에서 100까지의 간단한 시각적 척도입니다. 트랙을 따라 표시된 마커의 위치는 백분위수 자체이므로, 정확한 수치를 읽지 않아도 압축 및 확장을 한눈에 확인할 수 있습니다.
외부 변수(입력값)
| 입력 | 기본값 | 목적 |
|---|---|---|
| InpRangePeriod | D1 | 어떤 시간대가 하나의 "범위"를 정의하는지 — 일반적으로 일간(Daily)을 사용하지만, 주간(Weekly)이나 H4도 동일한 방식으로 작동합니다. |
| InpLookbackPeriods | 100 | 현재 범위를 순위 매길 때 기준으로 삼는 분포를 구성하는 완료된 과거 기간의 수입니다. |
| InpCompressionPercentile | 20.0 | 상태가 "압축됨(COMPRESSED)"으로 표시되는 백분위수 또는 그 이하. |
| InpExpansionPercentile | 80.0 | 상태가 "EXPANDED"로 표시되는 백분위수 이상. |
| InpUpdateOnNewBarOnly | true | true인 경우, 차트의 새로운 막대가 생성될 때마다 한 번씩 새로 고침되며, false인 경우 매 틱마다 새로 고침됩니다. |
| InpPanelCorner | 왼쪽 상단 | 패널이 고정되는 차트의 모서리. |
| InpPanelXDistance / InpPanelYDistance | 12 / 18 | 선택한 모서리로부터 패널이 오프셋된 거리(픽셀 단위). |
| InpFontSize | 9 | 모든 행에 사용되는 글꼴 크기. |
| InpGaugeWidth / InpGaugeHeight | 160 / 10 | 백분위 게이지 트랙의 픽셀 크기. |
| InpCompressedColor / InpNormalColor / InpExpandedColor | DeepSkyBlue / Silver / Red | 세 가지 상태 각각에서 상태 행과 게이지 마커에 사용되는 색상입니다. |
| InpPanelTextColor / InpPanelBgColor | 흰색 / 짙은 회색 | 정적 텍스트 색상 및 패널 배경색. |
권장 사용법
모든 심볼에서 작동합니다. 백분위수는 해당 심볼 자체의 과거 범위 분포를 바탕으로 계산되므로, 수동으로 재보정할 필요 없이 해당 상품이 현재 처한 변동성 환경에 맞춰 자동으로 보정됩니다. InpRangePeriod는 차트의 시간대와 일치할 필요가 없습니다. 계산이 CopyRates()를 통해 직접 데이터를 가져오기 때문에, D1 차트에서와 마찬가지로 M15 차트에서도 일일 범위 백분위수를 쉽게 읽을 수 있습니다.
백분위수는 예측이 아닌, 오늘의 가격이 과거 기록에 비해 어느 위치에 있는지를 나타내는 지표입니다. ‘COMPRESSED’ 수치는 확장될 확률을 높이지만 이를 보장하지는 않으며, ‘EXPANDED’ 수치가 나타난다고 해서 움직임이 끝났음을 의미하지는 않습니다. 이 지표는 가격 데이터만 읽을 뿐, 주문을 체결하거나 수정하거나 청산하지 않으므로 어떤 계좌 유형에서든 안전하게 실행할 수 있습니다.
이 지표는 자체 패널 객체를 통해서만 표시되며, 막대별 차트에 불필요한 요소를 생성하지 않으므로 다른 오버레이와 함께 실행해도 안전합니다. 모든 차트 객체는 단일 내부 이름 접두사 아래 생성되며, 지표가 분리될 때 OnDeinit() 내의 ObjectsDeleteAll()을 통해 완전히 제거되므로 차트에 아무런 흔적도 남기지 않습니다.

그림 1. XAUUSD H1 차트의 압축 패널과 백분위수 게이지로, 압축된 범위를 표시하고 있습니다. 코드베이스 이미지 가이드라인에 따라 흑백으로 렌더링되었습니다.
MetaQuotes Ltd에서 영어로 번역함.
원본 코드: https://www.mql5.com/en/code/77161
MT5 Symbol Changer Profit Display
EMTOrdersUtility는 여러 금융 상품에 걸친 미결제 포지션을 실시간으로 파악하고자 하는 적극적인 트레이더들을 위해 설계된 실시간 거래 모니터링 및 종목 변경 유틸리티입니다.
PulseStrike Scalper - Statistical Burst Detection EA
PulseStrike Scalper - 통계적 버스트 감지 EA
PropFirm Defense
24개의 MQL5 클래스로 구성된 라이브러리로, 특정 계좌에 대해 프로프 펌의 규칙집(드로우다운, 일일 손실, 수익 지급 일관성, 최소 거래 일수, 뉴스 블랙아웃 등)을 모니터링하며, 규칙 위반 시 자체 포지션을 개설하지 않고 즉시 거래를 중단합니다.
GDS Renko Replay Trainer
GDS 렌코 리플레이 트레이너는 MetaTrader 5에서 과거 렌코 차트를 바탕으로 수동 결정을 연습할 수 있는 무료 교육 도구입니다. 과거 기간을 불러와 앞으로 재생하며 가상 매수 또는 매도 주문을 넣을 수 있습니다. 일시 정지하거나, 틱 하나씩 앞으로 이동하거나, 다음 완성된 렌코 브릭으로 이동할 수 있습니다. 각 가상 포지션에는 손절매와 익절매가 설정되어 있으며, 트레이너는 세션 결과를 기록합니다. 이 도구는 과거 매수/매도 틱을 기반으로 고정 크기의 렌코 브릭을 생성하며, 고전적인 2브릭 반전 방식을 따릅니다. 미래의 틱은 표시되는 차트를 그리거나 가상 거래를 실행하는 데 사용되지 않습니다. 매수 거래는 진입 시 호가(Ask)를, 청산 시 매수 호가(Bid)를 사용하며, 매도 거래는 그 반대의 호가를 사용합니다. 패널에 입력된 주문은 다음 재현되는 유효한 틱을 기다립니다. 스톱 및 목표가는 가격 갭을 포함하여 매 틱마다 확인됩니다.