Zähle X Mal und übergebe dann – Expert Advisor für MetaTrader 5

Mike 2024.04.14 19:15 89 0 0
Anhang

01. Zähle "X" Mal und übergebe dann.

  • Schritt 01 - Erstelle eine Variable, um das Zähl-Limit festzulegen. Diese kannst du auch als Input-Parameter in deinem Code verwenden und optimieren.
  • Schritt 02 - Erstelle eine weitere Variable, um das Zähl-Ergebnis zu speichern (wie oft gezählt wurde).
  • Schritt 03 - Sobald der Counter und dein Zähl-Limit gleich sind, ist es Zeit, den von dir festgelegten Codeblock zu übergeben.
  • Schritt 04 - Achte darauf, den Counter zurückzusetzen, nachdem der Codeblock übergeben wurde. Ansonsten zählt er unendlich (in diesem Fall).
Du kannst auch Filterbedingungen für den Counter-Block festlegen, wie z.B. >> "Wenn dies wahr ist, dann zähle einmal."
inputint count = 50; // Setze das Zähl-Limit als Inputint Counter; // Zählervariable// Expert Initialisierung --------------------intOnInit()
{
 return(INIT_SUCCEEDED);
}

// Expert Deinitialisierung -------------------voidOnDeinit(constint reason)
{

}

// Expert OnTick --------------------------voidOnTick()
{
 Counter ++; // Erhöhe den Zähler bei jedem Tick.  Comment("Aktuelle Anzahl -:", Counter);
 
 if(Counter == count)  // Zähle "X" Mal und übergebe   | Dieser Block wird nur einmal pro Zählung ausgeführt.
 {
  
  // Dein Code kommt hier rein......Alert(count," Mal gezählt"); 
 Counter = 0; // Setze den Zähler am Ende deines Codeblocks zurück. Das ist wichtig.
 } 

} // OnTick Ende  <<----------------------


02. Übergebe "X" Mal und warte dann "X" Mal.

Diese Methode kann verwendet werden, um zwischen warten und übergeben, oder übergeben und warten zu wechseln.

  • Schritt 01 - Erstelle eine Variable für das Zähl-Limit und Warte-Limit. Du kannst sie auch als Input-Parameter in deinem Code verwenden und optimieren.
  • Schritt 02 - Erstelle eine weitere Variable, um die gezählten und wartenden Limits zu speichern (wie oft gezählt und gewartet wurde).
  • Schritt 03 - Sobald der Counter und dein Zähl-Limit gleich sind, ist es Zeit, den von dir festgelegten Codeblock zu übergeben.
  • Schritt 04 - Wenn das Warte-Limit erreicht ist, ist es Zeit, kurz zu warten.
  • Schritt 05 - Stelle sicher, dass du sowohl den Zähler als auch den Wartenden zurücksetzt, wenn das Warte-Limit erreicht ist. Andernfalls wird es aufhören zu funktionieren (in diesem Fall).
Du kannst auch Filterbedingungen für den Counter-Block und den Warte-Block festlegen, wie z.B. >> "Wenn dies wahr ist, warte ein wenig."


inputint count = 50; // Setze das Zähl-Limit als Inputinputint wait = 50; // Setze das Warte-Limit als Inputint Counter; // Zählervariable, Standardwert ist "0"int Waiter; // Wartevariable, Standardwert ist "0"// Expert Initialisierung --------------------intOnInit()
  {
   return(INIT_SUCCEEDED);
  }

// Expert Deinitialisierung -------------------voidOnDeinit(constint reason)
  {
  }

// Expert OnTick --------------------------voidOnTick()
  {
   Comment("Gezählte Ticks -: ", Counter, "\n", "Gewartete Ticks -: ", Waiter);

   if(Counter < count) // Übergebe "X" Mal
     {
      Counter++; // Aktualisiere den Zähler

      // Dein Code kommt hier rein.

     }
   else
      if(Waiter < wait) // Warte für "X" Mal
        {
         Waiter++; // Aktualisiere den Warte-Zähler

         // Dein Code kommt hier rein.

        }

   if(Waiter == wait) // Warte-Limit erreicht
     {
      Counter = 0; // Zähler zurücksetzen
      Waiter = 0; // Warte-Zähler zurücksetzen
     }



  } // OnTick Ende  <<----------------------//+------------------------------------------------------------------+

Besonderheit -:

Du kannst "X Mal übergeben und stoppen" programmieren, indem du den oben genannten Code anpasst und den Warte-Codeblock entfernst. Dann zählt es eine bestimmte Anzahl und stoppt, bis der Zähler zurückgesetzt wird. Du kannst ihn überall in deinem Code zurücksetzen, wenn du diese Variablen global definierst.


Liste
Kommentar 0