La suscripción a OnBookEvent a veces se cae - ¿existe? - página 5

 
A100:
Mañana comprobaré el poder mágico de tu código... mientras tanto me gustaría saber tu opinión sobre si la función de apertura/cierre de un vaso puede combinarse con la función de suscripción/desinscripción a/desde el evento en este vaso o deben separarse

En el caso de los bombos, esto no se puede hacer, debido a las peculiaridades de la recepción de bombos por la pasarela FORTS Plaza II

 
prostotrader:

Estoy seguro de que esta es la razón del error.

Nunca he tenido un error invalid_book_transaction, así que es diferente.

 
prostotrader:

Si haces lo que escribes en el mismo símbolo, ¡naturalmente la suscripción será destruida por ese símbolo en la misma terminal!

Y esto es correcto.

¿Qué tiene de bueno? Un programa deja fuera de juego al otro. Imagínese que el Asesor Experto estableció un temporizador para sí mismo, mientras que Vasya Pupkin desactivó el temporizador en su script vecino. KOLOSSAL.

 
Stanislav Korotky:

Nunca he tenido un error invalid_book_transaction, así que es diferente.

Esperemos a la nueva construcción.

 
Stanislav Korotky:

¿Qué es lo que hay que hacer? Un programa deja fuera de juego al otro. Imagínese que el Asesor Experto estableció un temporizador para sí mismo, y Vasya Pupkin desactivó este temporizador en su script vecino. FALSO.

Utiliza el abono correctamente y no necesitarás a Vasya Pupkin.

Tengo 82 EAs funcionando en dos terminales (reales) en un ordenador y NUNCA he tenido el problema que describes.

Añadido

Me refiero a la activación/desactivación de la suscripción a la apuesta.

Dos líneas de código:

He aquí un ejemplo

Código

//+------------------------------------------------------------------+
//|                                                        Books.mq5 |
//|                                      Copyright 2018 prostotrader |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2018 prostotrader"
#property link      "https://www.mql5.com"
#property version   "1.00"
bool is_book = false;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//--- Add books
   is_book = MarketBookAdd(Symbol());
   if(is_book == true) Print(__FUNCTION__, ": Подписка на стакан добавлена. Символ ", Symbol());
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
    if(is_book == true)
{ MarketBookRelease(Symbol());
    Print(__FUNCTION__, ": Подписка на стакан удалена. Символ ", Symbol());}
  }

//+------------------------------------------------------------------+
//| BookEvent function                                               |
//+------------------------------------------------------------------+
void OnBookEvent(const string &symbol)
  {
   if(symbol == Symbol())
   {
     Print(__FUNCTION__, ": Подписка работает. Символ ", Symbol());
   }
   
  }
//+------------------------------------------------------------------+




Resultado

2018.07.24 13:51:19.719 Book_test (Si-9.18,M1)  OnInit: Подписка на стакан добавлена. Символ Si-9.18
2018.07.24 13:51:19.745 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:30.346 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:30.411 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:30.477 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:30.489 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.071 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.108 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.178 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.285 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.305 Book_test (Si-9.18,M1)  OnInit: Подписка на стакан добавлена. Символ Si-9.18
2018.07.24 13:51:31.549 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.549 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.877 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.877 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.909 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:31.909 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.046 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.046 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.217 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.217 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.687 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.687 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.761 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.761 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.969 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:32.969 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:33.036 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:33.036 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:33.220 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:33.220 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:33.259 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:33.259 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18

..............................

2018.07.24 13:51:44.888 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:44.939 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:44.939 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:45.959 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:45.959 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:45.991 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:45.991 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:46.251 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:46.251 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:48.952 Book_test (Si-9.18,M1)  OnDeinit: Подписка на стакан удалена. Символ Si-9.18
2018.07.24 13:51:49.048 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.176 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.382 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.493 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.517 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.551 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.630 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.651 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.706 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.726 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.791 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.890 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:49.928 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:50.170 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:50.582 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:50.908 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.041 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.080 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.112 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.362 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.457 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.470 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.523 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.771 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:51.850 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:52.221 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:52.240 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:52.392 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:52.688 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:53.013 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:53.169 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:53.328 Book_test (Si-9.18,M1)  OnBookEvent: Подписка работает. Символ Si-9.18
2018.07.24 13:51:54.185 Book_test (Si-9.18,M1)  OnDeinit: Подписка на стакан удалена. Символ Si-9.18
 
prostotrader:

Utiliza tu abono correctamente y no necesitarás un Papkin.

Tengo 82 EAs funcionando en dos terminales (reales) en el mismo ordenador y NUNCA he tenido el problema que describes.

Añadido

Me refiero a la activación/desactivación de la suscripción a la apuesta.

Dos líneas de código:

En primer lugar, parece que hay un error aquí...

if(is_book = true) MarketBookRelease(Symbol());

Debería ser así:

if(is_book == true) MarketBookRelease(Symbol());

o

if(is_book) MarketBookRelease(Symbol());

Y en segundo lugar, ¿para qué sirve este cheque? Si la suscripción en este EA no está conectada, ¿se eliminará la de otra persona?

 
Sergey Savinkin:

En primer lugar, parece que hay un error aquí...

Debería ser así:

o

Y en segundo lugar, ¿por qué este control? Si la suscripción en este EA no está conectada, ¿se eliminará la de otra persona?

Gracias, realmente es una errata.

Hay un contador de suscripciones para el símbolo.

 
prostotrader:

Hay un contador de suscripciones de símbolos.

¿Puede explicar con más detalle cómo se organiza?

 
Sergey Savinkin:

¿Puede explicar con más detalle cómo se organiza?

No soy desarrollador, pero creo que cuando se llama a MarketBookAdd(), el contador de suscripciones del símbolo aumenta,

En consecuencia, cuando se llama a MakerBookRelease(), disminuye y la suscripción se detiene si el contador es cero.

 
prostotrader:

No soy desarrollador, pero creo que cuando se llama a MarketBookAdd(), el contador de suscripciones del personaje aumenta,

En consecuencia, cuando se llama a MakerBookRelease() disminuye y deja de suscribirse si el contador es cero.

Me gustaría un comentario de los desarrolladores, porque no hay nada en la documentación sobre esto.