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

d_w_mn_open_line@fxsignalspot.mq5

Вы автор или правообладатель?

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

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

О программе

Индикатор для MetaTrader 4, отображающий на графике линии открытия свечей по трём временным интервалам: дневному, недельному и месячному. Каждая линия нарисована отдельным цветом и стилем и может быть включена или выключена с помощью интерактивных кнопок на графике. Индикатор перерисовывает данные при появлении нового бара на текущем таймфрейме и обновляет отображение линий при нажатии кнопок.

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

НастройкаОписание
Button_Size Размер кнопки — Масштабный коэффициент, определяющий размер и положение кнопок на графике.
X_Coordinate Координата X — Горизонтальная позиция кнопок на графике.
Y_Coordinate Координата Y — Вертикальная базовая позиция кнопок на графике.
Получить полный код

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

#property indicator_chart_window
#property indicator_buffers 3
#property indicator_color1 Teal
#property indicator_color2 Crimson
#property indicator_color3 DodgerBlue
#property indicator_style1 1
#property indicator_style2 1
#property indicator_style3 1
#property indicator_width1 2
#property indicator_width2 2
#property indicator_width3 2

extern double Button_Size =1.0;
extern int X_Coordinate = 10;
extern int Y_Coordinate = 25;

double MonthOpenBuffer[];
double WeekOpenBuffer[];
double DayOpenBuffer[];

double Shft = 0; // 0 = for present daily / week / month open

bool ButtonStateD = false;
bool ButtonStateW = false;
bool ButtonStateM = false;
string ButtonNameD = "Button D";
string ButtonNameW = "Button W";
string ButtonNameM = "Button M"; 

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

int deinit()
{
   ObjectDelete(ButtonNameD);
   ObjectDelete(ButtonNameW);
   ObjectDelete(ButtonNameM);
	return(0);
}

void OnChartEvent(const int id, const long &lparam, const double &dparam, const string &sparam) {

    if(sparam==ButtonNameD) PressButtonD();
    if(sparam==ButtonNameW) PressButtonW();
    if(sparam==ButtonNameM) PressButtonM();

}

int start()
{
      // код доступен только после оплаты
   }
bool NewBar(int TimeFrame)
  {
   static datetime LastTime=0;
   if(iTime(NULL,TimeFrame,0)!=LastTime)
     {
      LastTime=iTime(NULL,TimeFrame,0);
      return (true);
     }
   else
      return (false);
  }

void PressButtonD(){

    ButtonStateD = !ButtonStateD;

    color cColor = clrWhite;
    color BgColor = clrGreen;
    string textoboton = " ON";

    if(ButtonStateD == false)
    {
        BgColor = clrRed;
        textoboton = " OFF";
    SetIndexStyle(2, DRAW_NONE); 

      WindowRedraw();
    }

    if(ButtonStateD == true)
    { 
    SetIndexStyle(2, DRAW_LINE); 

      WindowRedraw();
    }

    CreateButtonD(ButtonNameD,cColor,BgColor,"Arial",textoboton);

}

void CreateButtonD(string sName, color cColor, color BgColor,string sFont = "Arial", string sText = "") {

   if(ObjectFind(sName)< 0){
      ObjectCreate(0,sName,OBJ_BUTTON,0,0,0);
   }
   ObjectSetInteger(0,sName,OBJPROP_XDISTANCE,X_Coordinate);
   ObjectSetInteger(0,sName,OBJPROP_YDISTANCE,int(Button_Size*Y_Coordinate));
   ObjectSetInteger(0,sName,OBJPROP_XSIZE,int(Button_Size*120));
   ObjectSetInteger(0,sName,OBJPROP_YSIZE,int(Button_Size*19));
   

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

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

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

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

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

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

Стоимость полного кода
571₽ ≈ $6.98