Fragen von Neueinsteigern zu MQL4 und MQL5, Hilfe und Diskussion über Algorithmen und Codes - Seite 431
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
Sie können. Aber seien Sie vorsichtig. Bei einer offenen Position gibt sie den Schlusskurs zurück. Entsprechend: für Kaufen - Bid, für Verkaufen - Ask
Ich dachte, OrderClosePrice() kann nur von einer geschlossenen Position genommen werden.
die Hilfe sagt nichts darüber aus)
o. Ich wusste nicht, dass man es so verwenden kann.
Ich dachte, OrderClosePrice() könne nur von einer abgeschlossenen Transaktion übernommen werden.
in der Hilfe steht nichts darüber)
Undokumentierte Funktion. Aber es gibt einige Konventionen. Ich weiß im Moment nicht mehr, welche es waren. Sie müssen Alexey @Alexey Viktorov fragen - er hat kürzlich darüber geschrieben.
Eine nicht dokumentierte Möglichkeit. Aber es gibt dort einige Konventionen. Ich kann mich im Moment nicht mehr erinnern, welche. Fragen Sie Alexey @Alexey Viktorov - er hat vor kurzem über sie geschrieben.
Wird die Variable nicht sofort durch Null eingeleitet?
Was ist mit diesem Code?
Die Variable wird nicht sofort mit Null initialisiert?
Verlassen Sie sich nicht auf die Standardeinstellungen. Es ist besser, sich bei der Deklaration einer lokalen Variablen um ihren Wert zu kümmern: bool pr=false;
Im Allgemeinen ist es natürlich unnötig, sie dort einzustellen. Es genügt zu prüfen, was die Funktion zurückgibt:
if(!OrderClose()) Print("Schade");
Wie erkenne ich den Fibonacci-Fächerpreis einer vorherigen Kerze? MQL5
ObjectGetValueByTime() funktioniert nicht, es gibt 0, dann hoch, dann niedrig Kerze
@ArtyomTrishkin
Guten Tag. Bitte helfen Sie mir und sagen Sie mir, was mit meinem Indikator nicht stimmt. Ich verstehe nicht, warum er überhaupt nichts zeichnet.
https://www.mql5.com/ru/forum/224805#comment_6372281
Dies ist eine undokumentierte Funktion. Aber es gibt einige Konventionen. Ich weiß im Moment nicht mehr, welche es waren. Ich muss Alexey @Alexey Viktorov fragen - er hat kürzlich darüber geschrieben.
Es ist schon so lange her... aber ich habe es trotzdem gefunden. Renat erklärt in klaren Worten, warum dies nicht wünschenswert ist. Aber meiner Meinung nach ist es nicht so schlimm. Das Problem kann auftreten, wenn wir bei Auftragsabschluss einen neuen Auftrag erhalten. Wenn wir den Brief- oder Geldkurs in der Anfrage festlegen, können wir den Kurs jederzeit aktualisieren und erneut versuchen. Und im Falle der Angabe des Schlusskurses OrderClosePrice() müssen wir den Auftrag wiederholt auswählen, um die Auftragsdaten zu aktualisieren.
Fazit: Wenn Sie nicht können, aber wirklich müssen, können Sie.
Bitte um Rat! Ich lese Daten aus einer CSV-Datei, einschließlich einer Spalte mit einem Preis mit einem Platztrennzeichen "." (1.22426) über FileReadString(handle), dann über die Funktion StrToDouble, ist alles in Ordnung. Es gibt jedoch auch eine Spalte mit dem Preis, die jedoch bereits durch "," (1,22426) begrenzt ist und von StrToDouble nicht gelesen werden kann. Was ist zu tun, wenn es keine Möglichkeit gibt, in der CSV selbst ein Komma in einen Punkt zu ändern?
Bitte um Rat! Ich lese Daten aus einer CSV-Datei, einschließlich einer Spalte mit einem Preis mit einem Platztrennzeichen "." (1.22426) über FileReadString(handle), dann über die Funktion StrToDouble, ist alles in Ordnung. Es gibt jedoch eine Spalte mit einem Preis, der bereits durch "," getrennt ist (1,22426), und StrToDouble kann sie nicht lesen. Was kann ich tun, wenn ich in CSV kein Komma in einen Punkt umwandeln kann?
FileReadString
und dann können Sie es von einem Komma in einen Punkt ändern:
StringReplace
Ersetzt alle gefundenen Teilstrings in String durch die angegebene Zeichenfolge.
intStringReplace(
string&str,//Muster, in dem die Ersetzung durchgeführt wird.
const stringfind,// gesuchter Teilstring
const string replacement// zu ersetzende Teilzeichenkette
);
FileReadString
und dann können Sie von einem Komma zu einem Punkt wechseln:
StringReplace
Ersetzt alle gefundenen Teilstrings in der Zeichenkette durch eine bestimmte Zeichenfolge.
intStringReplace(
string&str,// zu ersetzende Zeichenfolge
const stringfind,// die gesuchte Teilzeichenkette
const string replacement// zu ersetzende Teilzeichenkette
);
Danke!) , Variable Cena=FileReadString(handle); ich füge in die Funktion Separator=StringReplace(Sepa,",",".") ein; es wird der Fehler "implizite Umwandlung von Zahl in String" geschrieben -
will den Wert mit dem Trennzeichen "," (1,22426) nicht als String lesen, und StringReplace funktioniert nicht. Oder mache ich es falsch?