conseiller expert - questions diverses - page 40

 
Max Enrik:


Non, je dois fermer tous les ordres de symboles graphiques.
Oui, avec le bon numéro magique.

if(closeallsymbols==false && OrderSymbol()!=Symbol()) 
C'est un peu bizarre.
 
Marco vd Heijden:
C'est un peu bizarre.

Ouais !
C'est pareil ici ! Je pensais que cette partie de la fonction de fermeture était bizarre mais ça marche.

 
Quelle partie de "Vous devez rafraîchir les taux après la mise en veille et entre plusieurs appels au serveur si vous voulez utiliser les variables prédéfinies (Bid/Ask) ou avant OrderSelect pour utiliser OrderClosePrice() à la place" n'était pas claire ?
 
RefreshRates - Timeseries and Indicators Access - MQL4 Reference
RefreshRates - Timeseries and Indicators Access - MQL4 Reference
  • docs.mql4.com
RefreshRates - Timeseries and Indicators Access - MQL4 Reference
 

Désolé, s'il vous plaît, ne me blâmez pas. Toujours confus.
J'ai besoin de demander quelque chose, et j'ai besoin de le faire étape par étape en raison de mon manque de connaissance du code.

Q1 : Puis-je utiliser while() ?
Q2: Puis-je utiliser sleep()?
Q3 : Est-ce que RefreshRates() pourrait résoudre mon problème ? ( est-ce que cette dernière chose peut résoudre mon problème, s'il vous plaît ? )

S'il vous plaît, faites-moi savoir à ce sujet, car je ne veux pas nuire à ma fonction d' ordre de fermeture.

 

Vous pouvez utiliser while mais vous devez également ajouter un compteur qui sort de la boucle après un nombre X d'essais, sinon l'expert risque de rester coincé dans une boucle sans fin.

Et vous parlez de votre problème mais je n'ai aucune idée de ce que c'est.

Si votre problème concerne le prix de clôture, vous pouvez simplement utiliser,

MarketInfo(OrderSymbol(),MODE_ASK);
MarketInfo(OrderSymbol(),MODE_BID);

Respectivement et ajouter le switch OrderType() pour OP_BUY et OP_SELL.

 
Marco vd Heijden:

Vous avez parlé de votre problème mais je n'ai aucune idée de ce qu'il en est.

J'ai juste besoin de dire que mon problème est le suivant : parfois, ma fonction de fermeture des ordres ouverts laisse certains ordres ouverts. Je veux fermer tous mes ordres ouverts en une fois, tout le temps.

---

2ème édition

Pourrais-je remplacer toutes mes fonctions Bid et Ask par MarketInfo(), s'il vous plaît ?

MarketInfo(OrderSymbol(),MODE_BID);
MarketInfo(OrderSymbol(),MODE_ASK);
 
whroeder1:
Quelle partie de "Vous devez rafraîchir les taux après la mise en veille et entre plusieurs appels au serveur si vous voulez utiliser les variables prédéfinies (Bid/Ask) ou avant OrderSelect pour utiliser OrderClosePrice() à la place." n'était pas claire ?


RefreshRates() Je ne comprends pas où je pourrais le mettre.

Merci pour vos commentaires.

 
Max Enrik:

J'ai juste besoin de dire que mon problème est le suivant : parfois, ma fonction Fermer les ordres ouverts laisse des ordres ouverts. Je veux fermer tous mes ordres ouverts en une seule fois, tout le temps.

---

2ème édition

Pourrais-je remplacer toutes mes fonctions Bid et Ask par MarketInfo(), s'il vous plaît ?

Oui, si vous traitez une position qui n'est pas le symbole du graphique.
 
Marco vd Heijden:
Oui, si vous manipulez une position qui n'est pas le symbole du graphique.


Merci beaucoup, je vais tous les remplacer, nous verrons ce qui se passera lundi.

Passez un bon week-end.