Forex 지그재그 공식
ZigZag - MetaTrader 4 표시기.
지그재그 지표는 차트의 극점을 추적하고 연결하며, 이 지점들 사이의 거리는 가격 척도에 지정된 비율보다 크거나 같습니다.
깊이는 두 번째 최대 (최소) 편차 pips가 이전 것보다 높거나 낮지 않은 최소 막대 량입니다. 즉, 지그재그는 언제나 갈라 지지만 깊이 바 이후의 편차 값 이상으로 수렴 (또는 완전히 함께) 할 수 있습니다. Backstep은 최대 / 최소 사이의 최소 막대 량입니다.
지그재그가 가장 낮은 지점을 포착 한 후 최대 값에서 롤백이 매개 변수를 초과 할 때까지 회전 지점을 검색하기 시작합니다. 롤오버 다운이 매개 변수를 초과하면 두 번째 (이 경우 상단) 점이 캡처 된 것으로 간주되고 ZigZag에서 세 번째 점 (이 경우 하위 점)을 검색하기 시작합니다.
ZigZag에 대한 자세한 설명은 기술 분석 : ZigZag에서 확인할 수 있습니다.
MetaQuotes Software Corp. 에서 러시아어로 번역
지그재그 지표 : 신선한 접근 방식과 새로운 솔루션.
소개.
모든 거래자는 주어진 진폭 또는 더 큰 진폭의 가격 변동 분석을위한 지그재그 지표를 확실히 알고 있습니다. 지그재그 선은 노드가 가격 차트의 최고치와 최저점에 위치하는 파선입니다.
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16의 다양한 변형이 있습니다. 그러나 많은 MQL5 프로그램 개발자들이 자신 만의 '이상적인'ZigZag를 만드는 데 중점을 둡니다. ZigZag 표시기의 주된 단점은 지연, 의심스러운 노드 (외부 바)의 부정확 한 표시 및 불만족스러운 성능입니다.
제 생각에 가장 우아한 ZigZag 구현은 Yuri Kulikov (Yurich)에 의해 제안되었습니다. 게다가, "Layman 's Notes : ZigZag"와 "Show Must Go On, Against ZigZag"와 같은 아주 좋은 MQL4 기사가 있습니다. 주제는 상당히 많은 수의 간행물을 이용할 수있어 실질적으로 탐구 된 것 같습니다. 그러나 그것에 관해 자극하는 것이 있습니다. 이제는 특히 ZigZag 고급 표시기를 만들 가능성에 관심을 기울였습니다.
이 문서에서는 봉투 표시기를 사용하여 고급 ZigZag를 만드는 방법을 설명합니다. 우리는 일련의 Envelopes에 대해 입력 매개 변수의 특정 조합을 찾을 수 있다고 가정합니다. 따라서 대부분의 ZigZag 노드는 Envelopes 밴드의 경계 내에 있습니다.
고급 지그재그 지표를 만드는 방법.
우리는 두 개의 노드, 즉 현재 노드와 예측 노드의 좌표를 찾는 목적을 설정합니다 (그림 1). 현재 노드는 아직 완료되지 않은 좌표이며 좌표는 아직 검색 중이거나 조정 중입니다. 또한, 그것은 항상 현재 (제로) 막대 위에 있습니다. 향후 예측 노드는 다음 ZigZag 노드의 예상 수준을 표시해야합니다.
그림 1. 새로운 ZigZag 노드 예측 : 현재 노드와 다음 노드.
그래서 목표가 정해졌고 우리는 고급 지표를 구축하기위한 기초로서 Moving Average Envelopes를 사용하는 방법에 대한 아이디어를 가지고 있습니다 (그림 2). 지그재그 노드와의 편차가 적은 엔벌 로프를 검색합니다. 지그재그 봉우리와 골짜기에 대한 봉투는 별도로 검색해야한다는 것은 매우 논리적 인 것 같습니다.
그림 2. ZigZag 지표와 Moving Average Envelopes.
예측의 통계적 중요성을 높이려면 하나 또는 10 개의 봉투 표시기를 사용하는 대신 입력 데이터가 다른 100 개 이상의 표시기 풀을 사용해야합니다. 그들은 주요 지표 라인의 평균 기간과 사용 된 가격 (최고치는 높음, 최저점은 낮음)이 다를 수 있습니다. 다음 표기법과 공식을 소개합시다.
ZZ - 지그재그 지표. ENV - 봉투 표시기의 기본 라인 (iMA 표시기와 일치 함). 봉투 (i) - i 표시 줄의 봉투 표시기의 기본 선의 값. ZZ (높음) - ZigZag 피크 값. ZZ (낮음) - 지그재그 여물 값; ENV (High) - ZigZag 피크에 해당하는 Envelopes 표시기의 기본 라인 값. ENV (낮음) - ZigZag 트로프에 해당하는 Envelopes 표시기의 메인 라인 값. n_high - 지그재그 피크의 수; n_low - 지그재그 홈의 수입니다.
우리는 두 가지 지표 풀을 가지고 있습니다 : 하나는 봉우리를위한 것이고 다른 하나는 골짜기를위한 것입니다 (각각 하나에 약 100 개의 지표). 풀의 각 표시기에 대한 Envelopes 표시기의 기본 라인과 ZigZag 노드의 편차를 계산하고 위의 수식을 사용하여 각 풀 표시기에 대한 편차의 산술 평균을 찾습니다. 다음 그림은 하나의 표시기에 대한 주 회선 ENV에서 식별 된 노드 ZZ에 대한 편차의 다이어그램을 보여줍니다.
그림 3. ENV에서 ZZ 노드의 편차 다이어그램.
편차의 산술 평균은 엔벨로프 대역의 주 라인을 이동시켜 엔벨로프 대역을 그려야하는 레벨을 결정하는 데 사용됩니다. 따라서, ZigZag 봉우리의 편차에 대한 산술 평균이 필요하며 상단 표시 줄을 그리거나 골짜기에서 벗어난 산술 평균을 사용하여 봉투 표시기의 하단 선을 그립니다.
특징점을 찾고 지그재그 노드를 예측하는 데 사용할 봉투의 위쪽과 아래쪽 줄입니다. 다시 한번 우리는 Envelopes 표시기 세트로 구성된 봉투 풀에 관심이 있습니다. 각 엔벨로프에 대해 주어진 엔벨로프의 메인 라인에서 ZigZag 노드의 편차에 대한 산술 평균이 계산됩니다. 차트에 풀의 결과 라인 (상단 및 하단 라인)을 플로팅 한 후에 다음을 볼 수 있습니다 :
그림 4. 비행기의 봉투 줄.
위의 그림은 각 라인이 별도의 평면에 있다고 가정하면 모든 차트가 서페이스를 만듭니다. 위의 그림은 각 지표의 가격 차트 평면에 대한 투영만을 보여줍니다. 이 선들의 3D 이미지는 대략 다음과 같습니다.
그림 5. 봉투는 3D로 표시됩니다.
이제 지오메트리에 대한 간단한 교훈을 얻으십시오. 봉투 표시기의 라인 풀이 3D 표면이라고 상상해보십시오. 가격 차트에 수직 인 평면을 가져 와서 현재 (제로) 막대에서 곡면을 자릅니다.
결과적으로 곡선을 나타내는 곡면의 횡단면을 얻습니다 (위의 그림은 곡선이 직선 인 특별한 경우를 보여줍니다). 예측을 수행하려면 계산에서 더 많이 사용될 곡선상의 각 점의 좌표를 갖는 것으로 충분합니다.
다음과 같은 횡단면 특성이 필요합니다 : 횡단면의 무게 중심 (모든 점 값의 산술 평균)뿐만 아니라 최대 및 최소 점. 획득 된 특성 점은 현재 (제로) 막대에 투영되고 관련 데이터는 히스토리에 저장됩니다. 이러한 특성 포인트는 현재 및 다음 ZigZag 노드의 기초가 될 것입니다.
엔벨로프 밴드 검색은 봉우리와 골짜기에 대해 개별적으로 수행되므로 결과적으로 봉우리와 득점을위한 두 개의 횡단면을 가져야합니다.
예보를 얻으려면 가장 가까운 특성 점을 사용합니다. 예를 들어, 지그재그 피크를 검색 할 때 엔벨로프 표시기의 상단 선 표면과 절단 평면이 교차하는 결과로 얻은 단면의 특징점을 취합니다. 반대로, 여물통을 찾으려면 엔벨로프 표시기의 하단 선이 절단면과 교차하는 결과로 얻은 횡단면의 특성 점을 취합니다.
새로운 지표 테스트.
이제 메소드를 정의 했으므로 표시기를 작성해 보겠습니다. 먼저 ZigZag 표시기의 마지막 노드를 찾아 차트에 그립니다. 이를 위해 우리는 당면 과제를 위해 작성된 AdvancedZigZag 클래스를 사용할 것입니다.
총 두 가지 방법이 있습니다.
Count 메서드는 주어진 시간 (바의 수)에 걸친 모든 ZigZag 노드를 찾아 여러 가지 배열로 저장하여 최저점과 최고점을 구분합니다. 이렇게하면 봉투를 분석하고 계산하는 것이 더 쉬워집니다. Read 메서드는 마지막 노드를 찾아 단일 배열에 저장합니다. ZigZag 표시기 시각화에이 방법이 필요합니다.
Yury Kulikov가 작성한 GetExtremums 라이브러리도 노드 검색에 필요합니다.
지표를 전문가 조언자에게 고려해 보겠습니다. 왜 전문가 조언자가 아닌 지표입니까? 이것은 물론 맛의 문제이지만 그것이 나에게 더 효율적으로 보입니다. Expert Advisor의 그래픽 기능은 의심 할 여지없이 약하지만 성능면에서는 동일 기호 표시기가 단일 스트림에서 작동하므로 모든 EA는 자체 스트림으로 작동하므로 성능이 향상됩니다. 코드를 살펴 보겠습니다.
우리는 여기 몇 가지를 명확히 할 필요가있다.
iEnvelopes 표시기는 iMA 표시기로 대체됩니다. 거짓 또는 오도 된 것은 없습니다. 문제는 iEnvelopes의 메인 라인이 iMA와 일치한다는 것입니다. 따라서 이동 평균 표시기를 사용하는 것이 더 편리합니다. 우리는 227 개의 라인으로 구성된 2 개의 이동 평균 풀을 사용하여 총 454 개의 iMA 표시기를 만듭니다! 많든 적습니까? 기본적으로 큰 숫자입니다. 그러나 무엇보다도 먼저 필요에 따라 지표의 수를 변경할 수 있으며 두 번째로 통계가 필요합니다. 12 개의 노드에 대한 봉투 검색의 요점은 무엇입니까? 적어도 백 명이 필요합니다. 표시기 값은 OnInit () 대신 OnTick () 블록에로드됩니다. 데이터로드 블록이 OnInit ()에 배치되면 일부 데이터가로드되기가 늦어 지므로 표시기가 정확하고 완전하게 계산되지 않을 가능성이 높습니다. 계산에 필요한 모든 데이터를 얻은 후에 오류 변수 값이 양수가되고이 블록이 연산에서 제외됩니다.
결과 표시기는 마지막 7 개의 ZigZag 노드를 표시하고 주어진 기록을 통해 다른 모든 노드의 좌표를 계산합니다 (그림 6). 계산은 한 번만 수행되며 계산 된 데이터가 더 사용됩니다. 물론 데이터를 정기적으로 업데이트 할 수 있도록이 방법으로 구현할 수도 있지만이 기사에서는 단일 패스로 유지할 것입니다.
그림 6. 지그재그 지표 (노드 7 개).
또한, 봉투 표시기의 표면 횡단면을 그려 보겠습니다. 이렇게하려면 OnTick () 메서드에 다음을 추가합니다.
봉투 선에 의해 형성된 표면의 횡단면 점을 식별하기 위해 점의 크기가 다양합니다. 봉투 표시기의 기본 선의 평균주기가 길수록 점이 더 커집니다 (그림 7). 또한 횡단면은 다른 방향으로 현재 (제로) 막대를 통과하는 수직 축을 중심으로 회전합니다. 피크는 오른쪽으로 90도, 골은 왼쪽으로 90도입니다.
이제 그들은 가격 차트 비행기에서 볼 수 있습니다. 처음에는 절단면에 놓여 있었고 (그림 5) 관찰 할 수 없었습니다. 그들의 모양에 대해 전혀 알지 못하는 사이에 우리는 단지 그들 자신을 그리기 만 할 수있었습니다. 횡단면 선은 매우 특이한 모양으로 밝혀졌습니다. 이것은 또한 그래픽 분석의 편의를 위해 수행됩니다. 시각적으로 횡단면은 두 개의 비행 혜성과 비슷합니다.
그림 7. 봉투 표시기 풀의 횡단면.
횡단면 특성의 계산으로 진행해 봅시다 : 최대 및 최소, 무게 중심 (산술 평균). 결과 값은 해당 특성의 크기에 해당하는 포인트 크기와 함께 현재 막대에 점으로 표시됩니다. 또한 추가 분석을 위해 기록에 저장합니다. 따라서 기존 코드에 다음을 추가합니다.
이제 그래픽으로 표현했을 때 어떤 모습인지 봅시다.
그림 8. 횡단면 특성 : 최고점과 최저점에 대해 별도로 플롯 된 최대 및 최소 및 무게 중심
고급 ZigZag 노드를 찾고 플롯하여 마지막으로 마무리 작업을 추가하면됩니다. 다음을 추가하여 코드를 향상시킵니다.
따라서 새로운 노드의 위치를 예측하는 새로운 고급 지그재그 지표가 있습니다 (그림 9). 노드 자체는 특성 횡단면 점 (최대, 최소 및 무게 중심)에 있습니다. 지표의 작업 제목은 "두 혜성"입니다.
장래의 다음 노드의 완료 시간은 알려지지 않았습니다. 기본적으로 하나의 노드 좌표 (가격) 만 예측할 수 있습니다.
그림 9. 고급 지그재그 표시기는 현재 노드와 다음 노드를 예측합니다.
개발자를위한 결과 및 권고 분석.
지시자 관측 결과는 다음과 같다.
예측 된 노드들로부터 지그재그 노드 좌표들의 편차는 허용 오차 범위 내에있다. 엄청난 수의 노드가 해당 횡단면의 그림자에 놓여 있습니다. 이것은 단지 정 성적 평가 일뿐입니다. 더 정확한 결과는 미래 기사에서 따를 것이다. 봉투 라인의 횡단면은 시장 행동과 예상 가격 모멘텀을 보여줍니다! 가장 작은 평균 기간 (최소 크기)을 가진 포인트로 구성된 혜성 꼬리에주의하십시오. 그것은 가격의 방향으로 지시된다. 혜성의 꼬리는 가장 복잡한 방법으로 구부러지고 반대 방향으로 돌리면 커질수록 추세가 바뀔 가능성이 커집니다. 단순히 진폭이 다른 여러 시간대의 표시기 동작을 관찰하십시오. 이것은 매우 흥미 롭습니다! 횡단면의 특징적인 점은 가격 움직임에 대한 강한 저항을 나타낼 수있는 선을 형성합니다. 그러므로 그것들은지지와 저항선으로 간주 될 수 있습니다. 횡단면의 무게 중심점이 (그림 9의 최고점과 같이) 앞쪽으로 갈 때 이것은 상승 추세의 존재를 나타내는 것입니다.
따라서 우리가 얻은 결과는 매우 흥미로운 지표로 거래 전략에서 시험 될 수 있습니다!
결론.
이 기사에서 검토 된 ZigZag 지표 노드를 예측하는 방법은 새로운 지표 인 "Two Comets"를 만들 수있었습니다. 고급 ZigZag는 새 노드의 가능한 좌표를 보여줍니다. 이 기사에서 고려한 알고리즘을 사용하면 지그재그 지표가 아니라 동일한 고급 지표를 플로팅 할 수 있습니다. 프랙탈 또는 세마포어 표시기. 초심자 MQL5 프로그래머는 반복 코드의 양을 줄이기 위해 프로그램에서 매크로를 만드는 방법을 흥미롭게 느낄 수 있습니다.
MetaQuotes Software Corp. 에서 러시아어로 번역
Zig Zag Indicator 공식은 무엇이며 어떻게 계산됩니까?
지그재그 지표는 분석가가 보안 트렌드가 언제 바뀌고 있는지 알아내는 데 사용하는 기본 도구입니다. 지원 및 저항 영역을 결정하면 단기 변동을 필터링하면서 가격의 중요한 변화를 파악하여 일상 시장 상황의 소음을 제거하는 데 도움이됩니다. 스윙 최고치와 최저점을 사용하는 지표를 따르는 모든 상인에게 탁월한 도구입니다.
지그재그 지표를 사용하려면 일정 비율의 가격 이동을 설정해야합니다. 지그재그의 기본값은 5 %이지만 9 %로 설정하면 9 % 이상의 가격 변동 만 차트에 표시됩니다. 이렇게하면 가격 변동을 줄이고 분석가가 더 큰 그림을 볼 수 있습니다. 일반적으로 유가 증권의 종가가 사용되며, 주어진 비율로 가격이 반전되는 주어진 차트에 가상 포인트가 배치됩니다. 이 점들은 직선으로 연결되고 필요한 정보가 나타납니다.
지그재그 지표는 과거 데이터를 분석하는 데 효과적인 도구입니다. 오직 사후를 기반으로하며 어떤 식 으로든 예지력이 없습니다. 그것은 과거 유가 증권 가격을 기반으로하며 다음 스윙 최고치와 최저 스윙을 예측할 수 없습니다.
지그재그 지표는 예측 적이 지 않지만 여전히 유용합니다. Elliott 파수와 같은 응용 프로그램과 함께 사용되는 경우가 많습니다. 애널리스트는 역사적 최고치와 최저치를 사용하여 피보나치 예측치와 추적을 식별하는 선을 그릴 수 있습니다. 이중 바닥, 이중 꼭대기 및 머리와 어깨와 같은 차트 패턴도 결정할 수 있습니다.
Zig Zag.
Zig Zag는 과거 실적 추세와 가장 중요한 변화만을 보여줍니다. 지정된 양보다 적은 모든 변경 사항을 필터링합니다. 첫째, Zig Zag 표시기는 가장 중요한 역전을 강조하여 변경 사항을 보는 데 도움이됩니다. 지그재그 차트의 마지막 세그먼트는 가격이 예제 중 하나 일 뿐인 기본 플롯의 변경을 기반으로 변경 될 수 있습니다.
역사적인 패턴을 강조하는 데 사용되는 지그재그 지표를 기반으로 한 거래 시스템을 개발하지 마십시오. 보안 가격이 변경되면 지표의 이전 값이 변경 될 수 있습니다. Zig Zag 표시기는 후속 변경 사항에 따라 값을 조정하기 때문에 이전 가격을 훌륭하게 추정 할 수 있습니다.
지그재그 지표를 측정하려면 가격이 적어도 지정된 금액만큼 역으로 변하면 차트에 가상의 점을 배치하십시오. 가상 점을 연결하려면 직선을 사용하십시오. 그런 다음 일정 금액 이하의 가격 변동은 무시하십시오.
Comments
Post a Comment