プロフェッショナルの検討のために。 - ページ 2

 
Integer:

赤い線はドローダウンを示しており、最大値を見つける必要があります。

なぜ最大ドローダウンを求める必要があるのですか?それが何を物語るのか?
 
Andrei01:

テスターは株式の最大ドローダウンを正しく測定しますが、この瞬間のバランス状態を考慮しないため、意味がありません。

つまり、新規注文が上がってから100pips下がった場合、テスターは100pipsのドローダウンを表示しますが、ストラテジーリスクを論理的に決定する実際のドローダウンはゼロに等しいのです。 このような計算はストラテジーリスクを見積もる上で役に立たないことが明らかです。


アンドレイ01
また、なぜ最大ドローダウンを探すのか?それが何を物語るのか?
まあ、必要ないとか、何のためにあるのか理解できないなら、なぜ会話に参加して意見を押し付けるのか?
 
Andrei01:

テスターは最小・最大ドローダウンを正しく測定しますが、その瞬間のバランス状態を考慮していないため、この測定はナンセンスです。

つまり、オープンオーダーが100pips上昇し、その後下落した場合、テスターはストラテジーリスクを論理的に決定する実際のドローダウンがゼロに等しい一方で、100pipsのエクイティのドローダウンを表示することになります。このような計算が戦略リスクの推定に無意味であることは明らかである。

最小ドローダウンというパラメータは、どのレポートで見つけたのか、説明してください。出会っていません。自分にとってバランスは無価値だと思うので、自分のエクイティが良ければ、地面に落ちていても構わない)それとも、私が何か勘違いしているのでしょうか?いつも思うのですが、保留中の注文だけが 上下することがあります。私の勘違いだったのでしょうか?もっと早く知っていれば、気になる方向にSellやBuyのオーダーを上げたり下げたりし始めたのに......)。テスト運用で見つけたエクイティの最大下落は、実際の取引でも繰り返されると思うので、最大値からカウントするのが正しいと思います。

 
Integer:

一般に、最大ドローダウンは、最大資本と最小資本の差ではない。スタート時は、MaxEquity=Equity、MinEquity=Equity、Drawdown=0です。Equity>MaxEquityの場合、MaxEquity-MinEquityでドローダウンを計算し、得られた値が先に計算したドローダウンより大きい場合、大きい方の値を保存して最小値をリセット - MinEquity=MaxEquity、新しい最大値を保存 MaxEquity=Equityとします。
私が投稿したコードに手を加えていただけませんか?ありがとうございます。
 

私の場合は、こんな感じでした。

double MaxEq;
double MaxDD;

void DD_Init(){ // Вызываем из init
   MaxEq=AccountEquity();
   MaxDD=0;
}

void DD_Start(){ // Вызываем из start


   if(!IsTesting()){
      return;
   }      
   if(AccountEquity()>MaxEq){
      MaxEq=AccountEquity();
   }
   else{
      MaxDD=MathMax(MaxEq,MaxEq-AccountEquity());
   }
}
void DD_Deinit(){ // Вызываем из deinit

      if(!IsTesting()){
         return;
   }      
   Print("Просадка: "+DoubleToStr(MaxDD,2));
}
 
khorosh:
私が投稿したコードに手を加えていただけませんか?ありがとうございます。


あまり深く考えなかったのですが、一見すると、新しい最大値で最小値がリセットされるのは問題なさそうです...。
 
Andrei01:
なぜ、最大ドローダウンを求めるのか?それが何を物語るのか?


最も不幸な状況(緑の線で示された瞬間にEAが開始される)になった場合に、保証金が十分かどうかを示します。

 
Integer:

あまり突っ込まなかったのですが、一見すると、新しい最大値で最小値がリセットされるのは問題なさそうですが...。
まあ、OnGoingでなければ、私のコードで計算した結果とテスターでの結果が一致したので、何の疑いもないのですが。
 

写真はこちらhttps://www.mql5.com/ru/forum/136747/page696

Advisorがある時間に1つの取引だけを開き(そして閉じない)、テスターで最大ドローダウンを確認する - ビジュアルモードでテストする。

1. 2月3日の終わりまでない(それ以前はプレスストップ)

2. 2月3日(金)までに

ファイル:
 
serferrer:

写真はこちらhttps://www.mql5.com/ru/forum/136747/page698

Advisorがある時間に1つの取引だけを開き(そして閉じない)、テスターで最大ドローダウンを確認する - ビジュアルモードでテストする。

1. 2月3日の終わりまでない(それ以前はプレスストップ)

2. 2月3日(金)までに

あなたの投稿の目的は、ドローダウンを正しく計算する方法を示すことですか、それともテスターがドローダウンを間違って計算することを示すことですか?詳しい回答をお願いします。饒舌にならずに、ここにいる全員がプロではないのですから。ご指摘ありがとうございます。あなたのコードが実際のEAに含まれている場合、1つまたは複数のオープントレードのドローダウンを、これらのトレードを開いた瞬間から閉じるまで決定しますが、EAが動作している全体の時間の最大ドローダウンを検索することはないように私には思えるだけです。それとも私が勘違いしていたのでしょうか?私のコードを批判できますか?最大ドローダウンを求めるというタスクが正しく実行されているか?