Fragen von Anfängern MQL4 MT4 MetaTrader 4 - Seite 3

 
mila.com:

Wie kann man diese Prüfung in einer Schleife durchführen?

So kann man es machen

   for(BarCount=3; BarCount>0; BarCount--)
     {
      if(BufferPointUp[i+BarCount]!= EMPTY_VALUE)
         break;
     }
   if(BarCount==0) BufferPointUp[i]=high[i];
 
Taras Slobodyanik:

können Sie dies tun

Ich danke Ihnen.

 
Guten Tag!!! Können Sie mir sagen, wie ich eine Zufallsauswahl einer Zahl in einem bestimmten Bereich treffen kann? Gibt es dafür eine Funktion???
 
bobrush:
Guten Tag!!! Können Sie mir sagen, wie ich eine Zufallsauswahl einer Zahl in einem bestimmten Bereich treffen kann? Gibt es dafür eine Funktion???
Das Standardprogramm ist MathRand() oder einfach rand().
 

Das ist Blödsinn. Ich habe den Code bereits in diesem Zustand:

{
   Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
   if(OrdersTotal()!=0)
   {
    for (int i = 0; i < OrdersTotal(); i++)
    {
     if(OrderSelect(i,SELECT_BY_POS)==true)
     {
      TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);
      bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),TP,0,0);
     }
    }
     return;
   }

Immer noch kein TA.

 
Nickolay72:

Die TA ist immer noch nicht in Kraft getreten.

...beim Ändern einesfalschen Stoploss- das Log sollte den Fehler "disabled stoploss" schreiben.
 
Nickolay72:

Das ist Blödsinn. Ich habe den Code bereits in diesem Zustand:

Immer noch kein TA.

Warum so kompliziert, wenn es doch ein Ticket gibt?

Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
//не забываем проверить код ошибки
if(Ticket<0Print("Ой, ошибочка: "_LastError);
TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);

bool modify=OrderModify(Ticket,OrderOpenPrice(),OrderStopLoss(),TP,0);

//не забываем проверить код ошибки

if(!modify) Print("OOPS! Modify error: "_LastError);

 

Hallo, raten Sie, wie man einen EA mit 15-Minuten-Zeitrahmen zu machen, um den Wert alle 20 Minuten zu überprüfen, sagen wir bei 9-20, 9-40 gefolgt von Crossover RSI und wenn das Niveau in zwanzig Minuten überschritten wird, überprüfen Sie den Preis Wert. Das ist es, was ich in Ordnung bringen muss:

if (Hour()==9 && (Minute() == 20) && (RSI<50))
Price2==Bid;
     {
      if (Hour()==9 && (Minute() == 40) && (Bid<Price2))
  
         {
          ticket=OrderSend(Symbol(),OP_SELL, Lts, Bid, SP,0,0, NULL, Magic, 0, Blue);
          return(0);
         }
    
     }    
 
strongflex:

Hallo, wie kann ich meine EA überprüfen Werte alle 20 Minuten mit 15 Minuten Zeitrahmen?

...Sie können den Rest der Division überprüfen, wenn die Minuten durch 20 geteilt werden, ohne dass ein Rest übrig bleibt, dann sind es die nächsten 20 Minuten

if (Minute()%20==0)
 
Taras Slobodyanik:

...Sie können den Rest der Division überprüfen, wenn die Minuten durch 20 geteilt werden, ohne dass ein Rest übrig bleibt, dann sind es die nächsten 20 Minuten

if (Minute()%20==0)
Wie kann ich den EA dazu bringen, sich an den Preis zu erinnern, der bei der Ausführung der Bedingung war, dass der RSI bei 9-20 das Niveau überschritten hat, und 20 Minuten später überprüft er den Preis. Und ich muss den Preis von vor 20 Minuten und jetzt vergleichen
Grund der Beschwerde: