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

 
novichok2018:

Je crois que j'ai compris - la ligne est tracée, mais il n'y en a qu'une. Je pense avoir compris - il n'y a qu'une seule ligne tracée, mais une seule. Pour pouvoir dessiner d'autres lignes, je dois effacer celle-ci.

Bien, maintenant je dois dessiner la dernière ligne au lieu de la première. C'est bien, bien sûr, mais j'ai besoin que toutes les lignes soient sauvegardées. Comment je fais ça ? Merci.

 
novichok2018:

Maintenant, au lieu de la première ligne de l'histoire , c'est la dernière ligne qui est dessinée. C'est bien, mais j'ai besoin que toutes les lignes soient sauvegardées. Comment je fais ça ? Merci.

Dans le nom de la ligne, ajoutez l'heure de la barre.

 
Alexey Viktorov:

Dans le nom de la ligne, ajoutez l'heure de la barre.

Je ne comprends pas comment.

 
Alexey Viktorov:

Dans le nom de la ligne, ajoutez l'heure de la barre.

Où puis-je lire comment ajouter l'heure dans le nom et quelle heure de barre ajouter ?

 
novichok2018:

Où puis-je lire comment ajouter l'heure dans le nom, et quelle heure de barre ajouter ?

Seule la définition du temps doit être placée avant l'affectation du nom de la ligne.


        if((op1-lo1)>50 && (cl1-lo1)<10)
        {  Alert("VertLine");
        datetime time=Time[0];
        string obj_name="VertLine"+(string)time;
        color col = clrGreen; 
        ObjectCreate(0,obj_name,OBJ_VLINE,0,time,0,0,0);
        ObjectSetInteger(0,obj_name,OBJPROP_COLOR,col);
        }
 
Alexey Viktorov:
Seule la définition du temps doit être placée avant l'attribution du nom de la ligne.


Merci. Quand vous voyez le code, tout a un sens. Je ne l'aurais jamais compris moi-même. Je n'ai vu nulle part que pour que les lignes restent sur le graphique, il faut ajouter le temps de la barre au nom de la ligne, et pourquoi. Suis-je si inattentif ? !

 
novichok2018:

Je crois que j'ai compris - la ligne est tracée, mais il n'y en a qu'une. Je pense avoir compris - il n'y a qu'une seule ligne tracée, mais une seule. Pour pouvoir dessiner d'autres lignes, vous devez effacer celle-ci.

... ou attribuer un numéro de ligne au nom, car il ne peut y avoir plus d'une ligne avec le même nom.

 
Alexandr Sokolov:

... il ne peut y avoir plus d'une ligne avec le même nom

C'est vrai ! Il s'avère que c'est assez simple... Merci.

 

Rebonjour !

J'ai trouvé une bizarrerie dans la fermeture des positions : le TakeProfit n'est pas déclenché lorsque le prix l'atteint, mais sur une nouvelle barre. Quelle en est la raison ?

Je joins le code et le graphique.

      if(New_Bar)      
         {
         if(Hour()>9 && Hour()<20)
         {
          if(...ЗДЕСЬ УСЛОВИЕ...) 
          {LotCalc();
      double TP=Ask-300*Point();
             t2=OrderSend(Symbol(),OP_SELL,LOT,Bid,slippage,0,TP,"",magic,0,Red);
            if(t2>0)
           {
            if(OrderSelect(t2,SELECT_BY_TICKET,MODE_TRADES))
            {
             Alert("Открыта SELL");
            }
           }            
         else
            Print("Error opening SELL order : ",GetLastError());
         return; 
            }
         }
         }

extrait de

 
novichok2018:

Rebonjour !

J'ai trouvé une bizarrerie dans la fermeture des positions : le TakeProfit n'est pas déclenché lorsque le prix l'atteint, mais sur une nouvelle barre. Quelle en est la raison ?

Je joins le code et les fragments de graphique.


Oh, merde ! Je vous dérangeais encore ! J'ai juste fait des tests en ouvrant les prix, c'est ce qu'il faisait...

Raison: