Mercado de valores. Acciones. Rapidez en la ejecución de las órdenes comerciales. - página 17

 
Andrey Miguzov #:

Supongamos que se trata de una "cocina". Es posible que nos envíen en sus registros que el tiempo de ejecución es de 1ms. ¿Cómo comprobarlo? Vaya a la bolsa y mire la hora allí - es la única manera de entender aproximadamente si estamos mintiendo o no.

Llevo varios años haciendo esto, demostrando a MQ que tienen un problema con los retrasos, cuando los retrasos eran de hasta 1 segundo,

había un diálogo, pero cuando los retrasos se "enrollaban" a 14-20 segundos, MQ detenía el diálogo.

Por lo tanto, para saber cómo se ha ejecutado realmente una orden se necesita un registro completo de órdenes en la bolsa,

Sin ella no se puede demostrar nada.

Lee aquí (por aquel entonces la bolsa aún daba datos, estamos en 2015)

https://www.mql5.com/ru/forum/38456/page23#comment_1445099

ФОРТС. Вопросы по исполнению
ФОРТС. Вопросы по исполнению
  • 2015.03.18
  • www.mql5.com
С большими проблемами удалось это сделать (начальник отдела по работе с профессиональными клиентами ДЦ Открытие Евгений Сергеевич,.
 
prostotrader #:

Llevo varios años haciendo esto, demostrando a MQ que tenían un problema de retrasos, cuando los retrasos eran de hasta 1 segundo,

había un diálogo, pero cuando los retrasos "subían" a 14-20 segundos, MQ detenía el diálogo.

Por lo tanto, para saber cómo se ha ejecutado realmente una orden se necesita un registro completo de órdenes en la bolsa,

Sin ella no se puede demostrar nada.

Lee aquí (por aquel entonces la bolsa aún daba datos, estamos en 2015)

https://www.mql5.com/ru/forum/38456/page23#comment_1445099

He seguido este hilo muy de cerca e incluso lo he releído varias veces.

Nadie nos dará el registro completo (todavía).

Pero mediante el algoritmo que he descrito anteriormente (donde T2-T1) podemos entender realmente una característica muy importante de nuestra ST - cuánto tiempo pasa desde la señal en la bolsa - hasta una transacción en la bolsa para esta señal. Y todo según la hora del intercambio (la cinta es la misma para todos).

 
Andrey Miguzov #:

Añadido al post anterior.

El algoritmo es el siguiente:

Recibimos un tick de la bolsa (tiempo de tick según la hora de la bolsa - T1)

Lo analizamos y decidimos enviar una orden de compra/venta utilizando el símbolo

Enviamos un pedido

La bolsa lo ejecuta y fija la hora de ejecución en la casilla (hora de la bolsa - T2)

Me interesa el tiempo = T2-T1

La hora T2 es exactamente la hora del intercambio, de lo contrario habrá discrepancias con otras fuentes, lo he comprobado - en todas partes lo mismo.

Pero la hora del tic T1, en la que se realiza la orden, no se sabe de dónde viene (no es hora de intercambio), por lo que es imposible obtener la respuesta (T2-T1).

Aquí es donde estudié el problema de la falta de comillas

https://www.mql5.com/ru/forum/381623#comment_25821280

Котировки Срочного рынка в МТ5
Котировки Срочного рынка в МТ5
  • 2021.11.10
  • www.mql5.com
Уважаемые модераторы! Перенесите, пожалуйста сообщения из темы "Клиринг по существу????* не относящиеся к клирингу, сюда...
 
prostotrader #:

La hora de la T2 es exactamente la hora de cambio, de lo contrario habrá discrepancias con otras fuentes, lo he comprobado - es la misma en todas partes.

Pero la hora del tick T1, en el que se realiza la orden, no se sabe de dónde viene (no es hora de intercambio), por lo que es imposible obtener una respuesta (T2-T1)

Aquí es donde estudié el problema de la falta de comillas

https://www.mql5.com/ru/forum/381623#comment_25821280

Esa es la cuestión: la T1 también es tiempo de intercambio. Lo he comprobado. Incluso en mis capturas de pantalla de arriba se puede ver.

La cinta de las operaciones se transmite desde la bolsa a través del corredor al terminal. Cuando llega un tick (grupo de ticks), aparece el evento OnTick. El tiempo de tic coincide con el tiempo de la cinta de tic (y del intercambio respectivamente). La hora de la garrapata será la misma para todos.


Hay un pequeño problema aquí - tomo el precio según el ticker, y el cambio del ticker no siempre da OnTick. Pero el error, si lo hay, será mayor.

 
Andrey Miguzov #:

Esa es la cuestión: el T1 también es tiempo de intercambio. Lo he comprobado. Incluso en mis capturas de pantalla de arriba se puede ver.

La cinta de las operaciones se transmite desde la bolsa a través del corredor al terminal. Cuando llega un tick (grupo de ticks), aparece el evento OnTick. El tiempo de tic coincide con el tiempo de la cinta de tic (y del intercambio respectivamente). La hora de la garrapata será la misma para todos.


Hay un pequeño problema aquí - tomo el precio según el ticker, y el cambio del ticker no siempre da OnTick. Pero el margen de error, si lo hay, será mayor.

No estoy seguro de que la hora de la garrapata sea la hora de la acción.

struct MqlTick 
  { 
   datetime     time;          // Время последнего обновления цен 
   double       bid;           // Текущая цена Bid 
   double       ask;           // Текущая цена Ask 
   double       last;          // Текущая цена последней сделки (Last) 
   ulong        volume;        // Объем для текущей цены Last 
   long         time_msc;      // Время последнего обновления цен в миллисекундах 
   uint         flags;         // Флаги тиков 
   double       volume_real;   // Объем для текущей цены Last c повышенной точностью 
  };

No está escrito donde la actualización en el terminal o en la bolsa.

 
prostotrader #:

No estoy seguro de que el tiempo de tic-tac sea el tiempo de las existencias.

No dice dónde está la actualización en el terminal o en la bolsa.

En el servidor.

 
prostotrader #:

No estoy seguro de que la hora de la garrapata sea la hora de la acción.

No dice dónde está la actualización en el terminal o en la bolsa.

Te respondo con tu propia cita (gracias por el enlace, el tema se me pasó):

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

MT5 cotizaciones del mercado de futuros

prostotrader, 2021.11.20 17:05

No se trata en absoluto de manejadores de eventos.

Hay dos formas de transmitir los mejores precios

1. Cortar en rodajas

2. la tabla difunde la información sobre el instrumento junto con los mejores precios.

No importa en absoluto si el evento es generado por el bombo o por la información del instrumento.

Lo importante es que la información sea la misma en todos los terminales, y en el historial de los distintos corredores

es diferente, las ofertas son las mismas en todas partes. No sé la diferencia, pero el ask y el bid suelen ser diferentes.

El algoritmo para obtener las peticiones y ofertas en ambos terminales MT5 en diferentes brokers es el mismo, por eso concluyo

que este algoritmo no funciona correctamente. Faltan comillas.


Hagámoslo de otra manera.

Tomo el tiempo T1 y T2 de la alimentación de las operaciones. No sabemos exactamente qué hora es, pero la fuente de referencia es la misma allí (de lo contrario sería un caos) y así podemos estimar la diferencia entre T1 y T2

Añadido:

Se cree aún más que el T1 es el momento del intercambio. Toda la información de la garrapata es de la bolsa. ¿Por qué molestarse en generar un tiempo de espera si TODA la información (incluida la hora) proviene del intercambio?

Además, escribí - confirmado por los registros e imágenes de las transacciones de la cinta

Y otra - si no es el momento del intercambio - no se puede comparar la cinta de ofertas para diferentes corredores. Y se compara con gran precisión (hay algunos fallos, pero es una minucia). Si tuviéramos diferentes fuentes de tiempo, no podríamos comparar.

 
Andrey Miguzov #:

Te respondo con tu propia cita (gracias por el enlace, el tema se me pasó):


Digámoslo de otra manera.

Tomo el tiempo T1 y T2 de la cinta de oficios. No sabemos exactamente qué hora es, pero la fuente de referencia es la misma allí (de lo contrario sería un caos) y por lo tanto podemos estimar la diferencia de T1 y T2

Añadido:

Se cree aún más que el T1 es el momento del intercambio. Toda la información de la garrapata es de la bolsa. ¿Por qué molestarse en generar un tiempo de espera si TODA la información (incluida la hora) proviene del intercambio?

Además, escribí - confirmado por los registros e imágenes de las transacciones de la cinta

Lo que sea, pero 2 MT5 funcionarán más rápido que una de las tuyas.

La cuestión es que, para combinar todos los datos de las diferentes secciones, se necesita un servidor especial propio que emita

información desde/hacia ASTS (sección Stock) y Spectra (Forts), así como importar secciones y transferirlas a un terminal.

Como hay un enlace intermedio, hay retrasos inevitables.

 

En realidad, la cuestión es insertar una línea antes de enviar el pedido:

Print(" Время тика: ", 
       TimeToString(last_tick.time,TIME_SECONDS), 
       ".", 
       (last_tick.time_msc)%1000, //добавляет мс в строку
       " по символу ", 
       name); //имя инструмента

y luego publicar en el foro la pestaña de expertos y la pestaña de registro para ese comercio.

A continuación, intentaré encontrar la oferta en el feed de ofertas. Esto, por desgracia, no siempre es posible.

Idealmente no por un solo volumen. Y con relleno a diferentes precios.

 
prostotrader #:

Sea como fuere, 2 MT5 serán más rápidas que una de las tuyas.

La cuestión es que, para combinar todos los datos de las diferentes secciones, necesitas tu propio servidor especial que emitirá

información desde/hacia ASTS (sección Stock) y Spectra (Forts), así como importar secciones y transferirlas a un terminal.

Como hay un enlace intermedio, hay retrasos inevitables.

De acuerdo. Esto es así y es triste :(

Resulta que el EBS es sólo para estrategias para las que el tiempo de ejecución de 100-200 ms no es crítico.

Aunque, si se investiga a fondo, no existen tales estrategias. El beneficio siempre será inversamente proporcional al tiempo de ejecución.

Razón de la queja: