Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Nulle part sans toi - 6. - page 961

 
Vinin:
L'avez-vous vérifié dans le testeur ? Il n'y a que 1000 barres disponibles au démarrage.

C'est vrai ! J'oublie toujours ça. Merci de me le rappeler.

N'y a-t-il aucun moyen de contourner cette limite ?

 
goodearth:

C'est vrai ! J'oublie toujours ça. Merci de me le rappeler.

N'y a-t-il aucun moyen de contourner cette restriction ?


Il y a un contrôle pour le nombre de barres nécessaires pour le calcul.

if (Bars<MinBar) return;
 
rapid_minus:
Sur trois des symboles figure un conseiller "sur Sleptsov" et sur le quatrième un autre conseiller. Est-ce qu'ils interfèrent les uns avec les autres ? Je n'ai jamais vu de mention indiquant qu'un seul EA doit être placé sur un symbole sur MT4.
Non, il n'y a pas de telles restrictions. La question était de savoir si un EA étranger pouvait fermer tous les ordres. Et nous devons vérifier s'il n'y a pas de condition pour fermer tous les ordres d'un autre EA. Ou au moins vérifier si un tel problème se produit si un seul EA est défini.
 
AlexeyVik:
Non, il n'y a pas de telles restrictions. La question était de savoir si un EA étranger ne peut pas fermer toutes les commandes. Et nous devrions vérifier s'il n'y a pas de condition pour fermer tous les ordres des autres dans celui-ci. Ou au moins vérifiez si un tel problème se pose si un seul EA a été défini.
Merci. Je vais essayer lundi. Mais dans ce cas, l'EA étranger ne doit fermer que les ordres perdants sur tous les symboles. Comment cela se présente-t-il dans le code ? Je n'ai pas encore rencontré ce problème.
 
AlexeyVik:

Veuillez clarifier, je suis totalement confus :

J'ai trouvé un script qui ferme les ordres avec profit ou avec moins, mais je ne comprends pas la logique - le bool close_only_profit_orders=false est défini dans les variables externes et ensuite il est vérifié avec la négation dans le début du f-i : if(OrderType()==OP_BUY && (!close_only_profit_orders || order_prof>0). C'est-à-dire que si elle n'est pas fausse ou s'il y a des ordres avec un profit, alors la fonction OrderClose() suit. Mais nulle part dans le code, il n'y a de conditions pour que la variable close_only_profit_orders devienne vraie. Alors à quoi ça sert ?

 
rapid_minus:

Veuillez clarifier, je suis totalement confus :

J'ai trouvé un script qui ferme les ordres avec profit ou avec moins, mais je ne comprends pas la logique - le bool close_only_profit_orders=false est défini dans les variables externes et ensuite il est vérifié avec la négation dans le début du f-i : if(OrderType()==OP_BUY && (!close_only_profit_orders || order_prof>0). C'est-à-dire que si elle n'est pas fausse ou s'il y a des ordres avec un profit, alors la fonction OrderClose() suit. Mais nulle part dans le code, il n'y a de conditions pour que la variable close_only_profit_orders devienne vraie. Alors à quoi ça sert ?


Si bool close_only_profit_orders=true ;, alors seules les commandes rentables seront fermées.

C'est ainsi.

 
r772ra:

Si, bool close_only_profit_orders=true ; alors seules les commandes rentables sont fermées.

C'est ainsi.

Mais nulle part dans le code, il n'y a de conditions selon lesquelles la variable close_only_profit_orders devient vraie, c'est-à-dire qu'elle ne deviendra jamais vraie à moins que nous ne la rendionsvraie nous-mêmes, car il s'agit d'une variable externe. Donc,si nous le rendonsvrai, cela signifiera que nous ne devons pas fermer les ordres rentables. Mais alors il y a une contradiction avec OR -|| order_prof>0.

Ou plutôt le contraire : si c'est faux, il ne faut pas fermer, et alors il y a une contradiction, mais si c'estvrai, alors tout va bien...( ?)

Complètement confus.

 
rapid_minus:
Mais il n'y a nulle part dans le code une condition pour que la variable close_only_profit_orders devienne vraie, c'est-à-dire qu'elle ne deviendra jamais vraie.

C'est à vous de décider si vous voulez fermer tous les sites ou seulement ceux qui sont rentables.

 
rapid_minus:

Mais nulle part dans le code il n'y a de condition pour que la variable close_only_profit_orders devienne vraie, c'est-à-dire qu'elle ne deviendra jamais vraie à moins que nous ne la rendionsvraie nous-mêmes, car il s'agit d'une variable externe. Donc,si nous le rendonsvrai, cela signifiera que nous ne devons pas fermer les ordres rentables. Mais alors il y a une contradiction avec OR -|| order_prof>0.

Ou plutôt le contraire : si c'est faux, il ne faut pas fermer, et alors il y a une contradiction, mais si c'estvrai, alors tout va bien...( ?)

Totalement confus.

Logique !

extern boolclose_only_profit_orders = false ; // Fermer toutes les positions de profit et de perte, bien sûr, selon certaines conditions.

extern boolclose_only_profit_orders = true ; // seules les positions rentables sont fermées, les positions perdantes ne sont pas fermées non plus, selon certaines conditions.

Vous pouvez vérifier dans le testeur quelle variante est la meilleure ! Ou en mode optimisation 0 = faux et 1 = vrai.

 
Merci à tous
Raison: