Errores, fallos, preguntas - página 208

 
Ashes:

Justo arriba escribiste:

Esa puede haber sido la intención, pero... Realización de un experimento de campo (construcción 358).

Borro todos los símbolos de la carpeta "C:\NProgram Files\MetaTrader 5\Bases\Alpari-Demo\history"

Me conecto a Alpari-Demo (el terminal tiene 5 gráficos abiertos: EURUSD H1, EURCHF H1, USDJPY H1, GPBUSD H1+M1).

Unos minutos más tarde puedo ver la imagen (el historial todavía se está descargando):

Contenido de la carpeta C:\NArchivos de programa\NMetaTrader 5\NBases de datos\NdeAlpari-Demo\Nhistoria

Gracias por su mensaje. Lo investigaremos.
 
Interesting:

...

Si he entendido bien, el tamaño de los archivos del historial se encuentra en el directorio de la terminal, que se indica con la ubicación del directorio "de trabajo" - C:\NArchivos de Programa\NMetaTrader 5\NBases\Alpari-Demo\Nhistory\EURJPY

El probador tiene su propia carpeta para estos datos - C:\NArchivos de Programa\NMetaTrader 5\N-agente(número de agentes)\N-bases\NDC u otro broker (servidor)\N-historia\N....

¿Cuál es el problema entonces?

El problema es la falta de voluntad de leer el mensaje original con atención ;)

En realidad hay 2 archivos (2009, 2010) en la carpeta del probador, pero al iniciar por primera vez el probador para un símbolo específico se descarga todo el historial (si no se ha descargado o borrado antes) a la carpeta "x:\NProgram Files\MetaTrader 5\Bases\...", y hasta que no se descargue completamente esta información, no se inicia la prueba.

No me importa duplicar los datos de\MetaTrader 5\Bases en MetaTrader 5\Tester\Agent(por número de agentes)\Nya que entiendo que se trata de una instantánea del estado de los ticks para asegurar la identidad absoluta de las cotizaciones durante la enumeración de la optimización. Pero, ¿por qué cargar datos que son absolutamente innecesarios en este momento?

 
Ashes:

El problema es la falta de voluntad de leer el post original con atención ;)

En realidad hay 2 archivos (2009, 2010) en la carpeta del probador, pero en el primer lanzamiento del probador en un símbolo específico se descarga todo el historial (si no se ha descargado o eliminado antes) a la carpeta "x:\Program Files\MetaTrader 5\Bases\...", y hasta que no llene esta información innecesaria, la prueba no se iniciará.

No me importa duplicar los datos de\MetaTrader 5\Bases en MetaTrader 5\Tester\Agent(por número de agentes)\Nya que entiendo que se trata de una instantánea del estado de los ticks para asegurar la identidad absoluta de las cotizaciones durante la enumeración de la optimización. Pero, ¿por qué cargar datos que son absolutamente innecesarios en este momento?

Lo comprobaré, tal vez esté muy equivocado y haya que pensar en algo.
 
Renat:
El historial se ha cargado correctamente - significa que hubo una solicitud para el año 2004. Y cuando se utiliza el probador, todo el historial se carga definitiva y correctamente hasta la máxima profundidad - es una decisión absolutamente correcta y consciente. Basta con ver las exclamaciones "incomprensibles" de los usuarios de MT4 para entenderlo: si no nos ocupamos del historial, los usuarios ni siquiera podrán controlar el historial.

Vuelva a leer mi respuesta, por favor.

No nos limitamos a descargar y comprobar todo el historial. Si se utiliza un prob ador, inevitablemente (no en esta prueba, sino en la siguiente) supondrá un trabajo completo e incondicional con todo el historial, independientemente de que en esta prueba concreta se utilice un pequeño periodo del historial. Por lo tanto, el terminal prepara de antemano y vuelve a comprobar por completo la profundidad y la corrección de todo el historial del símbolo deseado. Por supuesto, sólo se pasa/sincroniza el intervalo de historia necesario a un agente de prueba específico para una prueba concreta.

Dado que los operadores tienden a no fijarse en las reglas de preparación correcta de las condiciones para la prueba, el terminal trata de preparar y volver a probar el entorno en la medida de lo posible. En MetaTrader 5, hemos eliminado específicamente la limitación del volumen y la profundidad de los datos solicitados, para que los operadores no tengan que descargar y sincronizar manualmente los datos.

Документация по MQL5: Получение рыночной информации / SymbolIsSynchronized
Документация по MQL5: Получение рыночной информации / SymbolIsSynchronized
  • www.mql5.com
