Was ist daran falsch? - Seite 6

 
Wie eröffne ich zwei Aufträge gleichzeitig? Es gibt EAs, die zwei Aufträge gleichzeitig in verschiedene Richtungen eröffnen.
 
sss2019:
Wie wäre es, zwei Aufträge gleichzeitig zu eröffnen?
Zum Beispiel auf verschiedenen Konten oder Terminals.
 
sss2019:
Wie eröffne ich zwei Aufträge gleichzeitig? Es gibt EAs, die zwei Aufträge gleichzeitig in verschiedene Richtungen eröffnen.
Es gibt keine Maschinengewehre, die aus demselben Lauf gleichzeitig feuern. Die Kugeln gehen nacheinander aus.
 
Wie kann ich erreichen, dass ein schwebender Auftrag zum richtigen Zeitpunkt gelöscht wird, wenn er nicht funktioniert? Wie stellt man das Datum richtig ein, so dass die täglich geöffneten Aufträge um 5 Uhr geschlossen werden? Können Sie mir das bitte sagen?
 

h_time sei die Schlusszeit des Auftrags in Stunden. Dann könnte der Code wie folgt aussehen:

extern   int h_time = 17;    // время указано по серверу
..........

   datetime c_time = TimeCurrent(); 
   int HourCurrent = TimeHour(c_time);

   // установим c_time в 00:00:00 текущего дня
   c_time = c_time - HourCurrent*60*60 - TimeMinute(c_time)*60 - TimeSeconds(c_time);
   // теперь установим c_time на указанный час
   if (h_time > HourCurrent) //время можем установить, если оно еще не наступило
     c_time = c_time + h_time*60*60;
   else
     c_time = 0;

Außerdem sollten wir die folgenden Nuancen beachten: die Sitzung ist am Freitag kürzer; es gibt einige Feiertage; die Ablaufzeit der ausstehenden Aufträge kann nicht nahe an der Serverzeit eingestellt werden (wie nahe, hängt von der Maklerfirma ab).

 
sss2019:
Sobald ein Auftrag seine Nummer der Ticket-Variablen zugewiesen hat, muss diese also nicht mehr mit Return ausgegeben werden, die Variable wird beim nächsten Tick nicht mehr gelöscht?
In diesem Fall wird sie nicht gelöscht, da sie global deklariert ist
 
granit77:
Es gibt keine Maschinengewehre, die aus demselben Lauf gleichzeitig feuern. Die Kugeln kommen eine nach der anderen heraus.

Worte aus Gold.
 

Bitte helfen Sie mir hier.

   if(TimeHour(TimeCurrent()) == 9 && TimeMinute(TimeCurrent()) == 28 && OrdersTotal() == 0)
     {
     if(OrderSend(Symbol(),OP_BUYLIMIT,Lot,Open[0] - 10 * MyPoint,Slippage,0,0,MyComment,16523,0,Green) == true)
       {
       Alert("Ордер открыт");
       }
       else
          {
          Alert("Ошибка ",GetLastError());
          }
     }

Tatsächlich wird eine Order geöffnet, aber das Signal Alert("Order is open") wird nicht ausgelöst ; stattdessen wird Alert("Error ",GetLastError ()) ausgelöst ; aber das scheint mir beim nächsten Tick zu sein

 
sss2019:

Bitte helfen Sie mir hier.

Tatsächlich wird eine Order geöffnet, aber das Signal Alert("Order is open") wird nicht ausgelöst ; stattdessen wird Alert("Error ",GetLastError ()) ausgelöst ; aber das scheint mir beim nächsten Tick zu sein


Seit wann gibt OrderSend true zurück?
 
Ah, ich verstehe, aber irgendwo habe ich einen Zustand wie meinen oder einen ähnlichen gesehen. Und wie kann man erreichen, dass die Bedingung nach der Eröffnung einer Bestellung erfüllt wird?
Grund der Beschwerde: