Erreurs, bugs, questions - page 2629

 
fxsaber:
Veuillez m'aider à placer un EA dans KB. J'obtiens cette erreur.

Tout est en place.

Il y a eu une erreur similaire. Pour autant que je me souvienne, dans mon cas, c'était lié au fait que le fichier principal n'était pas placé dans le dossier racine du type de programme concerné. Il semble qu'il soit autorisé de poster des EAs uniquement dans le dossier MQL5/Experts (si vous prenez des EAs).

 
Stanislav Korotky:

Il y a eu une erreur similaire. Pour autant que je me souvienne, dans mon cas, c'était lié au fait que le fichier principal n'était pas placé dans le dossier racine du type de programme concerné. Il semble que les EAs ne peuvent être placées que dans le dossier MQL5/Experts (si vous prenez des EAs).

J'ai prescrit MQL5\Experts manuellement - cela n'a pas fonctionné. Lorsque j'ai sélectionné "default", cela a fonctionné.

 
fxsaber:

J'ai prescrit MQL5\Experts manuellement - ça n'a pas marché. Lorsque j'ai choisi "défaut", cela a fonctionné.

Bien sûr, je voulais dire "par défaut", j'ai juste mentionné "par défaut" d'Expert Advisors sur l'ordinateur local pour que ce soit clair.

 

Il y a une fonctionnalité intéressante sur le forum, lorsque vous créez un sujet - après l'avoir créé, vous obtenez des liens supplémentaires pour des requêtes similaires :-)

Afin de ne pas créer un tas de sujets similaires.


 
J'ai perdu la meilleure connexion avec le serveur broker metaquotes ltd à cause de cela, les signaux sont devenus mauvais, en gros, tout va à une perte, ce qui doit être fait s'il vous plaît aidez !
Dossiers :
 
Vladislav Andruschenko :

Il y a une fonctionnalité intéressante sur le forum, lorsque vous créez un sujet - après l'avoir créé, vous obtenez des liens supplémentaires pour des questions similaires :-)

Ainsi, ils ne créent pas un tas de sujets similaires.

Je suis d'accord pour dire que c'est une fonctionnalité intéressante. Cependant, cela n'empêche pas de créer un "groupe de sujets du même type", car vous devez créer un nouveau sujet pour obtenir des liens.

Il serait encore mieux de proposer ces liens à l'utilisateur lorsqu'il clique sur "Ajouter", et de ne pas créer de sujet du tout s'il a trouvé une réponse.

 
Alain Verleyen:

Je suis d'accord pour dire que c'est une bonne fonctionnalité. Cependant, cela n'empêche pas de créer un "groupe de sujets du même type", car vous devez créer un nouveau sujet pour obtenir des liens.

Il serait encore mieux de proposer ces liens à l'utilisateur lorsqu'il clique sur "Ajouter", et de ne pas créer de sujet du tout s'il a trouvé une réponse.

J'ai parcouru les fils de discussion, ces liens ne sont pas partout,
Ce sont des liens pertinents.
Et plutôt, il faut du temps pour les trouver. Tous les fils ne les ont donc pas.
 

J'ai trouvé une telle nuisance. Construction 2305


Histoire :

L'EA lit les données de 8 indicateurs et de 8 TF (dont D1 et W1).

Il affiche les données dans un tableau.

Si je travaille avec une paire de devises, avec laquelle je travaille depuis longtemps, tout va bien.

Si je charge une paire de devises, avec laquelle je ne travaille pas, j'obtiens une erreur :


Le conseiller expert tente de recevoir des signaux de D1, par exemple, mais se bloque, se bloque sur le CopyBuffer.

J'ai essayé de détecter une erreur mais le journal du conseiller expert est vide - il se bloque et ne montre rien dans le journal.

Mais j'ai ouvert les journaux du terminal et j'ai trouvé cette erreur :

2020.01.29 11:59:35.915 History 'EURPLN' file opening or reading error [32]
2020.01.29 11:59:35.915 History 'EURPLN' file opening or reading error [5]
2020.01.29 11:59:35.915 History 'EURPLN' file opening or reading error [5]


Si je désactive l'obtention de signaux sur D1 et W1, tout est normal.



J'ai regardé dans le dossier historique et je n'ai vu que le fichier2020.hcc.

Il n'y a pas d'autres fichiers et Cache.




J'ai essayé ce script: https://www.mql5.com/ru/docs/series/timeseries_access


Il s'accroche à W1.

