Preguntas de los principiantes MQL5 MT5 MetaTrader 5 - página 981

 

Amigos, ¿pueden decirle a un novato lo que está mal? Quiero encontrar las barras correspondientes a una hora determinada, abajo está el código, pero no funciona.

       MqlRates rates[];
       ArraySetAsSeries(rates,true);
       int copied = CopyRates(NULL,_Period,0,f_bar,rates);
     
        string a1,a2;
          if (copied>0)
         for(int i=0;i<copied;i++)
           {
               a1 = TimeToString (rates[i].time,TIME_DATE);
               a2 = TimeToString(rates[i].time,TIME_MINUTES);
               if(a2=="14:00"){Comment(a1,"\n",a2);break;
           }
 
Alexander Mikryukov:

Amigos, ¿pueden decirle a un novato lo que está mal? Quiero buscar las barras correspondientes a una hora determinada, abajo está el código, pero no funciona.

Buscar un bar por tiempo

 
Alexander Mikryukov:

Amigos, ¿pueden decirle a un novato lo que está mal? Quiero encontrar las barras correspondientes a una hora determinada, abajo está el código, pero no funciona.

¿Ha contado, lo siento, sin ánimo de ofender, el número de paréntesis torcidos?

 
Alexey Viktorov:

Lo siento, no quiero ofender a nadie, pero ¿has considerado el número de paréntesis de la curva?

Así es como lo he copiado, el compilador no lo jura.

Alekseu Fedotov:

Buscar un bar por tiempo

La tarea consistía en seleccionar todas las barras de una hora determinada en un periodo de tiempo determinado y, posteriormente, calcular los parámetros de esta barra. Por eso decidí dominar esta función. Estoy empezando a dominar MQL5, por eso puede que tenga algunas preguntas tontas.


Lo he entendido y funciona.

 
Caballeros, ayúdenme. Estoy escribiendo un indicador, que dibuja el máximo y el mínimo del día anterior. ¿Cómo excluir el sábado y el domingo del sorteo?
 
Alexander Mikryukov:
Señores, por favor ayúdenme a entender esto. Estoy desarrollando un indicador que utiliza el máximo y el mínimo del día anterior. ¿Cómo evitar que el sábado y el domingo se sorteen?

No hay ticks en el fin de semana, por lo que el indicador no hará nada. Y si no hace nada, significa que no dibujará nada :)

 
Alexander Mikryukov:
Caballeros, ayúdenme. Estoy escribiendo un indicador, que dibuja el máximo y el mínimo del día anterior. ¿Cómo excluir el sábado y el domingo del sorteo?

Primero, muéstrame cómo los obtienes, estos máximos y mínimos.

 
Hay una función en MQL4
Month()
¿cómo saber el mes en MQL5?
 
Aliaksandr Yemialyanau:
MQL4 tiene una función ¿cómo saber el mes en MQL5?

MqlDateTime - estructura para almacenar la fecha.

TimeToStruct- pasa la hora a la estructura.

Ahora mira los campos de la estructura:

struct MqlDateTime 
  { 
   int year;           // год 
   int mon;            // месяц 
   int day;            // день 
   int hour;           // час 
   int min;            // минуты 
   int sec;            // секунды 
   int day_of_week;    // день недели (0-воскресенье, 1-понедельник, ... ,6-суббота) 
   int day_of_year;    // порядковый номер в году (1 января имеет номер 0) 
  };
 
Vladimir Karputov:

MqlDateTime - estructura para almacenar la fecha.

TimeToStruct- pasa la hora a la estructura.

Ahora mira los campos de la estructura:

Además de esto, hay

datetime  TimeCurrent(
   MqlDateTime&  dt_struct      // переменная типа структуры
   );
Документация по MQL5: Дата и время / TimeCurrent
Документация по MQL5: Дата и время / TimeCurrent
  • www.mql5.com
Возвращает последнее известное время сервера, время прихода последней котировки по одному из выбранных в "Обзоре рынка" символов. В обработчике OnTick() данная функция вернет время пришедшего обрабатываемого тика. В других случаях (например, вызов в обработчиках OnInit(), OnDeinit(), OnTimer() и так далее) это –...
Razón de la queja: