Cualquier pregunta de los recién llegados sobre MQL4 y MQL5, ayuda y discusión sobre algoritmos y códigos - página 1253

 
Igor Makanu:

datetime o_open = OrderOpenTime();

MqlDateTime dt_struct;

TimeToStruct( o_open, dt_struct;)

int min = dt_struct.min;

Senx.
 
¿Entiendo correctamente que no se pueden crear nuevas hojas al escribir en el csv (programáticamente, desde el terminal)?
 
Yevhenii Levchenko:
nuevas hojas al escribir en csv
Perturbado. He intentado guardar un libro con 3 hojas en csv desde Excel:


Sólo hay separadores de columna dentro del csv, no creo que haya ninguna otra marca
 
Aleksei Stepanenko:
Desconcertante. Intentado desde Excel guardar un libro con 3 hojas a csv:


Sólo hay separadores de columna dentro del csv, no hay ninguna otra marca

No sabía que esto era una característica del formato. A mí, al intentar guardar un libro con varias hojas, no me da de baja así... Sólo borra la hoja anterior, guardando una nueva en blanco

¡Gracias!

 
Yevhenii Levchenko:

De nada :)

 
Buen día. Por favor,díganme por favor,escribí un indicador con Alerta (salidas de mensaje y sonido bajo ciertas condiciones), todo funciona, pero cada vez que cambio el gráfico de Timeframe, da una señal de nuevo. ¿Cómo puedo solucionarlo? El código de la alerta se coloca en una función separada que se llama para comprobar desde OnCalculate. Si es solo un EA, funciona bien, pero lo necesito con representación gráfica como lo he hecho, sin que se dispare de nuevo al cambiar de timeframe.
Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
Как самому создать советника или индикатор - Алгоритмический трейдинг, торговые роботы - Справка по MetaTrader 5
  • www.metatrader5.com
Для разработки торговых систем в платформу встроен собственный язык программирования MetaQuotes Language 5 (MQL5), среда разработки MetaEditor и инструменты тестирования стратегий. Любую информацию о разработке торговых стратегий на языке MQL5 можно найти на официальном сайте MQL5.community. На этом же сайте в разделе Code Base могут быть...
 
Progaus:
Buenas tardes. Me pueden decir por favor,escribí un indicador con Alerta (salidas de mensaje y sonido bajo ciertas condiciones), todo funciona, pero cada vez que se cambia de gráfico de marco de tiempo, de nuevo da una señal. ¿Cómo puedo solucionarlo? El código de la alerta se coloca en una función separada que se llama para comprobar desde OnCalculate. Si es solo un EA, funciona bien, pero lo necesito con representación gráfica como lo he hecho, sin que se dispare de nuevo al cambiar de timeframe.

Cuando se cambia el marco temporal, el indicador comienza desde 0.

En consecuencia, debemos enseñarle a recordar que la Alerta ya ha sido emitida - de forma fiable, almacenando dicha información en variables globales de la terminal o en un archivo temporal, y parece que es posible (yo no lo he usado) simplemente hacer una variable estática.

Por ejemplo, puede guardar la hora de la última alerta y no pitar una nueva alerta si el tiempo ha pasado menos de 2 segundos.

 
Maxim Kuznetsov:

y parece que es posible (yo no lo he usado) simplemente hacer una variable estática.

Al cambiar de TF, se crea una nueva copia del indicador y se elimina la anterior.

para EA es posible (y necesario) utilizar variables estáticas (o declaradas globalmente) ... no obstante, hay algunos matices, pero en general no hay problemas

Maxim Kuznetsov:

cuando cambie de marco temporal, el indicador comenzará desde 0.

prev_calculated se pondrá a cero en la primera llamada a OnCalculated()



es decir, crear una variable global del terminal o un objeto gráfico como marcador de que el indicador ya estaba en este gráfico y buscar este objeto gráfico durante la primera llamada.

 
Colegas, disculpen de inmediato la pregunta elemental, es que no estoy en mi ordenador en este momento, pero tengo que hacerlo.
Cuál es la mejor manera de saber la hora actual en minutos.
 
Aleksey Masterov:
Colegas, perdón de una vez por la pregunta elemental, es que no tengo ordenador, pero tengo que hacerlo.
Cuál es la mejor manera de averiguar la hora actual en minutos.

TimeCurrent()https://www.mql5.com/ru/docs/dateandtime/timecurrent

Utilice la segunda versión de la firma de esta función:

datetime  TimeCurrent(
   MqlDateTime&  dt_struct      // переменная типа структуры
   );


ZS: Debería decirlo de una vez - funciona en MT4, lo he usado ;)

UPD: en MT4 también usé Hour() y Minute() - no los uso por mucho tiempo, pero deberían dar la última hora del servidor en horas y minutos