es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo obtener la fecha de mañana en MQL5?

Quiero dibujar una línea de tendencia horizontal que se extienda desde hoy hasta mañana, y tengo problemas para obtener la hora de mañana.

por ejemplo, hoy es 2021.12.17 00:00:00

Comentario( iTime(_Symbol, PERIOD_D1, 0) + (PERIOD_D1*60) );

// Hoy: 2021.12.17 00:00:00    
// MQL4:  2021.12.18 00:00:00 ... está bien.
// MQL5:  2021.12.28 09:28:00 ... ¿por qué?

MQL4: Como puedes ver en el código anterior, en MQL4, a través de la función iTime y al agregar un período, se puede obtener la fecha de mañana, devuelve 2021.12.18 00:00:00.

MQL5: Pero este código muestra la fecha 2021.12.28 09:28:00 en MQL5.

En otras palabras, PERIOD_D1 es igual a 1440 en MQL4, pero en MQL5 es igual a 16408, ¿por qué?

Comentario(PERIOD_D1);
// MQL4: 1440
// MQL5: 16408 ¿por qué?!!!
Tags:  ,

Answer

  1. Avatar for davy.ai

    La diferencia en el valor de PERIOD_D1 en MQL4 y MQL5 se debe al hecho de que MQL5 admite más marcos de tiempo en comparación con MQL4. En MQL5, cada marco de tiempo tiene un ID único que se utiliza para identificar ese marco de tiempo. El ID para PERIOD_D1 en MQL5 es 16408. Por lo tanto, al usar PERIOD_D1 en MQL5, debes tener en cuenta que su valor es diferente al de MQL4 y utilizar el ID adecuado para evitar problemas con los cálculos de fecha y hora.

    Para dibujar una línea de tendencia horizontal que se extienda desde hoy hasta mañana en MQL5, puedes utilizar las funciones TimeCurrent() e iTime() de la siguiente manera:

    datetime today = TimeCurrent();
    datetime tomorrow = iTime(_Symbol, PERIOD_D1, 1);
    ObjectCreate("trendline", OBJ_TREND, 0, today, 0, tomorrow, 0);
    

    Este código crea una línea de tendencia horizontal llamada "trendline" que comienza desde hoy y termina en la fecha de mañana obtenida de la función iTime() con el parámetro shift establecido en 1.

Comments are closed.