L'abonnement à OnBookEvent est parfois interrompu - existe-t-il une telle chose ? - page 5

 
A100:
Demain je vérifierai le pouvoir magique de votre code... en attendant j'aimerais avoir votre avis sur la fonction d'ouverture/fermeture d'une coupe peut-elle être combinée avec la fonction d'inscription/désinscription aux événements de cette coupe ou doivent-elles être séparées ?

Dans le cas des gobelets, cela ne peut être fait, en raison des particularités de la réception des gobelets par la passerelle FORTS Plaza II.

 
prostotrader:

Je suis sûr que c'est la raison de l'erreur.

Je n'ai jamais eu d'erreur invalid_book_transaction, donc c'est différent.

 
prostotrader:

Si vous faites ce que vous écrivez sur le même symbole, naturellement l'abonnement sera détruit par ce symbole dans le même terminal !

Et c'est correct.

Qu'est-ce qu'il y a de si bien là-dedans ? Un programme élimine l'autre. Imaginez que le conseiller expert se soit fixé un délai, alors que Vassia Pupkin a désactivé le délai dans son script voisin. KOLOSSAL.

 
Stanislav Korotky:

Je n'ai jamais eu d'erreur invalid_book_transaction, donc c'est différent.

Attendons la nouvelle construction.

 
Stanislav Korotky:

Quelle est la bonne chose à faire ? Un programme élimine l'autre. Imaginons que le conseiller expert se soit fixé une minuterie et que Vassia Pupkin ait désactivé cette minuterie dans son script voisin. FAUX.

Utilisez l'abonnement correctement, et vous n'aurez pas besoin de Vasya Pupkin.

J'ai 82 EAs fonctionnant dans deux terminaux (réels) sur un ordinateur et je n'ai JAMAIS eu le problème que vous décrivez.

Ajouté

Je parle d'activer/désactiver l'abonnement au pari.

Deux lignes de code :

Voici un exemple

Code

//+------------------------------------------------------------------+
//|                                                        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());
   }
   
  }
//+------------------------------------------------------------------+




Résultat

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:

Utilisez votre abonnement correctement et vous n'aurez pas besoin d'un Papkin.

J'ai 82 EAs fonctionnant dans deux terminaux (réels) sur le même ordinateur et je n'ai JAMAIS eu le problème que vous décrivez.

Ajouté

Je parle d'activer/désactiver l'abonnement au pari.

Deux lignes de code :

Tout d'abord, il semble y avoir une erreur ici ?

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

Ça devrait être comme ça :

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

ou

if(is_book) MarketBookRelease(Symbol());

Et deuxièmement, à quoi sert ce chèque de toute façon ? Si l'abonnement de cette EE n'est pas connecté, cela supprimera-t-il celui de quelqu'un d'autre ?

 
Sergey Savinkin:

Tout d'abord, il semble y avoir une erreur ici ?

Ça devrait être comme ça :

ou

Et deuxièmement, pourquoi ce contrôle ? Si l'abonnement de cette EE n'est pas connecté, cela supprimera-t-il celui de quelqu'un d'autre ?

Merci, c'est vraiment une faute de frappe.

Il existe un compteur d'abonnement pour le symbole.

 
prostotrader:

Il existe un compteur d'abonnement aux symboles.

Pouvez-vous nous expliquer comment elle est organisée ?

 
Sergey Savinkin:

Pouvez-vous nous expliquer comment il est organisé ?

Je ne suis pas un développeur, mais je pense que lorsque MarketBookAdd() est appelé, le compteur d'abonnement sur le symbole augmente,

Par conséquent, lorsque MakerBookRelease() est appelé, il diminue et l'abonnement est arrêté si le compteur est à zéro.

 
prostotrader:

Je ne suis pas un développeur, mais je pense que lorsque MarketBookAdd() est appelé, le compteur d'abonnement du personnage augmente,

par conséquent, lorsque vous appelez MakerBookRelease(), il diminue et arrête l'abonnement si le compteur est à zéro.

J'aimerais avoir un commentaire des développeurs, car il n'y a rien dans la documentation à ce sujet.

Raison: