← К каталогу
Исходный код · ID 3271

ArshadFX_BarHL_Objects

hl_objectsi my favorite.mq5
Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Данный файл является пользовательским индикатором для MetaTrader 5, который отображает на графике ценовые уровни, построенные по максимумам и минимумам баров с разных таймфреймов. Индикатор работает в окне графика и не выводит отдельного подокна.

Пользователь может включать или отключать отображение уровней для каждого из пяти таймфреймов: часового (H1), четырёхчасового (H4), дневного (D1), недельного (W1) и месячного (M1). Для каждого таймфрейма задаётся количество отображаемых последних баров, по которым строятся линии.

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

Настройки программы

НастройкаОписание
H1 Часовой таймфрейм — Включает или отключает отображение уровней часового таймфрейма.
ObjH1 Количество объектов H1 — Количество последних баров часового таймфрейма, по которым строятся линии.
H4 Четырёхчасовой таймфрейм — Включает или отключает отображение уровней четырёхчасового таймфрейма.
ObjH4 Количество объектов H4 — Количество последних баров четырёхчасового таймфрейма, по которым строятся линии.
D1 Дневной таймфрейм — Включает или отключает отображение уровней дневного таймфрейма.
ObjD1 Количество объектов D1 — Количество последних баров дневного таймфрейма, по которым строятся линии.
W1 Недельный таймфрейм — Включает или отключает отображение уровней недельного таймфрейма.
ObjW1 Количество объектов W1 — Количество последних баров недельного таймфрейма, по которым строятся линии.
M1 Месячный таймфрейм — Включает или отключает отображение уровней месячного таймфрейма.
ObjM1 Количество объектов M1 — Количество последних баров месячного таймфрейма, по которым строятся линии.
Colors Цвет и отрисовка — Текстовый параметр, задающий цвет и режим отрисовки. В коде не используется.
BarsHigh Цвет максимумов — Цвет линий, отображающих максимумы баров выбранных таймфреймов.
BarsLow Цвет минимумов — Цвет линий, отображающих минимумы баров выбранных таймфреймов.
0=Nolable, 1=Bar'sIndexNo, 2=Bar'sIndexNo + Price (LineLable) Подписи линий — Задаёт тип подписи к линиям: 0 — без подписи, 1 — номер бара, 2 — номер бара и цена.
0= On bars as normal SupportResistance line, 1= Right side of chart (H1Position) Положение H1 — Определяет положение линий часового таймфрейма: на барах или справа от графика.
H4Position Положение H4 — Определяет положение линий четырёхчасового таймфрейма: на барах или справа от графика.
D1Position Положение D1 — Определяет положение линий дневного таймфрейма: на барах или справа от графика.
W1Position Положение W1 — Определяет положение линий недельного таймфрейма: на барах или справа от графика.
M1Position Положение M1 — Определяет положение линий месячного таймфрейма: на барах или справа от графика.
Получить полный код

Поиск по коду файла

#property indicator_chart_window
extern bool    H1          = 0;
extern int     ObjH1       = 2;
extern bool    H4          = 0;
extern int     ObjH4       = 2;
extern bool    D1          = 1; 
extern int     ObjD1       = 1;
extern bool    W1          = 1; 
extern int     ObjW1       = 1;
extern bool    M1          = 1; 
extern int     ObjM1       = 1;
extern string  Colors="Select Color & Drawing";
extern color   BarsHigh    = Green;
extern color   BarsLow     = Red;
extern int     LineLable   = 2;  // 0=Nolable, 1=Bar'sIndexNo, 2=Bar'sIndexNo + Price
extern bool    H1Position  = 0;  // 0= On bars as normal SupportResistance line, 1= Right side of chart
extern bool    H4Position  = 0;
extern bool    D1Position  = 0;
extern bool    W1Position  = 0;
extern bool    M1Position  = 0;

