Errores, fallos, preguntas - página 295

 
Voodoo_King:


Y entonces... en el desarrollo de software, se considera un buen tono no tener pantallas de bloqueo.


Y eso es lo que estamos tratando.

 
stringo:
Hay que reproducir el error para solucionarlo. Me gustaría ver los registros de sus agentes. Sería bueno que enviara a su experto. Y describir los parámetros de prueba de entrada.

Debe ser el marco de tiempo de los minutos en lugar de las otras selecciones cuando"cada tick" está activado.

Sólo tengo minutos de tiempo en todas partes y todo parece estar bien.

P.D. He escrito más arriba.

 

Si el indicador FILE_SHARE_READ es un indicador de apertura y no el propio indicador de apertura, ¿por qué se abre el archivo de todas formas?

2011.02.07 18:18:14    Лист18 (EURUSD,H1)    Файл открыт с флагом FILE_SHARE_READ нормально Templates\Example.txt
2011.02.07 18:18:14    Лист18 (EURUSD,H1)    SHARE_READ  
void SHARE_ReadFile()
  {
   string subfolder="Templates";
   int han=FileOpen(subfolder+"\\"+folder+".txt",FILE_SHARE_READ|FILE_TXT|FILE_ANSI,"\r");
   if(han!=INVALID_HANDLE)
     {
      Print("SHARE_READ  ",FileReadString(han));           

      Print("Файл открыт с флагом FILE_SHARE_READ нормально "+subfolder+"\\"+folder+".txt"); 
      FileClose(han);
     }
   else
     {
      Print("Ошибка открытия файла с флагом FILE_SHARE_READ "+subfolder+"\\"+folder+".txt, error",GetLastError());
     }
  }

Me parece que el resultado debería ser un error de apertura de archivo.

Y de hecho lo es, porque no se imprime nada, pero al comprobar el manejador se ve que el archivo está abierto.

 
mql5:
La imagen se añade al recurso EX5 mediante
#recurso "<ruta al archivo relativa a la carpeta MQl5\Imágenes>".

Ejemplo

#resource "res\\test.bmp";

¿Está todo en su sitio? Estoy buscando la ruta si #recurso en el archivo de EA, relativa al directorio fuente de EA.

No se puede abrir el archivo de recursos 'C:\NArchivos de Programa\NMetaTrader 5 DEV\NMQL5\NExpertos\Nmyexpert\\\Nde prueba.bmp' (3) 0 0

Si #resource está en el archivo de la inyección, todo va en un lugar y se mete en carpetas de otros inludes.

no se puede abrir el archivo de recursos 'C:\Program Files\MetaTrader 5 DEV\MQL5\include\Arrays\res\test.bmp' (3) 0 0

La siguiente variante busca desde la "raíz" de MQL5

#resource "\\res\\test.bmp";

no se puede abrir el archivo de recursos 'C:\Program Files\MetaTrader 5 DEV\MQL5\res\test.bmp' (3) 0 0

También veo que cosas que antes funcionaban tampoco lo hacen (el archivo que está en MQL5/Images/res/test.bmp).

ObjectSetString(0,pname,OBJPROP_BMPFILE,0,"\\res\\test.bmp");

¿Me he perdido algo?

 
Vigor:

Ejemplo

¿Está todo en su sitio? Estoy buscando la ruta si #recurso en el archivo de EA, relativa al directorio fuente de EA.

No se puede abrir el archivo de recursos 'C:\NArchivos de Programa\NMetaTrader 5 DEV\NMQL5\NExpertos\Nmyexpert\\\Nde prueba.bmp' (3) 0 0

Si #resource está en el archivo de la inyección, todo va en un lugar y se mete en carpetas de otros inludes.

no se puede abrir el archivo de recursos 'C:\Program Files\MetaTrader 5 DEV\MQL5\include\Arrays\res\test.bmp' (3) 0 0

La siguiente variante busca desde la "raíz" de MQL5

no se puede abrir el archivo de recursos 'C:\Program Files\MetaTrader 5 DEV\MQL5\res\test.bmp' (3) 0 0

También me he dado cuenta de que algo que antes funcionaba tampoco lo hace (el archivo es MQL5/Images/res/test.bmp).

¿Me he perdido algo?



Creo que debería ser

MetaTrader 5 Client Terminal build 384

  1. Terminal: Se ha añadido un asistente para añadir agentes de prueba remotos. Además de la entrada manual y la importación desde un archivo *.mt5, se ha añadido la posibilidad de escanear una red local para encontrar un agente que funcione.
  2. MQL5: Se ha añadido la posibilidad de almacenar recursos en archivos *.ex5. Para añadir un recurso a *.ex5, utiliza la directiva #resource especificando la ruta del archivo relativa al directorio MQL5\Images del terminal cliente. Por ejemplo:#resource myexpert\button.bmp
    Los archivos en el recurso pueden ser referidos por una cadena como: " nombre_de_script::nombre_de_recursos". El nombre del archivo (sin extensión) pasado en la directiva #resource se utiliza como nombre del recurso.
Si se entiende correctamente, los archivos pueden ser localizados aquí - MQL5\Images\Directory name/file name.
 
Interesting:

Se ve así

MetaTrader 5 Client Terminal build 384

relativo al directorio MQL5\Images del terminal cliente. Por ejemplo:#recurso miexpertobotón.bmp

Esto es relativo y no funciona. y sin comillas. y la barra invertida es doble.
 
Vigor:
Esto es relativo y no funciona. y no puedes hacerlo sin comillas. y la barra invertida es doble.

Vamos a comprobarlo.

Así es como el #recurso "\Images\\\\Phoenix\\Logo.bmp" parece funcionar;

Aunque tiene un aspecto extraño (según la idea, debería buscar relativamente MQL5\Images, es decir, al menos debería tener este aspecto - #resource "\\\\Phoenix\\Logo.bmp").

O bien hacerlo relativo al directorio de Imágenes o corregir la descripción de la versión (para que todo sea lógico y comprensible)...

 
He proporcionado un ejemplo de carpeta MQL5 en los comentarios. Por cierto, tengo los mensajes de registro allí y muestra claramente DONDE el compilador busca los archivos.

Y, como escribí, OBJPROP_BMPFILE con ruta relativa desde la carpeta Images tampoco funciona. En general, según los últimos experimentos, todo funciona cuando se especifica la ruta completa a partir de \ de MQL5.

La pregunta era si esta innovación es válida. ¿O es un fenómeno temporal?

 
Vigor:
Tenía un ejemplo en mi comentario sobre la carpeta MQL5. Por cierto, tengo mensajes de registro allí y muestra claramente DONDE el compilador busca los archivos.

Pero se ve en todas partes, pero no donde se supone que es :(
 

¡Hola !

Código:

if (NormalizeDouble(Prices_Flow[0].Price_Position,4) != 0)
{
double Porcentaje_de_posición = Flujo_de_precios[0].Posición_del_indicador * 100 / Flujo_de_precios[0].Posición_del_precio;
//más código irrelevante para la pregunta
}


Al probar en el Probador de Estrategias al mismo tiempo en una de las herramientas se produce la división por cero (2011.02.08 01:40:23 Core 2 2010.08.02 00:00:00 División por cero en 'almirlib.mqh' (535,102))

¿Cómo es posible con el código anterior?