Início Indicador técnico Postagem

Linha Vertical: Indicador Essencial para MetaTrader 5

Anexo
18449.zip (2.19 KB, Baixar 0 vezes)

O indicador de linha vertical (OBJ_VLINE) é uma ferramenta prática que desenha uma linha vertical no gráfico e a move para um horário específico (horas e minutos) que você determinar.

Parâmetros de entrada:

Linha vertical, entradas

No parâmetro "Usar apenas Horas e Minutos", só são considerados os horários que você definir.

A linha vertical é criada para o dia atual. Quando um novo dia começa, a linha é automaticamente realocada para esse novo dia, ajustando-se ao horário e minuto escolhidos.

Vídeo:


Esse indicador conta com uma proteção embutida contra a exclusão acidental da linha vertical. Um timer verifica periodicamente se a linha ainda está no gráfico. Caso a linha vertical (OBJ_VLINE) não seja encontrada, a variável estática "prev_date", que está declarada no nível global do programa, é reiniciada para zero:

//+------------------------------------------------------------------+
//| Função Timer                                                    |
//+------------------------------------------------------------------+
void OnTimer()
  {
//--- proteção contra exclusão não autorizada
   if(ObjectFind(0,InpName)<0)
     {
      prev_date=0;
      VLineCreate(0,InpName,0,0.0,InpColor,InpStyle,InpWidth);
     }
  }

    Isso resultará na criação de uma nova linha vertical na função OnCalculate():

       if(prev_date==0) // primeiro início
         {
          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);
         }
    


    Publicações relacionadas

    Comentário (0)