Fehler, Irrtümer, Fragen - Seite 181

 
gdtt:
Damit der Tester die Dateien sehen kann, müssen sie in den Agent-Ordner gelegt werden. Mein Ordner ist: D:\metatrader5\tester\Agent-127.0.0.1-3000\MQL5\Libraries

Danke für den Tipp!!!

Es klappt!

Jetzt kann ich die externen Indikatoren nicht mehr sehen, vielleicht sollten sie auch an eine andere Stelle verschoben werden?

 

Bauen Sie 350. Das Testen funktioniert nicht mehr: Aktualisieren des Verlaufs und Trennen der Verbindung, die Registerkarte "Agent" beschäftigt die CPU. Die Registerkarten "Grafik" und " Testergebnisse" werden nicht angezeigt.

 
gisip:

Danke für den Tipp!!!

Es klappt alles!

Jetzt kann ich die externen Indikatoren nicht mehr sehen, vielleicht müssen sie auch an einen anderen Ort verlegt werden?

Haben Sie versucht, alle diese Dateien in den Programmeigenschaften anzugeben(https://www.mql5.com/ru/docs/basis/preprosessor/compilation)?

Wenn dies nicht hilft, senden Sie bitte Ihre Anfrage mit allen Dateien und Anweisungen an den Service Desk. Wir werden es in Ordnung bringen.

Документация по MQL5: Основы языка / Препроцессор / Свойства программ (#property)
Документация по MQL5: Основы языка / Препроцессор / Свойства программ (#property)
  • www.mql5.com
Основы языка / Препроцессор / Свойства программ (#property) - Документация по MQL5
 
Ashes:

Bauen Sie 350. Das Testen funktioniert nicht mehr: Aktualisieren des Verlaufs und Trennen der Verbindung, die Registerkarte "Agent" beschäftigt die CPU. Die Registerkarten "Grafik" und "Testergebnisse" werden nicht angezeigt.

Testen Sie einen der Standard-Expertenberater, die mit dem Terminal geliefert werden.
 

Um zusätzliche Dateien und Indikatoren zu verwalten, gibt es spezielle Eigenschaften für den Tester:

tester_indikator

String

Name des benutzerdefinierten Indikators im Format "indicator_name.ex5" .Die für die Prüfung erforderlichen Indikatoren werden automatisch beim Aufruf der Funktion iCustom() ermittelt, wenn der entsprechende Parameter als konstanter String angegeben wird. Für andere Fälle (Verwendung der Funktion IndicatorCreate() oder Verwendung eines nicht konstanten Strings im Parameter, der den Indikatornamen definiert) benötigen wir diese Eigenschaft

tester_datei

String

Dateiname für das Prüfgerät mit Angabe der Erweiterung, eingeschlossen in doppelten Anführungszeichen (als konstante Zeichenfolge). Die angegebene Datei wird zur Bearbeitung an das Prüfgerät weitergeleitet. Eingabedateien für Tests müssen, falls erforderlich, immer angegeben werden

tester_library

String

Bibliotheksname mit Erweiterung, eingeschlossen in doppelten Anführungszeichen. Eine Bibliothek kann sowohl eine dll-Erweiterung als auch eine ex5-Erweiterung haben. Die zum Testen benötigten Bibliotheken werden automatisch erkannt. Wird jedoch eine Bibliothek vom Benutzerindikator verwendet, muss diese Eigenschaft verwendet werden

 
Interesting:
Versuchen Sie, den standardmäßigen Expert Advisor zu testen, der mit dem Terminal geliefert wird.

Das Ergebnis ist das gleiche...

Ich habe nicht neu kompiliert, vielleicht ist das das Problem... Ich bin überrascht, dass nichts im Logbuch steht.

PS: Die Neukompilierung hat nicht geholfen. Ein Neustart von mt5 (nur für den Fall, obwohl ich es nach dem Upgrade neu gestartet habe) hat auch nicht geholfen...

 
alexvd:

Haben Sie versucht, alle diese Dateien in den Eigenschaften der Software anzugeben(https://www.mql5.com/ru/docs/basis/preprosessor/compilation)?

Wenn dies nicht hilft, schreiben Sie bitte eine Anfrage an den Service Desk mit allen Dateien und einer Beschreibung der Maßnahmen. Wir werden es in Ordnung bringen.

Vielen Dank! nach der Auflistung #property tester_indicator ... Alles hat funktioniert!


Können Sie mir sagen, nach dem Testen und vor der Ausführung in Echtzeit alle #property tester_... auskommentiert werden müssen?

 

Bauen Sie 350. Der Berater versucht, auf dem Konto des Anlegers (mit dem Passwort des Anlegers) zu handeln. Früher schien das nicht zu passieren...

 
gisip:

Können Sie mir sagen, ob nach dem Testen und vor der Ausführung in Echtzeit, alle #property tester_... auskommentiert werden müssen?


Warum?

 
alexvd:

Haben Sie versucht, alle diese Dateien in den Eigenschaften der Software anzugeben(https://www.mql5.com/ru/docs/basis/preprosessor/compilation)?

Wenn dies nicht hilft, schreiben Sie bitte eine Anfrage an den Service Desk mit allen Dateien und einer Beschreibung der Maßnahmen. Wir werden es in Ordnung bringen.

Ich habe nicht mit dll gearbeitet, kann also nichts dazu sagen, aber mit Datendateien muss ich genau das tun, nämlich den Ordner für Agentendateien:

werden die Dateien wie folgt aufgerufen:

bool CW1Forecast::LoadDataFromFile( string symbolonly ){
  //
  //symbol = symbolonly;
  string filename = "wcandleprogn.csv";
  handle = FileOpen(filename, FILE_READ|FILE_ANSI);
  if( handle < 1 ){
    Print( "Ошибка открытия файла ", filename, " ошибка: " , ErrorDescription( GetLastError() )   );
    return(false); 
  }
  bool foundsymbol = false; bool flagexit = false;
  int cnt =0;
  //GetString( handle, res ); // получить строку заголовка dateyymmdd,month,year,valink
  W1ForecastRecord res;
  while( !FileIsEnding(handle) && !flagexit  ){  //по строкам файла
    
    GetString( handle, res ); // получить строку
    if( res.symbol == symbolonly ){
      sizedata++;
      ArrayResize( data, sizedata );
      data[sizedata-1].copyvar( res );
      foundsymbol = true;
    }
  }
  FileClose(  handle );
  return( true );
}

Es ist sehr umständlich, Daten auf diese Weise zu erhalten, da die Dateien manuell in den Ordner "Agent Files" kopiert werden müssen, und sie werden von Skripten generiert, natürlich im Ordner D:\metatrader5\MQL5\Files. Vielleicht habe ich etwas übersehen, und der Zugriff auf den Ordner \MQL5\Files ist vom Tester aus möglich?

Ich habe die Hilfe durchgesehen:

tester_datei

String

Dateiname für das Prüfgerät mit Angabe der Erweiterung, eingeschlossen in doppelten Anführungszeichen (als konstante Zeichenfolge). Die angegebene Datei wird dem Prüfer zur Bearbeitung übergeben. Eingabedateien für Tests, falls erforderlich, sollten immer angegeben werden

Ist es das, was ich brauche?