Errores, fallos, preguntas - página 231

 
fellow:
El búfer del indicador es incómodo de leer: no desde la última barra ((

Dirección de indexación en matrices y series temporales

Cambio de dirección de indexación

La función ArraySetAsSeries() permite cambiar la forma de acceder a los elementos de una matriz dinámica, pero no cambia físicamente la forma en que se almacenan los datos en la memoria. Esta función simplemente cambia la forma en que se direccionan los elementos de la matriz, de modo que cuando se copia una matriz en otra utilizando ArrayCopy(), el contenido de la matriz de destino no dependerá de la dirección de indexación en la matriz de origen.

No se puede invertir el sentido de la indexación de las matrices distribuidas estáticamente. Incluso si el array se pasó a una función como parámetro, los intentos de cambiar la dirección de indexación dentro de esta función no conducirán a nada.

Para los buffers de indicadores, al igual que para las matrices habituales, también se permite establecer el sentido de indexación hacia atrás como en una serie temporal, es decir, el acceso a la posición cero del buffer de indicadores en este caso significará el acceso al último valor del buffer de indicadores correspondiente, y corresponderá al valor del indicador en la última barra. Al mismo tiempo, la disposición física de los datos en el búfer del indicador no cambiará, como se ha mencionado anteriormente.

 

stringo:
#property tester_file "bla-bla-bla"

Rosh:

Propiedades del programa

indicador_de_prueba

cadena

Nombre del indicador personalizado en el formato "nombre_del_indicador.ex5" .Los indicadores necesarios para las pruebas se determinan automáticamente a partir de la llamada a la función iCustom(), si el parámetro correspondiente se especifica como una cadena constante. Para otros casos (uso de la función IndicatorCreate() o uso de una cadena no constante en el parámetro que define el nombre del indicador) necesitamos esta propiedad

archivo_de_prueba

cadena

Nombre del archivo para el probador, especificando su extensión, encerrado entre comillas dobles (como una cadena constante). El archivo especificado se pasará al probador para su funcionamiento. Los archivos de entrada para las pruebas, si son necesarios, deben especificarse siempre

biblioteca_de_prueba

cadena

Nombre de la biblioteca con extensión, entre comillas. Una biblioteca puede tener tanto una extensión dll como una extensión ex5. Las bibliotecas necesarias para las pruebas se detectan automáticamente. Sin embargo, si alguna biblioteca es utilizada por un indicador personalizado, debe utilizar esta propiedad

Gracias por la aclaración, una función muy útil. Es que nunca hubiera pensado que esta pregunta debía buscarse en esta sección.

Me emocioné un poco al devolver los datos al archivo desde el agente.

Está claro que transferir un archivo completo por Internet es una tarea completamente diferente a devolver un valor.

 
Urain:

Gracias por la aclaración, una función muy útil. Nunca hubiera pensado que esta pregunta tuviera que ser buscada en esta sección.

Me he animado a devolver los datos a un archivo del agente.

Está claro que transferir un archivo completo por Internet es una tarea de volumen muy diferente a la de devolver un valor.

Pasar el archivo de configuración/datos al agente remoto es sólo la mitad de la tarea.

¿Y cómo obtener el valor devuelto por la función OnTester() de vuelta a la máquina local (en caso de optimización de la función definida por el usuario, que es exactamente la razón para bailar con el paso de un archivo) del agente remoto? Este es el valor de retorno que obtiene el optimizador del probador (si no, la optimización mediante agentes remotos sería imposible), no el programa del usuario.

Документация по MQL5: Основы языка / Функции / Функции обработки событий
Документация по MQL5: Основы языка / Функции / Функции обработки событий
  • www.mql5.com
Основы языка / Функции / Функции обработки событий - Документация по MQL5
 
joo:

Pasar el archivo de configuración/datos al agente remoto es sólo la mitad de la tarea.

¿Y cómo devolver a la máquina local el valor devuelto por OnTester() (en caso de optimización de la función definida por el usuario, que es para lo que sirve el baile de transferencia de archivos) de un agente remoto? Este es el valor de retorno que obtiene el optimizador del probador (de lo contrario, la optimización mediante agentes remotos sería imposible), pero no el programa del usuario.

Para analizar el archivo de registro.
 
Urain:
Descomprimir el archivo de registro.
Hmm, efectivamente.
 

ahora el indicador iCustom no puede cargar. no he cambiado nada en el código y funcionaba bien en la build 362.

2010.12.14 23:18:05 Core 1 2010.01.04 00:00:00 Experto eliminado porque el indicador 43 no puede cargar [4802]
2010.12.14 23:18:05 Error en la carga del núcleo 1 de FEOP EURUSD,H1

De lo contrario, el proceso de conseguir un terminal más o menos funcional nunca se terminará...

 
Voodoo_King:

ahora el indicador iCustom no puede cargar. no he cambiado nada en el código y funcionaba bien en la build 362.

2010.12.14 23:18:05 Core 1 2010.01.04 00:00:00 Experto eliminado porque el indicador 43 no puede cargar [4802]
2010.12.14 23:18:05 Error en la carga del núcleo 1 de FEOP EURUSD,H1

De lo contrario, el proceso de conseguir un terminal más o menos funcional nunca se terminará...

Intenta recompilarlo por separado
 
Después de actualizar a la compilación 368, los expertos y los indicadores deben ser recompilados
 

Tengo problemas similares. No funciona en el Probador de Estrategias.

2010.12.14 22:01:07 Core 1 2010.01.01 00:00 Experto eliminado porque el indicador 43 no puede cargar [4802]
2010.12.14 22:01:07 Core 1 carga de Fatpanel\panel EURUSD,M1 falló

Este problema se resolvió antes de

#property tester_indicator "Fatpanel//panel.ex5"

Todo ha sido recompilado.

 
Un problema similar. Terminal actualizado, todos los indicadores recompilados, comprobados varias veces. Pero tengo el mismo error en el probador (build 368)
Razón de la queja: