Trouble de l'erreur il n'y a pas d'opérations commerciales - page 13

 
Andrey Kaunov:

Artem, c'est la deuxième fois que je pose la question et je n'ai pas reçu de réponse intelligible (sans vouloir vous offenser). Pourquoi est-ce qu'il s'allume toujours sur le NZDUSD et ensuite se plante dans un pépin avec une attente interminable. C'est le validateur qui se bloque, pas le conseiller expert. Il n'y a pas d'endroit où le conseiller expert peut se planter.

...

Non, ça ne l'est pas. Et il a passé le test sur votre EA sur NZDUSD (pas de transactions - également un résultat), et il ne s'est pas planté dans une attente sans fin nulle part. Il n'a pas attendu la fin des tests sur GBPUSD M30 - et vous a donné une erreur de test très longue.

Je ne sais pas comment fonctionne le validateur. Je ne peux pas dire pourquoi il échoue souvent à ouvrir des positions sur NZDUSD. Il y a peut-être des conditions particulières là-bas.
 
Renat Akhtyamov:

petite réparation, juste pour le plaisir :

sOr=bOr=0;

bool sCorrect=true;

      for (i=OrdersTotal()-1;i>=0;i--)
      {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES) )
         {

            if (OrderSymbol()!=Symbol()) continue;

            if(OrderCloseTime()!=0) continue; // лучше не забывать. Бывает редко но метко
            if(OrderType()==OP_BUY)bOr=bOr+1;
            if(OrderType()==OP_SELL)sOr=sOr+1;
         } else {

            sCorrect=false; // не смогли выбрать ордер, sOr, bOr могут быть некорректны

         }
      }

if (sCorrect) {

// sOr, bOr точно корректны

if(sOr==0)

{

//open sell

}

if(bOr==0)

{

//open buy

}

}

OrderSelect comme condition distincte
 
Artyom Trishkin:

Il n'est pas nécessaire d'introduire des paramètres rigides. Tous les paramètres doivent être calculés à partir des conditions commerciales. Laissez le lot d'ouverture dans les paramètres. Si le lot est calculé, alors s'il y a un manque de fonds, même avec le plus petit lot, afficher un message à ce sujet. Tous les autres paramètres de la transaction doivent également être vérifiés, contrôlés et corrigés. Si la correction est impossible, vous en serez informé.

Cependant, s'il y a beaucoup de conditions et qu'elles dépendent toutes de l'état actuel du commerce et des signaux, il est probable qu'il n'y aura pas d'accord dans le validateur. Dans ce cas, une approche individuelle pour tester une telle EE est nécessaire.

La version actuelle est comme une mitrailleuse dans le testeur. C'est un EA complètement différent, il n'y a presque pas de conditions d'ouverture. Il est déjà impossible de faire en sorte que les transactions ne s'ouvrent pas en utilisant des paramètres externes. Ne tester qu'avec une taille de lot et de dépôt irréelle. Mais même dans ce cas, il ne se met pas dans le coma comme dans le validateur.

Donc, à ma suggestion, vous n'avez pas répondu.


Artyom Trishkin:

Non. Je n'ai pas besoin de l'argent des autres pour que la personne qui l'a payé ne se débrouille pas toute seule. Ce n'est pas l'argent qui est le plus important, c'est votre résultat.

C'est de la démagogie.

Je fais de la programmation MQL depuis plus de 10 ans maintenant. Et c'est la première fois que je n'arrive pas à faire le travail. Pourquoi ça ? La réponse est évidente, elle ne dépend pas de mes efforts et de mes connaissances. Le problème est de l'autre côté !
 
Andrey Kaunov:

Oui, la version actuelle jaillit comme une mitrailleuse dans le testeur. C'est déjà un EA complètement différent, il n'y a presque pas de conditions d'ouverture. Il est déjà impossible de faire en sorte que les transactions ne s'ouvrent pas avec des paramètres externes. Ne tester qu'avec une taille de lot et de dépôt irréelle. Mais même dans ce cas, il ne se met pas dans le coma comme dans le validateur.

Donc, à propos de ma suggestion, vous n'avez pas répondu.


C'est de la démagogie.

Que ce soit de la démagogie.

Je me suis retiré de la discussion pour ne pas faire de démagogie.

 
Artyom Trishkin:

Qu'il y ait de la démagogie.

Je me suis retiré de la discussion pour ne pas faire de démagogie.

Bien sûr, il n'y a pas besoin de démagogie. Vous pourriez simplement faire intervenir la personne qui fait fonctionner le validateur dans la discussion et lui demander pourquoi. Sinon, on ne fait que parler de rien et ça ne sert à rien.

 
Maxim Kuznetsov:

Une petite réparation, juste comme ça :

OrderSelect comme condition distincte

C'est tout à fait possible, je ne discuterai pas.

Je n'ai encore rencontré aucune de ces nuances.

 
Renat Akhtyamov:

C'est tout à fait possible, je ne discuterai pas.

Je n'ai encore rencontré aucune de ces nuances.

De quoi parlez-vous, Renate ? J'ai raté quelque chose ?

 
Andrey Kaunov:

Oui, la version actuelle jaillit comme une mitrailleuse dans le testeur. C'est déjà un EA complètement différent, il n'y a presque pas de conditions d'ouverture. Il est déjà impossible de faire en sorte que les transactions ne s'ouvrent pas avec des paramètres externes. Ne tester qu'avec une taille de lot et de dépôt irréelle. Mais même dans ce cas, il ne se met pas dans le coma comme dans le validateur.

Donc, à propos de ma suggestion, vous n'avez pas répondu.


C'est de la démagogie.

Je fais de la programmation MQL depuis plus de 10 ans maintenant. Et c'est la première fois que je n'arrive pas à faire le travail. Pourquoi ça ? La réponse est évidente, elle ne dépend pas de mes efforts et de mes connaissances. Le problème est de l'autre côté !

Pensez à ce qui se passe à Stop Out. (vous avez déjà Margin Call, Steppe est plus proche que jamais)

votre transaction sera fermée de force, mais vous ignorez une telle option et la poursuivrez à chaque tick (dans l'historique, elle est longue) et enverrez des ordres incorrects.

 
Andrey Kaunov:

Oui, bien sûr, il n'y a pas besoin de démagogie. Vous pourriez simplement faire intervenir la personne qui fait fonctionner le validateur dans la discussion et lui demander pourquoi. Sinon, on ne fait que s'éterniser sur rien.

Même s'ils me disent la raison, ce qui est peu probable, je ne vous la donnerai pas. Pas seulement vous, mais toute la communauté. Et ce n'est pas parce que je suis mauvaise.

Donc - d'abord le profileur de code, puis vous suivez exactement les recommandations de l'article que vous connaissez, et ensuite - la publication du conseiller.

Профилирование кода - Разработка программ - Справка по MetaEditor
Профилирование кода - Разработка программ - Справка по MetaEditor
  • www.metatrader5.com
Профилирование — это сбор характеристик программы во время ее выполнения. При профилировании замеряется время выполнения и количество вызовов отдельных функций и строк в коде программы. При помощи этого инструмента программист может найти наиболее медленные участки кода и провести их оптимизацию. Профилирование можно проводить на обычном...
 
Andrey Kaunov:

De quoi parlez-vous, Renat ? J'en ai oublié un peu ?

Il semble avoir écrit consécutivement, question et réponse.

Toutes les pages du fil sont accessibles.