Toute question des nouveaux arrivants sur MQL4 et MQL5, aide et discussion sur les algorithmes et les codes. - page 516

 
Maxim Kuznetsov:

Il n'existe pas d'API standard pour cela, mais si vous le voulez vraiment, vous pouvez le faire :-)

L'algorithme est à peu près le suivant :

- faire défiler tous les indicateurs du graphique (y compris les sous-fenêtres) pour recueillir le maximum d'informations sur l'indicateur modifié (nom/numéro d'ordre)

- sauvegarder le modèle de graphique

- développer le modèle pour trouver l'indicateur souhaité

- Modifier la valeur souhaitée

- ChartApplyTemplate

- (n'oubliez pas que tous les indicateurs et EAs seront rechargés, et probablement les vôtres aussi, et que je devrai également copier les fichiers via WinAPI).

Dans l'ensemble, une grande douleur dans le cou :-)

Merci, je comprends maintenant que je n'ai qu'un seul moyen de passer par l'interface WinAPI ! Merci beaucoup !

 
STARIJ:

Très simple, je le fais souvent. L'avantage est que vous pouvez attribuer une clé au script. Par exemple, Ctrl-z pour supprimer des lignes, Alt-z pour afficher des lignes. Voir les fonctions GlobalVariableSet() et GlobalVariableGet() ci-jointes. J'ai eu l'idée d'une autre ressource (corrigée par le modérateur Artyom Trishkin).

Merci, c'est exactement ce dont j'ai besoin ! !!

 
Alexey Viktorov:

1.

OBJPROP_CREATETIME

Temps de création de l'objet

date-heure r/o

2.

OBJPROP_PRICE

Coordination des prix

doublemodificateur=numéro du point d'ancrage

Merci, mais ça ne marche pas.

int obj_total=ObjectsTotal();
       for(int iL=0;iL<obj_total;iL++)
  {
   name=ObjectName(iL);
   if(ObjectType(name)!=OBJ_TRIANGLE) continue;
   if(StringFind(name,"321fa",0)!=-1)
     {

    time= ObjectGetInteger(0,name ,OBJPROP_CREATETIME);//
      price=ObjectGetDouble(0,name ,OBJPROP_PRICE,2);
     
     }
  }
  //===---===

J'ai besoin du prix du point qui se trouve au milieu des paramètres.

Où est-ce que c'est mal ?

 
PolarSeaman:

Merci, mais ça ne marche pas.

J'ai besoin du prix du point qui est au milieu des paramètres.

Où est-ce que c'est mal ?

Il y a de la documentation.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_TRIANGLE
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы объектов / Типы объектов / OBJ_TRIANGLE
  • www.mql5.com
//| Cоздает треугольник по заданным координатам                      |               time1=0,                            price1=0,                         time2=0,                            price2=0,                         time3=0,                            price3=0,                        width=1,           ...
 
Vitaly Muzichenko:

Il existe une documentation

J'ai cet exemple sous les yeux, mais je ne sais pas comment obtenir le prix du deuxième point.

Je ne sais pas d'où il tire le prix et l'heure de création de l'objet est actuelle, mais l'objet a été créé il y a 60 bougies.

J'ai trouvé l'heure. Nous devons définirOBJPROP_TIME au lieu deOBJPROP_CREATETIME.

J'obtiens le prix de l'objet le plus ancien, mais comment obtenir le prix de l'objet le plus frais ?

 
PolarSeaman:

Merci, mais ça ne marche pas.

J'ai besoin du prix du point qui est au milieu des paramètres.

Où est-ce que c'est mal ?

OBJPROP_TIME. Et comme modificateur, le numéro du point souhaité. Les chiffres commencent par zéro.
 
PolarSeaman:

Cet exemple est sous mes yeux, mais comment obtenir le prix du deuxième point n'est pas clair.

Je ne sais pas d'où il tire le prix et l'heure de création de l'objet est actuelle, mais l'objet a été créé il y a 60 bougies.

J'ai trouvé l'heure. Nous devons définirOBJPROP_TIME au lieu deOBJPROP_CREATETIME.

J'obtiens le prix de l'objet le plus ancien, mais comment obtenir le prix de l'objet le plus frais ?

Sélectionnez par date de construction - par la plus récente.

 
PolarSeaman:

Merci, mais ça ne marche pas.

J'ai besoin du prix du point qui est au milieu des paramètres.

Où est-ce que c'est mal ?

Avec cette formulation de la question.

Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie

Toutes les questions des débutants de MQL4, aide et discussion sur les algorithmes et les codes

PolarSeaman, 2018.04.04 08:02

Bonjour. Il y a des objets - des triangles avec des noms : 321fa34, 321fa53, 321fa41. Comment connaître le prix minimum du triangle le plus frais? Le prix qui se trouve dans les propriétés du milieu.

Il est extrêmement difficile de comprendre quelque chose sans ambiguïté. Il s'avère que "la question est la réponse".

Le plus frais, tel que je le comprends, est celui qui est créé plus tard que tous les autres, et non le point de coordonnées temporelles. La position de la coordonnée dans les propriétés de l'objet dépend de l'ordre dans lequel le triangle a été créé.

 
Alexey Viktorov:

Les coordonnées qui se trouvent à tel ou tel endroit dans les propriétés de l'objet dépendent de l'ordre dans lequel le triangle est construit.

Désolé pour la formulation.

J'ai compris, j'ai besoin d'un point toujours avec l'index 1,

Artyom Trishkin:

Sélectionnez par temps de construction - par le plus récent.

Je peux trouver le temps, mais je ne sais pas comment choisir le dernier.

J'ai essayé une autre méthode, en bouclant de l'autre côté, mais pour une raison quelconque, j'obtiens le prix du point souhaité qui n'est pas le premier (le plus proche de la date actuelle), et le deuxième objet.

 int obj_total=ObjectsTotal();
      // for(int iL=0;iL<obj_total;iL++)
       for(int iL = obj_total;iL>=0;iL--)
  {
   name=ObjectName(iL);
   if(ObjectType(name)!=OBJ_TRIANGLE) continue;
   if(StringFind(name,"233123h",0)!=-1)
     {

    time= ObjectGetInteger(0,name ,OBJPROP_TIME,1);//
      price=ObjectGetDouble(0,name ,OBJPROP_PRICE,1);
     
     }
  }
  //===---===

Pourquoi ?

 
PolarSeaman:

Pour la formulation, désolé.

Et puis vous continuez à utiliser la même formulation.