Fehler, Irrtümer, Fragen - Seite 2235

 
fxsaber:

Wie kann der letzte Preis kein Vielfaches von TickSize sein?

vielleicht habe ich diese Frage vor ein paar Jahren gestellt, ich habe Ticks in einem while(true) Skript geschrieben, ich habe Ticks geschrieben, indem ich Daten in "Marktübersicht" geändert habe, es gab oft Ticks wie 1.3555000001, oder 1.3555999999

ich war überrascht, nicht normalisierte Preisdaten vom Server zu erhalten, ich habe keine Antwort erhalten, aber ich habe spätere Themen gelesen und die Antworten der Entwickler gesehen, die sagen, dass einige der Ticks für das Terminal sind und der EA nicht mit solchen Ticks handelt

auch in Ihrem Fall ist ein solcher Preis kein Vielfaches vonSYMBOL_TRADE_TICK_SIZE, was bedeutet, dass Sie nicht zu einem solchen Preis handeln werden.... obwohl sich herausstellt, dass die Analyse des letzten Preises ebenfalls bedeutungslos sein kann ))))

 
Igor Makanu:

Ich habe diese Frage vielleicht schon vor ein paar Jahren gestellt, ich habe Ticks in ein while(true) Skript geschrieben, die Ticks wurden durch Änderung der Daten in "Marktübersicht" geschrieben, es gab oft Ticks wie 1.3555000001, oder 1.3555999999

In Ihrem Fall handelt es sich um eine Besonderheit der Konvertierung double -> string. Ich habe eine etwas andere Situation.

 
Das EA-Protokoll ist 15 GB groß. Wenn man versucht, sie im Terminal anzuzeigen, bleibt sie länger als eine Minute hängen.
 
fxsaber:
Das EA-Protokoll ist 15 GB groß. Wenn man versucht, sie im Terminal anzuzeigen, bleibt sie länger als eine Minute hängen.

Was soll es denn sein?

 
Alexey Kozitsyn:

Willst du, dass es so ist?

Im Falle eines großen Protokolls geben Sie zunächst eine Warnung aus und fragen Sie, ob Sie fortfahren wollen oder nicht.

 
fxsaber:

Im Falle eines großen Protokolls wird zunächst eine Warnung ausgegeben und Sie werden gefragt, ob Sie fortfahren möchten oder nicht.

Sehen Sie, wie sofort konstruktiv es wurde:)

 
Alexey Viktorov:

Ihr Fehler ist, dass die Daten nach dem Schreiben in eine Datei erst nach FileClose ODER nach einem erzwungenen Zurücksetzen der Daten auf die Festplatte durch FileFlush auf die Festplatte gelangen.

Wie kann man sonst eine Datei lesen, die nicht existiert?

Sie verwechseln mich mit jemand anderem. Sowohl mit als auch ohne FileFlush - der Fehler ist derselbe. Der eigentliche Expert Advisor, mit dem alles begann, hat zunächst sowohl FileFlush als auch die Datei selbst.

Das FILE_SHARE_WRITE-Flag in einer solchen Kombination scheint zu funktionieren, aber es stellt sich eine andere Frage: Was ist der Sinn eines solchen Eintrags? Wenn Sie die Schreibtrennung aktivieren, müssen Sie sie logischerweise genau zum Schreibkennzeichen hinzufügen:

FILE_READ|FILE_BIN|FILE_SHARE_READ|(writing?(FILE_WRITE|FILE_SHARE_WRITE):0)

Das ist genau das, was ich versucht habe, und es gibt auch eine Fehlermeldung.

 
Im Allgemeinen ist nicht klar, warum ich eine Datei auf Schreibzugriff prüfen muss, wenn nur eine Lesetrennung erforderlich ist?
 
Meine Herren, kann mir jemand bei dieser Frage helfen?
 

DerMqlTradeCheckResult-Tooltip wird in ME nicht angezeigt

#define  TOSTRING(A)  #A + " = " + (string)(A) + "\n"
#define  TOSTRING2(A) #A + " = " + EnumToString(A) + " (" + (string)(A) + ")\n"

string ToString( const MqlTradeRequest &Request )
{
  return(TOSTRING2(Request.action) + TOSTRING(Request.magic) + TOSTRING(Request.order) +
         TOSTRING(Request.symbol) + TOSTRING(Request.volume) + TOSTRING(Request.price) +
         TOSTRING(Request.stoplimit) + TOSTRING(Request.sl) +  TOSTRING(Request.tp) +
         TOSTRING(Request.deviation) + TOSTRING2(Request.type) + TOSTRING2(Request.type_filling) +
         TOSTRING2(Request.type_time) + TOSTRING(Request.expiration) + TOSTRING(Request.comment) +
         TOSTRING(Request.position) + TOSTRING(Request.position_by));
}

string ToString( const MqlTradeResult &Result )
{
  return(TOSTRING(Result.retcode) + TOSTRING(Result.deal) + TOSTRING(Result.order) +
         TOSTRING(Result.volume) + TOSTRING(Result.price) + TOSTRING(Result.bid) +
         TOSTRING(Result.ask) + TOSTRING(Result.comment) + TOSTRING(Result.request_id) +
         TOSTRING(Result.retcode_external));
}

string ToString( const MqlTrade
Grund der Beschwerde: