Strategiester, Journal Automatische Ausgabe ausschalten

 

Hallo zusammen,


ich habe mir ein kleines Programm gebaut und lasse es im Strategiester laufen.

Leider bekomme ich beim Arbeiten mit der Klasse CTrade immer wieder Ausgaben, was gemacht wurde.

Diese automatisch generierten Ausgaben würde ich gerne abschalten und nur meine Druckausgaben ausgeben lassen.

Kann man das irgendwo deklarieren, dass die "Debug" Ausgaben nicht gemacht werden sollen?


gruß Mücke



beispiel:


1) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   position modified [#53790 buy 0.1 GER40 14975.8 sl: 14967.8]
2) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   CTrade::OrderSend: modify position #53790 GER40 (sl: 14967.8, tp: 0.0) [done]
3) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   ## 53790 > Neuer SL   14967.8      neuer ca. G&V => -0.8
4) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   position modified [#53790 buy 0.1 GER40 14975.8 sl: 14969.8]
5) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   CTrade::OrderSend: modify position #53790 GER40 (sl: 14969.8, tp: 0.0) [done]
6) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   ## 53790 > Neuer SL   14969.8      neuer ca. G&V => -0.6

Zeile 1, 2, 4 und 5 habe ich nicht oer Print ausgegeben, und würde die gerne Deaktiviren für meine Aktuellen Tests.

 
Muecke82:

Hallo zusammen,


ich habe mir ein kleines Programm gebaut und lasse es im Strategiester laufen.

Leider bekomme ich beim Arbeiten mit der Klasse CTrade immer wieder Ausgaben, was gemacht wurde.

Diese automatisch generierten Ausgaben würde ich gerne abschalten und nur meine Druckausgaben ausgeben lassen.

Kann man das irgendwo deklarieren, dass die "Debug" Ausgaben nicht gemacht werden sollen?


gruß Mücke



beispiel:


1) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   position modified [#53790 buy 0.1 GER40 14975.8 sl: 14967.8]
2) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   CTrade::OrderSend: modify position #53790 GER40 (sl: 14967.8, tp: 0.0) [done]
3) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   ## 53790 > Neuer SL   14967.8      neuer ca. G&V => -0.8
4) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   position modified [#53790 buy 0.1 GER40 14975.8 sl: 14969.8]
5) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   CTrade::OrderSend: modify position #53790 GER40 (sl: 14969.8, tp: 0.0) [done]
6) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   ## 53790 > Neuer SL   14969.8      neuer ca. G&V => -0.6

Zeile 1, 2, 4 und 5 habe ich nicht oer Print ausgegeben, und würde die gerne Deaktiviren für meine Aktuellen Tests.

 Soweit ich weiß, kann man das nicht deaktivieren. Ob man das im Programmkode deklarieren kann, noch keine Erfahrungen gemacht. Empfähle die Logs nach jedem Test zu löschen. Da sonst nach paar Wochen oder Monaten die Festplatte voll wird. 

 

Okay, schade, dass man das nicht deklarieren kann. Das wäre etwas übersichtlicher.

Gruß Mücke

 
Hmm, das sind normale TxT Dateien, eventuell kann ich meinen Ausdruck in eine separate Datei schreiben lassen, das muss ich mal sehen, ob und wie das geht. das wäre auch noch eine Alternative.
 
Ich habe ja keine Ahnung.  Aber dafür das ich mich in meinem Konto bei MT5 befinde und von einer dazu gehörenden Seite ein Produkt für den MT5 kaufe,  ist es mir vollkommen unverständlich wie es dann so ein Theater sein kann das zu implementieren... Innerhalb des MT5 dürfen das doch wirklich nur 3-4 Klicks sein... dann muss das funktionieren.. unglaublich 
 

Die logs des Experts werden (anders als die Journals) automatisch nach ein paar Tagen gelöscht.

Eigene Ausdruck muss man ja nicht in den Log drucken sondern gleich in  eine eigene Datei und zum leichten finden im Ordner Common: https://www.mql5.com/de/docs/files/fileopen

Dokumentation zu MQL5: Dateioperationen / FileOpen
Dokumentation zu MQL5: Dateioperationen / FileOpen
  • www.mql5.com
FileOpen - Dateioperationen - Nachschlagewerk MQL5 - Nachschlagewerk über die Sprache des algothitmischen/automatischen Handels für MetaTrader 5
 
Muecke82:

Hallo zusammen,


ich habe mir ein kleines Programm gebaut und lasse es im Strategiester laufen.

Leider bekomme ich beim Arbeiten mit der Klasse CTrade immer wieder Ausgaben, was gemacht wurde.

Diese automatisch generierten Ausgaben würde ich gerne abschalten und nur meine Druckausgaben ausgeben lassen.

Kann man das irgendwo deklarieren, dass die "Debug" Ausgaben nicht gemacht werden sollen?


gruß Mücke



beispiel:


1) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   position modified [#53790 buy 0.1 GER40 14975.8 sl: 14967.8]
2) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   CTrade::OrderSend: modify position #53790 GER40 (sl: 14967.8, tp: 0.0) [done]
3) 2023.11.06 12:24:41.046    2023.11.01 23:12:40   ## 53790 > Neuer SL   14967.8      neuer ca. G&V => -0.8
4) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   position modified [#53790 buy 0.1 GER40 14975.8 sl: 14969.8]
5) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   CTrade::OrderSend: modify position #53790 GER40 (sl: 14969.8, tp: 0.0) [done]
6) 2023.11.06 12:24:41.046    2023.11.01 23:13:40   ## 53790 > Neuer SL   14969.8      neuer ca. G&V => -0.6

Zeile 1, 2, 4 und 5 habe ich nicht oer Print ausgegeben, und würde die gerne Deaktiviren für meine Aktuellen Tests.

Igor Widiger #:

 Soweit ich weiß, kann man das nicht deaktivieren. Ob man das im Programmkode deklarieren kann, noch keine Erfahrungen gemacht. Empfähle die Logs nach jedem Test zu löschen. Da sonst nach paar Wochen oder Monaten die Festplatte voll wird. 

Doch doch, das kann man ändern.

Um das abzuschalten gibt es die Funktion

void              LogLevel(const ENUM_LOG_LEVELS log_level) { m_log_level=log_level; }

mit der Enumeration:

//+------------------------------------------------------------------+
//| enumerations                                                     |
//+------------------------------------------------------------------+
enum ENUM_LOG_LEVELS
  {
   LOG_LEVEL_NO    =0,
   LOG_LEVEL_ERRORS=1,
   LOG_LEVEL_ALL   =2
  };

Also einfach in der OnInit deklarieren:

trade.LogLevel(LOG_LEVEL_NO);    //oder LOG_LEVEL_ERROR, dann zeigt es nur Fehler.

Es lohnt sich wirklich, mal zu schauen, was in den Klassen drin ist.

Viel Spaß.

 
Tobias Johannes Zimmer #:
LOG_LEVEL_ALL

Hallo,

Tatsächlich. Nach beenden des Tests bleiben nur meine Prints!

Danke für den Tipp.

Gruß Igor

 
Igor Widiger #:

Hallo,

Tatsächlich. Nach beenden des Tests bleiben nur meine Prints!

Danke für den Tipp.

Gruß Igor

Gern geschehen