[ARCHIV] Alle Fragen von Anfängern, um das Forum nicht zu überladen. Fachleute, gehen Sie nicht vorbei. Nirgendwo ohne dich - 3. - Seite 192

 

NewBar() wird aufgerufen; aber wenn Sie lange genug hinschauen, werden Sie die Dinge für sich selbst nicht noch schlimmer machen :)

 

newbar https://book.mql4.com/ru/variables/arrays

Konzeptionell ist es nicht anders.

void Fun_New_Bar()                              // Ф-ия обнаружения ..
  {                                             // .. нового бара
   static datetime New_Time=0;                  // Время текущего бара
   New_Bar=false;                               // Нового бара нет
   if(New_Time!=Time[0])                        // Сравниваем время
     {
      New_Time=Time[0];                         // Теперь время такое
      New_Bar=true;                             // Поймался новый бар
     }
  }

 
splxgf:

newbar https://book.mql4.com/ru/variables/arrays

Konzeptionell ist es nicht anders.


Nicht konzeptionell, aber es wird nicht funktionieren - das tut mir leid.
 
Über den ADX-Indikator ist viel geschrieben worden, aber es gibt eine Funktion, die ich gerne berücksichtigen möchte, hier in short....Und Sie können die Balken in diesem Algorithmus gefärbt: wenn der aktuelle Wert des ADX größer ist als die vorherige ADX und + (Plus-Linie) über der Minus-Linie, die Bar ist in grün gemalt, aber wenn der aktuelle Wert des ADX weniger als der vorherige Wert, die Bar ist in grau gemalt (es ist egal, wo die Plus-Linie), und schließlich, wenn der aktuelle Wert ADX größer als die vorherige ADX und - (Minus-Linie) über der Plus-Linie, die Bar ist in rot gemalt. Oder, wenn ich den ADX-Wert ändern wollte, könnte ich ihn einfach auf einen Wert setzen, über dem keine Pfeile gezeichnet werden.
 
splxgf:
double OpenBar=0; 
 
int start()
   {
    //Проверка на начало нового бара
    if (OpenBar==Time[0]) return; else OpenBar=Time[0];
   }

Ich würde hier nicht mit einer Variablen vom Typ Double herumspielen! Sie brauchen mehr Speicherplatz! ;)))

Und wenn die Konvertierung vom Typ int in den Zieltyp double erfolgt, wird es keine zusätzlichen Stellen nach dem Dezimalpunkt geben, verstehe ich? Mir persönlich sind solche Fälle nicht bekannt. Aber es lohnt sich, danach zu fragen.


tara:

Konzeptionell - nichts, aber es wird nicht funktionieren, sorry.
Welcher Code wird nicht funktionieren und warum?
 

In der von Ihnen zitierten Fassung fehlen einige der Balken.

 
tara:

In der von Ihnen zitierten Fassung fehlen einige der Balken.


Schlagen Sie Ihre eigene Variante vor und erklären Sie, warum sie besser ist. Bis jetzt sind es nur Worte.
 

1. Ein Teil der Balken wird fehlen, weil das Ergebnis des Vergleichs double==int von dem bestimmten int-Wert abhängt, der zuvor in double platziert wurde. Genau das passiert hier: time (int) wird in double geschrieben - für alle Zahlen, die nicht Zweierpotenzen sind, gibt es einen Präzisionsverlust, der dazu führt, dass double3 != int3 ist, obwohl double4 == int4.

2. Ich verstehe, dass dies nur ein technischer Fehler von jemandem ist, der sich dann wiederholt verbreitet. Eigentlich sollten Sie nur den OpenBar-Typ auf datetime oder int korrigieren. Aber - der Schlummer des Geistes bringt Ungeheuer hervor: es ist einfacher, einfach den Code von jemand anderem zu wiederholen und die Augen zu schließen :)

3. Falsche Lösung in Bezug auf die Speicherzuweisung: eine lokale Variable statisch ist hier genug, zusätzliche globale Variable ist nutzlos - Software-Müll, obwohl es eine Kleinigkeit ist :(

 
tara:

1. Ein Teil der Balken wird fehlen, weil das Ergebnis des Vergleichs double==int von dem bestimmten int-Wert abhängt, der zuvor in double platziert wurde. Genau das passiert hier: time (int) wird in double geschrieben - für alle Zahlen, die nicht Zweierpotenzen sind, gibt es einen Präzisionsverlust, der dazu führt, dass double3 != int3 ist, obwohl double4 == int4.

2. Ich verstehe, dass dies nur ein technischer Fehler von jemandem ist, der sich dann wiederholt verbreitet. Eigentlich sollte man nur den OpenBar-Typ auf double festlegen. Aber der Schlaf der Vernunft züchtet Bestien: es ist einfacher, den Code von jemand anderem zu wiederholen und die Augen zu schließen :)

3. Falsche Lösung in Bezug auf die Speicherzuweisung: eine lokale Variable statisch ist hier genug, zusätzliche globale Variable ist nutzlos - Programm Müll, obwohl es eine Kleinigkeit ist :(


Es gibt noch einige Codes, die zitiert werden müssen. Ich bin es einfach leid, fünf Seiten später dasselbe zu wiederholen. Zumal die richtige Lösung über eine Suche leicht zu finden ist
 

Guten Tag zusammen!

Frage zu EAs. Wenn ich mir viele EAs anschaue, möchte ich verstehen, wie die Trades automatisch gemacht werden. Ich denke, ich habe alles richtig eingerichtet, ich erlaube dem Expert Advisor zu handeln, und ich verstehe die Idee, aber es gibt keine Trades aus irgendeinem Grund. Vielleicht wird es auf ein bestimmtes Symbol angewendet? Oder einen Zeitrahmen? Wie kann ich das herausfinden?

Grund der Beschwerde: