Questions sur l'assistant MQL5 et la bibliothèque standard de classes de trading - page 10
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.
J'ai décidé d'écrire mon propre module de signal à des fins purement cognitives. J'ai été confronté à un problème. J'ai compris que cela peut être fait par CExpertSignal::OpenLongParams(...). Mais j'ai un problème - mon testeur m'avertit d'une expiration invalide. Après avoir creusé le code source, je me suis rendu compte que nous ne pouvons pas obtenir de type de temps autre queORDER_TIME_SPECIFIED et que nous voudrions ORDER_TIME_GTC.
J'ai fait un geste intelligent jusqu'à présent, mais ce n'est pas tout à fait ça. J'ai corrigé la fonction dans la bibliothèque :
Que pouvez-vous nous conseiller ?
Bonjour.
Vous avez tout à fait raison. Je n'ai pas pris en compte les expirations zéro.
Votre solution est bonne. J'apporterai les modifications appropriées à la bibliothèque standard.
Merci.
Bonjour.
Vous avez tout à fait raison. Je n'ai pas pris en compte l'expiration zéro.
Votre solution est bonne. J'apporterai les modifications appropriées à la bibliothèque standard.
Merci.
Ce sera bien, mais en attendant, dans cette situation, j'ai trouvé une autre issue, la bonne :) En créant une classe héritée de CExpert, dans laquelle j'ai surchargé les fonctions CheckOpenLong() et CheckOpenShort(), et j'y ai apporté des corrections de ce type :
Mais en attendant, j'ai trouvé un autre moyen de sortir de cette situation - le bon :) En créant une classe héritée de CExpert, dans laquelle j'ai surchargé les fonctions CheckOpenLong() et CheckOpenShort(), et y ai effectué des corrections de ce type :
Veuillez expliquer la logique du paramètre Expert_EveryTick.
Si Expert_EveryTick=true, le conseiller expert traite chaque tick ? C'est-à-dire qu'il vérifie les conditions d'entrée/sortie et le suivi des positions (trawl) à chaque nouveau tick, n'est-ce pas ?
Et si Expert_EveryTick=fasle - seulement au premier tick d'une nouvelle barre? Et le trail sera aussi déclenché seulement au premier tick ?
Veuillez expliquer la logique du paramètre Expert_EveryTick.
Si Expert_EveryTick=true, le conseiller expert traite chaque tick ? C'est-à-dire qu'il vérifie les conditions d'entrée/sortie et le suivi des positions (trawl) à chaque nouveau tick, n'est-ce pas ?
Et si Expert_EveryTick=fasle - uniquement au premier tick d'une nouvelle barre? et le chalut sera également déclenché uniquement au premier tick ?
Plus de questions sur la logique du conseiller expert :
il y a une position ouverte, par exemple un achat, et un lot fixe, par exemple 1.
Il y a un signal de l'autre côté, pour vendre.
que doit faire l'EA ? y aura-t-il deux transactions d'un lot chacune (la première sera clôturée par un lot) ou une transaction de 2 lots ? cela fait-il une différence si l'achat actuel est dans le rouge ou dans le bleu ?
S'il y a une position d'achat et à nouveau un signal d'achat, quelles méthodes dois-je redéfinir pour la fermer ?
Plus de questions sur la logique du conseiller expert :
1. Il y a une position ouverte, par exemple un achat, et un lot fixe, par exemple 1.
il y a un signal pour l'autre côté, pour vendre.
Que doit faire le conseiller expert ? va-t-il ouvrir deux transactions d'un lot chacune (la première sera fermée d'un lot) ou une transaction de deux lots ? y a-t-il une différence si l'achat actuel est dans le rouge ou dans le plus ?
2. l'EA ne va pas devenir long par lui-même, c'est-à-dire s'il y a une position d'achat et à nouveau un signal d'achat ? Quelles méthodes dois-je redéfinir pour qu'il devienne long, CheckOpenLong()?
1. deux seuils de déclenchement (paramètres de l'Expert Advisor). Si le seuil de fermeture est dépassé, la position se ferme simplement, si deux seuils sont dépassés (fermeture et ouverture), la position s'inverse. -/+ Il n'y a pas de différence.
2. méthode de traitement
1. deux seuils de déclenchement ( paramètres EA). si le seuil Close est dépassé, la position se ferme simplement. si deux seuils sont dépassés (Close et Open), la position s'inverse. -/+ Il n'y a pas de différence.
2. méthode de traitement
Les seuils Close et Open sont le résultat d'un "vote", que renvoient ShortCondition() ou LongCondition() dans le module des signaux ?
Les seuils Close et Open sont-ils le résultat du "vote" de ce que ShortCondition() ou LongCondition() renvoie dans le module des signaux ?
Trois questions :
En théorie, nous pouvons bien sûr construire l'EA à l'aide de l'assistant, puis ajouter toutes ces fonctionnalités manuellement au code. Mais il est souhaitable que tout cela soit implémenté sous la forme de méthodes standard, c'est-à-dire pour les nuls qui veulent utiliser l'assistant, afin qu'ils n'aient pas à entrer dans le code et à le modifier, par exemple, s'ils veulent remplacer un module de signal par un autre.