Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 208
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Ich möchte den Zustand verschiedener Instrumente überprüfen.
So können die externen wie folgt geschrieben werden
Ich möchte den Zustand der verschiedenen Instrumente überprüfen.
Ich möchte in der Lage sein, es in den externen wie folgt zu schreiben
Ein Array statt einer Variablen verwenden
und überprüfen Sie es in der Schleife.
Um all dies über die Eingabe einzugeben, benötigen Sie eine Zeichenkette
"EURUSD, GBPUSD, USDJPY, USDCHF"
in der Eingabe, um sie aufzuteilen und in ein Array zu stellen. Hierfür gibt es String-Funktionen. Beispiele für solche Manipulationen finden Sie in CodeBase.
Ein Array ist am besten wie folgt definiert
Es ist besser, das Array wie folgt einzustellen
Hallo. Ich habe ein Problem mit den Blinkern, es passiert normalerweise auf m1 und m5. Es sieht aus wie ein Sprung auf allen Anzeigen des Kellerfensters und des Hauptfensters gleichzeitig, wie auf den Screenshots zu sehen ist. Der Code eines der Indikatoren.
Ein Array statt einer Variablen verwenden
und überprüfen Sie es in der Schleife.
Um all dies über die Eingabe einzugeben, benötigen Sie einen String
Inite split und schiebe es in ein Array. Hierfür gibt es String-Funktionen. Beispiele für solche Manipulationen finden Sie in CodeBase.
Manchmal steht dort nur "UP" ohne Währungspaar. Wie kann man das beheben?
Manchmal steht dort nur "UP" ohne das Währungspaar. Wie kann man das beheben?
Warum brauchen Sie eine Schleife mit 100 Iterationen? Wozu brauchen Sie 100er-Arrays?
Warum machen Sie es nicht dynamisch, vergrößern es und füllen das Array, wenn Sie ein neues Symbol in der Initialisierungszeichenfolge finden?
Die Anzahl der Iterationen hängt dann von der Größe des gefüllten Arrays ab.
Haben Sie überprüft, was Sie im Array haben?
Manchmal steht dort nur "UP" ohne das Währungspaar. Wie kann ich es reparieren?
Mach es so
Dob. Und in der Inite vergrößern Sie das Array, wenn Sie ihm einen Wert hinzufügen
Manchmal steht dort nur "UP" ohne das Währungspaar. Wie kann man das beheben?
Probieren Sie es aus:
Zu "...aber wenn die Bedingung bei mehreren Paaren gleichzeitig erfüllt ist, erfolgt die Ausschreibung nur bei einem Paar..." möchte ich Folgendes sagen:
Sie prüfen die Zeit eines Symbols, aber Sie schreiben sie in eine einzige Variable für alle Symbole, die Sie haben. Natürlich wird nur das allererste Symbol auf dem aktuellen Balken alarmiert. Sie benötigen ein Array von Strukturen mit zwei Feldern für jedes Symbol - Namensfeld und Zeitfeld, und schreiben bereits Alarmzeiten für jedes Symbol hinein.
Zum Beispiel so:
Manchmal steht dort nur "UP" ohne das Währungspaar. Wie kann ich es reparieren?
Das Problem liegt in dieser Zeile
Da ich mehrere Währungen auf einem Balken prüfe, sollte ich neben der Zeit auch die Währung prüfen, um zu vermeiden, dass die Warnung auf einem Balken und einem Symbol wiederholt wird, sondern eine Warnung auf demselben Balken mit einem anderen Symbol zu ermöglichen. Auf den ersten Blick brauchen wir ein weiteres Array mit Flags, die anzeigen, ob das Symbol angezeigt wird oder nicht.
Im Allgemeinen kann man entweder eine Symbolprüfung in diese Zeile einfügen oder den Zyklus nur unter der Bedingung wiederholen, dass sich ein neuer Balken öffnet. Aber ich habe die Befürchtung, dass, wenn es einen neuen Balken auf dem Symbol mit diesem Indikator gibt, der neue Balken noch nicht auf dem anderen Symbol gezeichnet worden ist.
Die Schlussfolgerung: Wir müssen unsere Kopfmuskeln anstrengen, um festzustellen, ob ein neuer Balken auf jedem einzelnen Symbol erscheint, aber gleichzeitig die Anzahl der Zeilen nicht ins Unendliche zu dehnen. Ich habe keine fertige Lösung. Und ich mag es nicht vorschlagen, indem ich Code schreibe...