Jede Anfängerfrage, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 6. - Seite 1065

 
evillive:

Wenn ich das richtig verstehe, brauchen Sie ein Foto nach 30 Ticks, nicht für jeden der nächsten 30 Ticks nach Schließung der Position?

Wäre es dann nicht einfacher, ein Foto nach Zeit zu machen? Sagen wir, nach 30 Sekunden ab Bestellschluss?

Das Foto braucht einen nach 30 Ticks. Das Diagramm wird aus Ticks bestehen und somit 30 Ticks umfassen. Aber in jedem Fall sollten wir mit dem Array arbeiten. Wenn andere Aufträge innerhalb von 30 Sekunden geschlossen werden, müssen wir auch 30 Sekunden von den anderen Aufträgen zählen.
 
JuliettaRu:
Guten Tag, bitte führen Sie mich zur Erklärung meiner Frage (ich nehme an, ich bin nicht der erste, der sie stellt) und was zu tun ist. Ich habe MT4 auf meinem Smartphone installiert, aber die Charts werden 20 Minuten zu spät angezeigt - ich vergleiche sie mit den MT4-Werten auf meinem PC.
Es ist ein Gral!
 

Helfen Sie mir, das zu verstehen. Ich kann nicht herausfinden, wie ich dieses Stück Code reparieren kann... Oder besser gesagt, was sollte ich hinzufügen, damit es nicht flucht?

Rückgabewert von 'OrderModify' sollte geprüft werden

         }    
         if (OrderOpenPrice()-Ask > Korts*Point*Multi)
         {
           if (OrderStopLoss() > Ask +(Korts)*Point*Multi) 
           {
              OrderModify(OrderTicket(),OrderOpenPrice(),Ask + (TrSt)*Point*Multi,'1', 0, Red);
           }
         }            
      }
   }   
   return(0);
 
Guaro:

Helfen Sie mir, das zu verstehen. Ich kann nicht herausfinden, wie ich dieses Stück Code reparieren kann... Oder besser gesagt, was sollte ich hinzufügen, damit es nicht flucht?

Rückgabewert von 'OrderModify' sollte geprüft werden

Der Rückgabewert der Funktion OrderModify() muss einer Variablen zugewiesen werden, damit die Funktion überprüft werden kann. Oder einfach

if(OrderModify(OrderTicket(),OrderOpenPrice(),Ask + (TrSt)*Point*Multi,'1', 0, Red))
Print("Ордер модифицирован успешно.");
 

Hilfe zur Behebung des Kompilierfehlers: Magic - undeklarierter Bezeichner

Kat:

bool CheckExists(int Typ)
{
bool Ergebnis = True;
for(int i = 0; i < OrdersTotal(); i++)
if(OrderSelect(i, SELECT_BY_POS))
if(OrderType() == Type && OrderMagicNumber() == Magic && OrderSymbol() == Symbol())
if(OrderOpenTime() >= Time[0])
Ergebnis = False;
for(i = 0; i < OrdersHistoryTotal(); i++)
{
if(OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
if(OrderType() == Type &&& OrderOpenTime() >= Time[0]
&& OrderMagicNumber() == Magic && OrderSymbol() == Symbol())
Ergebnis = False;
}

return(Ergebnis);
}

 
Abdus_Ali:

Hilfe zur Behebung des Kompilierfehlers: Magic - undeklarierter Bezeichner

Kat:

Globale und Benutzer-Variablen müssen am Anfang des Codes deklariert werden, in diesem Fall ist es eine Benutzer-Variable, schreiben Sie es wie folgt:

Eingabe int Magic = 1;

 
ticket2=OrderSend( Symbol(),OP_SELL, lot1, Price2, 20, SL2, TP2, NULL, 2,0, clrGreen);
wenn (Gebot>=TP1) // 1(1/0)
{

OrderModify(ticket2,?????, SL2, Price2, 0, clrNONE);

Guten Abend, wie kann ich die Bestellung von ticket2 ändern? Welchen Preis sollte man anstelle von ?????..... angeben? ? Oder muss ich diesen Auftrag erst auswählen, um ihn zu ändern? Obwohl ich sie bereits ausgewählt habe, indem ich in die Parameter des Befehls OrderModify(ticket2,.....

 
bobrush:
ticket2=OrderSend( Symbol(),OP_SELL, lot1, Price2, 20, SL2, TP2, NULL, 2,0, clrGreen);
wenn (Gebot>=TP1) // 1(1/0)
{

OrderModify(ticket2,?????, SL2, Price2, 0, clrNONE);

Guten Abend, wie kann ich die Bestellung von ticket2 ändern? Welchen Preis sollte man anstelle von ?????..... angeben? ? Oder muss ich diesen Auftrag erst auswählen, um ihn zu ändern? Obwohl ich sie bereits ausgewählt habe, indem ich in die Parameter des Befehls OrderModify(ticket2,.....

OrderOpenPrice() setzen
 
Ich kann nicht verstehen, warum die Suche und schließen Positionen stoppt in der Schleife, ich habe bereits die Schleife gedreht und erhöht die Anzahl der Positionen, in der Tester es immer noch überspringt (Blätter) Positionen ... sagen Sie mir, wenn Sie sehen können, wo und was falsch ist ...
int positions=PositionsTotal();
       for(int x1=-1;x1<positions;x1++) 
          {
           ulong pos_tiket11=PositionGetTicket(x1);
           if(PositionSelectByTicket(pos_tiket11))
             {
              string comment11=PositionGetString(POSITION_COMMENT);
              Print("ПОЗИЦИЯ ТИКЕТ + "+(string)pos_tiket11+" "+comment11+" ТИП "+(string)PositionGetInteger(POSITION_TYPE));
              if(pos_tiket11!=TIKET11) 
                {
                 ENUM_POSITION_TYPE type11=(ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);
                 if(type11==POSITION_TYPE_BUY)
                   {
                    Print("ПОЗИЦИЯ ВЫБРАНА КОМЕНТ = "+comment11);
                    mytrade111.PositionClose(pos_tiket11,15);
                    TIKKET=0;    
                    dolivka_P1=1;
                   } 
                }
             }
          }
 
ara66676:
Ich kann nicht verstehen, warum die Positionssuche und das Schließen in der Schleife aufhört. Ich habe die Schleife bereits umgekehrt und die Anzahl der Positionen erhöht, aber im Testgerät werden immer noch Positionen übersprungen (verlassen).

Da die Frage im mql4-Forum steht, nehme ich an, dass der Code auch auf mql4 zu finden ist. Oder ist das falsch?

In mql4 gibt es keine Positionen, sondern nur Aufträge.

Grund der Beschwerde: