Fragen von Anfängern MQL4 MT4 MetaTrader 4 - Seite 96

 

Hallo, ich möchte ein Verfallsdatumfür Futures erhalten

EXPIRATION=(datetime)SymbolInfoInteger(Symbol(),SYMBOL_EXPIRATION_TIME);

Sie gibt 1970 01 01 00 00 aus

 

Hallo,


Bitte um Rat, die automatische Validierung zeigt einen"Division durch Null"-Fehler im folgenden Ausdruck:


NormalizeDouble(STOP/MarketInfo( Symbol(),MODE_TICKVALUE)*10,0)*Point

Der Ausdruck aller Komponenten zeigt NICHT Nullwerte.

Was könnte der Grund für diesen Fehler sein?

 

MT4

Wo kann ich die aktuelle und umfassende Liste der int OrderType()-Werte erhalten ?

Hilfe, so nehme ich an, ist nicht aktualisiert worden.


Zählt AccountProfit() Einzahlungen und Abhebungen?

Die Hilfe sagt nicht wirklich etwas darüber aus, wie es gezählt wird, was berücksichtigt wird...

Auch eine genaue Definition des Begriffs wäre hilfreich, um zu verstehen, was die Entwickler meinten und wie es gezählt werden sollte.

Vielleicht gibt es von den Entwicklern eine Übersicht über ähnliche Funktionen, aus denen das Ergebnis abgeleitet wird? Ich muss sie nach und nach sammeln ...

 
Viatcheslav Pashkov:

Hallo,


Bitte um Rat, die automatische Validierung zeigt einen"Division durch Null"-Fehler im folgenden Ausdruck:


Der Ausdruck aller Komponenten zeigt NICHT Nullwerte.

Was kann der Grund für diesen Fehler sein?


Bitte geben Sie mir einen vollständigeren Code. Arten von Variablen. Welches Zeichen. Welche Werte werden vor der Substitution in den Ausdruck übernommen. Wo wird das Ergebnis der Berechnung dieses Ausdrucks als nächstes verwendet.

 
Kirill Belousov:

Geben Sie einen vollständigeren Code an. Arten von Variablen. Welcher Charakter. Welche Werte vor der Substitution in einem Ausdruck genommen werden. Wo wird das Ergebnis der Berechnung dieses Ausdrucks weiter verwendet.

Es gab nur vordefinierte VariablenSymbol() undMODE_TICKVALUE)

Ich weiß nicht, woran es liegt, aber ich habe das Problem auf diese Weise gelöst:

Ich habe eine Prüfung auf Null eingeführt, z. B.: Wenn der Ausdruck ungleich Null ist, dann ausführen.


Und alles lief gut.

Ich weiß nicht, was das bedeutet... aber ich werde im Hinterkopf behalten, dass der Autovalidator eine MÖGLICHE Division durch Null im INI-Block angibt, nicht eine explizite.

 
Viatcheslav Pashkov:

Hallo,


Bitte um Rat, die automatische Validierung zeigt einen"Division durch Null"-Fehler im folgenden Ausdruck:


Der Ausdruck aller Komponenten zeigt NICHT Nullwerte.

Was könnte der Grund für diesen Fehler sein?

double TICK_VALUE = MarketInfo( Symbol(),MODE_TICKVALUE);
if(TICK_VALUE ==0) return;
NormalizeDouble(STOP/TICK_VALUE *10.0)*Point
 
Vitaly Muzichenko:

Wie kannTICK_VALUE gleich Null sein ?

 
Viatcheslav Pashkov:

Wiekann TICK_VALUE gleich Null sein ?


bis das Terminal mit dem Konto verbunden ist, sind die meisten Variablen Null

 
Taras Slobodyanik:

bis das Terminal mit dem Konto verbunden ist, sind die meisten Variablen Null


Danke, das werde ich im Hinterkopf behalten!

 
Viatcheslav Pashkov:

Es gab nur vordefinierte VariablenSymbol() undMODE_TICKVALUE)

Ich weiß nicht, was los ist, aber ich habe das Problem auf diese Weise gelöst:

Ich habe eine Prüfung auf Null eingeführt, z. B.: Wenn Ausdruck ungleich Null ist, dann ausführen.


Und alles lief gut.

Ich weiß nicht, was das bedeutet ... aber ich werde daran denken ... dass der Autovalidator eine MÖGLICHE Division durch Null im INI-Block angibt, nicht eine explizite.

Die Meldung einer Division durch Null ist nicht das Problem, sondern die Folge.

Aber jetzt wird es schwer sein, das Problem zu finden, denn Sie haben einfach die unangenehme Meldung über die Division durch 0 entfernt.

Was genau wollen Sie normalisieren? Wo setzen Sie das Ergebnis ein?

Bitte geben Sie Ihren Code an, in dem Sie das Ergebnis des von Ihnen angegebenen Ausdrucks weiter verwenden. Ich glaube, hier liegt das Problem.