[Archive] Toute question de débutant, afin de ne pas encombrer le forum. Professionnels, ne passez pas à côté. Je ne peux aller nulle part sans toi - 2. - page 335

 
Ctmcn:


Il n'y a pas de telle fonction dans le code source de l'"EA simple". Où l'écrire, dans ce cas, dans ma variante - mes connaissances ne sont pas suffisantes :

P.S. Il n'y a que dans le bloc d'ouverture de l'ordre (8).

Vous avez une erreur ici, vous obtenez la même chose 4 fois.

   double b4plusdi=iCustom(NULL,0,"ADX Crossing",A,B);
   double nowplusdi=iCustom(NULL,0,"ADX Crossing",A,B);
   double b4minusdi=iCustom(NULL,0,"ADX Crossing",A,B);
   double nowminusdi=iCustom(NULL,0,"ADX Crossing",A,B);
 

Veuillez me conseiller, il existe une fonction pour dessiner une étiquette :

void RightText(int tWindow, string tName, string tText, int tCorner, int tX, int tY, int tFontsize, color tColor)
{
ObjectCreate ("tName",OBJ_LABEL, 0,0,0);              // Создание объекта
ObjectSetText("tName",tText);
ObjectSet    ("tName",OBJPROP_CORNER, tCorner);       // Привязка к углу
ObjectSet    ("tName",OBJPROP_XDISTANCE, tX);         // Отступ по горизонтали 
ObjectSet    ("tName",OBJPROP_YDISTANCE, tY);         // Отступ по вертикали
ObjectSet    ("tName",OBJPROP_COLOR,tColor);          // Цвет обьекта
ObjectSet    ("tName",OBJPROP_BACK, true);            // Background 
ObjectSet    ("tName",OBJPROP_FONTSIZE, tFontsize);   // Fontsize
}         

Lorsque la fonction est appelée deux fois de suite (je veux dessiner deux étiquettes à des endroits différents), seule la dernière reste :

RightText(0,"righttest1","надпись1", 1, 50, 25, 24, Red); 
RightText(0,"righttest2","надпись2, 2, 50, 25, 24, Red); 

 
Pyro:

Veuillez me conseiller, il existe une fonction pour dessiner une étiquette :

Lorsque la fonction est appelée deux fois de suite (je veux dessiner deux étiquettes à des endroits différents), seule la dernière reste :

ObjectCreate ("tName",OBJ_LABEL, 0,0,0);              // Создание объекта

Vous créez un objet avec le nom "tName", et vous voulez que le nom soit passé dans la variable tName

 
La fonction reçoit la valeur (nom) de la variable tName lorsqu'elle est appelée. Dans ce cas, tName prend les noms de
righttest1
righttest2
 
Pyro:
La fonction reçoit la valeur (nom) de la variable tName lorsqu'elle est appelée. Dans ce cas, tName prend les noms de
n accepte que les noms de variables ne soient pas mis entre guillemets " tName":))))
 
sergeev:
n accepte que les noms de variables ne soient pas mis entre guillemets " tName":))))

Vraiment ! Merci, ça m'a aidé !

Je peux vous poser une autre question ?

Est-il possible de lire la valeur de l'élément "acheter/vendre" dans les paramètres EA ? (le programme fonctionne donc différemment en fonction de ce paramètre).
 
Pyro:

Veuillez me conseiller, il existe une fonction pour dessiner une étiquette :

Lorsque la fonction est appelée deux fois de suite (je veux dessiner deux étiquettes à des endroits différents), seule la dernière étiquette reste :

void RightText(int tWindow, string tName, string tText, int tCorner, int tX, int tY, int tFontsize, color tColor)
{
ObjectCreate (tName,OBJ_LABEL, 0,0,0);              // Создание объекта
ObjectSetText(tName,tText);
ObjectSet    (tName,OBJPROP_CORNER, tCorner);       // Привязка к углу
ObjectSet    (tName,OBJPROP_XDISTANCE, tX);         // Отступ по горизонтали 
ObjectSet    (tName,OBJPROP_YDISTANCE, tY);         // Отступ по вертикали
ObjectSet    (tName,OBJPROP_COLOR,tColor);          // Цвет обьекта
ObjectSet    (tName,OBJPROP_BACK, true);            // Background 
ObjectSet    (tName,OBJPROP_FONTSIZE, tFontsize);   // Fontsize
}         

Essaie ça et tu seras bien.
 

todem


Merci, j'ai trouvé la solution :)

 
346206:

C'est une sorte d'absurdité. Je ne peux pas attacher le Zig-Zag au graphique. Quelqu'un peut-il me dire quel est le problème ?

Essayez de le compiler.
 

J'ai été confronté au problème suivant. J'ai écrit un conseiller expert simple. Je le lance dans le testeur de stratégie. Je ne l'ai utilisé que jusqu'en mars 2011 et j'ai reçu 21 commandes. Je l'ai utilisé pour la période d'avril 2010 à mars 2011 et n'ai reçu que 5 commandes.

Je comprends que si je l'exécute pendant une période plus longue, il devrait me donner plus ou autant de 21 ordres. Mais j'ai eu moins.

Pourquoi cela peut-il arriver ? Comment résoudre ce problème ? S'il vous plaît, conseillez-nous.