Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Después de una llamada exitosa a CopyTicks offline, GetLastError devuelve 4403.
Lo haré a través de CopyTicksRange, pero el comportamiento de CopyTicks parece correcto para cambiar.
CopyTicks (build 1881) devuelve datos más antiguos que los solicitados, si no se solicitan ticks frescos. Es decir, devuelve datos más antiguos que de parámetro. El error es flotante - aparece en diferentes momentos, así que escribí un pequeño código que lo reproduce. Lo ejecuté en tester en EURUSD H1, 2017.08.01 - 2018.08.01.
Este es el resultado:
2018.10.17 21:31:26.221 2017.08.01 12:00:00 dt[0]=2017.08.01 03:00:00
2018.10.17 21:31:26.221 2017.08.01 12:00:00 cnt=2000
2018.10.17 21:31:26.221 2017.08.01 12:00:00 ERROR: i=0, ticks[i].time_msc=1501552175606 (2017.08.01 01:49:35)
Es decir, solicitamos a partir de las 03:00 y recibimos a partir de las 01:49. En condiciones reales, la diferencia era de más de un mes.
Esta es una pregunta para los expertos. ¿Qué errores potenciales puede haber con este método de obtención de garrapatas frescas?
El orden de las garrapatas con el mismo tiempo no está garantizado, parece.
Foro sobre trading, sistemas de trading automatizados y pruebas de estrategias de trading
Ticks en tiempo real
Andrey Khatimlianskii, 2020.01.31 14:40
Por cierto, hayun excelente artículo de Vasily Sokolov sobre la correcta recogida de garrapatas. Allí se detalla el proceso de sincronización analógica (que no tengo, por lo que a veces se imprimen los mismos ticks):
Pero la función CopyTiks no permite solicitar N últimos ticks. En su lugar, proporciona todos los ticks, que provienen del momento de tiempo especificado. Esto complica la tarea. Debemos realizar una consulta, obtener un array de ticks y compararlo con un array de ticks, recibido en la actualización anterior. Al mismo tiempo, descubriremos cuáles de las garrapatas recién recibidas no forman parte del "suministro anterior", es decir, son nuevas. Pero es imposible comparar las garrapatas entre ellas directamente, simplemente porque puede que no haya ninguna diferencia visible entre ellas. Por ejemplo, veamos la siguiente tabla de ofertas:
Figura 5. Tabla de todos los tratos con un ejemplo de tratos idénticos.
Inmediatamente vemos dos grupos de garrapatas absolutamente idénticas. Están marcados con marcos rojos, tienen la misma hora, volumen, dirección y precio. Así, vemos que es imposible comparar las garrapatas individuales entre sí.
Pero es posible compararun grupo de garrapatas. Si dos grupos de ticks son iguales entre sí, podemos concluir que estos ticks y los siguientes ya fueron analizados durante la anterior actualización del precio.
El orden de las garrapatas con el mismo tiempo no está garantizado, parece.
Si te refieres a grupos de garrapatas, parece que no hay nada malo en el código.
Resultado (ejecutado en frío - inmediatamente después del arranque del Terminal).
Es posible desconectar el Asesor Experto, nada cambiará en cuanto al consumo del Terminal.