Servicios , nueva funcionalidad en la arquitectura de MT5, el funeral de MT4 está a la vuelta de la esquina. - página 6

 
Petros Shatakhtsyan:


Sí, pero también hay que tener en cuenta que sólo hay un temporizador, no así VC++, y si tienes muchas comprobaciones de tiempo, puedes perder muchos ticks, y todo se volverá papilla.

No es un problema. Sólo en un temporizador se hace una comprobación cada vez que se inicia el temporizador y las otras X segundos después de la última comprobación pertinente.
 
Alexey Kozitsyn:
No es un problema. Es que en un temporizador se hace una comprobación cada vez que se ejecuta el temporizador, y las otras X segundos después de la última comprobación pertinente.


No lo entiendo. ¿Sabes cuánto cuesta hacer funcionar un temporizador. ¿Es posible ejecutarlo más de una vez?

He dicho que cada tic es importante y tú estás hablando de segundos. Todos ellos deben trabajar en paralelo, independientemente unos de otros.

 
Petros Shatakhtsyan:


No lo sé. ¿Sabes cuánto cuesta el funcionamiento del temporizador? ¿Es posible ejecutarlo más de una vez?

He dicho que cada tic es importante y tú estás hablando de segundos.

Poner en marcha el temporizador cuesta exactamente lo que se necesita para la tarea si no se puede hacer de otra manera. No es necesario que se ejecute muchas veces, basta con hacer una comprobación 3 veces de cada 3 recorridos y otra 1 vez de cada 3. Espero que la idea esté clara ahora.

 
Petros Shatakhtsyan:


Sería ineficiente si EA maneja cada tick, incluso si se utilizan milisegundos en el temporizador.

Necesito una forma más fácil de obtener todos los ticks directamente desde la visión general del mercado.

Un OpTisk a través no es posible, porque sólo funciona cuando el siguiente tick viene donde el EA está parado.


La variante es ejecutarlo en el símbolo más volátil. Por supuesto, habrá alguna pérdida... pero habrá una pérdida en la velocidad de ejecución de la lógica de todo el EA
 
Maxim Dmitrievsky:

Bueno, como una opción que se ejecuta en el símbolo más volátil. por supuesto que habrá alguna pérdida ... pero también habrá una pérdida en la velocidad de ejecución de toda la lógica de EA


Por eso te dije que hicieras otro OnTick que recibiera los ticks de todos los símbolos que están actualmente disponibles en la visión general del mercado. Una variante sencilla y rápida.

Y no sólo eso. También debe tener una función que devuelva el apalancamiento real que tiene cada símbolo.

 
Petros Shatakhtsyan:


Y así dijo que hiciera otro OnTick, que obtuviera los ticks de todos los símbolos disponibles actualmente en el panorama del mercado. Una opción sencilla y rápida.

En realidad, OnTick() se salta los ticks. Incluso OnCalculate() se salta los ticks. Además, las garrapatas pueden venir en manada. Por lo tanto, el temporizador no es algo muy costoso, más aún cuando se analizan muchos personajes. Lo principal es que el cálculo sea rentable.
 
Alexey Kozitsyn:
En realidad, OnTick() se salta los ticks. Incluso OnCalculate() se salta los ticks. Además, las garrapatas pueden venir en manada. Por lo tanto, el temporizador no es algo muy costoso, más aún cuando se analizan muchos personajes. Lo principal es hacer un cálculo económico.

Bueno, también puedes hacerlo a través de un temporizador. Lo bueno es que tenemos EventSetMillisecondTimer pero lo malo es que también inicia OnTimer. Deberíamos haber añadido OnMillisecondTimer.
 
Petros Shatakhtsyan:

Bueno, puedes hacerlo con un temporizador. Es bueno que exista EventSetMillisecondTimer, pero es malo que también inicie OnTimer. Deberías haber añadido OnMillisecondTimer.

¿Qué le impide hacerlo así?

void OnTimer()
{
if( condition1 )
   {...копируем тики...}
if( condition2 )
   {...иной расчет, который не нужно запускать так часто, как condition1...}
}
Y en general, sería bueno si añadimos el campo de símbolo como el manejador OnBookEvent().
 
Alexey Kozitsyn:
En realidad, OnTick() se salta los ticks. Incluso OnCalculate() se salta los ticks. Además, las garrapatas pueden venir en manada. Por lo tanto, el temporizador no es algo muy costoso, más aún cuando se analizan muchos personajes. Lo principal es hacer un cálculo económico.

El temporizador también se saltará los ticks, si necesitas contarlos hasta el tick, tienes que contarlos por el volumen de ticks que hay... pero tampoco te salvará... los ticks pueden venir muy rápido y en tandas, sí
 
Maxim Dmitrievsky:

el cronómetro también fallará, si necesitas ir directamente a la garrapata tienes que llevar la cuenta de ellas, por el volumen de garrapatas que hay... pero tampoco ahorrará... las garrapatas pueden venir muy rápido y mucho, sí
Nada puede salvar eso. No se pueden procesar absolutamente todas las garrapatas.
Razón de la queja: