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

 
Aleksey Verbin:

Hallo, ich habe ein Problem.

Ich habe Hieroglyphen anstelle von russischen Buchstaben.Ich habe versucht, die regionalen Einstellungen zu ändern, aber das hat nicht geholfen. Kennen Sie irgendwelche Arbeitsmethoden?

Wo?
 

Guten Abend zusammen!

Ich habe eine Situation in meinem EA. Der Expert Advisor bestimmt nicht, ob ein Handel in einem Symbol stattfindet oder nicht.

Ich weiß nicht, wie ich das Problem beheben kann, denn ich möchte, dass die Geschäfte für ein bestimmtes Symbol analysiert werden. Ich möchte, dass es genauer wird! Ich kann diese Funktion nicht finden ((!)

Ich habe versucht, eine solche Funktion zu schreiben:

if(OrderSymbol() != "EURUSD")

{

......

}

 
михаил мосинзов:

Guten Abend zusammen!

Ich habe eine Situation in meinem EA. Der Expert Advisor bestimmt nicht, ob ein Handel in einem Symbol stattfindet oder nicht.

Ich weiß nicht, wie ich das Problem beheben kann, denn ich möchte, dass die Geschäfte für ein bestimmtes Symbol analysiert werden. Ich möchte, dass es genauer wird! Ich kann diese Funktion nicht finden ((!)

Ich habe versucht, eine solche Funktion zu schreiben:

if(OrderSymbol() != "EURUSD")

{

......

}

//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 06.03.2008                                                     |
//|  Описание : Возвращает флаг существования позиций                          |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//|    ot - время открытия             ( 0   - любое время открытия)           |
//+----------------------------------------------------------------------------+
bool ExistPositions(string sy="", int op=-1, int mn=-1, datetime ot=0) {
  int i, k=OrdersTotal();
 
  if (sy=="0") sy=Symbol();
  for (i=0; i<k; i++) {
    if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
      if (OrderSymbol()==sy || sy=="") {
        if (OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (op<0 || OrderType()==op) {
            if (mn<0 || OrderMagicNumber()==mn) {
              if (ot<=OrderOpenTime()) return(True);
            }
          }
        }
      }
    }
  }
  return(False);
}
 
михаил мосинзов:

Guten Abend zusammen!

Ich habe eine Situation in meinem EA. Der Expert Advisor bestimmt nicht, ob ein Handel in einem Symbol stattfindet oder nicht.

Ich weiß nicht, wie ich das Problem beheben kann, denn ich möchte, dass die Geschäfte für ein bestimmtes Symbol analysiert werden. Ich möchte, dass es genauer wird! Ich kann diese Funktion nicht finden ((!)

Ich habe versucht, eine solche Funktion zu schreiben:

if(OrderSymbol() != "EURUSD")

{

......

}

in der Schleife jede Bestellung gegen Magie und Symbol prüfen

... In welcher Sprache haben Sie Ihren EA geschrieben, MQL4 oder MQL5?

 
Wie ressourcenintensiv ist die Funktion
 Sleep() 

in den Diensten einmal pro Stunde ausgeführt werden soll, ist das die richtige Lösung oder sollte man etwas anderes tun?

 

Warum berücksichtigt das Terminal nicht alle Ticks?

datetime st = 0;
int tics = 0;

//---------------------------------------------------------

ArraySetAsSeries(time,true);
   ArraySetAsSeries(tick_volume,true);
   
   if(prev_calculated == 0) st = time[0];
   
   else if(time[0] != st)
     {
      tics++;
      Alert("T - ",tics," TV - ",tick_volume[0]);
     };


Es ist nur so, dass ich eine große Menge an Berechnungen geschrieben habe und es für mich wichtig ist, zu wissen, wie viele Ticks berechnet/verpasst wurden

* DIES IST WICHTIG, da es sich um eine Scalper-Strategie handelt.

 
BillionerClub:
Wie ressourcenintensiv ist die Funktion

in Diensten einmal pro Stunde ausgeführt werden soll ? ist das die richtige Lösung oder sollte man lieber etwas anderes tun ?

Besser wie folgt

if(TimeMinute(time[i])==0)
 

Guten Tag an alle! Ich fragte irgendwo oben, muss ich die Prüfung für einen neuen Balken zu entfernen, damit der EA auf Ticks ausgeführt werden? Mir wurde gesagt, dass alles von Zecken auf echten Handel überprüft werden sollte. In diesem Zusammenhang habe ich die folgende Frage. Wenn der eigentliche Handel durch Ticks ausgeführt werden soll, werden die Aufträge jetzt auf diese Weise eröffnet.

void OnTick()
{
//--- АО БАЙ--

   /*УСЛОВИЕ 1*/
   if(flag_screen1==en_vbIkl_screen1 &&flag_screen2==en_vbIkl_screen2)
   { // НАЧАЛО УСЛОВИЕ 1
   if(ao_buy!=EMPTY_VALUE && count_orders_market_buy ==0)
   {
    if(OrderSend(Symbol(),OP_BUY,lot,Ask,slippages,Bid-sl,Bid+tp ,comment_ao_market_buy)) Print("Buy Open"); // ОТКРЫВАЕМ БАЙ ОРДЕР
   }
   } // КОНЕЦ УСЛОВИЕ1


}

Es stellt sich heraus, dass, wenn etwas schief geht, mein Expert Advisor bei jedem Tick auf den Server klopft und mein Konto einfach vom automatischen Handel abgekoppelt wird, weil ich es nicht gut verstehen kann. Welche Art von Überprüfung sollte ich durchführen und wie sollte ich es tun, so dass, wenn ich einen Fehler machen oder etwas Schlimmes passiert, meine EA nicht den Server zu zerstören und ich werde nicht für solche Dinge gesperrt werden? Bitte sagen Sie mir, was das Wesen dieser Prüfung und wie es funktioniert in Worten, und dann den Code mit Kommentaren bitte senden. P / S bitte nicht von sachkundigen Menschen passieren, und das gleiche zu helfen, brüderlichen Gral dopilivit ;-) Oh_o))))))))

 
DanilaMactep:

Guten Tag an alle! Ich fragte irgendwo oben, muss ich die Prüfung für einen neuen Balken zu entfernen, damit der EA von Ticks ausgeführt werden? Mir wurde gesagt, dass alles von Zecken auf echten Handel überprüft werden sollte. In diesem Zusammenhang habe ich die folgende Frage. Wenn der eigentliche Handel durch Ticks ausgeführt werden soll, werden die Aufträge jetzt auf diese Weise eröffnet.

Es stellt sich heraus, dass, wenn etwas schief geht, mein Expert Advisor bei jedem Tick auf den Server klopft und mein Konto einfach vom automatischen Handel abgekoppelt wird, weil ich es nicht gut verstehen kann. Welche Art von Überprüfung muss ich durchführen und wie, so dass, wenn ich einen Fehler machen oder etwas Schlimmes passiert, meine EA wird nicht den Server zu schlagen und ich werde nicht für solche Dinge gesperrt werden? Bitte sagen Sie mir, was das Wesen dieser Prüfung und wie es funktioniert in Worten, und dann den Code mit Kommentaren bitte senden. P / S bitte nicht von sachkundigen Menschen passieren, und das gleiche zu helfen, brüderlichen Gral dopilivit ;-) Oh_o))))))))

Bestimmen Sie zunächst, wie viele Aufträge Sie eröffnen müssen, wenn die Bedingung

wie sie berechnet wird

count_orders_market_buy 
 
DanilaMactep:

Ich fragte irgendwo oben, ist es notwendig, die Prüfung für einen neuen Balken zu entfernen, um für alles auf Ticks ausgeführt werden?

Nein, das tut sie nicht. Wie Sie es für die Demo getan haben, so verwenden Sie es. Stellen Sie sicher, dass Ihr EA ordnungsgemäß Handelsaufträge sendet und korrekt auf die Server-Fehlercodes reagiert.