自動売買選手権2007:エキスパートにありがちなミス - ページ 7

 

8月末からほぼ毎日、「エキスパートが無事合格し、参加を認めました」というメールが自動送信されるようになりました。

1ヶ月間変更していない同じファイルを常に自動チェックすることの意味についてお聞きしたいのですが。特に、現在のバージョンのEAが正常にチェックされた場合、新しいバージョンのファイルがダウンロードされた場合のみ、サーバーがEAを再チェックすることはできないのでしょうか。

私は特に気にしていませんが、ただ、同じファイルを繰り返しチェックし、作者に通知が送られることの意味を理解したいのですが?

 
EAのテストが 始まる1週間前に、デモの結果からコードを少しいじろうと思ってEAを削除したら、(テスト開始時に)EAのテストに成功して受理されました-エラー-0など
質問があるのですが、削除したら何のEAをテストしていたのですか?
そして今、私はメッセージを受け取り続けています:

あなたのEAのチェックが完了しました。
-----------------------
2007.09.08 19:31 loading
invalid configuration
0 min 0 seconds
Errors: 1

Expert のコードをまだアップグレードしていませんが。ご注意ください。ありがとうございます。
 
Renat:
フォルバ
i.e.2回、指数のテストに無事合格し、登録されたとのメールが来たのですが...。そして3つ目には、コードにエラーがあると書かれています...なぜ私は専門家のコードを変更する必要がありますか?私は一度プロファイルにそれをアップロードしました。
結果から判断すると、Expert Advisorはマージンコールをキャッチしています。まだ何も言えません。明日の朝には次のチェックが完了し、結果を確認する予定です。

私のExpert Advisorはテスト結果を待つために最適化されています...私は、低品質のモデリングでより良い結果を得ました。 ... 90%で、Expert Advisorは本当にマージンコールを取得しましたが、それはMKで以前の2つの試みを逃すことができたのか理解することは困難です。
 
folver:
レナート
フォルバ
i.e.2回、指数のテストに無事合格し、登録されたとのメールが来たのですが...。そして3つ目には、コードにエラーがあると表示されます...なぜExpert Advisorのコードを変更しなければならないのでしょうか?
結果から判断すると、Expert Advisorはマージンコールをキャッチしています。まだ何も言えません。明日の朝には次のチェックが完了し、結果を確認する予定です。

私のExpert Advisorはテスト結果を待つために最適化されています...低品質のモデリングで良い結果が得られました。 ...90%でExpert Advisorは確かにマージンコールに引っかかりましたが、これまで必ず2回は赤字だったというのは理解し難いです。
どうやら、Expert Advisorは常に赤字のようです。しかし、数日前からマージンコールをエラーとして表示するようになったので(採算が取れないことが保証されているExpert Advisorを受け入れる必要があるのか)、最初の2つのテストは「エラーなし」でした。

今後は、生成されたログの量が多すぎる場合はエラーとみなします。標準テストの8ヶ月間に64メガバイト以上のログが生成された場合、Expert Advisorの参加は許可されません。現在、一部の専門家が数百メガバイトの無駄なログメッセージを生成しているため、この対策は余儀なくされています。Expert AdvisorのログをリアルタイムにChampionshipのサイトで公開している以上、このような膨大なログは絶対に許されない。昨年は、Expert Advisorが24時間以内に約30Gbytesのログを生成した参加者を失格としました。
 
solandr:

原理的には特に気にならないのですが、ただ、同じファイルを何度もチェックして作者に通知を送る意味があるのかが知りたいです?

ほぼ毎日、スクリプトの修正、新しいタイプの診断やエラー制御を追加しています。そのため、定期的にフルリチェックを実施しています。変更したEAのみ通常モードで再確認します。
 
Renat:

本日より、生成されたログの量が多すぎる場合はエラーとしてカウントされるようになりました。8ヶ月の標準テスト期間中に64メガバイト以上のログが発生した場合、専門家の参加は認められません。現在、一部の専門家が数百メガバイトの無駄なログメッセージを生成しているため、この対策は余儀なくされています。Expert AdvisorのログをリアルタイムにChampionshipのサイトで公開している以上、このような膨大なログは絶対に許されない。昨年は、Expert Advisorが24時間以内に約30Gbytesのログを生成した参加者を失格としました。
私のレポートでは、8ヶ月間のログが249MBとなっています。また、無駄なメッセージはなく、そこに表示されるのは、トレーリング中の修正ログと注文の開閉だけです。
無駄なメッセージ」の出力を無効にするオプションは、ターミナル(またはコード)にありますか?
そして、トレーリングストップを使うEAの多くは、この制限を受けると思います。もう一度、やり直し...。少なくとも1ヶ月前には言われていたかも?
 
abadan:
私のレポートでは、8ヶ月間のログは249Mbです。また、無駄なメッセージはなく、そこに表示されるのは、トレール時の修正ログと開閉注文のみです。
仮に修正時のメッセージが250バイト(これでも多い方です)かかるとします。
このように、Expert Advisorは8ヶ月間で100万 回以上注文を変更しています。
1日あたり6000 件以上、1時間あたり250 件以上の修正を行っていることになります。


これらはすべて「役に立つ」メッセージです
 
komposter:
アバダン
私のレポートでは、8ヶ月間のログは249Mbです。また、無駄なメッセージはなく、そこに表示されるのは、トレール時の修正ログと注文の開閉のみです。


仮に修正時のメッセージが250バイト(これでも多い方です)かかるとします。
このように、Expert Advisorは8ヶ月間で100万 回以上注文を変更しています。
1日あたり6000 件以上、1時間あたり250 件以上の修正を行っていることになります。


これらはすべて「役に立つ」メッセージです



すみません、EAを確認するときにちょうどメッセージが出たので、混乱しました。もちろん249MBではなく、249kBでした。自分でも怖くなりそうでした。
 

小さな質問ですが、テスト中にエラーがなく、エキスパート・アドバイザーが認められた場合、チャンピオンシップ中にエラーが発生した場合、エキスパート・アドバイザーは失格になるのでしょうか?

特にEA作成時に気づいたのですが、例えばトレイリングストップ条件などで正規化されていない値を比較すると、実際には価格が変化していないのにOrderModifyの シグナルが発生し、その結果EAが同じ値でOrderModify()を実行してしまい、エラー1が発生することがあります。

今まで気づかなかったのですが、例えばこのようなコードを使ったEAでは、前回の優勝時にはエラーが出なかったのに、今回はエラー1が出ます。

                  if(OrderStopLoss()<(Bid-TrailingPoints*Point)) {
                     OrderModify(.......);
そして、デバッグプリントは、ログに "1.97550000 < 1.97550000 "を与えた... 私はなぜかわからないが、この方法のこの状況のうち、例えば:
                  if( NormalizeDouble((Bid-TrailingPoints*Point)-OrderStopLoss(),nDigits)>0) {
                     OrderModify(.......);
とところで私はどこか良いアドバイスを見た、私は誰の(Roshの方法で)覚えていない、同様の比較操作は、値の差の正規化結果の比較として行う必要エラーとすること。誰かのエラー訂正に役立てば幸いです。
 
シンプルに行うことができます。
bool  modifyResult;                    
oldSL=OrderStopLoss();
newSL=Bid-TrailingStop*Point;
if (MathAbs(newSL-oldSL)>Point) 
{
modifyResult=OrderModify(OrderTicket(),OrderOpenPrice(),NewSL,OrderTakeProfit(),0,Yellow);
if (!modifyResult) Print("TrailingStop:Ошибка модифации ",GetLastError(),"  oldSL=",oldSL,"   newSL=",newSL);
}

旧値と新値が1ポイント以上異なる場合のみ、トレイルが発生します。