Questions des débutants MQL5 MT5 MetaTrader 5 - page 1006

 

Référence : https://www.mql5.com/ru/docs/runtime/running
L'aide indique :
"S'il y a déjà un événement ChartEvent dans la file d'attente du programme mql5 ou si un tel événement est en cours de traitement, alors un nouvel événement de ce type n'est pas mis dans la file d'attente".

Les résultats de cet exemple montrent que tous les événements créés par la fonction EventChartCustom() sont mis en file d'attente (et traités ensuite par OnChartEvent() ).

void OnInit() 
   {
   Print("\n\nOnInit  xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"); 
   for (int i=1; i<=10; i++)
      {
      int event = 1000 + i;                 
      long GTC = GetTickCount();   
      Print("OnInit  >>>   i = ", i, "   GTC = ", GTC);
      EventChartCustom(0, event, GTC, (double)i,"");    
      Sleep(10);                   
      }
   Print("");
   return;                                         
   }
//----------------------------------------
void OnChartEvent(const int     event,  
                  const long&   lparam, 
                  const double& dparam, 
                  const string& sparam  
                  )
   {
   Print("OnChartEvent:  >>>>>>>   event = ", event, "  lparam = ", lparam, "  dparam = ", dparam );  
   }

Veuillez préciser s'il s'agit de files d'attente ou non.

Документация по MQL5: Программы MQL5 / Выполнение программ
Документация по MQL5: Программы MQL5 / Выполнение программ
  • www.mql5.com
Каждый скрипт и каждый эксперт работает в собственном отдельном потоке. Все индикаторы, рассчитываемые на одном символе, даже если они запущены на разных графиках, работают в одном потоке. Таким образом, все индикаторы на одном символе делят между собой ресурсы одного потока. В одном потоке с индикаторами также последовательно выполняются...
 

Veuillez indiquer comment spécifier correctement le chemin d'accès à l'indicateur ajouté aux ressources.

Spécifier :

#resource "\\Indicators\\Bollinger new.ex5"

J'essaie de l'appeler depuis les ressources :

 BolBandsNewHandle=iCustom (NULL,TF_graph,"::Indicators\\Bollinger new.ex5", ...

De cette façon, il fonctionne sur mon ordinateur, mais je reçois une erreur lorsque je le transfère sur un autre :

test sur EURUSD,H1 (compensation) fichier expert MQL5\Indicators\Bollinger new.ex5 open error [2] fichier programme Indicators\Bollinger new.ex5 read error chargement de Bollinger new EURUSD,H1 failed [532] 2016.04.01 00:00:00 cannot load custom indicator 'Bollinger new' [4802] rapport du testeur de stratégie 45 trad total

Ou dois-je préciser dans l'indicateur qu'il s'agit d'une ressource pour conseiller expert ?

Je l'ai fait une fois, mais je l'ai oublié.)

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

Qu'est-il arrivé au forum ? Je ne l'ai jamais essayé et cela n'a pas fonctionné sur le Marché. Et tous se taisent. )

 
Aleksandr Prishenko:

Veuillez indiquer comment spécifier correctement le chemin d'accès à l'indicateur ajouté aux ressources.

Spécifier :

J'essaie de l'appeler depuis les ressources :

J'essaie de le faire de cette manière sur mon ordinateur, mais j'obtiens une erreur lorsque je le transfère sur un autre :

Ou dois-je préciser dans l'indicateur qu'il s'agit d'une ressource pour conseiller expert ?

Je l'ai fait une fois, mais j'ai oublié.)

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

Qu'est-il arrivé au forum ? Tous ceux qui ont ajouté le produit au marché connaissent la réponse à la question. Et tous sont silencieux. )

Parce que la réponse à votre question est dans l'aide, avec un exemple. Et l'aide est sous vos yeux - le menu du site web - la documentation.

 

Comme l'exemple ne fonctionne pas, je vous ai montré comment je fais.

J'ai regardé l'exemple plusieurs fois et relu l'article. Je ne comprends pas ce que je fais de mal. Je me souviens que le chemin vers les fichiers de ressources doit être spécifié différemment, pas comme dans l'exemple, mais comme je ne me souviens pas)).
 
Aleksandr Prishenko:
et comment ne pas s'en souvenir).

Et pourquoi se souvenir de tout cela quand on a toujours la documentation sous les yeux. "Vous ne le croirez pas", je ne peux même pas écrire les paramètres iMA sans documentation... pourquoi devrais-je remplir les dernières cellules de la mémoire avec des informations que je n'ai pas besoin de stocker ???

 
Alexey Viktorov:

Et pourquoi se souvenir de tout cela quand on a toujours la documentation sous les yeux. "Vous ne le croirez pas", je ne peux même pas écrire les paramètres iMA sans documentation... pourquoi devrais-je remplir les dernières cellules de la mémoire avec des informations que je n'ai pas besoin de stocker ???

Vous devez développer votre mémoire, il y a assez de cellules)

 
Aleksandr Prishenko:

Veuillez indiquer comment spécifier correctement le chemin d'accès à l'indicateur ajouté aux ressources.

Spécifier :

J'essaie de l'appeler depuis les ressources :

J'essaie de le faire de cette manière sur mon ordinateur, mais j'obtiens une erreur lorsque je le transfère sur un autre:

Ou dois-je préciser dans l'indicateur qu'il s'agit d'une ressource pour conseiller expert ?

Je l'ai fait une fois, mais j'ai oublié.)

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

Qu'est-il arrivé au forum ? Tous ceux qui ont ajouté le produit au marché connaissent la réponse à la question. Et tous sont silencieux. )

Lorsqu'il est transféré vers un autre ordinateur ou terminal, celui qui a été compilé fonctionne sans problème. Mais au moment de la compilation sur un autre ordinateur, le compilateur recherche un fichier indicateur pour l'inclure comme ressource...

 
Aleksandr Prishenko:

Vous devez développer votre mémoire, il y a assez de cellules)

Nah... A la fin de la soixante-quatrième année, ils doivent être sauvés. :))))

 
Alexey Viktorov:

Lorsqu'il est transféré vers un autre compilé, il fonctionne sans problème. Mais au moment de la compilation sur un autre ordinateur, le compilateur recherche le fichier indicateur pour l'inclure comme ressource...

Sur mon ordinateur, tout fonctionne, mais sur l'ordinateur de Metacvot, ça ne fonctionne pas(

Il s'avère que le fichier de l'indicateur n'est pas enregistré dans les ressources de l'EA, mais dans les ressources d'un terminal.

 
Aleksandr Prishenko:

Tout fonctionne sur mon ordinateur, mais pas sur celui de Metakvot(

Êtes-vous allé à leur bureau et avez-vous essayé d'exécuter votre programme sur leur ordinateur ?

Quel était le prix du billet ? J'aimerais aussi leur rendre visite.

Raison: