インディケータ: TradeStatisticsPanel - ページ 2

 
sergeev:

ahprの計算で、分母が0かどうかチェックされていません。

この行のことですか?
m_ahpr=m_ahpr/(limit-1);

上記の行にチェックがあります:

if(limit>1)
なぜsharp_ratioの計算では、Stdの計算ループの中で、HPRの最後の要素が使われないのですか?

不正確に気づいていただきありがとうございます!配列の 最後のインデックスはlimit-2ではなくlimit-1であるべきです。原文で修正します。

 
avoitenko:
このセリフのこと?

これです。


間違いに気づいてくれてありがとう。配列の 最後のインデックスはlimit-2ではなくlimit-1にすべきです。

まあ、僕が主な消費者なんだけどね(笑)。

 

書いて、書いて、間違いだらけだった。

今はこんな感じだろう:

   if(m_balance_data.At(i-1)!=0.0)
     {
      HPR[i-1]=m_balance_data.At(i)/m_balance_data.At(i-1);
      m_ahpr+=HPR[i-1];
     }
 

Нет. Вот эта: Расширенный анализ торгового счета 

HTMLで美しい拡張レポートを生成するには、強力かつフリーのJavaScriptライブラリが必要です。

上記で取り上げたもの(MQLab Graphic Report)は消滅してしまったようです。

あなた自身の亜種を提案してください。

インジケータとして表示させることができます。

これらのインジケータは何を表示し、どのように見えるべきでしょうか?
 
avoitenko:

HTMLで美しい拡張レポートを生成するには、強力かつフリーのJavaScriptライブラリが必要です。

上記で取り上げたもの(MQLab Graphic Report)は消滅してしまったようです。

あなた自身の変種を提案してください。

これらのインジケータは何を表示し、どのように見えるべきでしょうか?

チャートのサブウィンドウにインジケーターを表示し、取引インジケーターが時間とともにどのように変化したかを表示することができます。それは、Equity/Balanceの ようなインジケータを含む、インジケータの複合体となるでしょう。

例えば、下図のProfit Factor

//---

もしあなたのクラスが、計算のための取引数を示す取引統計に基づいて、テスト中にExpert Advisorですでに使用できる場合、インジケータの助けを借りて、テストの視覚化モードでこのすべてを視覚化することが可能になります。さらに、誰もが自分自身の方法を使用するでしょう。つまり、おそらくインジケーターを通してインジケーターの値を取得する方が、誰にとっても便利なのです。例えば、Profit Factor インジケーターのハンドルを取得し、そのインジケーターを取り、次に何をすべきかを決める。))

//---

MetaTrader 5 TesterのVisualise Strategyの 記事(最後のビデオ)で行われているように実装されたバリアントを見るのは非常に興味深いでしょう。しかし、そこでの実装方法は多かれ少なかれ明確です。例えば、ズーム、スクロール、時間スケール、インジケータ値などのコントロールを作成するなど、アイデアを拡張することができます。一般的には、興味深く有用な記事が出来上がるだろう。

おそらく、開発者はこの一部を取り上げて、標準レポートにするだろう。統計的な指標は、標準的な配信で作ることができる。

例えば、このように:

int  iProfitFactor(
   string symbol,        // シンボル名。指定がない場合は、一連の取引の合計に対して計算される
   int    count_deals,   // インディケータを計算するための取引数
);
このようなことで、MetaTrader 5は さらに際立つでしょう。)))
 

iProfitFactorの ような統計指標について。

第一に、例えば口座での取引が複数の商品で行われていた場合、誰がこれらの指標の値を必要とするのでしょうか?

そして、そのうちの一つの商品、例えばEURUSDの値を学ぶのです。

そうでなければ、後でこれらの指標をどのように要約するかが明確でないため、別々のペアではなく、口座全体の統計をカウントする方がよいでしょう。

第二に、count_deals パラメータとは何ですか?なぜ取引回数を設定するのですか?統計を計算する時間範囲を設定する方がよいのでは?

Equity/Balanceインジケータを 作成する 価値があることに同意します

 
avoitenko:

Equity/Balance インジケータを書く 価値があることに同意する

CTradeStatisticにEquity配列の作成を追加。

同様に、ProfitFactor_data などの配列も、prof_data 配列を埋める際に計算することは難しくない。

ここで重要なのは、時間によってソートされた取引が処理入力に供給されることである。

 
avoitenko:

iProfitFactorの ような統計指標について。

第一に、例えば口座での取引が複数の商品で行われていた場合、誰がこれらの指標の値を必要とするのでしょうか?

そして、そのうちの一つの商品、例えばEURUSDの値を学ぶのです。

そうでなければ、後でこれらの指標をどのように要約するかが明確でないため、別々のペアではなく、口座全体の統計をカウントする方が良いでしょう。

第二に、count_deals パラメータとは何ですか?なぜ取引回数を設定するのですか?統計を計算する時間範囲を設定する方がよいのでは?

Equity/Balanceインジケータを 書く 価値があることに同意します

前の記事のコメントを訂正しました。つまり、特定のシンボルで指定しない場合は、一連の取引の合計に対して計算されます。統計的指標は、シンボルごと、TSごとに分けて判断する必要があると思います。もちろん、1つのストラテジーで複数のシンボルやTFを条件に使うシステムには当てはまりません。投資家は、レポートとして一般的な指標を必要とします。しかし、このレポートが詳細であればあるほど、投資家はトレーダーを信頼する。取引システムを開発する人も、より柔軟で正確なツールを必要としている。

count_deals パラメーターについて。時間指定も可能です。オプションであればなおよい。

 
CTradeStatisticにEquity配列の作成を追加<br/ translate="no">.

エクイティの値は常に利用可能であるため、テスターにとっては関係ありません。

また、テスターではエクイティは分単位で計算されるべきではありません。

同様に、ProfitFactor_dataの配列。

繰り返しますが、Calculateを呼び出して結果を得るのであれば、なぜでしょうか?それとも中間値を表示する必要があるのでしょうか?

 
avoitenko:

...

それとも中間値を表示する必要がありますか?

はい、中間値が必要です。