Fehler, Irrtümer, Fragen - Seite 2477

 
secret:
Seltsam, es wird schon seit ein paar Jahren abgelehnt und sie werben immer noch für den Kauf...

Soweit ich weiß, haben Sie dieses Schreiben vom Terminal des Maklers erhalten. Stellen Sie ihm eine Frage oder bitten Sie ihn, sich an den Support zu wenden, wenn er das Problem nicht selbst beheben kann.

 

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Wanzen, Wanzen, Fragen

Sergey Dzyublik, 2019.05.23 13:52


Woher weiß ich, dass ich auf ihre Korrektur warten sollte?

(nicht behoben in MT5(build 2069))"Fehler mit der Log-Warteschlange im MT-Terminal, wenn die Anzahl der Nachrichten in der Warteschlange das Limit erreicht, wird der Speicher neu zugewiesen und neu kopiert, aber eine Nachricht 395. geht verloren".
#(behoben in MT5(build 2069))"Kompilierungsfehler bei Übergabe eines (void*)(NULL)-Parameters an eine Template-Funktion".
#(korrigiert in MT5(build 2059))"Strategy Tester: 2 Durchläufe geplant, aber in der Praxis unendliche Anzahl von Durchläufen > 900pcs aufgrund von "OnInit critical error" Fehler".
#(nicht behoben in MT5(build 2069))"Ungültiger Wert des Feldes array size im Standard-Zuweisungsoperator für Strukturen mit dynamischen Arrays".
#(nicht behoben in MT5(build 2069)) Der Compiler sieht den Standard-Klassenkopie-Konstruktor nicht, wenn ein Klassenobjekt als Wert aus einer Funktion zurückgegeben wird".
#(behoben in MT5(build 2059))"Der Compiler erkennt den Typ-Cast "an sich" für Musterklassen und "komplexe" Strukturen nicht".
(nicht behoben in MT5(build 2069))"Bei der Arbeit mit typedef wird bei der Verwendung einer Vorlagenfunktion mit expliziter Spezialisierung kein Code für diese Vorlagenfunktion erzeugt".
(nicht behoben in MT5(build 2069))"Kompilierungsfehler bei der Wiederverwendung derselben Funktionssignatur innerhalb von typedef".
(nicht behoben in MT5(build 2069))"Ein großer Teil der Funktionen für die String-Verarbeitung funktioniert nicht mit NULL-Zeichen in einem String (zum Beispiel: ShortArrayToString, StringInit, StringFill)".
#(nicht behoben in MT5(build 2069)) Die Funktion StringSetLength funktioniert nur, um die Stringlänge zu "trimmen", nicht um sie zu erhöhen.
(behoben in MT5(build 2057))"Strategy Tester: 750 "metatester64.exe" Prozesse laufen".
"Forum www.mql5.com, wenn eine Nachricht mit einem Bild bearbeitet wird, wird das vorherige Bild nicht durch das neue ersetzt".


Vorschläge:
# Erlaubt dem Benutzer, die Codegenerierung/Löschung für den Standard-Zuweisungsoperator (Kopierkonstruktor) zu erzwingen.
"Erlaubt ArrayCopy das Kopieren von Klassen und "komplexen" Strukturen, ähnlich wie Strukturen tiefe Kopierfunktionen für jeden Objekttyp bieten".
"Bereitstellung von Funktionen für den Benutzer zum Lesen/Setzen von Kapazitätswerten bei der Arbeit mit dynamischen Arrays".
# Änderungen zur Verbesserung der Infografik des Signaldienstes"

 
Diese Konstanten

Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien

Dienstleistungen. Arbeiten Sie schon?

fxsaber, 2019.06.07 06:37

#include <WinAPI\fileapi.mqh>
#include <WinAPI\handleapi.mqh>

#define  GENERIC_WRITE                    0x40000000
#define  CREATE_ALWAYS                    2
#define  FILE_ATTRIBUTE_NORMAL            0x00000080
#define  FILE_FLAG_OVERLAPPED             0x40000000

bool FileIsInvalid_WinAPI( const string FileName )
{
  const HANDLE hFile = CreateFileW(FileName, GENERIC_WRITE, 0, NULL, CREATE_ALWAYS, FILE_ATTRIBUTE_NORMAL | FILE_FLAG_OVERLAPPED, NULL);

Und viele andere werden in SB vermisst.

 

Noch einmal bitte ich Sie, Limit-Orders zu deaktivieren und Slippage im Tester auf benutzerdefinierten Symbolen auf echten Ticks zu nehmen.

Nun gehören alle, die im Strategy Tester durch echte Ticks fahren, bei denen Limit-Orders oder Take-Orders zum Einsatz kommen, einer von drei Kategorien an

  • Glauben Sie nicht, dass sie von den Prüfern betrogen werden.
  • Die Pseudo-Physiker.
  • fxsaber.

Eine große Bitte, diese Praxis zumindest bei benutzerdefinierten Symbolen einzustellen. Dies ist nicht nur notwendig, damit der Tester nicht lügt, sondern auch, um schneller arbeiten zu können.

Ну а как еще обратить внимание на эту проблему?

 

Die Funktion CopyTicks funktioniert nicht bei der Abfrage der Tick-Historie ab einem bestimmten Datum. Daher sollte entweder eine große Anzahl von Ticks angefordert werden, oder die erforderliche Tick-Historie kann mit dem Code nicht ermittelt werden.

Das MT5-Terminal hängt sich permanent auf, wenn der Festplattenspeicher bei großen Tick-Historienanfragen erschöpft ist. Ein Absturz des Terminals kann dazu führen, dass alle Kontoeinstellungen gelöscht werden.

 
Gelium:

Die Funktion CopyTicks funktioniert nicht bei der Abfrage der Tick-Historie ab einem bestimmten Datum. Daher sollte entweder eine große Anzahl von Ticks angefordert werden, oder die Tick-Historie kann mit dem Code nicht abgerufen werden.

Das MT5-Terminal hängt sich permanent auf, wenn bei großen Tick-History-Anfragen der Speicherplatz knapp wird. Ein Absturz des Terminals kann dazu führen, dass alle Kontoeinstellungen fehlschlagen.

Die Eingabe erfolgt in Millisekunden, nicht in Sekunden.

 
fxsaber:

In den Eingaben sind Millisekunden angegeben, nicht Sekunden.

Lesen Sie die Hilfe:

von

[in] Datum, ab dem Zecken angefordert werden. Angegeben in Millisekunden ab dem 01.01.1970. Wenn der Parameter from=0 ist, wird die letzte Anzahl von Ticks angegeben .

Als nächstes folgt ein einfacher Code-Test:

int tm_ms = 10000000;
int received=CopyTicks(_Symbol,tick_array,COPY_TICKS_ALL, tm_ms);

Diese Abfrage gibt bei jeder Änderung des Parameters tm_ms immer 2000 Ticks zurück. Soll das so sein, oder mache ich etwas falsch?

 
Gelium:

Lesen Sie die Hilfe:

von

[in] Datum, ab dem Zecken angefordert werden. Angegeben in Millisekunden ab dem 01.01.1970. Wenn from=0, wird die letzte Anzahl von Ticks angegeben .

Außerdem gibt es einen einfachen Code-Test:

int tm_ms = 10000000;
int received=CopyTicks(_Symbol,tick_array,COPY_TICKS_ALL, tm_ms);

Diese Abfrage gibt bei jeder Änderung des Parameters tm_ms immer 2000 Ticks zurück. Soll das so sein, oder mache ich etwas falsch?

long tm_ms = (long)D'2019.06.01' * 1000;
die korrekte Anzahl einstellen, so dass sie nicht 2000 beträgt.
 

fxsaber:

long tm_ms = (long)D'2019.06.01' * 1000;


Stellen Sie die richtige Anzahl ein, damit es nicht 2000 sind.

Danke, es funktioniert! Mein Fehler mit int. :)

 
Jede Kompilation ergibt einen anderen Wert in Warning
void OnStart()
{
  int i = 0;

  {
    int i = 0; // declaration of 'i' hides local declaration at line 482781488
  }
}