Questions des débutants MQL5 MT5 MetaTrader 5 - page 1285

 
Vitaly Muzichenko:

Je l'ai fait :

La différence est insignifiante et également acceptable. Mais si l'utilisateur décide de changer l'épaisseur ou la couleur, ils doivent être définis dans les paramètres d'entrée puisqu'il s'agit de variables, votre code ne pourra pas les modifier sans supprimer la tendance.

En général, il n'y a pas lieu de se disputer sur les goûts des feutres.

 
Alexey Viktorov:

Une décision complètement erronée. La suppression d'un objet graphique et la mise à jour d'un graphique ne se remplacent en aucun cas.

Dans mon exemple, nous vérifions d'abord s'il existe un objet, en particulier une tendance avec le nom tfyu, qui est le nom dans la disposition du clavier russe)). Ensuite, si elle n'existe pas, la tendance est dessinée. Si la tentative de dessin échoue, le message est affiché et la fonction est quittée avec le retour false.

Tout ce qui suit, que la tendance soit déjà présente ou qu'elle vienne d'être dessinée, se voit attribuer les paramètres spécifiés, les prix de temps et de coordonnées, le type, l'épaisseur et tout ce que vous pouvez ajouter. Après cela, le graphique est mis à jour et la fonction renvoie vrai.

Par la rapidité d'exécution, il sera moins coûteux de vérifier la présence de la tendance que de la supprimer et d'en dessiner une nouvelle.

Mais... la décision finale vous appartient et si vous aimez vous gratter l'oreille gauche avec votre petit doigt droit, je n'ai pas le droit de vous en empêcher.

Merci beaucoup. Je vais suivre votre conseil et refaire le code.

 
Vitaly Muzichenko:

Je le suis :

Merci beaucoup. Je vais refaire le code. Je l'ai déjà refait, c'est tout bon.

 
string obj_symbol=ObjectGetString(ChartID(),obj_name,OBJPROP_SYMBOL);

Est-ce qu'il ne fonctionne pas du tout ? Est-ce que cela renvoie un caractère objet pour quelqu'un ? J'obtiens toujours une chaîne vide.

Ou doit-il d'abord définir cette propriété... ?

 
leonerd:

Est-ce qu'il ne fonctionne pas du tout ? Est-ce que cela renvoie un caractère objet pour quelqu'un ? J'obtiens toujours une chaîne vide.

Ou doit-il d'abord définir cette propriété... ?

Il s'agit d'une propriété spécifique - pour un objet "Chart", elle renvoie un symbole. Et pour quel type d'objet essayez-vous d'obtenir un symbole ?

 
Vladimir Karputov:

Il s'agit d'une propriété spécifique - pour un objet "Chart", elle renvoie un symbole. Et pour quel type d'objet essayez-vous d'obtenir un symbole ?

Pour un triangle. Comment connaissez-vous son "symbole" ?

 
leonerd:

pour un triangle. Comment connaissez-vous son "symbole" ?

Qu'est-ce que tu veux dire ? Quel est le symbole de l'objet triangle ?

 
Vladimir Karputov:

Qu'est-ce que tu veux dire ? Quel est le symbole de l'objet Triangle ?

Comment savoir sur quel graphique de symbole l'objet Triangle a été créé?

Par exemple, dans OnChartEvent(). Ou dans la liste des objets, en parcourant la liste, comment savoir sur quel graphique de symboles l'objet est dessiné ?

 
leonerd:

Comment savoir sur quel graphique de symbole l'objet Triangle a été créé?

Par exemple, dans OnChartEvent(). Ou dans la liste des objets, en parcourant la liste, comment trouver sur quelle carte de symboles l'objet est dessiné.

OnChartEvent est déclenché uniquement pour le symbole actuel - dans ce cas, il est inutile de reconnaître le symbole : il est toujours positionné.

La deuxième méthode consiste à contourner la liste de tous les graphiques - ObjectFind.

 
Vladimir Karputov:

OnChartEvent n'est de toute façon déclenché que pour le symbole actuel - dans ce cas, il est inutile de reconnaître le symbole : il est toujours placé.

La deuxième méthode consiste à contourner la liste de tous les graphiques - ObjectFind.

OK, merci.