[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 479

 
IgorM:

Désolé, j'écris sans vérifier, je me suis trompé ici, ça devrait fonctionner comme ça :

Vendre :(OrderOpenPrice()-Bid)*MarketInfo(Symbol(),MODE_TICKVALUE)*lot/Point

Achat : (Ask-OrderOpenPrice())*MarketInfo(Symbol(),MODE_TICKVALUE)*lot/Point

J'ai compris, désolé, la raison est ailleurs dans le code. Merci, en tout cas, pour la réponse et l'aide
 
demlin:
J'ai compris, désolé, c'est ailleurs dans le code pour la cause. Merci, en tout cas, pour la réponse et l'aide

for(i=(OrdersTotal()-1); i>=0; i--) // перебор ордеров 
{ 
   if (!OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES)) continue;
   if (OrderSymbol()!=Instr||OrderMagicNumber()!=MN)  continue;
   if(OrderType()==OP_BUY)
       if (Ask-OrderOpenPrice()>BezUbytok*Point)
           return(77);   
   if(OrderType()==OP_SELL)
       if (OrderOpenPrice()-Bid>BezUbytok*Point)
           return(77);   
}   
return(0);
 
Vinin:


Merci beaucoup ! !! Votre code a fonctionné absolument et à 100% !!!!!
 

Aidez-moi à faire face à cette EA

Lors de la compilation pas d'erreurs, mais quand il est testé dans le testeur de stratégie, il ya des erreurs
la première erreur en attendant la chaîne de commande n'a pas ouvert le code contenant la chaîne de compilé pas d'erreurs exécuter dans le testeur de stratégie
fonctionne, mais ouvre seulement des positions sur la vente sur l'achat ne veut pas

Pourriez-vousvérifier et nous dire ce qui ne va pas dans ce code?

Dossiers :
all.mq4  2 kb
 
novicek:

Aide avec le conseiller

ce texte aurait besoin de signes de ponctuation et d'une pensée claire.
 

Bonne journée à tous.


Savez-vous s'il est judicieux d'utiliser

if(IsConnected())

Par exemple, vérifions-nous si un ordre a été établi et, si ce n'est pas le cas, l'établissons-nous (mais nous n'avons PAS besoin de deux ordres de ce type, et catégoriquement pas) ?

S'il n'y a pas de lien, pas de ticks, IsConnected ne fonctionne pas. Je me trompe ? Qui utilise quelles méthodes pour vérifier les zones critiques d'un programme ?

 
Pyro:

Bonne journée à tous.


Savez-vous s'il est judicieux d'utiliser

Par exemple, vérifions-nous si un ordre a été établi et, si ce n'est pas le cas, l'établissons-nous (mais nous n'avons PAS besoin de deux ordres de ce type, et catégoriquement pas) ?

S'il n'y a pas de lien, pas de ticks, IsConnected ne fonctionne pas. Je me trompe ? Qui utilise quelles méthodes pour vérifier les zones critiques d'un programme ?


Je ne l'utiliserais pas, c'est une fonction très suspecte, j'ai lu quelque part qu'il y avait des problèmes, je pense que Kim en parlait, google le fil de discussion à ce sujet.
 
Martingeil:
Je n'utiliserais pas cette fonction très suspecte, j'ai lu quelque part que c'est glitchy, je crois que Kim en parlait, google le fil sur cette fonction.

Oui, j'ai vu ça aussi, https://www.mql5.com/ru/forum/128436, je pense qu'ici https://www.mql5.com/ru/forum/131859
 

Merci collègues ! Une autre chose est que c'est étrange qu'ils n'aient pas corrigé ce cas en 4 ans... J'ai une situation réelle où Expert Advisor (apparemment), lorsqu'il vérifie un ordre dans le pool, perd la connexion et donne en quelque sorte fallse au lieu de true et place des ordres supplémentaires. La solution a été trouvée en effectuant des tests supplémentaires sur le pool de doublons avec suppression de ces derniers. Au moins de cette façon.


Le problème est que des erreurs telles que "pas de connexion" n'apparaissent pas lors de la vérification du pool, mais uniquement lors de l'établissement des ordres. Et je veux vérifier la piscine.

 
sergeev:
ce texte aurait besoin de signes de ponctuation et d'une pensée claire.

Que ce fait ne mette pas en doute mon alphabétisation (éducation).
La non ponctuation est ma frénésie et c'est tout.