記事"トレーディングにおけるOLAPの適用(その4)。テスターレポートの定量的・視覚的分析"についてのディスカッション - ページ 2

 

これだ。

ファイル:
 
Szabo Bence #:

これだ。

MQL5は時間の経過とともに、ビルドごとに変更されることがある。このような変更により、既存のソースとの互換性が失われることがあります。

エラーリストの最初の2つのエラーは、古いMT5ビルドに起因するものです(より新しいバージョンにアップデートする必要があります)。

TypeToBytesライブラリのエラーについては、これは私のライブラリではないことに注意してください。これは3rdパーティのものであり、他の3rdパーティの依存関係と同様に、対応する作者からのアップデートを確認する必要があります。

現在、最新版のTypeToBytesを添付している。

ファイル:
TypeToBytes.mqh  21 kb
 
Stanislav Korotky #:

MQL5は時間の経過とともに、ビルドごとに変更されることがあります。そのような変更により、既存のソースとの互換性が失われることもあります。

エラーリストの最初の2つのエラーは、MT5のビルドが古いことに起因しています(最新バージョンに更新する必要があります)。

TypeToBytesライブラリのエラーについては、これは私のライブラリではないことに注意してください。これは3rdパーティのものであり、他の3rdパーティの依存関係と同様に、対応する作者からのアップデートを確認する必要があります。

現在、最新版のTypeToBytesを添付している。

更新されたライブラリをありがとう。動作しています。

最初の2つのエラーはまだ出ますが。私は2981ビルド(最新)を持っています。

 
Szabo Bence #:

ライブラリーの更新ありがとう。うまくいっているよ。

最初の2つのエラーはまだ出ますが。私は2981ビルド(最新)を持っています。

はい、バグがあります。最新のベータ版(例えば3042, 3061)をインストールするか、対応する2行の(Selector<E> *)と(Filter<E> *)にキャストを追加してください。エラーの文言によると、コンパイラが誤ってconst modiferを無視しているようです。どうやらソースコードは正しいようだ。提案された変更は一時的な回避策に過ぎません。

 
Stanislav Korotky #:

はい、バグがあります。最新のベータ版(例えば3042, 3061)をインストールするか、対応する2行の(Selector<E> *)と(Filter<E> *)にキャストを追加してください。エラーの文言によると、コンパイラが誤ってconst modiferを無視しているようです。どうやらソースコードは正しいようだ。提案された変更は一時的な回避策に過ぎません。

わかりました。あなたの提案したコードの修正でうまくいきました。

ありがとう。

 

OLAPCommon.mqhファイルのソースを更新しました。また、TypeName.mqh - typenameの動作も変更されています。

PS.fxsaberのライブラリTesterCache.mqhも更新する必要があります。

ファイル:
OLAPCommon.mqh  47 kb
TypeName.mqh  2 kb
 

スタニスラフ、何が問題なのか教えてください。すべてのファイルを更新しました。しかし、コンパイラーはまだ 失敗しています。



これが正しい方法なのでしょうか?そうすればエラーは消えます:

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


 
Denis Kirichenko #:

スタニスラフ、何が問題なのか教えてください。すべてのファイルを更新しました。しかし、コンパイラーはまだ 失敗しています。

これが正しい方法なのでしょうか?そうすればエラーは消えます:

MQL5で何かが変更されたので、OLAPCommon.mqhと類推してOLAPTrades.mqhにパッチを当てる必要があります。

      _typename_ = TYPENAME(this);

修正したファイルを添付します。

ファイル:
OLAPTrades.mqh  15 kb
 
ありがとうございました!うまくいきました ))