Fragen von Anfängern MQL5 MT5 MetaTrader 5 - Seite 953
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
Wo würde ich es verwenden?
Die ganze Idee ist, dass, sagen wir, ich habe Verzeichnisse mit Dateien für die Verarbeitung auf "...\MQL5\\Files\00\dir_01" Adresse. Mit Ihrem wunderbaren Code, erhalte ich den Pfad zu diesen Ordnern in einem Array und möchte auf diese Dateien zugreifen, genau zu wissen, welche Dateien ich verarbeiten müssen, und ich muss den Pfad zu diesen Dateien, zum Beispiel "MQL5\\Files\00\dir_01\A\test.csv" und der Code gibt "MQL5\Files\00\\dir_01\A\" zurück, und ich möchte wissen, ob ich ihn so ändern kann, dass er den optimalen Pfad zurückgibt, der in weiterem Code verwendet werden kann.
Wo würde ich es verwenden?
Die ganze Idee ist, dass, sagen wir, ich habe Verzeichnisse mit Dateien für die Verarbeitung auf "...\MQL5\\Files\00\dir_01" Adresse. Mit Ihrem wunderbaren Code, erhalte ich den Pfad zu diesen Ordnern in einem Array und möchte auf diese Dateien zugreifen, genau zu wissen, welche Dateien ich verarbeiten müssen, und ich muss den Pfad zu diesen Dateien, zum Beispiel "MQL5\\Files\00\dir_01\A\test.csv" und der Code gibt "MQL5\Files\00\\dir_01\A\" zurück, und ich frage, ob er geändert werden kann, um den optimalen Pfad zurückzugeben, der in weiterem Code anwendbar sein wird.
Sie verstehen einfach nicht, was ein doppelter Schrägstrich ist - es ist ein Zeichen, das in der Syntax durch zwei gekennzeichnet ist: erster Schrägstrich Befehl, zweiter Schrägstrich was.
\n, \r, \t, \" und \\\\ sind Zeichen, die durch diese Regel festgelegt werden. D.h. es gibt immer einen Schrägstrich im Pfad.
Sie verstehen einfach nicht, was ein doppelter Schrägstrich ist - es ist ein Zeichen, das in der Syntax durch zwei bezeichnet wird: der erste Schrägstrich befiehlt, der zweite Schrägstrich was.
\n, \r, \t, \" und \\\\ sind Zeichen, die durch diese Regel festgelegt werden. D.h. es gibt immer einen Schrägstrich im Pfad.
Ich schließe nicht aus, dass ich etwas übersehe, aber ich brauche zwei Schrägstriche, um den Dateipfad zu erzeugen, nicht einen.
Ich schließe nicht aus, dass ich etwas falsch verstehe, aber ich brauche zwei Schrägstriche, um den Dateipfad zu erstellen, nicht einen.
Sie brauchen keine zwei Schrägstriche.
Versuchen Sie, einen, zwei oder drei Schrägstriche in das Protokoll zu drucken. Vielleicht werden Sie dann verstehen.Sie brauchen keine zwei Schrägstriche.
Versuchen Sie, einen, zwei oder drei Schrägstriche in das Protokoll zu drucken. Vielleicht werden Sie es dann verstehen.Ja, ich verstehe, dass der Schrägstrich ein Befehl ist, aber ich muss den Pfad schreiben, und dafür verwende ich einen doppelten Schrägstrich.
Hier ist der Weg.
Ich habe eine Zeichenkette in dem Array Folders[0]:
00\dir_01\A\
Ich möchte auf eine Datei mit demselben Namen, aber in verschiedenen Verzeichnissen zugreifen, indem ich den Index des Arrays ändere.
aber dieser Befehl führt zu einer Fehlermeldung, nicht wahr?
Das ist eine Verschwendung.
Hallo!
Ich versuche, von MQL4 zu MQL5 zu wechseln, und ich kann die letzte geschlossene Position nicht finden.
In MQL5, wenn wir einen Auftrag senden, ist es ein Auftrag, und wenn es geöffnet wird, wird es eine Position, und logischerweise sollte es in der Positionshistorie platziert werden und die gelöschten schwebenden Aufträge sollten in der Auftragshistorie platziert werden, aber alles, was ich sehe, ist die Historie der Aufträge von Geschäften, so ist es unklar, wo eine geschlossene Position zu finden ist.
Ich habe es auf diese Weise versucht:
Es werden jedoch sowohl die Zahlen der geöffneten als auch der geschlossenen Positionen angezeigt. ORDER_TYPE zeigt immer 4 an, was ebenfalls nicht eindeutig ist.
Ich habe versucht, ORDER in DEAL zu ändern, aber auch das funktioniert nicht.
Bitte, helfen Sie mir, was ist los?
Wladimir, ich danke dir.Ich bin bereits mit der FunktionRefreshRates der KlasseCSymbolInfo vertraut. Ich habe es in Ihren Werken gesehen und in einer Fibel gelesen.
Der Aufruf dieser Funktion inOnTick und die Ausgabe der Kurswerte inComment sind mir auch aus dem Beispiel klar. Die Prozedur inOnInit zur Überprüfung des aktuellen Symbols ist mir auch klar.
Während ich auf das Beispiel mit der neuen Leiste warte, werde ich versuchen, mit Ihrem Beispiel zu üben, ich habe es noch nicht in der Praxis verwendet. Ich werde es versuchen.
Dieses Beispiel funktioniert also nur in dem Moment, in dem ein neuer Balken geboren wird.
In diesem Beispiel werden die statischen VariablenPrevBars,prev_ask undprev_bid verwendet. Das Wesentliche an statischen Variablen ist.
Lokale Variablen, die mit dem Schlüsselwort static deklariert werden, behalten ihre Werte währendder gesamten Lebensdauer der Funktion. Bei jedem nachfolgenden Aufruf der Funktion enthalten diese lokalen Variablen die Werte, die sie beim vorherigen Aufruf hatten.
Unsere drei statischen Variablen(PrevBars,prev_ask undprev_bid) sind also lokale Variablen, die innerhalb der OnTick-Funktion deklariert sind und ihre Werte speichern, die sie beim Eintritt in die OnTick-Funktion hatten.
PrevBars speichert die Zeit des vorherigen Taktes. Diese Zeit wird mittime_0, der Zeit des aktuellen Taktes, verglichen. SolangePrevBars gleichtime_0 ist, befinden wir uns im aktuellen Takt und verlassen die Funktion OnTick. Das Gleiche gilt für die Variablen, die die Preise des vorangegangenen Balkens speichern: Wir zeigen zunächst die vorherigen und aktuellen Preise an und schreiben dann die aktuellen Preise in die Variablenprev_ask undprev_bid.
Forum für Handel, automatisierte Handelssysteme und Strategietests
FAQ von Anfängern MQL5 MT5 MetaTrader 5
Aleksey Vyazmikin, 2018.12.05 00:39
Ich weiß, dass es ein Schrägstrich-Befehl ist, aber ich muss den Pfad angeben.
Hier ist der Pfad, sagen wir
Ich habe eine Zeichenfolge in Folders[0] Array:
00\dir_01\A\
Ich möchte auf eine Datei mit demselben Namen, aber in verschiedenen Verzeichnissen zugreifen, indem ich den Array-Index ändere.
aber dieser Befehl führt zu einer Fehlermeldung, nicht wahr?
Es wird kein Fehler auftreten. Du hast immer noch nicht herausgefunden, was ein doppelter Schrägstrich ist.
Ja, ich verstehe, dass der Schrägstrich ein Befehl ist, aber ich muss den Pfad schreiben, und dafür verwende ich einen doppelten Schrägstrich.
Hier ist der Pfad zum Beispiel
Ich habe eine Zeichenkette in dem Array Folders[0]:
Ich möchte auf eine Datei mit demselben Namen, aber in verschiedenen Verzeichnissen zugreifen, indem ich den Index des Arrays ändere.
aber dieser Befehl führt zu einer Fehlermeldung, nicht wahr?
Alexey, nehmen Sie ein Beispiel aus der Dokumentation
und geben Sie die beiden im Beispielcode hervorgehobenen String-Variablen aus. Finden Sie die Unterschiede und verstehen Sie, dass der doppelte Schrägstrich nur im Programmcode geschrieben wird, aber nur einer zur Kompilierzeit übrig bleibt und einer im Dateipfad verwendet wird.