Discussion de l'article "Le MQL5 Wizard : Comment apprendre à un EA à ouvrir des ordres en attente à n’importe quel prix"

 

Un nouvel article Le MQL5 Wizard : Comment apprendre à un EA à ouvrir des ordres en attente à n’importe quel prix a été publié :

L’article décrit une méthode de modification du code d’un module de signal de trading pour la mise en œuvre de la fonctionnalité vous permettant de définir des ordres en attente à n’importe quelle distance du prix actuel : il peut s’agir du prix close ou open de la barre précédente ou de la valeur de la moyenne mobile. Il y a beaucoup d’options. Il est important que vous puissiez définir n’importe quel prix d’ouverture pour un ordre en attente. Cet article sera utile aux traders qui tradent avec des ordres en attente.

Veuillez noter le paramètre Signal_PriceLevel. Par défaut, l’Expert Advisor est généré avec Signal_PriceLevel=0. Ce paramètre définit la distance par rapport au prix actuel. S’il est égal à zéro, un ordre sera ouvert au prix actuel du marché. Pour ouvrir un ordre en attente, vous devez définir une valeur différente de zéro pour le paramètre Signal_PriceLevel, c’est-à-dire Signal_PriceLevel peut être à la fois négative et positive.

La valeur de Signal_PriceLevel est généralement un nombre assez important. La différence entre les valeurs négatives et positives est illustrée ci-dessous :

Signal_PriceLevel=-50 :

Fig. 1. Signal_PriceLevel=-50

Fig. 1. Signal_PriceLevel=-50

Auteur : Vladimir Karputov

 

Merci à l'auteur pour cet article utile, mais je pense qu'il est nécessaire de vérifier à nouveau le code. Par exemple, j'ai remarqué que dans les méthodes CMySignalEnvelopes::LongCondition et CMySignalEnvelopes::ShortCondition, l'appel est effectué sur un pointeur NULL non vérifié vers l'objet m_signal, et dans la méthode CMySignalEnvelopes::GetPriceLevelStopp, la soustraction de la valeur actuelle de la variable locale temp... non initialisée est appliquée.

Par ailleurs, avant d'adopter le mécanisme de modification des paramètres d'ouverture des ordres que vous proposez, j'aimerais m'assurer de son exactitude.
Mes doutes sont les suivants :
premièrement, vos modifications de paramètres annulent la valeur du paramètre externe du conseiller expert Signal_PriceLevel, ce qui peut induire l'utilisateur en erreur,
deuxièmement, cette modification passe par le champ du module principal, ce qui peut affecter le travail d'autres modules,
troisièmement, les méthodes dans lesquelles elle est effectuée servent fonctionnellement à un certain objectif.

Dans ce cas, pour changer les paramètres des ordres d'ouverture, la classe de base CExpertSignal a des méthodes virtuelles spécifiques - OpenLongParams, OpenShortParams, qui peuvent avoir été prévues par les développeurs pour être surchargées dans les classes descendantes, les modules de signaux personnalisés, et pour permettre l'appel de ces méthodes, il suffit à l'initialisation d'appeler la méthode General et de lui passer l'index de l'objet de sa classe.

En général, j'aimerais que des articles comme le vôtre ou le mien, dans lesquels des extensions de bibliothèques système sont proposées, soient accompagnés d'au moins un petit commentaire des développeurs MQ de ces bibliothèques, parce que de tels articles ne sont pas si nombreux.
.

 

Merci pour votre code, il est très utile.

Au fait, j'essaie d'exécuter le code, le résultat comprend l'achat et la vente à différents prix, mais la colonne des bénéfices est toujours à ZÉRO, même s'il y a des transactions.

Cela se produit avec différents symboles et différentes heures.

Votre aide est très appréciée.

Dossiers :
 
Merci de partager, c'est un grand honneur pour les nouveaux arrivants.
 
hongtao:
Merci de partager, c'est un grand crédit pour les nouveaux arrivants.
Merci pour l'analyse, cowman !!!!!!
 
J'ai lu que cet EA mettait en place des ordres en attente à des dizaines de pips au-dessus et en dessous du niveau actuel. Puis-je vous demander comment mettre en place des points de support et de résistance pour les ordres en attente dans cet EA d'ordres en attente ? Par exemple, calculez le prix minimum, le prix maximum de la ligne k précédente, et mettez en place des ordres en attente au prix minimum et maximum.
 

Bonjour Karputov

Merci pour ce merveilleux tutoriel. Je voulais vous demander s'il était possible de modifier ce code pour que l'EA ouvre des ordres en attente de couverture ?

Je ne trade que sur l'or avec la stratégie suivante :

1. si la 12 SMA croise la 20 SMA, je veux ouvrir un ensemble d'ordres d'achat stop et de vente limite comme ci-dessous ;

Par exemple, le prix actuel lorsque la SMA se croise est de $1300.00 ;

1er ordre d'achat stop à 1302,00 et limite de vente à 1302,50

2ème ordre d'achat stop à 1303,00 et limite de vente à 1303,50

3ème achat stop @ 1304.00 & limite de vente @ 1304.50

4ème buy stop @ 1305.00 & sell limit @ 1305.50


2. Si la 12 SMA passe en dessous de la 20 SMA, alors je veux ouvrir un ordre de vente stop et un ordre d'achat limite comme ci-dessous ;

Par exemple, le prix actuel lorsque la SMA se croise est de 1300,00 $ ;

1er ordre de vente stop à 1298,00 et limite d'achat à 1297,50

2ème ordre de vente stop à 1297,00 et limite d'achat à 1296,50

3ème vente stop @ 1296.00 & limite d'achat @ 1295.50

4ème ordre de vente stop @ 1295.00 & limite d'achat @ 1294.50


J'ai besoin que l'EA accepte la taille de l'ordre manuellement et place ensuite les ordres en attente basés sur les croisements SMA ci-dessus. Je trade actuellement sur la plateforme MT4 avec un serveur virtuel et j'ai cherché partout un EA pour faire cela. Le seul plus proche que j'ai trouvé est votre EA pour la plateforme MT5, donc je passerai à MT5 si je dois le faire. J'espère que vous pourrez m'aider à coder cela.


Merci de votre aide.

Dev

 
Deven Parmar :

***

J'ai besoin que l'EA accepte la taille de l'ordre manuellement et place ensuite les ordres en attente sur la base des croisements SMA ci-dessus. Je trade actuellement sur la plateforme MT4 avec un serveur virtuel et j'ai cherché partout un EA pour faire cela. Le seul plus proche que j'ai trouvé est votre EA pour la plateforme MT5, donc je passerai à MT5 si je dois le faire. J'espère que vous pourrez m'aider à coder cela.

***

Vous devez chercher un conseiller approprié dans CodeBase. Ou contactez Freelance. Votre question ne concerne pas le sujet de cet article.

 
Vladimir Karputov:

Vous devez rechercher un conseiller approprié dans CodeBase. Ou contacter Freelance. Votre question ne concerne pas le sujet de cet article.

Je comprends que ce n'est pas le sujet de cet article, mais est-il possible que vous m'aidiez à modifier et à recoder cet EA pour qu'il fonctionne comme je le souhaite ? Je ne suis pas très doué pour le codage.

 
Deven Parmar :

Je comprends que ce n'est pas le sujet de cet article, mais est-il possible que vous m'aidiez à modifier et à recoder cet EA pour qu'il fonctionne comme je le souhaite ? Je ne suis pas très doué pour le codage.

Vous écrivez dans l'article de discussion. Vous feriez mieux de créer un sujet sur le forum "Aidez-moi à trouver un conseiller qui travaille avec les ordres en attente". Vous pourrez peut-être m'aider.

 
Vladimir Karputov:

Vous écrivez dans l'article de discussion. Vous feriez mieux de créer un sujet sur le forum "Aidez-moi à trouver un conseiller qui travaille avec des ordres en attente". Vous pourrez peut-être m'aider.

Ah oui, je comprends maintenant ce que vous dites. Merci de votre compréhension.