Erreur de validation lors de la mise sur le marché du robot de trading. - page 9

 

Lors de la mise à jour de l'EA (MT4), il est écrit que le rapport n'a pas été trouvé :


 
Evgeniy Zhdan:

Lors de la mise à jour du conseiller expert (MT4), il est écrit qu'aucun rapport n'a été trouvé :


combien de temps dure le test ?

Si 30 minutes ou plus, alorsle conseiller expert s'est bloqué dans un cycle et l'erreur doit être trouvée dans le code.

 
Denis Nikolaev:

combien de temps dure le test ?

Si 30 minutes ou plus, alorsl'EA s'est figé dans un cycle et l'erreur doit être recherchée dans le code.

La capture d'écran montre le temps que cela prend
 
Evgeniy Zhdan:
Il est dit sur la capture d'écran combien de temps cela prend.

exactement

mais maintenant je reçois une autre erreur

tt

J'ai fait une mise à jour récemment - elle est passée du premier coup, mais maintenant je viens de changer le numéro de version et elle ne passe pas.

Quelque chose doit être cassé à nouveau.

 
J'ai moi-même rencontré un problème de validation. La solution était simple. J'ai défini les paramètres de risque initial dans le conseiller expert pour qu'ils soient différents de zéro. Dans ces conditions, la valeur du lot fixe sélectionné n'avait pas d'importance. Le conseiller expert n'a pas passé la douane. J'ai mis le risque à zéro, changé la version de l'EA et l'ai téléchargé pour vérification - il s'est fait engloutir en quelques secondes. Et approuvé.
 
Uladzimir Balmatou:
J'ai moi-même rencontré un problème de validation. La solution était à la surface. J'avais défini les paramètres de risque initial dans le conseiller expert pour qu'ils soient différents de zéro. Dans ces conditions, la valeur d'un lot fixe sélectionné n'a pas d'importance. Le conseiller expert n'a pas passé la douane. J'ai mis le risque à zéro, changé la version de l'EA et l'ai téléchargé pour vérification - il s'est fait engloutir en quelques secondes. Et approuvé.

Oui, cela fonctionne aujourd'hui - cela a été corrigé.


Merci !
 
Bonjour, pourriez-vous me dire si le validateur fonctionne ou non ? Je reçois l'erreur test sur EURUSD,H1 strategy tester report not found et je ne sais pas si c'est moi ou pas. Merci.
 
Aliaksandr Pechan:
Bonjour, Pourriez-vous me dire si le validateur fonctionne ? Je reçois un message d'erreur "test on EURUSD,H1 strategy tester report not found" et je ne sais pas si c'est moi ou pas. Merci.

C'est comme ça pour tout le monde maintenant. J'ai procédé à cette validation en trois étapes. Au début, il y avait une erreur d'absence d'opérations commerciales. Naturellement, j'ai vérifié l'exactitude du lot et la disponibilité des fonds pour ouvrir un ordre, mais cela n'a pas fonctionné. J'ai simplement copié la vérification du lot à partir de la référence, qui ne vérifie que si le lot est correct, mais si ce n'est pas le cas, l'erreur n'a pas été corrigée et a simplement été écrite dans le journal. Et, bien sûr, les commandes n'ont pas été ouvertes. Je l'ai modifié un peu et je l'ai vérifié.

 double CheckVolumeValue()
  { 
   double volume=lastLot;
//--- минимально допустимый объем для торговых операций
   double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN);
   if(volume<min_volume)
     {
      Print("Lot less than the minimum allowed value SYMBOL_VOLUME_MIN=",+min_volume);
      volume=min_volume;
     }
//--- максимально допустимый объем для торговых операций
   double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX);
   if(volume>max_volume)
     {
      Print("Lot greater than the maximum allowed SYMBOL_VOLUME_MAX=",max_volume);
      volume=max_volume*0.99;
     }
