안녕하세요, 트레이더 여러분! 오늘은 메타트레이더 5에서 사용할 수 있는 인디케이터, AbsolutelyNoLagLwma를 기반으로 한 UltraAbsolutelyNoLagLwma에 대해 알아보겠습니다. 이 인디케이터는 여러 신호선의 분석을 통해 가격 흐름을 예측하는 데 도움을 줍니다.
신호선 계산 알고리즘: 신호선의 기간 값은 다음과 같은 산술적 진행을 통해 계산됩니다:
SignalPeriod(Number) = StartLength + Number * Step
여기서 Number 변수는 0부터 StepsTotal까지의 범위를 가집니다. 계산된 기간 값은 변수 배열에 추가되고, 인디케이터의 각 틱에서 사용되어 부드럽게 처리된 값을 생성합니다. 이 배열을 기반으로 현재 추세의 방향을 계산하고, 긍정적 및 부정적 추세의 숫자를 찾습니다.
최종적으로 긍정적 및 부정적 추세의 수치는 부드럽게 처리되어 색상 히스토그램으로 표현됩니다. 이 히스토그램은 DRAW_COLOR_HISTOGRAM2 스타일 클래스를 사용하여 표시됩니다. 인디케이터의 추세 방향은 히스토그램의 색상으로 나타나며, 힘은 히스토그램의 너비로 결정됩니다.
추세를 나타내기 위해 사용되는 색상은 다음과 같은 네 가지로 구분됩니다. 히스토그램 값이 과매수/과매도 영역에 들어가지 않으면 인디케이터 색상이 어두워지며, 과매수/과매도 수준을 돌파할 경우 색상이 밝아집니다.
인디케이터의 입력 파라미터
//+----------------------------------------------+ //| 인디케이터 입력 파라미터 | //+----------------------------------------------+ input uint FLength=7; // 부드럽게 처리하는 깊이 input Applied_price_ IPC=PRICE_CLOSE_; // 가격 상수 //---- input Smooth_Method W_Method=MODE_JJMA; // 부드럽게 처리하는 방법 input int StartLength=3; // 초기 부드럽게 처리하는 기간 input int WPhase=100; // 부드럽게 처리하는 파라미터 //---- input uint Step=5; // 기간 변경 단계 input uint StepsTotal=10; // 기간 변경의 수 //---- input Smooth_Method SmoothMethod=MODE_JJMA; // 부드럽게 처리하는 방법 input int SmoothLength=3; // 부드럽게 처리하는 깊이 input int SmoothPhase=100; // 부드럽게 처리하는 파라미터 //---- input uint UpLevel=80; // 과매수 수준(%) input uint DnLevel=20; // 과매도 수준(%) input color UpLevelsColor=Blue; // 과매수 색상 input color DnLevelsColor=Blue; // 과매도 색상 input STYLE Levelstyle=DASH_; // 수준 스타일 input WIDTH LevelsWidth=Width_1; // 수준 두께
부드럽게 처리하는 알고리즘은 총 10가지 버전 중에서 선택할 수 있습니다:
- SMA - 단순 이동 평균;
- EMA - 지수 이동 평균;
- SMMA - 부드러운 이동 평균;
- LWMA - 선형 가중 이동 평균;
- JJMA - 적응형 평균 JMA;
- JurX - 초선형 평균;
- ParMA - 포물선 부드럽게 하기;
- T3 - 틸슨의 다중 지수 부드럽게 하기;
- VIDYA - Tushar Chande 알고리즘을 사용한 부드럽게 하기;
- AMA - Perry Kaufman의 알고리즘을 사용한 부드럽게 하기.
각 부드럽게 처리하는 알고리즘의 Phase 유형 파라미터는 의미가 다릅니다. JMA의 경우 외부 Phase 변수가 -100에서 +100으로 변할 수 있습니다. T3에서는 부드럽게 처리하는 비율이 100을 곱해 시각적으로 더 잘 보이도록 하며, VIDYA는 CMO 오실레이터 기간을 사용하고, AMA는 느린 EMA 기간을 나타냅니다. 다른 알고리즘에서는 이 파라미터가 평균에 영향을 미치지 않습니다. AMA의 경우 빠른 EMA 기간은 기본값이 2로 고정되어 있으며, 비율도 2로 설정되어 있습니다.
이 인디케이터는 SmoothAlgorithms.mqh 라이브러리 클래스를 사용합니다(이를 <terminal_data_folder>\MQL5\Include에 복사하세요). 클래스의 사용법은 "중간 계산을 위한 가격 시리즈 평균화" 기사에 자세히 설명되어 있습니다.

Fig 1. UltraAbsolutelyNoLagLwma 인디케이터