Errores, fallos, preguntas - página 489

 
Vigor:
Puede ver que el Asesor Experto trabaja con los precios de apertura de la barra horaria. El último precio de apertura fue de 23-00.

Error - m30, se puede ver incluso en mi foto. Encontré un error en el M5.

 
Swan:

El efecto logrado del corte es cuestionable, el número de impresiones se reduce en un 10%, y hay que ir al registro para obtener la información completa...

Comprobemos, cada 10 mensajes no deben ser cortados.


¿Escribir en un archivo es más rápido que mostrarlo en la pantalla?

Definitivamente es más rápido si hablamos de miles de líneas. La diferencia de velocidad es de unas 100 veces o más.
 
Renat:
Comprobemos, cada 10 mensajes no debe ser cortado.

Renat, ¿podrías hacer que el probador funcione con la hora actual?
Es muy útil cuando el mercado empieza a romperse claramente, pero hay que esperar al final de la jornada y no hay posibilidad de reoptimizar el sistema.

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

Renat, ¿podrías hacer posible que el probador funcione con la hora actual?
Es muy relevante cuando el mercado empieza a romperse claramente, pero hay que esperar al final de la jornada y no hay oportunidad de reoptimizar el sistema.

Hemos hecho deliberadamente que la fecha de corte sea la última para que no haya preguntas de "por qué dos pases idénticos dieron resultados diferentes". Desgraciadamente, esta es una situación masiva que también afecta a todos los resultados de la optimización. Desde la inclusión de la puntuación hasta el último minuto, todos tendrán demasiados problemas.

Tal vez hagamos un ajuste en el futuro.

 
Renat:

Hemos hecho deliberadamente que la fecha de corte sea la última para que no haya preguntas de "por qué dos pases idénticos dieron resultados diferentes". Desgraciadamente, esta es una situación masiva que también afecta a todos los resultados de la optimización. Desde la inclusión de la puntuación hasta el último minuto todos tienen demasiados problemas.

Tal vez hagamos un ajuste en el futuro.

Estaría muy bien conseguir una configuración así, aunque se podría simplificar... Al inicio de la optimización se recuerda la fecha "hora actual".
y hasta que se inicie la siguiente optimización el probador opera con ella como límite derecho del rango, también en las pruebas. Entonces, los mismos recorridos darán los mismos resultados. Las ovejas están bien y los lobos están satisfechos ))))

¿Qué pasa con el abandono de la última hora en las pruebas? Además, me he dado cuenta de que el probador no se pone en marcha a partir de las 00:00:00 sino cuando tiene que hacerlo (ver imagen).

Además, al crear un Asesor Experto multidivisa me encontré con un problema.
Durante las pruebas, las cotizaciones obtenidas para un determinado símbolo en el mismo momento varían en función del nombre del gráfico (ver imagen).
El resultado total del sistema para muchos símbolos puede cambiar significativamente debido a estas fluctuaciones de precios, especialmente para los plazos inferiores a una hora (H1).

 
crOss:

Además, me he dado cuenta de que el probador no se pone en marcha a las 00:00:00 sino cuando tiene que hacerlo (ver imagen).
El probador inicia las pruebas en 100 bares desde el principio para evitar posibles errores al trabajar con un historial vacío. Por lo tanto, la prueba no comienza a las 00:00:00
 
crOss:

Además, me encontré con un problema al crear un Asesor Experto multidivisa.

Durante las pruebas, las cotizaciones obtenidas para un determinado instrumento en un mismo momento cambian en función del nombre que tenga el gráfico (véase la imagen).
El resultado total del sistema para muchos símbolos puede cambiar significativamente debido a estas fluctuaciones de precios, especialmente para los marcos temporales inferiores a una hora (H1).

Intenta mostrar el área del problema con más detalle, por favor. La imagen adjunta no es muy clara.

 
Renat:
El probador comienza a probar en 100 bares desde el principio para evitar posibles errores al trabajar con un historial vacío. Por lo tanto, la prueba no comienza a las 00:00.

Lo más probable es que no esté vacía y puedas comprobarlo, y el comprobador debería funcionar en consecuencia (si está vacía, retrocede 100 compases, si no lo está, empieza desde las 00:00).
BIEN. Supongamos que a partir de la 100ª barra desde el inicio - timeframe 5 minutos, 100 barras = 500 minutos / 60 ~ 8,3 horas. Y la prueba comienza después de 2 horas. Tampoco tiene sentido.
¿A dónde va la última hora
? El probador termina a las 23:00 en el límite antes de la fecha actual. ¿Por qué no a las 23:59:59? La última hora no es superflua en absoluto )))

Renat:

Intenta mostrar el área del problema con más detalle, por favor. La imagen adjunta no es muy clara.

El Asesor Experto tiene un manejador OnTick() de la siguiente forma:

void OnTick()
{
double ask = SymbolInfoDouble("EURCHF", SYMBOL_ASK);
double bid = SymbolInfoDouble("EURCHF", SYMBOL_BID);

Print("ask: ", ask, " bid: ", bid);
}

Durante una prueba en el gráfico del EURUSD obtenemos cotizaciones diferentes a las de una prueba en el gráfico del EURCHF (por ejemplo),
Aunque el rango y el marco temporal de la prueba, así como el símbolo para el que recibimos las cotizaciones SymbolInfoDouble("EURCHF",...) no cambian.
Así, resulta que los resultados de una prueba varían en función del símbolo seleccionado. Deberían ser los mismos.



 
Renat:
El resultado depende totalmente del propio examinador y de su sensibilidad al flujo de precios. Los resultados son más precisos cuando se comprueban por ticks.
Creo que este fenómeno es posible si en mis cálculos el Asesor Experto utiliza la barra actual que se está formando.
 

crOss, lo que pasa es que si eliges diferentes herramientas a la hora de probar la multidivisa, los resultados pueden ser diferentes si usas OnTick. Especialmente cuando se ejecuta el Asesor Experto en los precios abiertos.

La barra de un instrumento siempre se abre antes que la barra de otro instrumento, porque los ticks siempre siguen el mismo flujo. Y un tick de un instrumento siempre será anterior a un tick de otro instrumento, aunque estén marcados con la misma hora. Por cierto, una barra puede abrirse no exactamente a los 0 segundos, sino en algunos segundos o incluso minutos.

Es decir, si hace la prueba en la apertura de una barra de un instrumento, la barra correspondiente de otro instrumento aún no se ha abierto. Y si comprueba la apertura de una barra de otro símbolo, la barra correspondiente del primer instrumento ya se ha abierto.

Por eso puede haber una diferencia

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Ценовые константы - Документация по MQL5