Discussion de l'article "Assistant MQL5 : Comment Créer un Module de Signaux de Trading" - page 3
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
Dans la nouvelle version de l'assistant MQL5, le format des modules de signaux a changé. Regardez ici pour plus d'informations - https://www.mql5.com/ru/forum/3724/66962#comment_66962.
J'ai regardé le code de plusieurs signaux prêts dans le dossier Signal, il n'y a pas d'implémentation des fonctions CheckOpenShort/CheckOpenLong. Au lieu de cela, elles sont utilisées correctement, si j'ai bien compris ?
Oui, c'est vrai.
Pour être honnête, je suis un peu confus. Il y a des fonctions CheckOpenShort/CheckOpenLong dans la classe CExpertSignal. Vous utilisez d'autres fonctions dans vos signaux, et je ne comprends pas non plus où elles sont appelées dans CExpert. Le problème est que j'ai pris un signal prêt à l'emploi dans l'article sur l'écriture de mon propre module de signaux, je l'ai fait voir à l'assistant (vous pouvez probablement apporter des modifications à l'article sur le nouveau format) et j'ai obtenu un Expert Advisor avec ce signal, mais il ne trade pas, pas une seule transaction dans le testeur depuis un an.
Les fonctions sont appelées dans le constructeur - c'est clair, mais pourquoi n'utilise-t-on pas les fonctions standard ?Voyez ce qui ne va pas. Il n'y a pas d'échange dans le testeur.
Ce module fait du trading.
Dans votre cas, remplacez pour les longs
if( High(1) > High(2) && Low(2)>Low(3) && High(2)<High(3) && Close(3)>Open(3) ){ return(100); } //--- условие не выполнено return(0); }par
pour les shorts - trouvez-le vous-même
ce module négocie
pour votre cas, remplacez les longs
par
pour les shorts, vous le trouverez vous-même.
Oui, c'est vrai, merci ! J'ai passé la journée, je pense avoir tout fait comme dans l'article, quelle est mon erreur ?
Dans le nouvel assistant par rapport au précédent, il y a de très gros changements,
virtual bool CheckOpenLong(double& price,double& sl,double& tp,datetime& expiration) ;
virtual bool CheckOpenShort(double& price,double& sl,double& tp,datetime& expiration) ;
J'ai compris comme suit : il devrait y avoir un objet de la classe CExpertSignal parmi plusieurs objets utilisés dans le conseiller expert avec l'attribut principal, il peut utiliser ces fonctions. d'autres objets participent à l'ouverture des positions par le biais des fonctions
virtual int ShortCondition() ; //vérifie la condition d'ouverture de vente
virtual int LongCondition() ; //vérifie la condition d'ouverture d'une position d'achat
Pour mettre les points sur les i, nous avons besoin d'un article sur la façon d'écrire votre propre module de signaux dans le nouvel assistant, nous l'attendons donc.