//--- получим минимальную градацию объема
   double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP);
   int ratio=(int)MathRound(volume/volume_step);
   if(MathAbs(ratio*volume_step-volume)>0.0000001)
     {
      Print("Lot is not a multiple of the minimum gradation SYMBOL_VOLUME_STEP=",volume_step);
      volume=MathRound(volume/volume_step);
      volume=volume*volume_step;
     }
   return(volume);
  }

Puis j'ai eu l'erreurEURUSD,H1 strategy tester report not found. J'ai commencé à raisonner. S'il n'y a pas de rapport de testeur, cela signifie que l'EA ne fonctionne pas du tout. Dans quel cas ? Si le trading est interdit sur ce compte ou s'il n'y a pas de connexion. J'ai inséré au début du code tout ce que j'ai trouvé dans la Référence sur ce sujet.

 void OnTick()
  {
   if(!TerminalInfoInteger(TERMINAL_TRADE_ALLOWED))
      {Print("Check the automatic trading permission in the terminal settings!");
      Alert("Check the automatic trading permission in the terminal settings!");
      }
   if(!MQLInfoInteger(MQL_TRADE_ALLOWED))
      {
       Print("Automatic trading is prohibited in the program properties for",__FILE__);
       Alert("Automatic trading is prohibited in the program properties for",__FILE__);
      }
   if(!AccountInfoInteger(ACCOUNT_TRADE_EXPERT)) 
      Print("Automatic trading is prohibited for the account",AccountInfoInteger(ACCOUNT_LOGIN), 
      " on the trading server side ");
   if(!AccountInfoInteger(ACCOUNT_TRADE_ALLOWED)) 
      {Comment("Trading is prohibited for the account ",AccountInfoInteger(ACCOUNT_LOGIN), 
            ".\n It is possible that the connection to the trading account was made using an investment password.", 
            "\n Check the terminal log to see if there is such an entry:", 
            "\n\'",AccountInfoInteger(ACCOUNT_LOGIN),"\': trading has been disabled - investor mode.");
       Print("Trading is prohibited for the account ",AccountInfoInteger(ACCOUNT_LOGIN));
      }
   if(!TerminalInfoInteger(TERMINAL_CONNECTED)) Print("No connection to the server");

J'ai passé cette erreur en une seule fois. Mais j'en ai une autre - erreur 148 :

Le nombre d'ordres ouverts et en attente a atteint la limite fixée par le courtier.


J'ai inséré une vérification du nombre maximum de commandes avant l'envoi de la commande et la validation a finalement été acceptée.

 
Bonsoir !
J'ai une question lorsque je place un EA dans le marché MQL5 au stade de test.
Comment spécifier le cadre temporel pour l'autotest lors du placement du fichier *.ex5, sinon l'autotest est effectué par défaut sur le cadre temporel H1 ?
Que dois-je faire si je n'ai qu'une seule paire à négocier et une seule période de temps ?
Jusqu'à présent, je ne comprends pas vraiment ce processus de vérification.

P.S. : Je vérifie moi-même les volumes.
Peut-être devrais-je insérer le code qui est suggéré dans l'aide ?
 
Alexandr Plys:
Bonsoir !
J'ai une question lors de la phase de test pour placer le Conseiller Expert dans le marché MQL5.
Comment spécifier le cadre temporel pour l'autotest lors du placement du fichier *.ex5, sinon l'autotest est effectué par défaut sur le cadre temporel H1 ?
Que dois-je faire si je n'ai qu'une seule paire à négocier et une seule période de temps ?
Jusqu'à présent, je ne comprends pas vraiment ce processus de vérification.

P.S. : Je vérifie moi-même les volumes.
Peut-être devrais-je insérer le code qui est suggéré dans l'aide ?

Lors de la validation automatique sur le marché, les résultats financiers n'ont pas d'importance, la vérification porte sur les erreurs possibles dans différentes conditions d'environnement de trading, différents dépôts, différents délais et instruments de trading. Les tests doivent être effectués dans toutes les conditions possibles, sans erreur, et les restrictions sur les paires et les délais ne peuvent être fixées. Dans la description, précisez les outils de trading et les échéances recommandés.