Erreurs, bugs, questions - page 2658

 

Un tel problème.

Classe CSymbolInfo.

Lorsqu'il s'agit du cours vendeur ou acheteur actuel, il renvoie 0.

Tous les autres paramètres fonctionnent bien, par exemple AskHigh ou Point.

 
Ruslan Udintsev:

Un tel problème.

Classe CSymbolInfo.

Lorsqu'il s'agit du cours vendeur ou acheteur actuel, il renvoie 0.

Tous les autres paramètres fonctionnent bien, par exemple AskHigh ou Point

Je dois d'abord mettre à jour les prix.

//+------------------------------------------------------------------+
//| Refreshes the symbol quotes data                                 |
//+------------------------------------------------------------------+
bool RefreshRates()
  {
//--- refresh rates
   if(!m_symbol.RefreshRates())
     {
      if(InpPrintLog)
         Print(__FILE__," ",__FUNCTION__,", ERROR: ","RefreshRates error");
      return(false);
     }
//--- protection against the return value of "zero"
   if(m_symbol.Ask()==0 || m_symbol.Bid()==0)
     {
      if(InpPrintLog)
         Print(__FILE__," ",__FUNCTION__,", ERROR: ","Ask == 0.0 OR Bid == 0.0");
      return(false);
     }
//---
   return(true);
  }
 
Igor Makanu:


Wow. Je ne comprends pas.
 
Nikolai Semko:
Wow, je ne comprends pas.

Qu'y a-t-il à comprendre ? - dans le testeur, GetMicrosecondCount() , GetTickCount() , GetTickCount64() sont liés au démarrage du testeurhttps://www.mql5.com/ru/forum/35402/page5#comment_15165640.

et la construction MathSrand(GetTickCount()) de l'aide ;

les développeurs auraient dû faire à la fois l'opération Print() - il ne sort pas de messages dans le testeur en mode GA ,

et MathSrand(GetTickCount()) ; devrait être initialisé par l'heure ..... qui sait quelle heure, mais pas par l'heure de démarrage de l'AG - maintenant MathSrand() ne fonctionne pas comme prévu

 
Igor Makanu:

Qu'y a-t-il à comprendre ? - dans le testeur, GetMicrosecondCount() , GetTickCount() , GetTickCount64() sont liés au démarrage du testeurhttps://www.mql5.com/ru/forum/35402/page5#comment_15165640.

et la construction MathSrand(GetTickCount()) de l'aide ;

les développeurs auraient dû faire à la fois l'opération Print() - il ne sort pas de messages dans le testeur en mode GA ,

et MathSrand(GetTickCount()) ; devrait être initialisé par l'heure ..... qui sait quelle heure, mais pas par l'heure de début de l'AG - maintenant MathSrand() ne fonctionne pas comme prévu

donc ce n'est pas le moment d'utiliser pour le scrand, mais une poignée qui change à chaque fois.
 
Nikolai Semko:
donc ce n'est pas le moment d'utiliser pour srand, mais une sorte de poignée qui change à chaque fois.

Je sais comment résoudre ce problème - je vais prendre le temps dans WinAPI, mais est-ce une autre fonctionnalité qui doit être constamment vérifiée ? ))))

ZS : l'alglieb avait un générateur plus précis.... mais encore une fois, la question est de savoir si l'exemple de l'aide fonctionne correctement.

 
Igor Makanu:

Je sais comment résoudre ce problème - je prendrai le temps dans WinAPI, mais est-ce une autre fonctionnalité qui doit être vérifiée en permanence ? ))))

Si les passes ne sont pas rapides comme l'éclair et que vous en avez besoin sans DLL, vous pouvez le faire.

MathSrand((uint)GetTimeLocal()); // https://www.mql5.com/ru/forum/170952/page105#comment_9044250

Je ne sais pas comment cela affecte la DSS. J'utilise RAMDrive.

 
fxsaber:

Si les passes ne sont pas rapides comme l'éclair et qu'aucune DLL n'est nécessaire, vous pouvez procéder de cette façon.

Je ne sais pas comment cela affecte le SSD. J'utilise RAMDrive.

Je l'ai vérifié en envoyant une sortie à OnTester()

Photo comme ci-dessus

le but ici est de s'assurer que si vous chargez optionnellement NS via GA tester, il n'est pas garanti que tous les cœurs de processeurs locaux ne fonctionneront pas avec la même configuration initiale des poids NS - cela gâchera les résultats de l'entraînement, imho.

 

Désolé de mettre une poche ici, mais j'ai vraiment besoin de savoir ce qu'il faut faire.

Forum sur le trading, les systèmes de trading automatisé et les tests de stratégies de trading

Erreur de téléchargement des indicateurs des TF supérieurs (D1 par exemple)

Vladislav Andruschenko, 2020.02.27 18:42

Voici l'essentiel :

J'ai remarqué au début de cette erreur et des interférences lors de l'accès aux TF supérieurs D1 et W1 de l'EA que j'ai installé sur M5 par exemple (peu importe le TF).

Maintenant, j'ai trouvé la même erreur dans le testeur de stratégie d'un autre EA (qui ne se croise pas avec le précédent)

Mes actions :

  1. Le conseiller expert vérifie les signaux complexes de 3 indicateurs (2 indicateurs + 3 TF).
  2. Si ces indicateurs et TF prennent des données de n'importe quel TF jusqu'à D1 (tout ce qui est en dessous) ! alors il n'y a pas d'erreurs ! Et le test avec et sans visualisation est le même !
  3. Mais si nous sélectionnons un indicateur avec TF D1 et plus, alors les résultats sont différents (visualisation et sans visualisation).
 
Igor Makanu:

vérifié par l'envoi d'une sortie à OnTester()

l'image est la même que ci-dessus

voici la question de confiance que si vous passez optionnellement NS par GA tester - il n'est pas sûr que tous les cœurs du processeur local ne fonctionneront pas avec la même configuration initiale des poids NS - cela gâche les résultats de la formation, imho.

vous pouvez essayer d'utiliser une fonction du numéro de passage comme base de génération.

Si certains paramètres d'entrée changent pendant l'optimisation, leur combinaison (somme, produit, degré...) peut être utilisée pour établir une base pour la génération de nombres pseudo-aléatoires. Probablement (mais ce n'est pas sûr :D ), un effet secondaire serait de pouvoir reproduire en une seule fois le code contenant des nombres "aléatoires".