Errores, fallos, preguntas - página 395

 

OnInit funciona de forma extraña en el indicador. Si el terminal se inicia después de una larga inactividad (varias horas), EventSetTimer devuelve false, error 4102. Si reinicio el terminal o simplemente cambio de horario, empieza a funcionar. ¿Cómo puedo combatirlo?

 
AlexeyFX:

OnInit funciona de forma extraña en el indicador. Si el terminal se inicia después de una larga inactividad (varias horas), EventSetTimer devuelve false, error 4102. Si reinicio el terminal o simplemente cambio de horario, empieza a funcionar. ¿Cómo puedo combatirlo?

Es posible que se produzcan múltiples intentos de poner en marcha el temporizador (por ejemplo, en un bucle) desde ERR_CHART_NO_REPLY(4102), especialmente en la subida del terminal.
Документация по MQL5: Работа с событиями / EventSetTimer
Документация по MQL5: Работа с событиями / EventSetTimer
  • www.mql5.com
Работа с событиями / EventSetTimer - Документация по MQL5
 

Pregunta para los desarrolladores. Antes, en las propiedades del indicador en el menú "Aplicar a", además de todo lo que aparece, se podía seleccionar "datos del primer indicador". Ahora no es posible hacerlo:

¿Se ha eliminado por alguna razón?

 
¿Pueden decirme cómo la función FileReadString() mueve el puntero del archivo al leer desde un archivo .csv? Cuando leo un carácter, el puntero se desplaza 142 caracteres a la derecha, más allá del final del archivo. Si lo necesitas, puedo poner el código.
Документация по MQL5: Файловые операции / FileReadString
Документация по MQL5: Файловые операции / FileReadString
  • www.mql5.com
Файловые операции / FileReadString - Документация по MQL5
 
molotkovsm:
Por favor, díganme cómo FileReadString() mueve el puntero del archivo al leer desde un archivo .csv

Al leer cualquier archivo con cualquier función, el puntero se desplaza al número de bytes leídos.

 
sergeev:

al leer cualquier archivo con cualquier función, el puntero se mueve por el número de bytes leídos.


Entonces dime qué estoy haciendo mal, el puntero está mal desplazado, aquí está el código

void OnStart()
  {
int file_handle;
int value1;
int value2;
   file_handle=FileOpen("file01.csv", FILE_READ|FILE_CSV);
   value1=StringToInteger(FileReadString(file_handle));
   Print(value1,"     ",FileTell(file_handle));
   value2=StringToInteger(FileReadString(file_handle));
   Print(value2,"     ",FileTell(file_handle));
   FileClose(file_handle);
  }

En el registro aparecen las siguientes líneas

2011.05.24 21:44:06 read_test (EURUSD,M1) 1 142

2011.05.24 21:44:06 read_test (EURUSD,M1) 0 286

contenido del archivo file01.csv:

1;2;3;5;1.41299999;1.41250002;1.41199994;1.41149998;2011.05.24 17:23;5


 
añadir FILE_ANSI
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5
 
sergeev:

añadir FILE_ANSI

añadido:

file_handle=FileOpen("file01.csv", FILE_READ|FILE_CSV|FILE_ANSI);

el resultado ha cambiado, pero aún no es el esperado - la segunda línea sólo ha cambiado

2011.05.24 22:01:32 read_test (EURUSD,M1) 1 142
2011.05.24 22:01:32 read_test (EURUSD,M1) 0 288


 
molotkovsm:

añadido:

el resultado ha cambiado, pero todavía no es lo que parece - la segunda línea sólo ha cambiado


No has configurado eldelimitador . El valor por defecto es '\t'.

y estás buscando ';'.

 
sergeev:

No has puesto un delimitador. El delimitador por defecto es '\t'.

y veo que necesitas ';'.

Añadido el delimitador, sin FILE_ANSI parece que funciona, gracias por la ayuda.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы ввода/вывода / Флаги открытия файлов - Документация по MQL5
Razón de la queja: