Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 944

 
novichok2018:

Ich glaube, ich habe es verstanden - die Grenze ist gezogen, aber es gibt nur eine. Ich glaube, ich verstehe - es wird nur eine Linie gezogen, aber nur eine. Um andere Linien zu ziehen, muss ich diese ausradieren.

Nun, jetzt muss ich die letzte Linie anstelle der ersten Linie zeichnen. Das ist natürlich gut, aber ich brauche alle Zeilen, um sie zu speichern. Wie kann ich das tun? Ich danke Ihnen.

 
novichok2018:

Anstelle der ersten Zeile in der Geschichte wird nun die letzte Zeile gezogen. Das ist in Ordnung, aber ich brauche alle Zeilen, die gespeichert werden. Wie kann ich das tun? Ich danke Ihnen.

Fügen Sie in den Zeilennamen die Taktzeit ein.

 
Alexey Viktorov:

Fügen Sie in den Zeilennamen die Taktzeit ein.

Ich verstehe nicht, wie.

 
Alexey Viktorov:

Fügen Sie in den Zeilennamen die Taktzeit ein.

Wo kann ich nachlesen, wie ich die Uhrzeit in den Namen einfüge und welche Taktzeit ich hinzufügen muss?

 
novichok2018:

Wo kann ich nachlesen, wie ich die Uhrzeit in den Namen einfügen kann und welche Taktzeit ich hinzufügen muss?

Nur die Zeitdefinition muss vor der Zeilennamenzuweisung stehen.


        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:
Nur die Zeitdefinition sollte dem Zeilennamen vorangestellt werden.


Ich danke Ihnen. Wenn Sie den Code sehen, ergibt alles einen Sinn. Ich selbst hätte das nie verstanden. Ich habe nirgendwo gesehen, dass man dem Liniennamen die Balkenzeit hinzufügen muss, damit die Linien auf dem Diagramm bleiben, und warum. Bin ich so unaufmerksam?!

 
novichok2018:

Ich glaube, ich habe es verstanden - die Grenze ist gezogen, aber es gibt nur eine. Ich glaube, ich verstehe - es wird nur eine Linie gezogen, aber nur eine. Um andere Linien zu zeichnen, müssen Sie diese Linie löschen.

... oder dem Namen eine Zeilennummer zuweisen, da es nicht mehr als eine Zeile mit demselben Namen geben kann

 
Alexandr Sokolov:

... es kann nicht mehr als eine Zeile mit demselben Namen geben

Es ist wahr! Es stellt sich heraus, dass es ganz einfach ist... Ich danke Ihnen.

 

Hallo noch mal!

Ich habe eine Seltsamkeit beim Schließen von Positionen entdeckt : TakeProfit wird nicht ausgelöst, wenn der Preis es erreicht, sondern bei einem neuen Bar. Was ist der Grund dafür?

Ich füge den Code und das Diagramm bei.

      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; 
            }
         }
         }

Auszug aus

 
novichok2018:

Hallo noch mal!

Ich habe eine Seltsamkeit beim Schließen von Positionen entdeckt : TakeProfit wird nicht ausgelöst, wenn der Preis es erreicht, sondern bei einem neuen Bar. Was ist der Grund dafür?

Ich füge den Code und die Diagrammfragmente bei.


Oh, Scheiße! Ich habe Sie schon wieder belästigt! Ich habe nur den Test gemacht, indem ich die Preise geöffnet habe, das war es, was es tat...

Grund der Beschwerde: