Questions des débutants MQL4 MT4 MetaTrader 4 - page 130

 
Nikolai Semko:
Utilisez-vous le débogueur pour trouver vos erreurs ?

Non. Moins d'une semaine d'expérience en programmation. J'ai pris un exemple d'un EA simple et j'ai essayé d'y ajouter SL, TP, TStop et TStep. Il n'y a pas d'erreur après la compilation (voir la capture d'écran ci-dessus) mais en fait (dans le testeur) ces fonctions ne fonctionnent pas.

Veuillez me conseiller sur ce que je dois faire. Et comment procéder.

 
Sergey_M_K:.

Non. Moins d'une semaine d'expérience en programmation. J'ai pris un échantillon d'un EA simple et j'ai essayé d'y ajouter SL, TP, TStop et TStep. Il n'y a pas d'erreur après la compilation (voir la capture d'écran ci-dessus) mais en fait (dans le testeur) ces fonctions ne fonctionnent pas.

Veuillez me conseiller sur ce que je dois faire. Et comment procéder pour la suite.

Je ne veux pas vous voler. Je ne veux pas vous priver de l'expérience très utile que constitue la recherche de vos propres erreurs.

Les erreurs sont inévitables, même chez les professionnels.

Il est très important de pouvoir les trouver si vous voulez continuer à programmer.

Le Metaeditor dispose d'un outil indispensable appelé "Debugging".

Passez du temps à maîtriser cet outil, et vous ne devrez pas demander aux autres sur les forums de chercher vos erreurs.

Vous devez parcourir le programme étape par étape, en contrôlant les variables requises et ce qui s'y passe.

Grâce à cet outil, vous pouvez non seulement trouver vos propres erreurs, mais aussi comprendre les particularités de certaines fonctions.

Vous pouvez lire les informations ici ou consulter l'aide de MetaEditor.

Vous pouvez lire cet article.

 
Sergey_M_K:

Bonjour, mes amis, aidez-moi à résoudre le problème suivant : J'essaie d'écrire un simple Expert Advisor et j'ai été confronté au problème suivant : si le SL est défini à une valeur différente de 0, alors les trades ne sont pas ouverts du tout, ainsi que le TP, TStop et TrailingStep ne fonctionnent pas du tout.

Que dois-je corriger dans le code ?

Pour définir les niveaux de Stop Loss et Take Profit, la valeur réelle du prix est utilisée. Alors que dans votre code, ces valeurs ne sont pas réelles. Par exemple, si le SL est égal à 50 pour EURUSD, nous obtiendrons la valeur de 0,0005. Pour un ordre d'achat, le seuil de déclenchement est toujours correct (même s'il n'est pas significatif), mais c'est une erreur pour un ordre de vente puisqu'il devrait être supérieur au prix ouvert. Si le cours actuel de l'EURUSD est de 1,25, la valeur du Stop Loss doit être supérieure à ce niveau.

N'oubliez pas non plus de vérifier que les valeurs obtenues pour le Stop Loss et le Take Profit sont proches du marché, en les comparant avec le niveau de Stop.

 
Bonjour, je n'arrive pas à trouver une fonction qui renvoie un ticket vers la position la plus éloignée du marché. Pouvez-vous l'afficher ?
 
Kofa:
Bonjour, je n'arrive pas à trouver une fonction qui renvoie un ticket de la position la plus éloignée du marché. Pourriez-vous l'afficher s'il vous plaît, qui l'a ?

Vous trouverez beaucoup de chosesici.

Только "Полезные функции от KimIV".
Только "Полезные функции от KimIV".
  • 2011.02.18
  • www.mql5.com
Все функции взяты из этой ветки - http://forum.mql4...
 
Vitaly Muzichenko:

Vous trouverez beaucoup de chosesici

Merci, Vitaly, mais c'est là (et pas seulement) que je cherchais. Malheureusement, il n'y a pas toutes les fonctions dont j'ai besoin :

-Retourne leticket le plus éloigné de la position du marché (par magie et direction) Ou le plus précoce

-Retourner lebénéfice pour le ticket

-clôture laposition dans le ticket

Pouvez-vous me dire où en trouver un, si vous le connaissez ?

 
Bon moment ! Aidez-moi à comprendre, je mets une ligne de tendance sur le graphique, j'entre les propriétés, la description, je le ferme, il y a une ligne de tendance, pas de description, je mets le curseur sur la ligne, une description est dans la fenêtre Merci.
 
Kofa:

Merci, Vitaly, mais c'est là (et pas seulement) que je cherchais. Malheureusement, toutes les fonctions dont j'ai besoin sont absentes :

-Retourne leticket le plus éloigné de la position du marché (par magie et direction) Ou le plus précoce

-Retourner lebénéfice pour le ticket

-clôture laposition dans le ticket

Dites-moi où le trouver, si vous le savez.

Il y a un ticket pour le plus proche. Comment trouver le plus loin - je pense que vous pouvez le deviner. Si vous avez trouvé le ticket, vous pouvez travailler avec lui if(OrderSelect(ticket, SELECT_BY_TICKET)) { ... }

 
Bonjour, je suis en train de faire un EA sur deux conditions !!! Donc dans la première condition, tout devrait fonctionner sur m15, et dans l'autre sur n4 ! !! Pouvez-vous me dire comment faire ?
 
sviter-pro:
Bonjour, je suis en train de créer un Conseiller Expert selon deux conditions ! Eh bien, la première condition devrait fonctionner sur m15 et l'autre sur n4 ! !! Pouvez-vous me dire comment faire ?

Prenez les données de différentes TF. Par exemple, le prix d'ouverture de la barre actuelle sur différentes TFs (les valeurs ne correspondront qu'aux 15 premières minutes de la barre H4) :

double fOpenM15 = iOpen(Symbol(), PERIOD_M15, 0);
double fOpenH4 = iOpen(Symbol(), PERIOD_H4, 0);

Le moment le plus difficile lorsqu'on travaille avec différentes TF est la synchronisation des données. Parce que la numérotation des barres sur les différentes TF est différente.

Raison: