Vertical line Indicator For MT5

Vertical line Indicator For MT5

Table Of Contents:

  1. Vertical line Indicator For MT5
  2. Instalar la Vertical line Indicator For MT5
  3. Parámetros de la Vertical line Indicator For MT5
  4. Buffers of the Vertical line Indicator For MT5
  5. Partes principales del código

El Vertical line Indicator For MT5 dibuja una línea vertical a una hora específica del día real. Si el día cambia, se dibujará una nueva línea para el día real. Puede usar la línea para varios propósitos, como una advertencia para las próximas noticias o cualquier otro uso donde necesite ver un horario específico en el gráfico (piense en los fines de semana).

FREE Vertical line Indicator

Download the FREE Vertical line Indicator for MT5.

To receive my email 100% sure: 
Put my email on your whitelist!

 

Partially Automated Trading Besides Your Day Job

Alerts In Real-Time When Divergences Occur

 

Instalar la Vertical line Indicator For MT5

Después de descargar el indicador a través del formulario anterior, debe descomprimir el archivo zip. Luego, debe copiar el archivo Vertical_line.mq5 en la carpeta MQL5Indicators de su instalación MT5 . Después de eso, reinicie MT5 y luego podrá ver el indicador en la lista de indicadores.

Parámetros de la Vertical line Indicator For MT5

Vertical line Indicator For MT5 tiene parámetros 5 para configurar.

input datetime          InpTime  = D 2017.05.22 18:40:00 ;  // Use only Hours and minutes input string            InpName  = "Vertical line";         // Line name input color             InpColor = clrRed;                  // Line color input ENUM_LINE_STYLE   InpStyle = STYLE_DASH;              // Line style input int               InpWidth = 3;                       // Line width 

Buffers of the Vertical line Indicator For MT5

Vertical line Indicator For MT5 proporciona buffers 0 .

Partes principales del código

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[])   { //---    MqlDateTime str_to_draw;    TimeToStruct(TimeCurrent(),str_to_draw);     if(prev_date==0) // first start      {       MqlDateTime str_input;       TimeToStruct(InpTime,str_input);       str_to_draw.hour=str_input.hour;       str_to_draw.min=str_input.min;       str_to_draw.sec=0;        prev_date=StructToTime(str_to_draw);       VLineMove(0,InpName,prev_date);        return(rates_total);      }     MqlDateTime str_prev_date;    TimeToStruct(prev_date,str_prev_date);     if(str_to_draw.day==str_prev_date.day) // today the vertical line has already been drawn       return(rates_total);    else      {       MqlDateTime str_input;       TimeToStruct(InpTime,str_input);       str_to_draw.hour=str_input.hour;       str_to_draw.min=str_input.min;       str_to_draw.sec=0;        prev_date=StructToTime(str_to_draw);       VLineMove(0,InpName,prev_date);      } //--- return value of prev_calculated for next call    return(rates_total);   } //+------------------------------------------------------------------+ //| Timer function                                                   | //+------------------------------------------------------------------+ void OnTimer()   { //--- protection against unauthorized deletion    if(ObjectFind(0,InpName) lt 0)      {       prev_date=0;       VLineCreate(0,InpName,0,0.0,InpColor,InpStyle,InpWidth);      }   } //+------------------------------------------------------------------+  //| Create the vertical line                                         |  //+------------------------------------------------------------------+  bool VLineCreate(const long            chart_ID=0,        // chart s ID                   const string          name="VLine",      // line name                   const int             sub_window=0,      // subwindow index                   datetime              time=0,            // line time                   const color           clr=clrRed,        // line color                   const ENUM_LINE_STYLE style=STYLE_SOLID, // line style                   const int             width=1/*,           // line width                   const bool            back=false,        // in the background                   const bool            selection=true,    // highlight to move                   const bool            ray=true,          // line s continuation down                   const bool            hidden=true,       // hidden in the object list                   const long            z_order=0*/) // priority for mouse click    { //--- if the line time is not set, draw it via the last bar     if(!time)       time=TimeCurrent(); //--- reset the error value     ResetLastError(); //--- create a vertical line     if(!ObjectCreate(chart_ID,name,OBJ_VLINE,sub_window,time,0))      {       Print(__FUNCTION__,             ": failed to create a vertical line! Error code = ",GetLastError());       return(false);      } //--- set line color     ObjectSetInteger(chart_ID,name,OBJPROP_COLOR,clr); //--- set line display style     ObjectSetInteger(chart_ID,name,OBJPROP_STYLE,style); //--- set line width     ObjectSetInteger(chart_ID,name,OBJPROP_WIDTH,width); //--- successful execution     return(true);   } //+------------------------------------------------------------------+  //| Move the vertical line                                           |  //+------------------------------------------------------------------+  bool VLineMove(const long   chart_ID=0,   // chart s ID                 const string name="VLine", // line name                 datetime     time=0)       // line time    { //--- if line time is not set, move the line to the last bar     if(!time)       time=TimeCurrent(); //--- reset the error value     ResetLastError(); //--- move the vertical line     if(!ObjectMove(chart_ID,name,0,time,0))      {       Print(__FUNCTION__,             ": failed to move the vertical line! Error code = ",GetLastError());       return(false);      } //--- successful execution     return(true);   } //+------------------------------------------------------------------+  //| Delete the vertical line                                         |  //+------------------------------------------------------------------+  bool VLineDelete(const long   chart_ID=0,   // chart s ID                   const string name="VLine") // line name    { //--- reset the error value     ResetLastError(); //--- delete the vertical line     if(!ObjectDelete(chart_ID,name))      {       Print(__FUNCTION__,             ": failed to delete the vertical line! Error code = ",GetLastError());       return(false);      } //--- successful execution     return(true);   } //+------------------------------------------------------------------+ 

 

About Me

I'm Mike Semlitsch the owner of PerfectTrendSystem.com. My trading career started in 2007. Since 2013 I have helped thousands of traders to take their trading to the next level. Many of them are now constantly profitable traders. 

The following performance was achieved by me while trading live in front of hundreds of my clients:

Connect With Me:  

Results From 5 Months!
This service starts soon! Be the first who get's notified when it begins!

This FREE Indicator Can Transform
Your Trading!

FREE Indicator + Telegram Group


Request the Ultimate Double Top/Bottom Indicator which is used by 10,000+ traders.