Получение рыночной информации / SymbolIsSynchronized - Документация по MQL5
 
Interesting:

1. probador de estrategias

Al realizar la prueba, el comprobador sólo carga un par especificado en los parámetros del comprobador. Si la optimización se realiza para todos los símbolos, cada símbolo se cargará secuencialmente.

Si el Asesor Experto es multidivisa, los demás símbolos deben cargarse de forma independiente.

La idea es la siguiente

а. El probador tiene su propio resumen de mercado, en el que inicialmente sólo se establece el par especificado en los parámetros del probador.

б. Si es necesario, se pueden añadir otros pares a la visión general del mercado del probador desde un EA, utilizando Select.

в. El probador de estrategias sincroniza los datos con el terminal, que a su vez los sincroniza con el servidor de operaciones (donde se abre la cuenta).

En este caso, se carga el historial de todo el periodo de pruebas + una cierta cantidad de información anterior a la fecha de las pruebas (si no me equivoco, 1 año).

в. Si el Asesor Experto (usted) no está satisfecho con la profundidad requerida la historia debe ser cargada de forma independiente. Por ejemplo, en el bloque de inicialización, después de comprobar el historial y la sincronización de los datos.

a. lógicamente

b. es decir, en el caso general, es IMPOSIBLE descargar todo lo que el Asesor Experto necesita durante las pruebas (a menos que se descargue absolutamente todo).

c. es decir, antes del inicio del EA en el probador, los pares correspondientes aún no están disponibles en la visión general del mercado del probador (según el punto a.)

c(2). la profundidad está bien, no pedí más.

Así, es más lógico (pero un poco más complicado) descargar los datos según b, c, c(2) cuando accedemos a los datos en el Asesor Experto.

Sugiero añadir #property tester_symbol para rellenar la tabla del punto a (si la idea está bien descrita), con la posibilidad de establecer varias, como #property description. Pero sigo convencido de que en ausencia de #property tester_symbol la paginación debe ir "como juego" (excepto el carácter base), ya que su REALIDAD depende únicamente del algoritmo del propio EA.

Interesante:

2. terminal

Aquí el historial se forma de forma similar (según tengo entendido, según los símbolos indicados en la revisión de mercado del terminal, teniendo en cuenta los gráficos abiertos). Cuando se empieza a trabajar con el terminal, se forma un mínimo necesario de historia para los símbolos con los que se trabaja (no recuerdo el número exacto de barras, pero se ha mencionado repetidamente en el foro).

Si esta profundidad del historial no le conviene, los datos deben cargarse manualmente. Para ello, cambie al mes máximo (una de las opciones recomendadas) y, con el desplazamiento hacia la izquierda del gráfico, cargue el historial hasta la profundidad máxima.

También sería deseable establecer el número necesario de barras en el gráfico en los parámetros del terminal.

Resulta que en este caso no es necesario un mínimo, sino toda la historia del símbolo, con la que estamos trabajando.

Una observación (la compilación ha cambiado en 360): si modificamos ligeramente las condiciones - no borrar toda la carpeta del historial después de la descarga inicial y dejar el año actual en ella, ¡los años anteriores no se intercambiarán automáticamente! Hasta que el probador se ejecute en este personaje.

 
Renat:

Vuelva a leer mi respuesta, por favor.

No descargamos y volvemos a analizar todo el historial por una razón. Si se utiliza un prob ador, inevitablemente (no en esta prueba, sino en la siguiente) significa un trabajo completo e incondicional con todo el historial, independientemente de que en esta prueba en particular se utilice un pequeño periodo del historial. Por lo tanto, el terminal se prepara de antemano y vuelve a comprobar por completo la profundidad y la corrección de todo el historial del símbolo deseado. Por supuesto, sólo se pasa/sincroniza el intervalo de historia necesario a un agente de prueba específico para una prueba concreta.

Dado que los operadores tienden a no fijarse en las reglas de preparación correcta de las condiciones para la prueba, el terminal trata de preparar y volver a probar el entorno en la medida de lo posible. En MetaTrader 5, hemos eliminado a propósito la limitación del volumen y la profundidad de los datos solicitados, para que los operadores no tengan que descargar y sincronizar manualmente los datos.

¡Eso es sólo para "tener"! Para el próximo uso del probador, el historial podría ser corregido (especialmente ahora, cuando tiene un montón de defectos en diferentes empresas de corretaje, desde la ausencia completa, a los datos torcidos).

