[ARCHIV!] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Ohne dich kann ich nirgendwo hingehen - 4. - Seite 104

 
Hallo,

Ich habe den Indikator, der die Kanäle zeichnet, in den EA verschoben.

Unausgewogene Klammern sind ein ständiger Fehler, obwohl ich alle Klammern doppelt überprüft habe.

Aber meine Frage ist eine andere - ich muss genau diese Kanäle verwenden, um Geschäfte in der Bedingung zu eröffnen, aber ich weiß nicht, wie man sie markiert. Ich habe versucht, nur den Namen eines Objekts zu schreiben, aber ich habe es noch nicht geschafft, die Korrektheit dieser Lösung zu überprüfen.

Bitte beraten Sie mich, wie ich dieses Problem lösen kann
 
kilnart:

und eröffnen eine Kaufposition.

Alles scheint richtig zu sein, aber irgendetwas stimmt nicht.

Und wohin reicht der Code? Was sagt Ihnen Comment oder Print?
 

nur bis hierher.

if(Low1<Low2 && Open[2]>Close[2])  

Nichts weiter.

 
kilnart:

nur bis hierher.

Nichts weiter.


Welche Bedingung ist nun nicht erfüllt? Was sagt Ihnen Comment oder Print?
 
Was müssen Sie schreiben?
 
kilnart: Was müssen Sie schreiben?

Prüfen Sie, ob Ihre Bedingungen für die historischen Daten erfüllt sind, indem Sie Print() verwenden, etwa so:

double Low1=Low[iLowest(NULL,0,MODE_LOW,3,0)],
              Low2=Low[iLowest(NULL,0,MODE_LOW,20,0)];
//Print("Low1 = ",Low1 ,"Low2 = ",Low2);
         
         if(Low1<Low2 && Open[2]>Close[2])    
          {
            Print("сработал первый if...");
            if(Open[1]<=Close[2] && Open[2]<Close[1])
             {
                 Print("сработал второй if...");
                 double sl=Low[iLowest(NULL,0,MODE_LOW,3,0)],
                        tp=Ask+(Open[2]-Low[2]);
                 OrderSend(Symbol(),OP_BUY,0.1,Ask,3,sl,tp);
                 return;
             }
          }
 

Ich habe gerade das getan, worum Sie gebeten haben, aber es passiert nichts.

Das Problem liegt in diesem Ausdruck

if( Low1<Low2 && Open[2]>Close[2])  

wenn ichLow1<Low2 entferne , wird Open[2]>Close[2] ausgeführt, wenn ich Open[2]>Close[2] entferne, wird Low1<Low2 nicht ausgeführt

 
kilnart:

Low1<Low2 wird nicht erreicht

und was bedeuten die von Ihnen gefundenen Low1 und Low2, sind die gefundenen Lowest-Indizes korrekt?
 
Ich habe es mit den Skripten überprüft, die Zahlen stimmen. Ich nehme an, dass sie richtig sind. Ich weiß nicht, es funktioniert nicht.
 
kilnart:

Ich habe das mit den Skripten überprüft, die Zahlen stimmen überein.

:)

Ich glaube, sie sind richtig.

Gehen Sie nicht davon aus, Sie werden es sehen.

Grund der Beschwerde: