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

MTF_HI_LOW

###daily-weekly-monthly hi-low.mq4
Вы автор или правообладатель?

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

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

О программе

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

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

Текстовые метки на графике показывают точные значения текущих и предыдущих уровней High/Low. Количество отображаемых исторических периодов задаётся параметром. Индикатор работает в окне графика и перерисовывает объекты при каждом обновлении.

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

НастройкаОписание
CountDays Количество дней — Количество исторических периодов, для которых отрисовываются уровни High/Low
Show_CurrDaily Показать текущий день — Отображать ли линии текущих дневных уровней High/Low
Shift_CurrDaily_LABEL Смещение метки текущего дня — Смещение текстовой метки текущего дневного уровня по горизонтали
Show_CurrWeekly Показать текущую неделю — Отображать ли линии текущих недельных уровней High/Low
Shift_CurrWeekly_LABEL Смещение метки текущей недели — Смещение текстовой метки текущей недельного уровня по горизонтали
Show_CurrMonthly Показать текущий месяц — Отображать ли линии текущих месячных уровней High/Low
Shift_CurrMonthly_LABEL Смещение метки текущего месяца — Смещение текстовой метки текущего месячного уровня по горизонтали
line_color_CurrDailyUPPER Цвет дневного максимума текущего периода — Цвет линии текущего дневного максимума
line_color_CurrDailyLOWER Цвет дневного минимума текущего периода — Цвет линии текущего дневного минимума
line_color_CurrWeeklyUPPER Цвет недельного максимума текущего периода — Цвет линии текущей недельной максимума
line_color_CurrWeeklyLOWER Цвет недельного минимума текущего периода — Цвет линии текущей недельной минимума
line_color_CurrMonthlyUPPER Цвет месячного максимума текущего периода — Цвет линии текущего месячного максимума
line_color_CurrMonthyLOWER Цвет месячного минимума текущего периода — Цвет линии текущего месячного минимума
CurrDaily_LineStyle Стиль линий текущего дня — Стиль линий текущих дневных уровней High/Low
CurrWeekly_LineStyle Стиль линий текущей недели — Стиль линий текущих недельных уровней High/Low
CurrMonthly_LineStyle Стиль линий текущего месяца — Стиль линий текущих месячных уровней High/Low
Show_PreviousDaily Показать предыдущий день — Отображать ли линии предыдущих дневных уровней High/Low
Xtend_Prev_DailyLine Продлить линию предыдущего дня — Продлевать ли линии предыдущего дневного диапазона вправо
Show_PreviousWeekly Показать предыдущую неделю — Отображать ли линии предыдущих недельных уровней High/Low
Xtend_Prev_WeeklyLine Продлить линию предыдущей недели — Продлевать ли линии предыдущего недельного диапазона вправо
Show_PreviousMonthly Показать предыдущий месяц — Отображать ли линии предыдущих месячных уровней High/Low
Xtend_Prev_MonthlyLine Продлить линию предыдущего месяца — Продлевать ли линии предыдущего месячного диапазона вправо
line_color_PreviousDaily Цвет линий предыдущего дня — Цвет линий предыдущего дневного диапазона High/Low
line_color_PreviousWeekly Цвет линий предыдущей недели — Цвет линий предыдущего недельного диапазона High/Low
line_color_PreviousMonthly Цвет линий предыдущего месяца — Цвет линий предыдущего месячного диапазона High/Low
PreviousLine_Style Стиль линий предыдущих периодов — Стиль линий предыдущих периодов High/Low
Shift_Prev_LABEL Смещение меток предыдущих периодов — Смещение текстовых меток предыдущих уровней по горизонтали
Show_CurrRectangles_Display Показать прямоугольники текущего периода — Включить отображение прямоугольников текущих периодов
Show_Rectangles Показать прямоугольники — Включить отображение прямоугольников
Rectangle_Curr_DayPeriod_only Только дневной период прямоугольников — Отображать прямоугольники текущего дня независимо от настройки отображения прямоугольников
Show_Daily_Rectangle Показать дневной прямоугольник — Отображать ли прямоугольник дневного диапазона
Daily_Rectangle_color Цвет дневного прямоугольника — Цвет прямоугольника дневного диапазона
Show_Weekly_Rectangle Показать недельный прямоугольник — Отображать ли прямоугольник недельного диапазона
Weekly_Rectangle_color Цвет недельного прямоугольника — Цвет прямоугольника недельного диапазона
Show_Monthly_Rectangle Показать месячный прямоугольник — Отображать ли прямоугольник месячного диапазона
Monthly_Rectangle_color Цвет месячного прямоугольника — Цвет прямоугольника месячного диапазона
Show_Daily_Pivots Показать дневные пивоты — Отображать ли дневной пивот
Daily_Pivot_color Цвет дневного пивота — Цвет линии дневного пивота
Daily_Pivot_LineWidth Толщина линии дневного пивота — Толщина линии дневного пивота
Show_Weekly_Pivots Показать недельные пивоты — Отображать ли недельный пивот
Weekly_Pivot_color Цвет недельного пивота — Цвет линии недельного пивота
Weekly_Pivot_LineWidth Толщина линии недельного пивота — Толщина линии недельного пивота
Show_Monthly_Pivots Показать месячные пивоты — Отображать ли месячный пивот
Monthly_Pivot_color Цвет месячного пивота — Цвет линии месячного пивота
Monthly_Pivot_LineWidth Толщина линии месячного пивота — Толщина линии месячного пивота
Получить полный код

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

#property indicator_chart_window

extern int  CountDays=10;

extern bool Show_CurrDaily = true;
extern int Shift_CurrDaily_LABEL = 0;
extern bool Show_CurrWeekly = true;
extern int Shift_CurrWeekly_LABEL = 0;
extern bool Show_CurrMonthly = true;
extern int Shift_CurrMonthly_LABEL = 0;
extern color line_color_CurrDailyUPPER = Lime;
extern color line_color_CurrDailyLOWER = Magenta;
extern color line_color_CurrWeeklyUPPER = YellowGreen;
extern color line_color_CurrWeeklyLOWER = Pink;
extern color line_color_CurrMonthlyUPPER = Green;
extern color line_color_CurrMonthyLOWER = Red;
extern int CurrDaily_LineStyle = 2;
extern int CurrWeekly_LineStyle = 3;
extern int CurrMonthly_LineStyle = 4;

extern bool Show_PreviousDaily = true;
extern bool Xtend_Prev_DailyLine = false;
extern bool Show_PreviousWeekly = true;
extern bool Xtend_Prev_WeeklyLine = false;
extern bool Show_PreviousMonthly = true;
extern bool Xtend_Prev_MonthlyLine = false;
extern color line_color_PreviousDaily = Aqua;
extern color line_color_PreviousWeekly = Yellow;
extern color line_color_PreviousMonthly = Orange;
extern int PreviousLine_Style = 2;
extern int Shift_Prev_LABEL = 10;

extern bool Show_CurrRectangles_Display = false;
extern bool Show_Rectangles = true;
extern bool Rectangle_Curr_DayPeriod_only = false;
extern bool Show_Daily_Rectangle = true;
extern color Daily_Rectangle_color = Navy;
extern bool Show_Weekly_Rectangle = true;
extern color Weekly_Rectangle_color = Blue;
extern bool Show_Monthly_Rectangle = true;
extern color Monthly_Rectangle_color = Maroon;

extern bool Show_Daily_Pivots = false;
extern color Daily_Pivot_color = Aqua;
extern int Daily_Pivot_LineWidth = 1;  
extern bool Show_Weekly_Pivots = false;
extern color Weekly_Pivot_color = Yellow;
extern int Weekly_Pivot_LineWidth = 1; 
extern bool Show_Monthly_Pivots = false;
extern color Monthly_Pivot_color = Orange;
extern int Monthly_Pivot_LineWidth = 1; 

#define Curr_DG "Curr_DG"

#define Curr_WG "Curr_WG"

#define Curr_MG "Curr_MG"

   datetime time1;
   datetime time2;

   datetime time3;
   datetime time4;

   datetime time5;
   datetime time6;

   datetime time7;
   datetime time8;
   datetime time9;
   datetime time10;
   datetime time11;
   datetime time12;

   datetime time13;
   datetime time14;
   datetime time15;
   datetime time16;
   datetime time17;
   datetime time18;

   double DHi,DLo,WHi,WLo,MHi,MLo;
   double DHigh,DLow,WHigh,WLow,MHigh,MLow;
   double highD,lowD,closeD,highW,lowW,closeW,highM,lowM,closeM;
   double PD,PW,PM;

   int shift, num;

   void ObjDel()
   {
      for (;num<=CountDays;num++)
      {
      ObjectDelete("Previous_DailyHi["+num+"]");
      ObjectDelete("Previous_DailyLo["+num+"]");
      ObjectDelete("Previous_WeeklyHi["+num+"]");
      ObjectDelete("Previous_WeeklyLo["+num+"]");
      ObjectDelete("Previous_MonthlyHi["+num+"]");
      ObjectDelete("Previous_MonthlyLo["+num+"]");

      ObjectDelete("CurrentDailyHi["+num+"]");
      ObjectDelete("CurrentDailyLo["+num+"]");
      ObjectDelete("CurrentWeeklyHi["+num+"]");
      ObjectDelete("CurrentWeeklyLo["+num+"]");
      ObjectDelete("CurrentMonthlyHi["+num+"]");
      ObjectDelete("CurrentMonthlyLo["+num+"]");

       ObjectDelete("CurrentPivot["+num+"]");
       ObjectDelete("CurrentWeeklylyPivot["+num+"]");
       ObjectDelete("CurrentMonthlyPivot["+num+"]");
     } 

   }

   void PlotLineD(string dname,double value,double line_color_Daily,double style)
   {
   ObjectCreate(dname,OBJ_TREND,0,time1,value,time2,value);
   ObjectSet(dname, OBJPROP_WIDTH, 1);
   ObjectSet(dname, OBJPROP_STYLE, PreviousLine_Style);
   ObjectSet(dname, OBJPROP_RAY, Xtend_Prev_DailyLine);
   ObjectSet(dname, OBJPROP_BACK, true);
   ObjectSet(dname, OBJPROP_COLOR, line_color_Daily);
    }        

     void PlotLineW(string wname,double value,double line_color_Weekly,double style)
   {
   ObjectCreate(wname,OBJ_TREND,0,time3,value,time4,value);
   ObjectSet(wname, OBJPROP_WIDTH, 1);
   ObjectSet(wname, OBJPROP_STYLE, PreviousLine_Style);
   ObjectSet(wname, OBJPROP_RAY, Xtend_Prev_WeeklyLine);
   ObjectSet(wname, OBJPROP_BACK, true);
   ObjectSet(wname, OBJPROP_COLOR, line_color_Weekly);
    }        
       void PlotLineM(string mname,double value,double line_color_Monthly,double style)
   {
   ObjectCreate(mname,OBJ_TREND,0,time5,value,time6,value);
   ObjectSet(mname, OBJPROP_WIDTH, 1);
   ObjectSet(mname, OBJPROP_STYLE, PreviousLine_Style);
   ObjectSet(mname, OBJPROP_RAY, Xtend_Prev_MonthlyLine);
   ObjectSet(mname, OBJPROP_BACK, true);
   ObjectSet(mname, OBJPROP_COLOR, line_color_Monthly);
    }

         void PlotLineDLY(string dayname,double value,double col,double style)
   {
   ObjectCreate(dayname,OBJ_TREND,0,time7,value,time8,value);
   ObjectSet(dayname, OBJPROP_WIDTH, 1);
   ObjectSet(dayname, OBJPROP_STYLE, CurrDaily_LineStyle );
   ObjectSet(dayname, OBJPROP_RAY, false);
   ObjectSet(dayname, OBJPROP_BACK, true);
   ObjectSet(dayname, OBJPROP_COLOR, col);
    }

           void PlotLineWLY(string weekname,double value,double col,double style)
   {
   ObjectCreate(weekname,OBJ_TREND,0,time9,value,time10,value);
   ObjectSet(weekname, OBJPROP_WIDTH, 1);
   ObjectSet(weekname, OBJPROP_STYLE, CurrWeekly_LineStyle );
   ObjectSet(weekname, OBJPROP_RAY, false);
   ObjectSet(weekname, OBJPROP_BACK, true);
   ObjectSet(weekname, OBJPROP_COLOR, col);
    }
            void PlotLineMLY(string monthname,double value,double col,double style)
   {
   ObjectCreate(monthname,OBJ_TREND,0,time11,value,time12,value);
   ObjectSet(monthname, OBJPROP_WIDTH, 1);
   ObjectSet(monthname, OBJPROP_STYLE, CurrMonthly_LineStyle );
   ObjectSet(monthname, OBJPROP_RAY, false);
   ObjectSet(monthname, OBJPROP_BACK, true);
   ObjectSet(monthname, OBJPROP_COLOR, col);
    }    

              void PlotLinePVT(string pname,double value,double col,double style)
   {
   ObjectCreate(pname,OBJ_TREND,0,time13,value,time14,value);
   ObjectSet(pname, OBJPROP_WIDTH, Daily_Pivot_LineWidth);
   ObjectSet(pname, OBJPROP_STYLE, 0 );
   ObjectSet(pname, OBJPROP_RAY, false);
   ObjectSet(pname, OBJPROP_BACK, true);
   ObjectSet(pname, OBJPROP_COLOR, col);
    }   
                  void PlotLinePVTW(string wpname,double value,double col,double style)
   {
   ObjectCreate(wpname,OBJ_TREND,0,time15,value,time16,value);
   ObjectSet(wpname, OBJPROP_WIDTH, Weekly_Pivot_LineWidth);
   ObjectSet(wpname, OBJPROP_STYLE, 0 );
   ObjectSet(wpname, OBJPROP_RAY, false);
   ObjectSet(wpname, OBJPROP_BACK, true);
   ObjectSet(wpname, OBJPROP_COLOR, col);
    }   
                 void PlotLinePVTM(string mpname,double value,double col,double style)
   {
   ObjectCreate(mpname,OBJ_TREND,0,time17,value,time18,value);
   ObjectSet(mpname, OBJPROP_WIDTH, Monthly_Pivot_LineWidth);
   ObjectSet(mpname, OBJPROP_STYLE, 0 );
   ObjectSet(mpname, OBJPROP_RAY, false);
   ObjectSet(mpname, OBJPROP_BACK, true);
   ObjectSet(mpname, OBJPROP_COLOR, col);
    }   
int init()
  {
      // код доступен только после оплаты
   }

int deinit()
  {
  ObjectsDeleteAll(0,OBJ_RECTANGLE);
  ObjectsDeleteAll(0,OBJ_TRENDBYANGLE);
  ObjectsDeleteAll(0,OBJ_TEXT);
   ObjDel();
   Comment("");
   return(0);
  }

int start()

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

void Create_DailyLineHI(string dLine, double start, double end,double w, double s,color clr)
  {
   ObjectCreate(dLine, OBJ_RECTANGLE, 0, iTime(NULL,1440,0), start, Time[0], end);
   ObjectSet(dLine, OBJPROP_COLOR, clr);
   ObjectSet(dLine,OBJPROP_RAY,false);
   ObjectSet(dLine,OBJPROP_BACK,Show_Rectangles);
   ObjectSet(dLine,OBJPROP_WIDTH,w);
    ObjectSet(dLine,OBJPROP_STYLE,s);

  }
   void DeleteCreate_DailyLineHI()
   {
   ObjectDelete( Curr_DG);ObjectDelete( Curr_WG);ObjectDelete( Curr_MG);  
   }
   void CreateDHI()
   {
   DeleteCreate_DailyLineHI();
   ObjectsDeleteAll(0,OBJ_RECTANGLE);

     CreateWHI();
}

void Create_DailyLineWHI(string WLine, double start, double end,double w, double s,color clr)
  {
   ObjectCreate(WLine, OBJ_RECTANGLE, 0, iTime(NULL,10080,0), start, Time[0], end);
   ObjectSet(WLine, OBJPROP_COLOR, clr);
   ObjectSet(WLine,OBJPROP_RAY,false);
   ObjectSet(WLine,OBJPROP_BACK,Show_Rectangles);
   ObjectSet(WLine,OBJPROP_WIDTH,w);
    ObjectSet(WLine,OBJPROP_STYLE,s);

  }
   void DeleteCreate_DailyLineWHI()
   {
   ObjectDelete( Curr_WG); 
   }
   void CreateWHI()
   {
   DeleteCreate_DailyLineWHI();
   ObjectsDeleteAll(0,OBJ_RECTANGLE);

     CreateMHI();
}

void Create_DailyLineMHI(string MLine, double start, double end,double w, double s,color clr)
  {
   ObjectCreate(MLine, OBJ_RECTANGLE, 0, iTime(NULL,43200,0), start, Time[0], end);
   ObjectSet(MLine, OBJPROP_COLOR, clr);
   ObjectSet(MLine,OBJPROP_RAY,false);
   ObjectSet(MLine,OBJPROP_BACK,Show_Rectangles);
   ObjectSet(MLine,OBJPROP_WIDTH,w);
    ObjectSet(MLine,OBJPROP_STYLE,s);

  }
   void DeleteCreate_DailyLineMHI()
   {
   ObjectDelete( Cur

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

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

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

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

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

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

Стоимость полного кода
1 498,20₽ ≈ $18.31