Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
J'utilise ceci ? Si on ajoute à cela "if(OpenOrdersThisPair(Symbol())>0)" ci-dessus, cela devrait permettre de séparer les EA de chaque paire ?
Ah ! et si je comparais l'OrderCloseTime() et l'OrderOpenTime() ?
Ce serait sûrement la MEILLEURE façon de faire ce que je veux ? De cette façon, je peux ajouter autant de fonctions OrderClose que je veux ? Après tout, je pourrais simplement sélectionner la transaction dans l'historique qui a le même OrderOpenTime() que l'"OP_BUY" actuel, mais si l'OrderCloseTime() > OrderOpenTime(), alors cela empêcherait l'OrderClose() de fermer les moitiés en permanence !
Quelqu'un peut me dire que j'ai quelque chose à faire ici :( haha.
Pardonnez-moi, mais je ne comprends pas comment cela peut être vrai ? Je m'assure que l'OrderSymbol()==paire ? Ainsi, l'EA concerné qui est attaché à l'EURUSD, détectera l'ordre sélectionné sur l'EURUSD ?
Vous commencez par OrderSelect()... puis vous vérifiez....
if(OrderSymbol()==pair) total++;
... et c'est très bien pour cette fonction, si les symboles ne correspondent pas, vous n'incrémentez pas le compte ... mais cela signifie toujours que le dernier ordre que vous avez sélectionné n'était pas pour le symbole sur lequel vous travaillez.
Vous avez besoin d'une boucle supplémentaire pour trouver un ordre valide et sortir de la boucle... alors vous avez l'ordre correct sélectionné.
Je suis confus, j'ai testé mon EA sur 16 paires différentes, simultanément cette semaine et il n'a jamais sélectionné la mauvaise paire :s ? Est-ce que quelque chose m'échappe ?
DomGilberto:
I thought that too - It says I need OrderSelect() before using OrderType, but it works? I only ever have one order open at any given time...
I can't think of how to use OrderOpenTime() to my advantage and stop CloseHalfOrder being called every time...
EA ferme partiellement un ordre, EA doit savoir quel ordre ne doit pas être fermé partiellement à nouveau, donc récupérer OrderOpenTime() avant de fermer partiellement. Codez l'EA pour qu'il ne ferme pas partiellement les ordres sur cette paire de devises avec ce même OrderOpenTime().
EA ferme partiellement un ordre, EA doit savoir quel ordre ne doit pas être fermé partiellement à nouveau, donc récupérer OrderOpenTime() avant de fermer partiellement. Codez l'EA pour qu'il ne ferme pas partiellement les ordres sur cette paire de devises avec ce même OrderOpenTime().
Oui, je commence à y arriver maintenant - je suppose que je dois comparer avec les transactions qui ont été clôturées dans l'historique sur le même OrderSymbol() ?
Le problème que j'ai cependant est que j'essaie de clôturer partiellement le même "OP_BUY" ou "OP_SELL" jusqu'à 4 fois à des prix différents... Je pense que la question que je devrais poser est la suivante : puis-je obtenir un moyen par lequel j'ai une règle selon laquelle TOUTES les clôtures partielles (de n'importe quels lots et prix sur UNE transaction donnée) ne seront clôturées partiellement qu'UNE SEULE fois avec leurs paramètres prédéfinis "OrderClose()"...
La façon dont je cherche à le faire maintenant en comparant l'OrderOpenTime() ne fonctionnera essentiellement qu'une seule fois, et empêchera tout autre type de fonction OrderClose() de se produire du tout... Je veux trouver un moyen d'appliquer une règle à 4 fonctions OrderClose()... (si cela a un sens ?)
Je sais que les gens suggèrent d'ouvrir 4 ordres, mais sans aller trop loin, c'est moins efficace pour moi de le faire de cette façon.