[アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. - ページ 135

 

質問がよくわからないのですが)平均的な変化を考える

 
eddy:

質問がよくわからないのですが)平均的な変化をカウントしています。

その場合、個々の小節の変化に関わらず、全小節をカウントすることが必須となる。

明日までお預け。朝の方がいいんですけどね...。

 

バーに変化がない場合は、カウントするものがないので、既存の変化の平均をカウントしている)

 
eddy:

一度も取引されたことのないバーをなぜ、つまり数値のシリーズに入れる必要が全くないのかが気になるところです。

を、取引しなかった月も含めて、利益を計算する。

この違いは、もしすべての小節に変化がないと考えるなら、コーディングの観点からの計算の本質は、ループ内での単純な足し算とループの繰り返し回数による割り算(非常にシンプルで単純かつ高速)であり、もし変化のない小節を考えるなら、変化がないことのチェックと変化があった小節数を 保存する変数をループ内に追加しなければならないことである。つまり、困難を好む開拓者のために(人口動態を改善するためにハンモックに立つ人のために・・・)。
 
KabrGvin:


そして、その状況からどのように抜け出したのでしょうか。
 
eddy:

ゼロは変化のない状態であり、ゼロに等しい変化ではありません。

私は、既存の既存変更の平均、すなわち、次のような変更を考慮します。

禁止する人もしない人もいないんだから、数学者の意見に従えばいいんだよ。ゼロは他と同じように変化し、同じように測定します。それを一本化するのがボランタリズムです。
 
granit77:
禁止する人もいないし、やることもないから、数学者の意見に従うよ。ゼロは他と同じように変化し、同じように測定します。それを一本化するのがボランタリズムです。
本当に課題次第で、議論の余地はない。もし、「過去5回のプラス 変化の平均値」を算出することが目的であれば、当然ながらゼロは取ってはいけない。過去5回の非負の 変化の平均値」の場合は、0を取る必要があります。それだけです。
 
私はなぜテスターがボットを最適化しないのかを持っている
 
todem:
私はなぜテスターがボットを最適化しないのかを持っている
答えは攻略テスターの ログにあり
 
if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;
   }

メタエディタの表示では - 0 (no) ですが、行の後に括弧を付けるとif(Hour()>=StartH && Hour()<=FinishH) { } - このような感じになります:

if (STATE==0)
   {
      bool cantrade=true;
      if(TimeHour(TimeCurrent())==LastTradeTime) cantrade=false;//запрещаем торговать пока не наступит новый час после последней 
                                                                //открытой сделки (чтобы избежать множественных открываний сделок на одном и том же часовом баре)     
      if (Hour()>=StartH && Hour()<=FinishH)  {
      if(OrdersTotalMagic(magic)>=active_trades) cantrade=false;// проверяем на допустимое количество открытых ордеров
      if (OrdCon(OP_BUY,magic)>=1 || OrdCon(OP_SELL,magic)>=1) SimpleTrailing();
      if(cantrade) // если не было ни одного запрета на открытие сделок, то переходим к ожиданию сигналов системы на открытие ордеров
         STATE=1;}
   }
トレードが開かず、動きません!どなたか原因をご存じないでしょうか?