2020.01.29 12:40:03.220  mt5 20200129 (EURPLN,H4)       ===============   1   ===============   2020.01.29 12:40:00
2020.01.29 12:40:03.220  mt5 20200129 (EURPLN,H4)       Loaded previously 
2020.01.29 12:40:03.220  mt5 20200129 (EURPLN,H4)       First date 2020.01.02 10:00:00 - 16031 bars
2020.01.29 12:40:03.220  mt5 20200129 (EURPLN,H4)       ===============   5   ===============   2020.01.29 12:40:00
2020.01.29 12:40:03.220  mt5 20200129 (EURPLN,H4)       Loaded previously 
2020.01.29 12:40:03.220  mt5 20200129 (EURPLN,H4)       First date 2020.01.02 10:00:00 - 3378 bars
2020.01.29 12:40:03.221  mt5 20200129 (EURPLN,H4)       ===============   15   ===============   2020.01.29 12:30:00
2020.01.29 12:40:03.221  mt5 20200129 (EURPLN,H4)       Loaded previously 
2020.01.29 12:40:03.221  mt5 20200129 (EURPLN,H4)       First date 2020.01.02 10:00:00 - 1135 bars
2020.01.29 12:40:03.222  mt5 20200129 (EURPLN,H4)       ===============   30   ===============   2020.01.29 12:30:00
2020.01.29 12:40:03.222  mt5 20200129 (EURPLN,H4)       Loaded previously 
2020.01.29 12:40:03.222  mt5 20200129 (EURPLN,H4)       First date 2020.01.02 10:00:00 - 568 bars
2020.01.29 12:40:03.223  mt5 20200129 (EURPLN,H4)       ===============   16385   ===============   2020.01.29 12:00:00
2020.01.29 12:40:03.223  mt5 20200129 (EURPLN,H4)       Loaded previously 
2020.01.29 12:40:03.223  mt5 20200129 (EURPLN,H4)       First date 2020.01.02 10:00:00 - 284 bars
2020.01.29 12:40:03.223  mt5 20200129 (EURPLN,H4)       ===============   16388   ===============   2020.01.29 12:00:00
2020.01.29 12:40:03.223  mt5 20200129 (EURPLN,H4)       Loaded previously 
2020.01.29 12:40:03.223  mt5 20200129 (EURPLN,H4)       First date 2020.01.02 08:00:00 - 78 bars
2020.01.29 12:40:03.224  mt5 20200129 (EURPLN,H4)       ===============   16408   ===============   2020.01.29 00:00:00
2020.01.29 12:40:03.224  mt5 20200129 (EURPLN,H4)       Loaded previously 
2020.01.29 12:40:03.224  mt5 20200129 (EURPLN,H4)       First date 2020.01.02 00:00:00 - 20 bars




J'ai fait un simple test d'expert :

Ordre de recherche des erreurs :


  1. Charger un symbole qui n'a pas été utilisé auparavant (pas d'historique)
  2. Exécutez-le sur le graphique du conseiller expert
  3. Nous regardons le journal :
  4. Le conseiller expert montre qu'il sort d'abord à CopyBuffer (aucune barre).
  5. Ensuite, l'expert reçoit une valeur tampon inconnue ().
  6. Puis il s'endort encore et encore depuis le début.


Toujours la même chose : il copie une barre et sort de la fonction.



Si vous redémarrez le terminal après cela. Tout va bien ! !!

ok...


Non, ça ne va pas, je démarre une paire que je n'utilise pas et ça ralentit à nouveau.




Il est clair que le terminal demande à télécharger l'historique.

Mais la fonction CopyBuffer se bloque, c'est-à-dire que tout se bloque jusqu'à ce que tout l'historique soit chargé.

Les problèmes ne se produisent que sur D1 et W1.

Sur d'autres périodes, tout va bien.

Si j'attends longtemps, lorsque je règle à nouveau le conseiller expert, je constate à nouveau une lenteur. Mais si je recharge le terminal, il n'y aura plus de ralentissement sur cette paire.

Très probablement parce que Mashka compte 100 échéances et qu'il n'y a que quelques semaines pour 2020. Mais pourquoi ne charge-t-il pas 2019 à la volée ?

Même s'il est écrit que :

Lors de la demande de données à l'indicateur, si la série temporelle demandée n'est pas encore construite ou doit être téléchargée du serveur, la fonction renvoieimmédiatement -1, mais le processus de téléchargement/construction lui-même est lancé.

Lorsque vous demandez des données à l'Expert Advisor ou à un script, le chargement depuis le serveur sera initié, si le terminal ne dispose pas de ces données localement, ou la construction des séries temporelles requises commencera, si les données peuvent être construites à partir de l'historique local, mais qu'elles ne sont pas encore prêtes. La fonction renvoie la quantité de données qui est prête à l'expiration du délai.

Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
Документация по MQL5: Доступ к таймсериям и индикаторам / Организация доступа к данным
  • www.mql5.com
Прежде чем ценовые данные будут доступны в терминале MetaTrader 5, их необходимо получить и обработать. Для получения данных требуется подключение к торговому серверу MetaTrader 5. Данные поступают с сервера по запросу терминала в виде экономно упакованных блоков минутных баров. Механизм обращения к серверу за данными не зависит от того, каким...
Dossiers :
 
Vladislav Andruschenko:

J'ai trouvé une telle nuisance. Construire 2305.



2020.01.29 11:59:35.915 History 'EURPLN' file opening or reading error [32]
2020.01.29 11:59:35.915 History 'EURPLN' file opening or reading error [5]
2020.01.29 11:59:35.915 History 'EURPLN' file opening or reading error [5]

Vérifiez l'accès aux fichiers hcc. Vérifiez que personne ne lit ces fichiers pour le moment.

32 - Le processus ne peut pas accéder au fichier car il est utilisé par un autre processus.

5 - L'accès est refusé.


Combien d'espace disque libre avez-vous ?

Quelle est la limite du nombre maximal de barres sur le graphique dans le terminal ?

 
Slava:

Vérifiez l'accès aux fichiers hcc. Vérifiez que personne ne lit ces fichiers pour le moment.

32 - Le processus ne peut pas accéder au fichier car il est utilisé par un autre processus.

5 - L'accès est refusé.


Combien d'espace disque libre avez-vous ?

Quelle est la limite terminale du nombre maximal de barres sur le graphique ?


Merci pour votre réponse.

  • 0. J'ai un antivirus DRWEB, puis je l'ai désactivé et j'ai essayé
  • Il y a aussi la synchronisation Synology - je l'ai désactivée, même chose.
  • Il y a aussi GoodSync - également déconnecté
  • 1. J'ai défini différents nombres de barres.
  • 2. Espace libre 503 GB sur 1.81 Tb (7200 WD RED )
  • Système Windows 7 64 sur SSD (300 GB libres sur 500)
  • 3. les erreurs ci-dessus

32 - Le processus ne peut pas accéder au fichier car il est utilisé par un autre processus.

5 - L'accès est refusé.

Cela n'est arrivé qu'une seule fois, puis j'ai décrit ci-dessus que le problème ne concerne que D1 et W1 ; les autres TF fonctionnent bien.


Mais c'est très probablement parce que le fichier 2019 hcc ne peut pas être chargé (parce que MASHKA 100 est utilisé) Non, j'ai changé de période, tout de même



J'ai essayé à nouveau, en affichant les données sur le tableau de bord pour plus de clarté.

J'ai tout compté sauf W1 - et c'est tout. Il s'accroche. (ne dépend pas du conseiller expert, j'ai vérifié)


Il est suspendu au moment du CopyBuffer - bien que si les données ne sont pas disponibles EA reçoit simplement 0 et continue à travailler, mais dans le cas actuel - il ne réagit pas aux événements du graphique et n'imprime rien dans le journal. Il n'y a pas de cycles.


Ensuite, il suffit de redémarrer le terminal et tout est ok :


Tout. ! Cette paire est remplie d'histoire.




Après avoir rechargé le terminal, toutes les paires, pour lesquelles j'ai recueilli l'historique, fonctionnent sans gel.



Si je change la période dans tous les indicateurs à 1 ou 2 (2 semaines), alors tout est OK sur une nouvelle paire.

Dès que la période atteint l'historique de l'année précédente, c'est fini. Il se bloque à nouveau pour toujours - j'ai rechargé le terminal, tout est OK.


Si j'arrête le conseiller expert (en le déchargeant du graphique), il se suspend et enregistre toutes les impressions qui sont suspendues après le CopyBuffer.


C'est à dire code : et Imprimer que accroché.

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit(void)
  {
//--- secceed
   return(INIT_SUCCEEDED);
  }
int h_ma1array=INVALID_HANDLE;
double ma1_buffer[];
//+------------------------------------------------------------------+
//| Expert new tick handling function                                |
//+------------------------------------------------------------------+
void OnTick(void)
  {
  for(int i=0;i<10;i++)
    {
     
   Print("==========================   "+i);
   h_ma1array=iMA(Symbol(),PERIOD_D1,100,0,0,0);
   Print("h_ma1array="+h_ma1array);
   if(h_ma1array==INVALID_HANDLE)
     {
      Print(" INVALID_HANDLE h_ma1array "+h_ma1array);
      h_ma1array=iMA(Symbol(),PERIOD_D1,100,0,0,0);
      return;
     }
   else
     {
     int buffers=0;
      if(buffers=CopyBuffer(h_ma1array,0,0,2,ma1_buffer)<2)
        {
        


























// Этот принт уже не выводится.......
         Print(__LINE__+" return "+" buffers="+buffers);       return;         }       if(!ArraySetAsSeries(ma1_buffer,true))         {          Print(__LINE__+" return");       return;         }      }    Print("ma1_buffer[1]="+ma1_buffer[1]+" ma1_buffer[0]="+ma1_buffer[0]);    }   } //+------------------------------------------------------------------+



Dans le testeur, en tout cas, cela fonctionne bien et rapidement :




Bien que le nombre de dossiers soit le même :

c'est dans la vraie vie :


C'est dans le testeur




Cette erreur ne s'est pas produite en 2019, du moins à la fin de l'année 2019.



J'ai supprimé tout l'historique - j'ai mis une nouvelle paire EURUSD - pas d'historique - j'ai lancé l'EA, il a commencé à charger les données - il s'est arrêté - l'historique a été téléchargé jusqu'en 1999 - l'EA s'est arrêté - tout est ok.


Cela se produit probablement avec les paires pour lesquelles il n'y a pas d'historique au-delà de 2019..... Mais l'Expert Advisor essaie d'exécuter l'indicateur CopyBuffer avec une période, qui est plus loin que l'historique. Par conséquent, il est suspendu.

Bien qu'il soit étrange qu'après un certain temps - et le redémarrage du terminal, tout se bloque.

Juste une réflexion à voix haute....