Es gibt eine interessante Handelsidee. Helfen Sie mir, Fehler im Code zu finden (mql4). - Seite 2

 
Alexey Volchanskiy:
// и все Point заменить на _Point

mql4 verfügt derzeit über vier Varianten von Punktanforderungen

Point
Point()
_Point
(int)MarketInfo(Symbol(),MODE_POINT)

Was ist der Unterschied zwischen ihnen und welche ist besser für den echten Handel geeignet? Ich verwende es auf einem echten Konto über Market Info.

 
Vladimir Zubov:

mql4 verfügt derzeit über vier Varianten von Punktanforderungen

Was ist der Unterschied zwischen ihnen und welche ist besser für den echten Handel geeignet? Ich verwende es auf einem echten Konto über Market Info.

Die alte Point-Variante steht nicht einmal im Handbuch. Die Varianten _Point und Point() sind korrekt, aber Renat hat empfohlen, die Funktion zu verwenden.
 
Alexey Volchanskiy:
Die alte Variante Point ist nicht einmal in der Hilfe enthalten. Die Varianten _Point und Point() sind korrekt, aber Renat hat empfohlen, eine Funktion zu verwenden.
Natürlich weiß er es besser, aber ich würde gerne den Grund erfahren.
 
Können Sie Bildschirmfotos der Eigenschaften der Ordner hochladen, in denen sich die Verlaufsdateien befinden? Ich denke, dass etwas mit den Attributen oder den Zugriffsrechten nicht stimmt. Möglicherweise verhindert das Betriebssystem, dass der Prüfer die Dateien mit Anführungszeichen ändert
 
Vladimir Zubov:

mql4 verfügt derzeit über vier Varianten von Punktanforderungen

Was ist der Unterschied zwischen ihnen und welche ist besser für den echten Handel geeignet? Ich verwende MarketInfo für den echten Handel.

Wenn Sie den Wert eines Punktsymbols benötigen, der sich vom aktuellen unterscheidet, sollten Sie MarketInfo(Symbol(),MODE_POINT) verwenden.

Die Varianten _Point und Point sind ein Überbleibsel aus alten Kompatibilitätszeiten. Aber die explizite Umwandlung von double in int ist hier nicht angebracht, da Point() und MarketInfo(Symbol(),MODE_POINT) die Zahl 0.0001 oder 0.00001 (je nach Genauigkeit der 4 oder 5 Zeichen) vom Typ double zurückgeben.

 

Woran liegt es und wie kann es behoben werden?

2016.02.13 18:05:07.917 TestGenerator: Fehler bei nicht übereinstimmenden Daten (Volumengrenze 83 am 2016.02.12 23:45 überschritten)

 
Yaroslav Gladkov:

Woran liegt es und wie kann es behoben werden?

2016.02.13 18:05:07.917 TestGenerator: Fehler bei nicht übereinstimmenden Daten (Volumengrenze 83 am 2016.02.12 23:45 überschritten)

Dies ist ein historischer Datenfehler. Beeinflusst die Genauigkeit der Simulation.
 
Vitalii Ananev:

Wenn Sie den Wert eines Punktsymbols benötigen, das sich vom aktuellen Symbol unterscheidet, sollten Sie MarketInfo(Symbol(),MODE_POINT) verwenden, wenn es sich um das aktuelle Symbol handelt, verwende ich Point().

Die Varianten _Point und Point sind ein Überbleibsel aus alten Kompatibilitätszeiten. Aber die explizite Umwandlung von double in int ist hier nicht angebracht, da Point() und MarketInfo(Symbol(),MODE_POINT) die Zahl 0.0001 oder 0.00001 (je nach Genauigkeit der 4 oder 5 Zeichen) vom Typ double zurückgeben.

Das habe ich kopiert (int), was ich in diesem Fall natürlich nicht verwende. Aber wenn ich verwirrt und es ist nicht klar, welche Methode ist besser zu verwenden und warum, entschied ich mich, nur die Info mart, auch auf den aktuellen Charakter zu verwenden.
 

Besuchen Sie diese Website http://tickstory.com/

Kann ihre Software dieses Problem lösenTestGenerator: Fehler bei nicht übereinstimmenden Daten (Volumengrenze 83 am 2016.02.12 23:45 überschritten)

 
Yaroslav Gladkov:

Besuchen Sie diese Website http://tickstory.com/

Kann ihre Software dieses Problem lösenTestGenerator: Fehler bei nicht übereinstimmenden Daten (Volumengrenze 83 am 2016.02.12 23:45 überschritten)

Konfigurieren Sie das Terminal so, dass es die maximale Anzahl von Takten in der Historie und im Fenster speichert.

Laden Sie das Terminal neu

Laden Sie den Kursverlauf (Taste F2) des gewünschten Symbols herunter, beginnend mit M1

Laden Sie das Terminal neu.

P.S. Mein Kursverlauf wird auf dem Bild nicht heruntergeladen, da ich den Tester in diesem Terminal nicht verwende.