ライブラリ: Report - ページ 10

 
fxsaber:

しかし、あなたのバリアントでは、始値でのみ行われます。これがBestIntervalアプローチの結果であることは明らかです。しかし、一般的なケースでは、これはおそらくまったく正しくありません。

とはいえ、このライブラリは2.5人が使っていることを考えると、「正しい」ものにする意味はない。このタイプのフィルターを紹介しよう

実際にBestIntervalに使って いる。つまり、本格的なものとインターバルのあるもの、複数の仮想媒体を保持することはしない。1つを保持し、それを一度に出力でフィルタリングする。


おそらく、次のように設定する方が正しいだろう。

OrderTimeOnly <= this.EndInterval

23時59分59秒が最大です。

 
traveller00:

実際、私はこれをBestIntervalに使って いる。つまり、私は複数の仮想媒体を保持しない:1つは本格的なもの、もう1つはインターバルを持つもの。私は1つを保持し、一度に出力でそれをフィルタリング する、それが私が必要としたことです。

シンクロナイザーの汎用性が低いので、このオプションはあきらめた。


Report-filtersよりも良いのは、一般的な環境(Real/Virtual)から必要なトランザクションを使用して独自のVirtualを作成することです。そしてそれをフィルターなしでレポートに入力することができます。

      const int HistoryTotal = OrdersHistoryTotal();
      
      for (int i = 0; i < HistoryTotal; i++)      
        if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY) && this.BestInterval.IsTime(OrderOpenTime()))
        {
          const ORDER_BASE Order = VIRTUAL::GetOrder();
          
          _V(Handle, VIRTUAL::AddOrder(Order));
        }


ZЫ 私は取引ロジックを1つの24時間環境VirtualFullのみで実行しています。VirtualBestIntervalは常にVirtualFullから派生したものであり、取引ロジックから派生したものではありません。

 

ポジションの決済に要した時間の追加:決済注文から決済までの時間。場合によっては非常に必要な情報。

そして、それぞれの側のピップスでの合計スリップ - オープニングとクロージング。パリティの欠如は、それについて考える理由です。

 

MT5 の HTML レポートは生成に 115 秒かかり、221 MB を消費します。

MT5のHTMLレポートは、生成に5秒かかり、38 MBです。


レポートの情報内容はさらに異なります。

 

このライブラリや以前投稿した他のライブラリを基に、あらゆるエキスパート・アドバイザーのテスター・レポートを 作成した。

TesterReport - альтернативный отчет тестера стратегий Metatrader 5
TesterReport - альтернативный отчет тестера стратегий Metatrader 5
  • www.mql5.com
Торговые отчеты MetaTrader 5 довольно тяжелы для восприятия. По этой причине с определенного момента разработчики добавили в Терминал более понятный режим просмотра закрытых позиций. Однако, это не
 

fxsaberには、このライブラリーをはじめ、コミュニティへの多くの有益な貢献に感謝したい!

私はよくこのライブラリを使って、特定の シンボルや 日付範囲のカスタム・レポートを作成しています。

これまでできなかったことの1つは、ToChart()メソッドでレポート・フィルターを使用することです。フィルターはHTMLレポートを生成するToFile()関数では機能しますが、ToChart()では機能しません。

例えば

#include <MT4Orders.mqh>
#include <Report.mqh>

void OnStart()
{
   REPORT_FILTER Filter;
   Filter.StartTime = (TimeLocal()-2880);
   Filter.EndTime = TimeLocal();
   Filter.Magic = 0;
   REPORT::Calculate(Filter, true);   
   REPORT::ToChart(); //The equity chart is generated without filters
}

フィルタを受け付けるようにToChart()関数を修正しようとしましたが、残念ながら私のコーディング・スキルでは無理です!

作者の方、またはこのライブラリを使っている方のフィードバックをお待ちしています。

 
mqtrader #:

フィルタは、HTML レポートを生成する ToFile() 関数では機能しますが、ToChart() では機能しません。

REPORT::ToChart(REPORT_BALANCE, 0, 0, CURVE_NONE, NULL, false);
 

fxsaber #:

REPORT::ToChart(REPORT_BALANCE, 0, 0, CURVE_NONE, NULL, false);
そのため、私には空のバランスチャートが作成される。おそらく何か間違っているのだろう。ToChart()でフィルタを適用したチャートを生成することができません。REPORT_FILTERが計算に適用されるように、ToChart()を呼び出す前に何か宣言する必要があるのでしょうか?
 
mqtrader #:
そのため、私には空のバランスチャートが作成される。おそらく、私が何か間違ったことをしているのだろう。
Print(Filter.ToString());
 
fxsaber #:
Print(Filter.ToString());
うまくいったよ、ありがとう