Características del lenguaje mql5, sutilezas y técnicas - página 73

 
Kirill Belousov:

En el precio de cierre, encuentre la vela en una casa de bolsa no afectada en la historia donde usted sabe el GMTOffset. La diferencia entre los tiempos de las velas dará la diferencia entre los GC. Añade a la diferencia la GMT de la conocida y obtendrás la diferencia GMT de la desconocida.

Nunca se sabe la hora del servidor de comercio. Sólo se conoce la hora de la última cotización del símbolo.

Lo más probable es que los candelabros duren una hora.

Pues esto no es una forma seria de encontrarlo, vete a algún otro terminal.

¿Qué otras variantes hay?

 
Vitaly Muzichenko:

Pues eso no es una forma seria de encontrarlo, vete a otra terminal.

qué otras opciones7

llame al corredor o busque en el sitio web

Probablemente puedas desvincular las cartas a través de la web sin necesidad de ir a otro terminal.

P.D. ¿Cuál es exactamente el problema por el que se necesita el tiempo de un corredor desconocido?

 
Kirill Belousov:

llame al corredor o busque en el sitio web

Tengo que averiguarlo a nivel de software)

 
Vitaly Muzichenko:

Tengo que averiguarlo a nivel de software)

¿Y cuál es la tarea, en la que se necesita el tiempo de un corredor desconocido?

 
Kirill Belousov:

¿Cuál es la tarea real en la que necesita el tiempo de un agente desconocido?

Foro sobre trading, sistemas de trading automatizados y pruebas de estrategias de trading

Peculiaridades de mql5, consejos y trucos

Vitaly Muzichenko, 2018.03.25 21:34

Pero así los candelabros también mostrarán la hora del servidor.

Supongamos que ahora he iniciado el terminal de cualquier distribuidor, no hay cotizaciones, pero hay la última registrada enla visión general del mercado a las 23:58, pero con lo que el desplazamiento GMT funciona - no sé.

¿O es que ya soy tonto y se puede descubrir muy fácilmente?

P.D. Supongamos que me pierdo en el tiempo y dejo de distinguir entre día/noche, días de la semana, hora.

¿Cómo saber que no hay cotizaciones porque es fin de semana, o por ejemplo el jueves no hay cotizaciones, porque el servidor está colgado en la sala de operaciones?

Veo esa solución, pero no veo cómo implementarla si no tengo tiempo en el servidor de comercio:

if( TimeCurrent()<TimeServer()-60 ) return( "нет котировок уже 1 минуту" );

 
Vitaly Muzichenko:

Ponga en marcha un temporizador y compruebe cómo van las cotizaciones.

Si no han cambiado durante mucho tiempo, significa que la empresa de corretaje cuelga, o que es jueves o fin de semana)

 
Kirill Belousov:

Ponga en marcha un temporizador y compruebe cómo van las cotizaciones.

Si no ha habido ningún cambio durante mucho tiempo, significa que o bien la BC está colgada o es jueves o fin de semana ))

El temporizador se pone en marcha, hay TimeCurrent(). ¿Qué hacer después, qué comparar? Se puede escribir en Ontika con la hora de la última garrapata y compararla con ella.

¿No hay otra solución?

PS.TimeServer() // la hora del servidor de comercio sería muy útil
 
Vitaly Muzichenko:

El temporizador está en marcha, TimeCurrent() está disponible. Pero, ¿con qué compararlo? Es posible escribir la hora del último tick en Ontic, y compararla con él.

¿No hay otra solución?

PS.TimeServer() // la hora del servidor de comercio sería muy útil

TimeCurrent() dentro de OnTimer() muestra la hora del último tick de todos los instrumentos de Market Watch.

Dentro de OnTick() muestra la hora de la última cotización del símbolo actual.

Se fija el hecho del cambio en las Variables Globales.

Y en cada llamada de OnTimer() lo comparas.

Si se inicia otro temporizador y la hora de llegada de la cotización no ha cambiado - se empieza a contar el tiempo de no cotización.

Sacas conclusiones y reaccionas.

Además, dispone de sesiones de cotización y negociación para cada instrumento. A partir de ahí puedes saber si es un momento de negociación o no.

P.D. Por lo que he entendido no se necesita una hora de servidor. Es necesario establecer la ausencia de comillas.

 
Kirill Belousov:

TimeCurrent() dentro de OnTimer() muestra la hora de llegada del último tick de todos los instrumentos de Market Watch.

Se fija el hecho del cambio en las Variables Globales.

Y en cada llamada de OnTimer() lo comparas.

Si el temporizador se pone en marcha y la hora de llegada de la cotización no ha cambiado - se inicia la cuenta atrás para la hora de no cotización.

Sacas conclusiones y reaccionas.

Además, dispone de sesiones de cotización y negociación para cada instrumento. A partir de ahí, puede averiguar si es un momento de negociación o no.

P.D. Por lo que he entendido no se necesita una hora de servidor. Es necesario establecer el hecho de la ausencia de cotizaciones.

Es muy caro en términos de productividad.

A menudo se les vendan los ojos.


 
No lo he comprobado.

Foro sobre comercio, sistemas de comercio automatizados y prueba de estrategias de comercio

Historial de ofertas dentro de OnTesterPass

Anthony Garot, 2018.03.29 02:34

Hoy he investigado un poco más sobre esto.

Parece que cuando se utilizan agentes de la Red Local no se puede abrir un archivo en el evento OnTester().

Sé que OnTester() está disparando porque los datos establecidos en OnTester() se pasan de vuelta a OnTesterPass() desde los agentes a través de marcos.

Así que mi enfoque de volcar los datos a un archivo desde OnTester() sólo funciona para los Agentes Locales, no para los Agentes de Red Local, y presumiblemente no para los Agentes de Red en la Nube MQL5.