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

 
PolarSeaman:

Das mag sein:

Wo ist hier der Zustand vom Vortag? Es stellt sich heraus, dass nach der ersten Bestellung in der Periode 0-8 der Schritt bereits 10 sein wird. Und es müssen 5 sein. Und erst nach 8 Uhr wird es 10 Uhr werden. Dann kehren wir mit Schritt =5 zu 0 zurück, wenn es keine offenen Aufträge vom Vortag gibt. Setzt sich die Serie fort, so ist der Schritt =10 vor ihrem Ende.
 
PolarSeaman:

Der Punkt ist, dass, wenn Sie das Zeitintervall wie im EA einstellen

Ich muss die Candlesticks, die im Intervall liegen, von den Berechnungen ausschließen.

Mit dem Indikator arbeiten Sie in einer Schleife. Warum müssen Sie also die Schleife verlassen?

Wissen Sie nicht, wie man eine Iteration in der Schleife überspringt?

weiter

 
Tigerfreerun:
Wo ist die Bedingung für den vorherigen Tag? Es stellt sich heraus, dass nach der ersten Bestellung in der Periode 0-8 der Schritt bereits 10 sein wird. Und wir brauchen, dass es 5 war. Und erst nach 8 Uhr wird es 10 Uhr werden. Dann kehren wir mit Schritt =5 zu 0 zurück, wenn es keine offenen Aufträge vom Vortag gibt. Setzt sich die Serie fort, so ist der Schritt =10 vor ihrem Ende.

Die Funktion sollte тру zurückgeben, wenn gestern ein Auftrag eröffnet wurde.

   OP_TO(int mn)
     {
     int i, k=OrdersTotal();
      for(i=0; i<k; i++) 
        {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)) 
           {
            if(OrderSymbol()==Symbol()) 
              {
               if(OrderType()==OP_BUY || OrderType()==OP_SELL) 
                 {
                  if(OrderMagicNumber()==mn) 
                    {
                     if(TimeDay(OrderOpenTime())==(Day()-1)
                      &&  TimeMonth(OrderOpenTime())==Month()
                      &&  TimeYear (OrderOpenTime())==Year()) return(True);
                    }
                 }
              }
           }
        }

      return(False);
     }
if(Hour()>=0&&Hour()<=8&&!OP_TO(mag_n))step = 5; else step =10;
 
Artyom Trishkin:

Im Indikator arbeiten Sie in einer Schleife. Warum müssen Sie also die Schleife mit return verlassen?

Wissen Sie, wie man eine Iteration in einer Schleife überspringt?

weiter

Ich danke Ihnen. Ich verstehe es nicht, ich habe die Zeit begrenzt, aber der Ausdruck zeigt die Zeit um 19:30 und 23:00 und 5:50, was ist los?

   for(int i=limit-2; i>0; i--) 
     {
     if(Hour()>=17&&Hour()<=11)continue;
      if(i%2==0) 
        {
         if(open[i]<close[i] && open[i+1]>close[i+1]) 
           {
            k1++;
           // if(k1>max) {max=k1; dat_max=time[i];}
            if(k1>=4)Print("Num: ",k1,"dat_max ",time[i]);
            SetText("Obj_"+(string)time[i],(string)k1,time[i],high[i],Arr);
           }
         else k1=0;
         
           } else {
         if(open[i]<close[i] && open[i+1]>close[i+1]) 
           {
            k2++;
            //if(k2>max){ max=k2; dat_max=time[i];}
            if(k2>=4)Print("Num: ",k2,"dat_max ",time[i]);
            SetText("Obj_"+(string)time[i],(string)k2,time[i],high[i],Arr);
           }
         else k2=0;
         
        }
      
     }
 
PolarSeaman:

Ich danke Ihnen. Ich verstehe das nicht, der Ausdruck zeigt die Zeit 19:30 und 23:00 und 5:50 an, was ist los?

Was gibt die Funktion Hour() zurück?
 
PolarSeaman:

Die Funktion sollte тру zurückgeben, wenn gestern ein Auftrag eröffnet wurde.

Das ist ein bisschen kompliziert für mich. Könnten Sie erklären, in welchem Teil des Codes hinzufügen und was bedeutet es mn und mag_n? wo sollte ich meine EA medjic hier setzen?




 
Meine Herren Programmierer, helfen Sie mir, den Fehler zu verstehen. minPrice = NormalizeDouble (GetMinPrice(),Digits); Error: 'minPrice' - Semikolon erwartet.
 
KRIKS:
Meine Herren, bitte helfen Sie mir, den Fehler zu verstehen. minPrice = NormalizeDouble (GetMinPrice(),Digits); Error: 'minPrice' - Semikolon erwartet.

Sehen Sie sich den Code vor minPrice an. Es gibt kein ; (Semikolon).

 
Ihor Herasko:

Sehen Sie sich den Code vor minPrice an. Es gibt kein ; (Semikolon).

int start()

{

minPrice = NormalizeDouble (GetMinPrice()Digits);

maxPrice = NormalizeDouble(GetMaxPrice()Digits); Kann int start von (;) gefolgt werden?

 
KRIKS:

int start()

{

minPrice = NormalizeDouble(GetMinPrice()Digits);

maxPrice = NormalizeDouble(GetMaxPrice()Digits); Kann int start von (;) gefolgt werden?

{

minPreis = NormalizeDouble (GetMinPrice(),Digits);

maxPrice = NormalizeDouble(GetMaxPrice(),Digits);

Grund der Beschwerde: