Boa_ZigZag_Arrows_Duplex Indicator For MT5

Boa_ZigZag_Arrows_Duplex Indicator For MT5

L' Boa_ZigZag_Arrows_Duplex Indicator For MT5 funziona in base all'indicatore a zigzag e ai punti critici di rotazione. Dopo aver installato questo indicatore nel grafico dei prezzi, noterai dei punti colorati sopra e sotto i candelabri. La formazione dei punti rossi o del cerchio sopra il candeliere significa che gli orsi abbasseranno il prezzo nel prossimo futuro. Al contrario, la formazione dei punti blu sotto il candeliere significa che i compratori spingeranno il prezzo più in alto. Puoi anche trovare il ritracciamento minore del prezzo con l'aiuto di piccoli punti di colore marrone e blu. Puntini di colore marrone che si formano sopra il candeliere indicano che il ritracciamento ribassista avrà luogo. Al contrario, quando vedi un punto blu, potresti vedere un ritracciamento rialzista nel prezzo. Impara a utilizzare questo strumento nell'account demo in modo da poter realizzare un profitto decente senza perdere troppi soldi.

FREE Boa_ZigZag_Arrows_Duplex Indicator

Download the FREE Boa_ZigZag_Arrows_Duplex Indicator for MT5.

To receive my email 100% sure: 
Put my email on your whitelist!

 

Partially Automated Trading Besides Your Day Job

Alerts In Real-Time When Divergences Occur

 

Installazione della Boa_ZigZag_Arrows_Duplex Indicator For MT5

Dopo aver scaricato l'indicatore tramite il modulo sopra è necessario decomprimere il file zip. Quindi è necessario copiare il file Boa_ZigZag_Arrows_Duplex.mq5 nella cartella MQL5Indicators dell'installazione di MT5 . Dopodiché, riavvia MT5 e sarai in grado di vedere l'indicatore nell'elenco degli indicatori.

Parametri della Boa_ZigZag_Arrows_Duplex Indicator For MT5

Boa_ZigZag_Arrows_Duplex Indicator For MT5 ha i parametri 2 da configurare.

input uint SlowLength=42; // ?5@8>4 <54;5==>3> 7837030
input uint FastLength=6; // ?5@8>4 1KAB@>3> 7837030

Buffer della Boa_ZigZag_Arrows_Duplex Indicator For MT5

Boa_ZigZag_Arrows_Duplex Indicator For MT5 fornisce buffer 4 .

SetIndexBuffer(0,ZigzagLawnBuffer1,INDICATOR_DATA);
SetIndexBuffer(1,ZigzagPeakBuffer1,INDICATOR_DATA);
SetIndexBuffer(2,ZigzagLawnBuffer2,INDICATOR_DATA);
SetIndexBuffer(3,ZigzagPeakBuffer2,INDICATOR_DATA);

Parti principali del codice

int OnCalculate(const int rates_total,    // : gt ;8G5AB2 gt  8AB gt @88 2 10@0E =0 B5:CI5 lt  B8:5
                const int prev_calculated,// : gt ;8G5AB2 gt  8AB gt @88 2 10@0E =0 ?@54K4CI5 lt  B8:5
                const datetime &time[],
                const double &open[],
                const double& high[],     // F5= gt 2 gt 9  lt 0AA82  lt 0:A8 lt C lt  gt 2 F5=K 4;O @0AG5B0 8=48:0B gt @0
                const double& low[],      // F5= gt 2 gt 9  lt 0AA82  lt 8=8 lt C lt  gt 2 F5=K 4;O @0AG5B0 8=48:0B gt @0
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
  {
//---- ?@ gt 25@:0 : gt ;8G5AB20 10@ gt 2 =0 4 gt AB0B gt G= gt ABL 4;O @0AG5B0
   if(rates_total lt min_rates_total) return(0);

//----  gt 1JO2;5=8O ; gt :0;L=KE ?5@5 lt 5==KE 
   int limit,climit,bar;
   double HH,LL,BH,BL;
   int zu,zd,Swing,Swing_n;
//----

   limit=rates_total-min_rates_total; // AB0@B gt 2K9 = gt  lt 5@ 4;O @0AGQB0 2A5E 10@ gt 2
   climit=limit; // AB0@B gt 2K9 = gt  lt 5@ 4;O @0A:@0A:8 8=48:0B gt @0

//---- 8=45:A0F8O M;5 lt 5=B gt 2 2  lt 0AA820E :0: 2 B09 lt A5@8OE  
   ArraySetAsSeries(high,true);
   ArraySetAsSeries(low,true);
//----   
   Swing=0;
   Swing_n=0;
   zu=limit;
   zd=limit;
   BH=high[limit];
   BL=low[limit];
//---- &8:; @0AGQB0  lt 54;5== gt 3 gt  7837030
   for(bar=limit; bar gt =0 && !IsStopped(); bar--)
     {
      ZigzagLawnBuffer1[bar]=NULL;
      ZigzagPeakBuffer1[bar]=NULL;

      HH=high[ArrayMaximum(high,bar+1,SlowLength)];
      LL=low[ArrayMinimum(low,bar+1,SlowLength)];
      if(low[bar] lt LL && high[bar] gt HH)
        {
         Swing=2;
         if(Swing_n== 1) zu=bar+1;
         if(Swing_n==-1) zd=bar+1;
        }
      else
        {
         if(low [bar] lt LL) Swing=-1;
         if(high[bar] gt HH) Swing= 1;
        }
      if(Swing!=Swing_n && Swing_n!=0)
        {
         if(Swing==2) {Swing=-Swing_n; BH=high[bar]; BL=low[bar];}
         if(Swing== 1)
           {            
            if(BL==low[zd]) ZigzagLawnBuffer1[zd]=BL;
            else ZigzagLawnBuffer1[zd-1]=BL;
           }
         if(Swing==-1)
           {
            if(BH==high[zu]) ZigzagPeakBuffer1[zu]=BH;
            else ZigzagPeakBuffer1[zu-1]=BH;
           }
         BH=high[bar];
         BL=low [bar];
        }
      if(Swing== 1) {if(high[bar] gt =BH) {BH=high[bar]; zu=bar;}}
      if(Swing==-1) {if(low [bar] lt =BL) {BL=low [bar]; zd=bar;}}
      Swing_n=Swing;
     }
//----   
   Swing=0;
   Swing_n=0;
   zu=limit;
   zd=limit;
   BH=high[limit];
   BL=low[limit];
//---- &8:; @0AGQB0 1KAB@ gt 3 gt  7837030
   for(bar=limit; bar gt =0 && !IsStopped(); bar--)
     {
      ZigzagLawnBuffer2[bar]=NULL;
      ZigzagPeakBuffer2[bar]=NULL;

      HH=high[ArrayMaximum(high,bar+1,FastLength)];
      LL=low[ArrayMinimum(low,bar+1,FastLength)];
      if(low[bar] lt LL && high[bar] gt HH)
        {
         Swing=2;
         if(Swing_n== 1) zu=bar+1;
         if(Swing_n==-1) zd=bar+1;
        }
      else
        {
         if(low [bar] lt LL) Swing=-1;
         if(high[bar] gt HH) Swing= 1;
        }
      if(Swing!=Swing_n && Swing_n!=0)
        {
         if(Swing==2) {Swing=-Swing_n; BH=high[bar]; BL=low[bar];}
         if(Swing== 1)
           {            
            if(BL==low[zd]) ZigzagLawnBuffer2[zd]=BL;
            else ZigzagLawnBuffer2[zd-1]=BL;
           }
         if(Swing==-1)
           {
            if(BH==high[zu]) ZigzagPeakBuffer2[zu]=BH;
            else ZigzagPeakBuffer2[zu-1]=BH;
           }
         BH=high[bar];
         BL=low [bar];
        }
      if(Swing== 1) {if(high[bar] gt =BH) {BH=high[bar]; zu=bar;}}
      if(Swing==-1) {if(low [bar] lt =BL) {BL=low [bar]; zd=bar;}}
      Swing_n=Swing;
     }
//----     
   return(rates_total);
  }
//+------------------------------------------------------------------+

 

About Me

I'm Mike Semlitsch the owner of PerfectTrendSystem.com. My trading career started in 2007. Since 2013 I have helped thousands of traders to take their trading to the next level. Many of them are now constantly profitable traders. 

The following performance was achieved by me while trading live in front of hundreds of my clients:

Connect With Me:  

Results From 5 Months!
This service starts soon! Be the first who get's notified when it begins!

This FREE Indicator Can Transform
Your Trading!

FREE Indicator + Telegram Group


Request the Ultimate Double Top/Bottom Indicator which is used by 10,000+ traders.