¡El usuario no entiende la felicidad que ha caído sobre él! Añade en la configuración la casilla "NO LO QUIERO, sólo lo quiero cuando lo pida el usuario o el experto/script/indicador". Y "NO quiero actualizaciones automáticas forzadas de MT5" también.

 
Ashes:

a. lógicamente

b. es decir, en general, es IMPOSIBLE bombear todo lo que el EA necesitará durante las pruebas ANTES DE COMENZAR (a menos que se bombee absolutamente todo).

c. es decir, antes del inicio del EA en el probador, los pares correspondientes aún no están disponibles en la visión general del mercado del probador (según el punto a.)

c(2). la profundidad está bien, no pedí más.

Así, es más lógico (pero un poco más complicado) descargar los datos según b, c, c(2) cuando accedemos a los datos en el EA.

Sugiero añadir #property tester_symbol para rellenar la tabla del punto a (si la idea está bien descrita), con la posibilidad de establecer varias, como #property description. Pero todavía convencido de que en la ausencia de #property tester_symbol paginación debe ir "como juego" (excepto el carácter de base), ya que su REALIDAD depende únicamente del algoritmo de la propia EA.


Estas funciones son convenientes (y bastante suficientes) para formar la lista de símbolos en el probador

Obtención de datos de mercado

Funciones para obtener información sobre las condiciones del mercado.

La función

Acción

SímbolosTotal

Devuelve el número de símbolos disponibles (seleccionados en MarketWatch o todos)

NombreSímbolo

Devuelve el nombre del símbolo especificado

SymbolSelect

Selecciona un símbolo en MarketWatch o elimina el símbolo de la ventana

 
"¿Utiliza a menudo el redimensionamiento de matrices? A veces te hierve la cabeza y no sabes por qué aparece el mensaje"Array fuera de rango en...". "¡Entonces vamos hacia ti!" :D

-Comprobar si ArrayResize() devuelve "-1"?

Antes aparecía un mensaje como "Out of memory" y el programa se bloqueaba - ahora no.

Документация по MQL5: Операции с массивами / ArrayResize
Документация по MQL5: Операции с массивами / ArrayResize
  • www.mql5.com
Операции с массивами / ArrayResize - Документация по MQL5
 

Construye 360. Parece un error en CTrade:

2010.10.04 18:59:00 CTrade::PositionOpen: compra instantánea de 0,10 EURUSD a 1,36890 sl: 1,36390 tp: 1,37890 [hecho a 0,00000]

2010.10.05 09:43:00 CTrade::PositionModify: modificar comprar 0.00 EURUSD (sl: 1.36897, tp: 1.37861) [hecho]

 

Construye 360. Varias veces en el probador había mensajes "agente probador falló"

GK

0

Tester

18:26:31 EURUSD: historial de descarga preliminar iniciado

CL 0 Tester 18:28:55 EURUSD: historial de descarga preliminar completado

GH 0 Core 2 18:28:59 proceso de agente iniciado

HP 0 Core 2 18:29:00 conectando a 127.0.0.1:3000

OI 2 Tester 18:29:05 tester agent got failed

LI 0 Core 2 18:29:05 connect closed

GN 0 Core 2 18:34:14 agent process started

KJ 0 Core 2 18:34:14 connecting to 127.0.0

.

1:3000

RJ 0 Core 2 18:34:15 conectado

OP 0 Core 2 18:34:15 autorizado (agente build 360)

NH 0 Tester 18:34:15 EURUSD,M1 (Alpari-Demo): prueba de experts\third.ex5 desde 2010.10.04 00:00 hasta 2010.11

.

05 00:00:00 para ser iniciado

...

HQ

0 Core 2 19:

27:47 proceso de agente iniciado

II 0 Core 2 19:27:48 conectando a 127.0.0.1:3000

CP 2 Tester 19:27:53 agente tester falló

HP 0 Core 2 19:27:53 conectar cerrado

KI 0 Core 2 19:28:10 conectando a 127.0.0.1:3000

QL 0 Núcleo 2 19:28:10 conectado

PN 0 Núcleo 2 19:28:10 autorizado (agente build 360)

RJ 0 Probador 19:28:10 EURUSD,M1 (MetaQuotes-Demo): prueba de experts\third_alptest2.ex5 de 2010.10.04 00:00 a 2010.11.05 00:00 a iniciar

MF 0 Núcleo 2 19:28:11 sincronización común completada

IM 0 Núcleo 2 19:28:11 3124 bytes de información de cuenta

cargados

Razón de la queja: