ZigZags Shepherds

 
Dear Assembly! Please don't judge strictly, be a bit lenient, it's mostly a severe scholarly carriage and I'm a modest housewife with some questions about Pastukhov's thesis. Please respond to those who are interested in zigzagging.
 

There was a thread like this here once upon a time https://www.mql5.com/ru/forum/105771

и

https://www.mql5.com/ru/forum/105771

are all about H volatility. Is anyone else interested in this?

ФР Н-волатильность
ФР Н-волатильность
  • 2007.11.14
  • www.mql5.com
Эта тема является продолжением разговора о каги разбиениях...
 

Диссертация Пастухова https://smart-lab.ru/tag/%D0%BF%D0%B0%D1%81%D1%82%D1%83%D1%85%D0%BE%D0%B2/


 

The question concerns page 81. The formulas are slightly out of place, where the brackets, Kagi(H) is approximately 2, Kagi2(H) is approximately 5, Renko(H) is approximately 2 and Renko2(H) is approximately 6. It's a bit confusing with these numbers. The construction of Kagi is more sensitive than Renko, and here everything equates to a 2, and then some doubts.

Let me remind a bit the case without arbitrage market we have when constructing the zigzag Kagi and Renko H-volatility =2, flat<2, trend>2. This is the same as in the case of Hurst index.

 
Ohhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh what is that ?
 

I certainly appreciate the pursuit of knowledge, but I only have two questions

1) what the hell is this thing?

2) what is it for?

 
Михаил Билан:
hohohohohoho((( what is this ?
Mickey Moose:

I certainly appreciate the pursuit of knowledge, but I only have two questions

1) what the hell is this thing?

2) what is it for?

Well, it should be understood that the humble housewife is talking to a learned husband, not to a lunatic like you).

 

There is also a similar publication here https://www.argolab.net/izuchaem-zigzagi.html

This is actually the same thing, only the formula has been slightly modified and the concept of overshoot has been introduced. The principle is the same.

All the zigzags are used by threshold value, as well as in Pastukhov's thesis.

In the case of Renko zigzags, which are less sensitive than Kagi, the probability distribution of the occurrence of H-segments is in the power of two, i.e.

1H-50%, 2H-25%, 3H-12,5%, etc. Hence non-arbitrariness is obtained, i.e. on average on SB we have 2 segments On BP at rather large sample we get the same figures, i.e. we have a little more than 2 or a little less than 2.

I am interested in Kagi zigzag distribution, can someone tell me, because there is no 2.

Изучаем ЗигЗаги
Изучаем ЗигЗаги
  • www.argolab.net
Давайте начнем наш сегодняшний разговор со всем нам знакомого индикатора ЗигЗаг, который входит в стандартный комплект поставки терминала МТ4. Реализация индикатора из стандартной поставки далеко не самая лучшая и уж точно не самая быстрая, но нам сейчас это неважно. Давайте сначала вспомним, что представляет собой ЗигЗаг. Это не что иное как...
 
Really, thank you very much for responding, I would like to hear a few words on the subject
 

Example of building a Kagi zigzag

https://www.mql5.com/ru/code/1027

and this is a Renko zigzag,if(High[i]>zzH[last] add + depth ,

      } else //direction<0
      {
         if(Low[i]<zzL[last] добавить -depth
//+------------------------------------------------------------------+
//|                                                       FastZZ.mq4 |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, Yurich"
#property link      "https://login.mql5.com/ru/users/Yurich"
//---
#property indicator_chart_window
#property indicator_buffers 4
#property indicator_color1 Red
#property indicator_color2 Red
#property indicator_color3 Gold
#property indicator_color4 DodgerBlue

#property indicator_width3 3
#property indicator_width4 3

//--- input parameters
extern int  Depth    = 300;
extern bool AllPoint = true;
//---
double zzH[], zzL[];
double depth;
int last, direction, pbars;
datetime lastbar;

double ArrUp[];
double ArrDn[];
//+------------------------------------------------------------------+
int init()
{
//---- indicators
   SetIndexBuffer(0,zzH);
   SetIndexBuffer(1,zzL);
   SetIndexBuffer(2,ArrUp);
   SetIndexBuffer(3,ArrDn);
   
   SetIndexStyle(0,DRAW_ZIGZAG);
   SetIndexStyle(1,DRAW_ZIGZAG);
   SetIndexStyle(2,DRAW_ARROW);
   SetIndexStyle(3,DRAW_ARROW);
   
   SetIndexArrow(2,159);
   SetIndexArrow(3,159);
   
   SetIndexEmptyValue(0,0.0);
   SetIndexEmptyValue(1,0.0);
   IndicatorDigits(Digits);
//----
   depth=Depth*Point;
   direction=1;
   last=0;
   pbars=0;
   lastbar=0;
   return(0);
}
//+------------------------------------------------------------------+
int start()
{
   int limit=Bars-IndicatorCounted()-1;
   if(lastbar!=Time[0])
   {
      lastbar=Time[0];
      last++;
   }
   if(MathAbs(Bars-pbars)>1) { last=Bars-1; limit=last;}
   pbars=Bars;
   //---
   for(int i=limit; i>0; i--)
   {
      bool set=false;
      zzL[i]=0;
      zzH[i]=0;
      ArrUp[i]=EMPTY_VALUE;
      ArrDn[i]=EMPTY_VALUE;
      //---
      if(direction>0)
      {
         if(High[i]>zzH[last]+depth)
         {
            zzH[last]=0;
            zzH[i]=High[i];
            if(AllPoint) ArrUp[i]=High[i];
            
            if(Low[i]<High[last]-depth)
            {
               if(Open[i]<Close[i])
                {
                  zzH[last]=High[last]; 
                  ArrUp[i]=High[i];
                }else direction=-1;
               zzL[i]=Low[i];
               ArrDn[i]=Low[i];
            }
            last=i;
            set=true;
         }
         if(Low[i]<zzH[last]-depth && (!set || Open[i]>Close[i]))
         {
            zzL[i]=Low[i];
            ArrDn[i]=Low[i];
            
            if(High[i]>zzL[i]+depth && Open[i]<Close[i])
             {
               zzH[i]=High[i];
               ArrUp[i]=High[i]; 
             }else direction=-1;
            last=i;
         }
      } else //direction<0
      {
         if(Low[i]<zzL[last]-depth)
         {
            zzL[last]=0;
            zzL[i]=Low[i];
            if(AllPoint) ArrDn[i]=Low[i];
            
            if(High[i]>Low[last]+depth)
            {
               if(Open[i]>Close[i])
                {
                  zzL[last]=Low[last]; 
                  ArrDn[i]=Low[i];
                }else direction=1;
               zzH[i]=High[i];
               ArrUp[i]=High[i];
            }
            last=i;
            set=true;
         }
         if(High[i]>zzL[last]+depth && (!set || Open[i]<Close[i]))
         {
            zzH[i]=High[i];
            ArrUp[i]=High[i];
            
            if(Low[i]<zzH[i]-depth && Open[i]>Close[i])
             {
               zzL[i]=Low[i]; 
               ArrDn[i]=Low[i];
             }else direction=1;
            last=i;
         }
      }
   }
//----
   zzH[0]=0;
   zzL[0]=0;
//----
   return(0);
}
//+------------------------------------------------------------------+
Быстрый ЗигЗаг
Быстрый ЗигЗаг
  • votes: 25
  • 2012.08.30
  • Yury Kulikov
  • www.mql5.com
Самый простой и самый быстрый зигзаг.
 
Михаил Билан:
hohohohohoho((( what is that ?

This is "Woe of Wit" in the highest degree of purification. A purging of the connection to reality.

Reason: