Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1136

 
Iurii Tokman:

Вот код который рисует линию на М5:

      int Price_high  = iHighest(Symbol(), 0, MODE_HIGH, 11, 1);
       int Price_low   = iLowest(Symbol(), 0, MODE_LOW, 11, 1);
            
       ObjectCreate("TrendLine", OBJ_TREND, 0, Time[11], NormalizeDouble( (High[Price_high] + Low[Price_low])/2, Digits), Time[1], 
                     NormalizeDouble( (High[Price_high] + Low[Price_low])/2, Digits));

Хотелось бы, что бы в начале каждого часа на М5 рисовалась такая линия, которая с предыдущими не будет связана. Т.е. просто горизонталь, а не ломаная. Линия - это средняя цена за прошедший час.

А если у этой линии убрать свойство *луч*, то вообще будет супер.

 
      
int Price_high  = iHighest(Symbol(), 0, MODE_HIGH, 11, 1);
int Price_low   = iLowest(Symbol(), 0, MODE_LOW, 11, 1);

if(!NewBar(PERIOD_H1)) return;
            
ObjectCreate("TrendLine", OBJ_TREND, 0, Time[11], NormalizeDouble( (High[Price_high] + Low[Price_low])/2, Digits), Time[1], 
              NormalizeDouble( (High[Price_high] + Low[Price_low])/2, Digits));


//---
//---
bool NewBar(ENUM_TIMEFRAMES TF = 0)
  {
   static datetime NewTime=0;
   if(NewTime!=iTime(Symbol(),TF,0))
     {
      NewTime=iTime(Symbol(),TF,0);
      return(true);
     }
   return(false);
  }
//----
 
Iurii Tokman:

Не работает. Рисует только одну линию при старте и всё.

void OnTick()
{
  
int Price_high  = iHighest(Symbol(), 0, MODE_HIGH, 11, 1);
int Price_low   = iLowest(Symbol(), 0, MODE_LOW, 11, 1);

if(!NewBar(PERIOD_H1)) return;
            
ObjectCreate("TrendLine", OBJ_TREND, 0, Time[11], NormalizeDouble( (High[Price_high] + Low[Price_low])/2, Digits), Time[1], 
              NormalizeDouble( (High[Price_high] + Low[Price_low])/2, Digits));

}
//+------------------------------------------------------------------+ 
//---
bool NewBar(ENUM_TIMEFRAMES TF = 0)
  {
   static datetime NewTime=0;
   if(NewTime!=iTime(Symbol(),TF,0))
     {
      NewTime=iTime(Symbol(),TF,0);
      return(true);
     }
   return(false);
  }
//----
//+------------------------------------------------------------------+
 
Snajper007:

Не работает. Рисует только одну линию при старте и всё.

а нужно сколько ?

 
Iurii Tokman:

а нужно сколько ?

Хотелось бы, что бы в начале каждого часа на М5 рисовалась такая линия, которая с предыдущими не будет связана. Т.е. просто горизонталь, а не ломаная. Линия - это средняя цена за прошедший час.
 
Snajper007:
Хотелось бы, что бы в начале каждого часа на М5 рисовалась такая линия, которая с предыдущими не будет связана. Т.е. просто горизонталь, а не ломаная. Линия - это средняя цена за прошедший час.

середина бара H1 ?

 
Iurii Tokman:

середина бара H1 ?

Да, только на М5.
 
Snajper007:
Да, только на М5.

нарисуйте картинку как должно быть, и не с одной линией

 
Iurii Tokman:

нарисуйте картинку как должно быть, и не с одной линией

Вот
Файлы:
 
Snajper007:
***

Кстати, а зачем рисовать именно графическим объектом "Горизонтальная линия"? Может лучше это сделать индикатором и стилем DRAW_ARROW?

Что вроде вот такого отображения:

Resistance and Support 2

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