pass 0 returned result 100000.000000in0:00:01.578
pass 1 returned result 100000.000000in0:00:00.759
pass 2 returned result 100000.000000in0:00:00.894
pass 3 returned result 100000.000000in0:00:00.769
pass 4 returned result 100000.000000in0:00:00.806
pass 5 returned result 100000.000000in0:00:00.772
pass 6 returned result 100000.000000in0:00:01.253
pass 7 returned result 100000.000000in0:00:01.200
pass 8 returned result 100000.000000in0:00:01.089
pass 9 returned result 100000.000000in0:00:00.780
pass 10 returned result 100000.000000in0:00:01.258
optimization finished, total passes 11
optimization done in0 minutes 11 seconds
shortest pass 0:00:00.759, longest pass 0:00:01.578, average pass 0:00:01.014
正規化しない場合。
pass 0 returned result 100000.000000in0:00:01.743
pass 1 returned result 100000.000000in0:00:00.844
pass 2 returned result 100000.000000in0:00:00.672
pass 3 returned result 100000.000000in0:00:00.817
pass 4 returned result 100000.000000in0:00:00.635
pass 5 returned result 100000.000000in0:00:00.604
pass 6 returned result 100000.000000in0:00:00.867
pass 7 returned result 100000.000000in0:00:00.611
pass 8 returned result 100000.000000in0:00:00.899
pass 9 returned result 100000.000000in0:00:00.649
pass 10 returned result 100000.000000in0:00:00.742
optimization finished, total passes 11
optimization done in0 minutes 09 seconds
shortest pass 0:00:00.604, longest pass 0:00:01.743, average pass 0:00:00.825
2269に更新しました。大規模な(非合成)EAのプロファイラ結果。
テスター
バーチャル
おそらく、プロファイラーが間違った計測をしているのでしょう。それ以外の場合、OrderSend 5は平均で912msかかることが判明しました。
同じアルゴリズムで正規化されたダブ ルは (NormalizeDouble などで) 直接比較することができる。
この明らかな事実により、多くの場合、実数比較のためのコストのかかる構成を避けることができる。一部のタスクでは、パフォーマンスを大幅に向上させることができます。
その代表的なものが「テスター」ではないでしょうか。例によって分析してみよう。
BuyLimitがあります。各ティックで、BuyLimitとAsk価格を比較する必要があります。現在、標準のテスターではこのような方法になっています。
つまり、どのような取引レベル(保留注文 またはSL/TP)でも、1つのNormalizationをトリガーします。
しかし、事前に(バックテスト前に)価格が正規化されていれば、非常に効果的な比較構成で常にやり過ごすことができます。
if (BuyLimit_Price >= Ask) BuyLimit -> Buy;
比較してみよう。このロボットをテスターでVirtualを通して動かしてみました。
正規化により価格を比較する。
正規化しない場合。
価格比較の際に正規化を行わない場合、20%以上の利得があることがわかる。
その結果、社内テスターを正規化価格に切り替え、価格比較の際に内部正規化を行わないようにすれば、大幅な性能向上が期待できる。
マットなしの直接配属後。 事業も
プリフィクスはもちろん、数値のバイト表現をそのままコピーする。
わかりやすくするために、1秒より長くテストをしたほうがいいのでしょうか?
1つのバージョンで、最短パス0:00:00.604、最長パス0:00:01.743と3回の広がりがありますが、何を比較するのでしょうか?
わかりやすくするために、1秒以上のテストをするとか?
1つのバージョンで、最短パス0:00:00.604、最長パス0:00:01.743と3回の広がりがありますが、何を比較するのでしょうか?
もちろん、最短を比較する。フィルター付きのティックでのレースには慣れているんだ。後日、無濾過のものを用意する予定です。
もちろん、最短を比較しています。
なぜ?最適化は1回で終わるものではありません。平均が大して変わらないのに、1パスがやたらと速いのはどういうことなのか。
フィルター付きのティックでのレースには慣れているんだ。後日、無濾過のものを用意する予定です。
もっと長いインターバルをすればいいんです。テストは30秒以上。
なぜ?最適化は1回で終わるようなものではありません。平均が大して変わらないのに、1パスがやたらと速いのはどういうことなのか。
このパラメータは最適化されています。
また、ロジックに影響を与えることはありません。だから、最短なんです。
このパラメータは最適化されています
また、ロジックに影響を与えることはありません。だから、最短なんです。
EAのロジックはどうなっているのでしょうか?テスターの速度を測定しているところです。
EAのロジックはどうしたんだ?テスターの速度を測定しているところです。
このように1つのエージェントが同じものを連続してカウントしていくのです。ランダム性をすべて取り除けば、正味の性能は最短に近くなる。