Insid_Bar для МТ5

Искал открытый индикатор внутреннего бара для МТ5, выбор оказался не очень. Пришлось самому переделывать какой то похожий индюк. Вот решил поделится, вдруг кому понадобится.

Insid_Bar.mq 5 (0 Kb)
  • +7
  • Просмотров: 3314
  • 26 января 2019, 12:41
  • s22aa
Понравилcя материал? Не забудьте поставить плюс и поделиться в социальной сети!

Следующая запись в моем блоге  
Продолжение индикатора Insid_Bar
24 апреля 2020

Брокер для ваших роботов, 15 лет на рынке

Комментарии (6)

+
+1
Поспешил выложить, а в тестере прогнать не догадался, пришлось переписывать, а изменить, что то в блоге не получается, поэтому просто вставлю здесь новый код.

//+------------------------------------------------------------------+
//|                                                    Insid_Bar.mq5 |
//|                        Copyright 2018, MetaQuotes Software Corp. |
//|                              https://www.mql5.com/ru/users/s22aa |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018, MetaQuotes Software Corp."
#property link      "https://www.mql5.com"
#property version   "1.00"
#property indicator_chart_window

#property indicator_buffers 2  
#property indicator_plots 2   

#property indicator_type1 DRAW_ARROW  
#property indicator_type2 DRAW_ARROW  

#property indicator_color1 clrRed  
#property indicator_color2 clrBlue   

#property indicator_width1  2     
#property indicator_width2  2

double BuffUp[];    
double BuffDn[];    

input int  ArrowShift = 0;  //   оступ точек от свечи, по высоте
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int OnInit()
{
      SetIndexBuffer(0,BuffUp, INDICATOR_DATA); 
      SetIndexBuffer(1,BuffDn, INDICATOR_DATA);
    
      IndicatorSetString (INDICATOR_SHORTNAME,"Insid_Bar"); 
      IndicatorSetInteger(INDICATOR_DIGITS, _Digits); 
	  
      PlotIndexSetInteger(0, PLOT_ARROW, 159);        
      PlotIndexSetInteger(1, PLOT_ARROW, 159);
      
      PlotIndexSetInteger(0, PLOT_ARROW_SHIFT, ArrowShift); 
      PlotIndexSetInteger(1, PLOT_ARROW_SHIFT, -ArrowShift);
   
      PlotIndexSetDouble(0, PLOT_EMPTY_VALUE, EMPTY_VALUE);
      PlotIndexSetDouble(1, PLOT_EMPTY_VALUE, EMPTY_VALUE);  
    
    return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int OnCalculate(const int rates_total,
                const int prev_calculated,
                const datetime &time[],
                const double &open[],
                const double &high[],
                const double &low[],
                const double &close[],
                const long &tick_volume[],
                const long &volume[],
                const int &spread[])
{
 int i, limit;
   
   if (rates_total < 2)
      return(0);
     
   if (prev_calculated < 3)
   {
      limit = 2;
      
      ArrayInitialize(BuffDn, EMPTY_VALUE); 
      ArrayInitialize(BuffUp, EMPTY_VALUE);
      
   } else limit = rates_total - 2;
   
   for(i = limit; i<rates_total-1; i++)
   {
      if (high[i] <= high[i-1] && low[i] >= low[i-1])
      {
         BuffUp[i-1] = low[i-1]; BuffDn[i-1] = high[i-1];
      }
      else
      {
         BuffUp[i] = EMPTY_VALUE;
         BuffDn[i] = EMPTY_VALUE;
      }
      
   }

   return(rates_total);
}

 

Редактирован: 27 января 2019, 13:42
avatar

  7  s22aa Автор Сообщений: 25 - Александр

  • 27 января 2019, 10:01
+
0
;) смож сделать так, что бы по макс-мин бара рисовалась линия и в момент пробития баром и закрытия бара выше линии с начального бара больше не рисовались но и не пропадали???
avatar

  11  FOTON Сообщений: 683 - Иван

  • 27 января 2019, 14:14
+
0
Не знаю, но попробую. Только в будни у меня времени нет, а выходные кончились( .
avatar

  7  s22aa Автор Сообщений: 25 - Александр

  • 27 января 2019, 21:18
+
0
окей… прост ета тема будет визуально более восприимчива к пониманию…
ладн, ждём*hi* 
avatar

  11  FOTON Сообщений: 683 - Иван

  • 27 января 2019, 21:23
+
0
Вот такой есть, только с закрытым кодом PZ_InsideBars
avatar

  7  s22aa Автор Сообщений: 25 - Александр

  • 28 января 2019, 07:30
+
0
Сейчас проверил PZ_InsideBars своим индюком и оказалось, что PZ_InsideBars показывает далеко не все внутренние бары на графике( 
Редактирован: 28 января 2019, 10:29
avatar

  7  s22aa Автор Сообщений: 25 - Александр

  • 28 января 2019, 10:29

Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий