Diskussion zum Artikel "Anwendung von OLAP im Handel (Teil 4): Quantitative und visuelle Analyse der Testberichte" - Seite 2

 

Hier ist sie.

Dateien:
 
Szabo Bence #:

Hier ist sie.

MQL5 kann sich im Laufe der Zeit ändern, von Build zu Build. Manchmal brechen solche Änderungen die Kompatibilität mit bestehenden Quellen.

Die ersten beiden Fehler in Ihrer Fehlerliste stammen von einem veralteten MT5-Build (Sie sollten auf eine neuere Version aktualisieren).

Was die Fehler in der TypeToBytes-Bibliothek betrifft, sollte ich anmerken, dass dies nicht meine Bibliothek ist. Es handelt sich um eine 3-Parteien-Bibliothek, und wie bei allen 3-Parteien-Abhängigkeiten sollten Sie die Updates von den entsprechenden Autoren überprüfen.

Derzeit füge ich die neueste Version von TypeToBytes.

Dateien:
TypeToBytes.mqh  21 kb
 
Stanislav Korotky #:

MQL5 kann sich im Laufe der Zeit, von Build zu Build, ändern. Manchmal brechen solche Änderungen die Kompatibilität mit bestehenden Quellen.

Die ersten beiden Fehler in Ihrer Fehlerliste stammen von einem veralteten MT5-Build (Sie sollten auf eine neuere Version aktualisieren).

Was die Fehler in der TypeToBytes-Bibliothek betrifft, sollte ich anmerken, dass dies nicht meine Bibliothek ist. Es handelt sich um eine 3-Parteien-Bibliothek, und wie bei allen 3-Parteien-Abhängigkeiten sollten Sie die Updates von den entsprechenden Autoren überprüfen.

Derzeit füge ich die neueste Version von TypeToBytes.

Vielen Dank für die aktualisierte Bibliothek. Sie funktioniert.

Allerdings treten die ersten beiden Fehler immer noch auf. Ich habe die 2981 build (neueste).

 
Szabo Bence #:

Vielen Dank für die aktualisierte Bibliothek. Es funktioniert.

Allerdings treten die ersten beiden Fehler immer noch auf. Ich habe die 2981 build (neueste).

Ja, da ist der Fehler drin. Installieren Sie die neueste Beta-Version (z.B. 3042, 3061) oder fügen Sie Casting zu (Selector<E> *) und (Filter<E> *) in den 2 entsprechenden Zeilen hinzu. Dem Fehlertext zufolge ignoriert der Compiler const modifer fälschlicherweise. Offensichtlich ist der Quellcode korrekt. Die vorgeschlagene Änderung ist nur ein vorübergehender Workaround.

 
Stanislav Korotky #:

Ja, es gibt einen Fehler darin. Installieren Sie die neueste Beta-Version (z.B. 3042, 3061) oder fügen Sie Casting zu (Selector<E> *) und (Filter<E> *) in den 2 entsprechenden Zeilen hinzu. Dem Fehlertext zufolge ignoriert der Compiler const modifer fälschlicherweise. Offensichtlich ist der Quellcode korrekt. Die vorgeschlagene Änderung ist nur ein vorübergehender Workaround.

Okay, ich verstehe. Mit der von Ihnen vorgeschlagenen Codeänderung funktioniert es.

Danke!

 

Ich veröffentliche den aktualisierten Quelltext der Datei OLAPCommon.mqh, die aufgrund von Änderungen im Compiler nicht mehr kompiliert werden kann. Benötige auch TypeName.mqh - das Verhalten von typename hat sich ebenfalls geändert.

PS. Die Bibliothek von fxsaber TesterCache.mqh muss ebenfalls aktualisiert werden.

Dateien:
OLAPCommon.mqh  47 kb
TypeName.mqh  2 kb
 

Stanislav, bitte sagen Sie mir, was das Problem sein könnte. Ich habe alle Dateien aktualisiert. Aber der Compiler schlägt immer noch fehl.



Vielleicht ist das der richtige Weg? Dann verschwindet der Fehler:

TypeSelector(): TradeSelector(FIELD_TYPE)
  {
// _typename = typename(this); // scheitert
   _typename(typename(this));   // OK
  }


 
Denis Kirichenko #:

Stanislav, bitte sagen Sie mir, was das Problem sein könnte. Ich habe alle Dateien aktualisiert. Aber der Compiler schlägt immer noch fehl.

Vielleicht ist das der richtige Weg? Dann verschwindet der Fehler:

In MQL5 hat sich etwas geändert, deshalb müssen Sie OLAPTrades.mqh analog zu OLAPCommon.mqh patchen (was bereits früher geschehen ist).

      _typename_ = TYPENAME(this);

Ich füge die korrigierte Datei bei.

Dateien:
OLAPTrades.mqh  15 kb
 
Ich danke Ihnen vielmals! Es hat funktioniert ))