Assista a como baixar robôs de negociação gratuitos
Encontre-nos em Twitter!
Participe de nossa página de fãs
Script interessante?
Coloque um link para ele, e permita que outras pessoas também o avaliem
Você gostou do script?
Avalie seu funcionamento no terminal MetaTrader 5
Bibliotecas

ZZ_TimeWinter 1-1000.mq4 - biblioteca para MetaTrader 4

Visualizações:
580
Avaliação:
(11)
Publicado:
2016.03.29 08:50
Precisa de um robô ou indicador baseado nesse código? Solicite-o no Freelance Ir para Freelance
////////////////////////////////////////////////////////////// 
//
// YURAZ yzh mail ru
//
// A função retornará
// true - horário de verão
// false  -  horário de inverno
// 
// reverte para o horário padrão na noite do último domingo de OUTUBRO
// muda para o horário de verão durante a noite do último domingo de MARÇO
// 
bool TimeWinter(datetime dt) 
{
   int i;
 
   if (   TimeMonth(dt) >= 11 || TimeMonth(dt) <= 2 ) // INVERNO
   {
      return(false); //    Inverno
   }
   if (   TimeMonth(dt) >= 4 && TimeMonth(dt) <= 9) // VERÃO
   {
      return(true); //    Verão
   }
 
// Ele não pode ser ajudado, vamos determinar
   datetime tSeek;
   string sTIM;
   if ( TimeMonth(dt) == 10 ) // outubro
   {
      if ( TimeDay(dt) >= 20 ) // na noite do último domingo de outubro - reverte para o horário padrão
      {
         tSeek = StrToTime( StringTrimRight(StringTrimLeft(DoubleToStr(TimeYear(dt),0)))+".10.31");  // determina o último dia de outubro
         // Busca o primeiro domingo a partir do final
         for ( i = 31; i >= 20; i-- )
         {
            if ( TimeDayOfWeek(tSeek) == 0 ) 
            {
               break;   // encontrado o último domingo de outubro
            }
            tSeek = tSeek - 86400; // outro dia
         }
         if ( dt >= tSeek  ) // horário já está padrão
         {
            return(false); // sim inverno
         }
      }
      return(true);
   }
   if ( TimeMonth(dt) == 3 ) // março
   {
      if ( TimeDay(dt) >= 20 ) // na noite do último domingo de março - muda para o horário de verão
      {
         tSeek = StrToTime( StringTrimRight(StringTrimLeft(DoubleToStr(TimeYear(dt),0)))+".03.31");  // determina o último dia de maarço
        
         for ( i = 31; i >= 20; i-- )
         {
            if ( TimeDayOfWeek(tSeek) == 0 ) // busca pelo primeiro domingo a partir do final
            {
               break; // encontrado o úlitmo domingo de março
            }
            tSeek = tSeek - 86400; // outro dia
         }
         if ( dt >= tSeek  ) // já está no horário de verão
         {
            return(true); //  já é verão 
         }
      }
      return(false);
   }
}

Traduzido do russo pela MetaQuotes Ltd.
Publicação original: https://www.mql5.com/ru/code/7357

Schaff Trend Cycle Schaff Trend Cycle

Indicador Schaff Trend Cycle.

Pivot Pivot

Ponto de Pivot é um ponto de virada para a direção do movimento de preços em um mercado.

SilverTrend_Signal SilverTrend_Signal

Indicador SilverTrend Signal.

StepMA_v6 StepMA_v6

O indicador do sistema de negociação de pabloski.