double H1h[], H1l[], H4h[], H4l[], D1h[], D1l[], W1h[], W1l[], M1h[], M1l[];
datetime H1ts[], H1te[], H4ts[], H4te[], D1ts[], D1te[], W1ts[], W1te[], M1ts[], M1te[];
int MaxObj=0; // Maximum Objects

int init()  {
      // код доступен только после оплаты
   }
int deinit(){rLines(MaxObj+1); Comment("");  return(0);}

int start()
   {
      // код доступен только после оплаты
   }

void dH1(int Obj) // Draw Lines 1Hour
   {
   for (int x=1; x<Obj; x++)
      {
      ObjectDelete("H1_High_"+x);   // High_Hour_1
      if (H1Position){ObjectCreate("H1_High_"+x,OBJ_TREND,0,Time[0]+(Time[0]-Time[5]),H1h[x],Time[0]+(Time[0]-Time[25]),H1h[x],0);}
                     else {ObjectCreate("H1_High_"+x,OBJ_TREND,0,H1ts[x],H1h[x],H1te[x],H1h[x],0);}
      ObjectSet("H1_High_"+x,OBJPROP_RAY,0);  ObjectSet("H1_High_"+x,OBJPROP_COLOR,BarsHigh);
      ObjectSet("H1_High_"+x,OBJPROP_STYLE,2);
      if (LineLable==1){ObjectSetText("H1_High_"+x,"H1_High_"+x);}
      if (LineLable==2){ObjectSetText("H1_High_"+x,"H1_High_"+x+"    "+DoubleToStr(H1h[1],Digits),6);}

      ObjectDelete("H1_Low_"+x);   // Low_Hour_1
      if (H1Position){ObjectCreate("H1_Low_"+x,OBJ_TREND,0,Time[0]+(Time[0]-Time[5]),H1l[x],Time[0]+(Time[0]-Time[25]),H1l[x],0);}
                     else {ObjectCreate("H1_Low_"+x,OBJ_TREND,0,H1ts[x],H1l[x],H1te[x],H1l[x],0);}
      ObjectSet("H1_Low_"+x,OBJPROP_RAY,0);  ObjectSet("H1_Low_"+x,OBJPROP_COLOR,BarsLow);
      ObjectSet("H1_Low_"+x,OBJPROP_STYLE,2);
      if (LineLable==1){ObjectSetText("H1_Low_"+x,"H1_Low_"+x);}
      if (LineLable==2){ObjectSetText("H1_Low_"+x,"H1_Low_"+x+"    "+DoubleToStr(H1l[1],Digits),6);}
      }
   }

void dH4(int Obj) // Draw Lines 4Hour
   {
   for (int x=1; x<Obj; x++)
      {
      ObjectDelete("H4_High_"+x);   // High_Hour_1
      if (H4Position){ObjectCreate("H4_High_"+x,OBJ_TREND,0,Time[0]+(Time[0]-Time[5]),H4h[x],Time[0]+(Time[0]-Time[25]),H4h[x],0);}
                     else {ObjectCreate("H4_High_"+x,OBJ_TREND,0,H4ts[x],H4h[x],H4te[x],H4h[x],0);}
      ObjectSet("H4_High_"+x,OBJPROP_RAY,0);  ObjectSet("H4_High_"+x,OBJPROP_COLOR,BarsHigh);
      ObjectSet("H4_High_"+x,OBJPROP_WIDTH,1);
      if (LineLable==1){ObjectSetText("H4_High_"+x,"H4_High_"+x);}
      if (LineLable==2){ObjectSetText("H4_High_"+x,"H4_High_"+x+"    "+DoubleToStr(H4h[1],Digits),6);}

      ObjectDelete("H4_Low_"+x);   // Low_Hour_1
      if (H4Position){ObjectCreate("H4_Low_"+x,OBJ_TREND,0,Time[0]+(Time[0

Показано первые 50% кода (символов: 7976)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
797,60₽ ≈ $9.75