Индикаторы: Parabolic_ZZ - страница 2

 

Вы такие вещи пишите парни,чо задаёшься вопросом-почему мы не млрдеры?Спасибо!Вещь классная,для меня тоже рисовать фибо-убийство.А в таком варианте,ну просто готовая стратегия(добавь канал или линию тренда).

 

ЧТоб не ждать проверки решетов в тему на форуме выкладывал

СОгласен интересный индикатор получается присмотрримся к новой версии

спасибо

 
baltik:

ЧТоб не ждать проверки решетов в тему на форуме выкладывал

СОгласен интересный индикатор получается присмотрримся к новой версии

спасибо

Специально ветку в форуме заводить для выкладывания файла не хотелось бы. Подождем, уже скоро проверка наверное закончится.

Могу сюда исходный код выложить, быстрее будет. :)

 

Вот код с учетом последних пожеланий.

//+------------------------------------------------------------------+
//|                                               Parabolic_ZZ.mq4   |
//|                                       Copyright © 2009, Vic2008  |
//|                                                                  |
//+------------------------------------------------------------------+
#property copyright "Copyright © 2009, Vic2008"
#property link      ""
#include <stdlib.mqh>
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Magenta
//---- input parameters
extern double  SAR_step=0.02;     //Параметры параболика.
extern double  SAR_maximum=0.2;
extern int BarsCount = 500;       //Дистанция в барах для отрисовки индикатора.
extern bool Fibo1_off = False;    //Отключение уровней Fibo.
extern bool Fibo2_off = False;
extern bool Fibo_Absolut_Value = False; //Включение абслютных значений цены на Fibo уровнях.
extern color Label_Color = Gray;
extern color Fibo_Color = Blue;
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexBuffer(0,ExtMapBuffer1);
   SetIndexStyle(0,DRAW_SECTION);
   
   SetIndexBuffer(1,ExtMapBuffer2);
   SetIndexStyle(1,DRAW_SECTION,0,2,Magenta);
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   ObjectsDeleteAll(0,OBJ_ARROW);
   ObjectDelete("FiboZZLast");
   ObjectDelete("FiboZZPrev");
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   //int    counted_bars=IndicatorCounted();
   string txt;
   int w,PosLow,PosHigh;
   double LPic=1000000,HPic=0,price;
   datetime TimeTmp;
   
//----
   ExtMapBuffer1[0]=Close[0];
   ExtMapBuffer2[0]=EMPTY_VALUE;
 for( w=0;w<BarsCount;w++){  
 
   if( w!=0 ){ ExtMapBuffer1[w]=EMPTY_VALUE; ExtMapBuffer2[w]=EMPTY_VALUE; }
     
   if( iSAR(NULL,0,SAR_step,SAR_maximum,w) > Close[w] && LPic>=Low[w] ){ LPic=Low[w]; PosLow=w;  }
   if( iSAR(NULL,0,SAR_step,SAR_maximum,w) < Close[w] && HPic<=High[w] ){ HPic=High[w]; PosHigh=w; }
   
   // H -> L
   if( iSAR(NULL,0,SAR_step,SAR_maximum,(w+1)) > Close[w+1] && iSAR(NULL,0,SAR_step,SAR_maximum,w) < Close[w] && HPic!=0)
   {
        ExtMapBuffer1[PosHigh]=HPic;
        ExtMapBuffer2[PosHigh]=HPic;
        HPic=0; 
   }
   
   // L -> H
   if( iSAR(NULL,0,SAR_step,SAR_maximum,w) < Close[w] && iSAR(NULL,0,SAR_step,SAR_maximum,w+1) > Close[w+1] && LPic!=1000000 ) 
   {
        ExtMapBuffer1[PosLow]=LPic;
        ExtMapBuffer2[PosLow]=LPic;
        LPic=1000000;
   }
   
   
 }   
 if( Fibo1_off ) ObjectDelete("FiboZZLast");
 if( Fibo2_off ) ObjectDelete("FiboZZPrev");
 //Рисуем ценовые метки и уровни FIBO
 int wave_cnt=0;
 for( w=0;w<BarsCount;w++){  
    if( ExtMapBuffer2[w]!=EMPTY_VALUE ){ 
        if( wave_cnt<=3 ){ 
          ObjectDelete("PZZ_"+DoubleToStr( wave_cnt, 0));
          ObjectCreate("PZZ_"+DoubleToStr( wave_cnt, 0) , OBJ_ARROW, 0, Time[w], ExtMapBuffer2[w], Time[w], 0);
          ObjectSet("PZZ_"+DoubleToStr( wave_cnt, 0), OBJPROP_ARROWCODE, SYMBOL_LEFTPRICE );
          ObjectSet("PZZ_"+DoubleToStr( wave_cnt, 0), SYMBOL_LEFTPRICE, ExtMapBuffer2[w]);
          ObjectSet("PZZ_"+DoubleToStr( wave_cnt, 0), OBJPROP_COLOR, Label_Color );
          
          
          if(wave_cnt==1 && Fibo1_off==False ){
            ObjectDelete("FiboZZLast");
            ObjectCreate("FiboZZLast", OBJ_FIBO, 0, TimeTmp, ExtMapBuffer2[w], TimeTmp, price);
            ObjectSet("FiboZZLast", OBJPROP_LEVELCOLOR, Fibo_Color);
            ObjectSet("FiboZZLast", OBJPROP_COLOR, Fibo_Color);
            ObjectSet("FiboZZLast", OBJPROP_RAY , False );
            if( Fibo_Absolut_Value ){
               ObjectSet("FiboZZLast", OBJPROP_FIBOLEVELS, 8);
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+0,0.236); ObjectSetFiboDescription("FiboZZLast",0,"%%23.6  %$");
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+1,0.382); ObjectSetFiboDescription("FiboZZLast",1,"%%38.2  %$");
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+2,0.50);  ObjectSetFiboDescription("FiboZZLast",2,"%%50.0  %$");
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+3,0.618); ObjectSetFiboDescription("FiboZZLast",3,"%%61.8  %$");
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+4,1.0);   ObjectSetFiboDescription("FiboZZLast",4,"%%100.0  %$");
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+5,1.618); ObjectSetFiboDescription("FiboZZLast",5,"%%161.8  %$");
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+6,2.618); ObjectSetFiboDescription("FiboZZLast",6,"%%261.8  %$");
               ObjectSet("FiboZZLast",OBJPROP_FIRSTLEVEL+7,4.236); ObjectSetFiboDescription("FiboZZLast",7,"%%423.6  %$");            
            }
          }
          
          
          if( wave_cnt==2 && Fibo2_off==False ){
            ObjectDelete("FiboZZPrev");
            ObjectCreate("FiboZZPrev", OBJ_FIBO, 0, TimeTmp, ExtMapBuffer2[w], TimeTmp, price);
            ObjectSet("FiboZZPrev", OBJPROP_LEVELCOLOR, Fibo_Color);
            ObjectSet("FiboZZPrev", OBJPROP_COLOR, Fibo_Color);
            ObjectSet("FiboZZPrev", OBJPROP_RAY , False );
            if( Fibo_Absolut_Value ){
               ObjectSet("FiboZZPrev", OBJPROP_FIBOLEVELS, 8);
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+0,0.236); ObjectSetFiboDescription("FiboZZPrev",0,"%%23.6  %$");
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+1,0.382); ObjectSetFiboDescription("FiboZZPrev",1,"%%38.2  %$");
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+2,0.50);  ObjectSetFiboDescription("FiboZZPrev",2,"%%50.0  %$");
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+3,0.618); ObjectSetFiboDescription("FiboZZPrev",3,"%%61.8  %$");
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+4,1.0);   ObjectSetFiboDescription("FiboZZPrev",4,"%%100.0  %$");
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+5,1.618); ObjectSetFiboDescription("FiboZZPrev",5,"%%161.8  %$");
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+6,2.618); ObjectSetFiboDescription("FiboZZPrev",6,"%%261.8  %$");
               ObjectSet("FiboZZPrev",OBJPROP_FIRSTLEVEL+7,4.236); ObjectSetFiboDescription("FiboZZPrev",7,"%%423.6  %$");                        
            }   
          }
          
        }
        wave_cnt++;  
        price=ExtMapBuffer2[w];
        TimeTmp=Time[w];
    }
 }
//----
   return(0);
  }
//+------------------------------------------------------------------+
 

То что надо. Спасибо! 

 
Qwer791:

То что надо. Спасибо!

Пожалуйста! :)

 

Давно искал такой индикатор.В своей стратегии пользуюсь зигзагом а фибо стпрою сам -утомительно особенно когда стараешься по точней.Немного настроил под себя-неплохо совсем неплохо

 
PITER-74 писал(а):

я в восторге от этого индикатора.единственное я хотел уровней добавить да вот не получается самому сделать.если не сложно добавте такие уровни 8.8;14.5;76.4;85.5;92.1 очень понравился .не ожидал что найду то что искал.один параметр только изменить смог.а вот уровни добавить не могу почемуто.ума не хватает .еще попробую сам изменить.но сколько провожусь не знаю.на первый взгляд думал не сложно .просто взял добавил между строк уровни а они почему то не отображаются.

Ответил вам в личку...

 

ВСЕ РАБОТАЕТ.ОГРОМНОЕ СПАСИБО ЗА ВНЕСЕННЫЕ ИЗМЕНЕНИЯ .+100 

 

Индикатор то что надо. Хотел добавить уровень 76,4 не получилось. Подскажите как это сделать? Спасибо.

Причина обращения: