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

 
MakarFX #:

Versuchen Sie

Sie ist gelb hervorgehoben. Sollte es so sein?

Sie haben also nichts verändert. So wurden die Vögel verwandelt. Das verstehe ich nicht. Soll ich sie entfernen, drehen oder diese Zeile ganz streichen?

 
Порт-моне тв #:

also habe ich nichts geändert. So wurden die Vögel verwandelt. Das verstehe ich nicht. Soll ich sie entfernen, drehen oder diese Zeile ganz streichen?

Ich habe nach "Vögeln" gefragt, weil die Bedingung sowohl für den Kauf als auch für den Verkauf dieselbe ist.

 
Порт-моне тв #:
Sie versuchen immer noch, einen Fehler zu finden, aber ich bitte Sie schon seit Stunden, etwas anderes zu tun. Warum ist das so?

nach einem erfolgreichen OrderSend muss die OrderOfSymbol-Variable aktualisiert werden.
oder beenden und auf den nächsten Tick warten.

 
MakarFX #:

Ich habe nach "Vögeln" gefragt, weil die Bedingung sowohl für den Kauf als auch für den Verkauf dieselbe ist.

Es gibt nur Kaufen oder Verkaufen-Verkaufen, keine Doppelnummern wie Kaufen-Verkaufen oder Kaufen-Verkaufen.

 
Taras Slobodyanik #:

nach einem erfolgreichen OrderSend muss die OrderOfSymbol-Variable aktualisiert werden.
oder beenden und auf den nächsten Tick warten.

OK, und wie machen Sie das?

 
Порт-моне тв #:

Nun, ich kann aus der Historie des Testers ersehen, wo, wann und mit welchen Parametern das Tailing auftrat. Was bedeutet das für Sie?

Sie müssen nicht danach suchen, wo die Beschattung stattgefunden hat, sondern aus welchem Grund sie stattgefunden hat. Ich habe vorgeschlagen, nicht die Tatsache der Öffnung, sondern die Bedingungen der Öffnung zu drucken. Dies wird Ihnen helfen, den Grund zu ermitteln... Die Löschung eines solchen doppelten Auftrags bringt Ihnen nur einen zusätzlichen Verlust.

 
Alexey Viktorov #:

Sie müssen nicht darauf achten, wo der Rückstand liegt, sondern aus welchem Grund er zurückgeht. Mein Vorschlag war nicht, die Tatsache der Öffnung zu drucken, sondern die Bedingungen der Öffnung. Dies wird helfen, den Grund zu ermitteln... Das Entfernen eines solchen doppelten Auftrags bringt Ihnen nur einen zusätzlichen Verlust.

Danke, aber das habe ich gestern Abend gemerkt.

 
MakarFX #:

Können Sie mir sagen, wie ich den Wert

bevor OnInit() ausgeführt wird?

Vielleicht gibt es eine andere Möglichkeit, die Sprache der Schnittstelle herauszufinden, bevor OnInit() ausgeführt wird.

Vitaly Muzichenko #:

Es gibt keinen Weg, nur innerhalb der Funktionen. InOnInit() oder danach, aber nicht davor.

Was zum Teufel.........

string terminalLanguage = TerminalInfoString(TERMINAL_LANGUAGE);

/********************Script program start function*******************/
void OnStart()
 {
  Print(terminalLanguage);
 }/******************************************************************/
2021.11.03 16:25:08.033 00 EURJPY,M15: Russian
 
Ich verstehe also, dass mir hier niemand eine Funktion schreiben wird, mit der ich einen Auftrag mit demselben Lot, Preis und Eröffnungszeitpunkt wie den vorherigen löschen kann. Starrköpfigkeit ist eine Sünde, Leute.
 
Порт-моне тв Eröffnungszeitpunkt wie die vorherige zu löschen. Starrköpfigkeit ist eine Sünde, Leute.

So prüfen

   if(sb1 + sb1/100*LotRisk*(DayMultiplicatorProfit/100/2) > AccountBalance()  && TimeCurrent()>TimeCheck_a && TimeCurrent()<TimeCheck_ac && Ogranichitel > 0)
     {

      if(CounterOrderTradeType(-1)<1)
         if(signal=="buy")
            if(Close[1]>Open[1])
              {
               ticket = OrderSend(Symbol(),OP_BUY, Lot, Ask, 3, SLbuy, TPbuy, "открыт ордер на покупку", Magic, 0, Green);
               Print("OpenOrderSuccess");
              }


      if(CounterOrderTradeType(-1)<1)
         if(signal=="sell")
            if(Close[1]>Open[1])
              {
               ticket = OrderSend(Symbol(),OP_SELL, Lot, Bid, 3, SLsell, TPsell, "открыт ордер на продажу", Magic, 0, Red);
               Print("OpenOrderSuccess");
              }

     }
Grund der Beschwerde: