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
Bonjour Andrey !
Bonjour Andrey !
La fonction GetOpenPriceByLot().
Cette fonction renvoie le prix d'ouverture d'une position ou d'un ordre par taille de lot. La sélection des positions à prendre en compte est spécifiée par des paramètres externes :
La fonction GetTicketByLot().
Cette fonction renvoie le ticket d'une position ou d'un ordre par taille de lot. La sélection des positions à prendre en compte est spécifiée par des paramètres externes :
ZS. Vous trouverez ci-joint un script pour tester la fonction GetTicketByLot().
Bonjour Igor !
Merci beaucoup pour les nouvelles fonctionnalités et pour avoir été si rapide. Tout est très bien. La fonction renvoie, par exemple, un ordre des billets par conditions, qui peuvent être définies par des variables externes ou vous ne pouvez pas les utiliser. Je ne suis pas très clair sur cette ligne là :
si ((op<0 || OrderType()==op) && (OrderType()>1 && OrderType()<6))
Nous vérifions ici la condition de l'instruction if, c'est-à-dire que si la variable externe <0, n'importe quel type de commande est disponible OU si nous écrivons, par exemple, OP_BUY dans l'appel de fonction, la sélection se fera parmi les commandes OP_BUY. Cette condition est claire, mais nous avons en outre une condition équivalente écrite par le biais de&& qui stipule queOrderType() doit être dans la plage des ordres en attente, c'est-à-dire de 1 à 5. Notre type OP_BUY n'est pas inclus dans cette gamme et, par conséquent, la condition de l'opérateur doit être fausse et le contrôle doit passer à l'opérateur qui suit l'opérateur if-else, c'est-à-dire qu'il m'est difficile de dire où, quelque part derrière la flèche du corps bouclé. Il me semble que nous devrions spécifier ici la condition des ordres au marché et une fonction distincte des ordres en attente du même type. C'est-à-dire que si je veux faire une sélection parmi les ordres de marché et que je ne connais pas son type exact, je prends la variable externe <0 mais j'adresse la fonction où les conditions de 0 à 1 sont spécifiées. Le même processus est appliqué aux ordres en attente. J'en suis donc venu à la conclusion que nous devrions utiliser une fonction différente pour chaque catégorie de types d'ordres lorsque nous utilisons cette condition utile.
J'ai également un problème de connexion à la bibliothèque. J'ai cherché et lu, mais la connexion donne une erreur lors de la compilation de l'EA que j'écris. Je n'ai pas encore le temps de m'en occuper, je veux écrire un Expert Advisor rentable plus rapidement, donc j'ai copié les trois bibliothèques nécessaires et les ai attachées après la fonction spéciale start(), et j'ai placé leurs variables globales dans les variables globales de l'EA et commenté les références à celles-ci. Ce n'est pas très pratique, mais ça marche.Je ne suis pas très clair sur cette ligne là :
si ((op<0 || OrderType()==op) && (OrderType()>1 && OrderType()<6))
Merci ! Corrigé... Il s'agit d'une conséquence de la copie, c'est-à-dire de l'utilisation d'une préforme d'une autre fonction destinée à fonctionner uniquement avec des ordres à cours limité et des ordres stop.
J'ai également un problème avec la connexion des bibliothèques. J'ai cherché et lu, mais la connexion me donne une erreur lors de la compilation du conseiller expert que j'écris. Je n'ai pas le temps de le découvrir, et je veux écrire un Expert Advisor rentable plus rapidement, donc j'ai copié les trois bibliothèques nécessaires et les ai attachées après la fonction spéciale start(), et j'ai placé leurs variables globales dans les variables globales de l'EA et commenté les références à celles-ci. Ce n'est pas très pratique, mais ça marche.
À propos, je n'utilise pas mes propres bibliothèques sous forme de fichiers MQH. Je copie généralement les fonctions dont j'ai besoin dans mon EA, c'est-à-dire que mon EA standard prêt à l'emploi est un seul fichier MQ4. Tout ce dont j'ai besoin est dans ce fichier. Oui, il y a une certaine répétitivité dans le code. Mais il n'y a aucun problème avec les versions des fonctions.
Au fait, j'ai aussi remarqué que vous avez des scripts de test pour chaque fonction et qu'ils contiennent toutes les fonctions supplémentaires dont vous avez besoin, que vous pouvez simplement ajouter à votre EA avec la fonction et tout sera dans un seul fichier sans rien de plus. Les fonctions sont simples et utiles, mais avec votre permission, j'en ferai quatre pour moi : deux pour les positions et deux pour les arrêts. Ils seront plus universels pour les exigences délicates de mon EA. Mais maintenant je vois à quel point c'est facile à faire. Merci beaucoup Igor.
Salutations Andrei.
La fonction TimeOpenFirstPos().
Cette fonction renvoie l'heure de la première position ouverte. La sélection des positions à prendre en compte est spécifiée par des paramètres externes :
Bonjour
Comment ajouter un foeba à votre canal SetRegression()(https://www.mql5.com/ru/forum/107476/page35 ).
Bonjour
Comment ajouter un foeba à votre canal SetRegression()(https://www.mql5.com/ru/forum/107476/page35 ).
Duck, c'est facile :