エラー、バグ、質問 - ページ 1943

 
Anton Ohmat:

2問

1.MT5でMT4と同じようにストップ値を表示させる方法とても居心地が悪くなった。取引のための停止履歴も見ることができないので。注文時にしか別々に表示されないのですが、どうにかして確認できないでしょうか?

2.エージェントはテスト時にどのようなクォートを使用しますか - 私の端末またはシンボルによってダウンロードされた私自身のクォート?エージェントのテスト結果と自分のPCのテスト結果の違いに気づくことが多いので質問させていただきました

1.TakeProfit、StopLossの変更履歴がない。TakeProfitとStopLossの現在値は常に表示されています。TakeProfitとStopLossがどのように動いたか確認したい場合は、自分でやってみてください。POSITION_REASONDEAL_REASONORDER_REASON プロパティのありがたさ

ストラテジーテスターは、端末にログインしているトレードサーバーの取引履歴を使用します。


Anton Ohmat:
そして、質問です。テスト時にEAで何かを指定して、バックテストで一気に選択するような、例えばデフォルトで注文や取引の出力をするようなことは可能でしょうか?デバッグ中に1時間に100〜200回クリックしなければならないのは不便です。

いいえ、できません。

Anton Ohmat:

1回のテストではオブジェクトが全く画面に表示されず、可視化時のみオブジェクトが画面に表示される不具合があるようです。今日、端末が勝手にアップデートされた(((((( ;゚Д゚)))))

アップデートする前にもっとテストしてみてはいかがでしょうか。端末の不具合だと思うまで、2時間くらいかかった。


何かを「不具合」と呼ぶ前に、ドキュメント(テストの特徴 - アルゴリズム取引、取引ロボット)を読むべきです - すべてのセクションを読んでください。

AntonOhmat:

よくある問題です。1-2人のエージェントがハングアップして何もカウントしない場合。テスト全体がハングアップしてしまう、つまりテストにかかる時間とお金が損なわれてしまう、この問題にはもううんざりです(

この問題には本当にうんざりしています。例えば、あるエージェントが他の200~300のエージェントよりカウントが遅い場合、それを待たないか、完全に排除するなどの解決方法はないのでしょうか。テストは500~600回で失敗する。

この状況を打開する方法として、手動で電源を切っては入れ、ある減速剤まではすべてうまくいき、その後また同じことを繰り返すという方法があります。

あなたのコードで作業 - 99.9% - そのような "ポジションを開くためにお金がない "などのエラーの完全なログを持っています。

Anton Ohmat:

mt4と同じように、最適化 結果からドローダウンが大きい値をふるい落とす方法を教えてください。


Strategy Tester -> タブ "Optimization" -> 行タイトル "Drawdown, %" をダブルクリックすると、テスト結果をドローダウンの増加/減少で並べ替えることができます。

 
Anton Ohmat:

よくある問題です。1-2人のエージェントが電話を切り、何もカウントしない場合。その結果、テスト全体がハングアップし、それぞれテストにかかる時間とコストの損失となる(

この問題には本当にうんざりしています。例えば、あるエージェントが他の200~300のエージェントより遅くカウントした場合、それを待たないか、完全に排除する方法はないのでしょうか。500~600回の実行でテストがクラッシュする。

手動で電源をオフにしてからオンにすると、ラグが発生するまですべて動作し、その後またすべて動作するようになります。

OrderCheckが 成功した後、OrderSendを行うようにしてください。それでもダメなら、SRへ。

 

Expert Advisorは、高速な取引履歴を持つ1641の下でコンパイルされています。

最適化中にビルド1596のエージェントに到達すると、ヒストリーの動作が非常に遅くなり、そのため最適化が何度も遅くなることがあるのでしょうか?

 

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

ライブラリ: TesterBenchmark

fxsaber さん 2017.07.24 14:13

納品されたEAをテスターで実行し、次のようなパフォーマンスデータを得ました。

------
OnTesterInit
i = 0 Pass = 0 OnTester = 2.231 s.: Count = 3387955, 1518581.4 unit/sec, Agent = C:\Program Files\Alpari Limited MT5\Tester\Agent-127.0.0.1-3000 build = 1641
i = 1 Pass = 1 OnTester = 2.214 s.: Count = 3387955, 1530241.6 unit/sec, Agent = C:\Program Files\Alpari Limited MT5\Tester\Agent-127.0.0.1-3000 build = 1641
iMin = 1 Results[iMin] = 2.214 s.
iMax = 0 Results[iMax] = 2.231 s.
Amount = 2 Mean = 2.223 s. - 79.08%
OnTesterDeinit
------
Interval = 5.621 s., Count = 0, 0.0 unit/sec

では、同じEAをTrade.mqhを使って動かしてみましょう。

------
OnTesterInit
i = 0 Pass = 0 OnTester = 3.330 s.: Count = 3387955, 1017403.9 unit/sec, Agent = C:\Program Files\Alpari Limited MT5\Tester\Agent-127.0.0.1-3000 build = 1641
i = 1 Pass = 1 OnTester = 3.475 s.: Count = 3387955, 974951.1 unit/sec, Agent = C:\Program Files\Alpari Limited MT5\Tester\Agent-127.0.0.1-3000 build = 1641
iMin = 0 Results[iMin] = 3.330 s.
iMax = 1 Results[iMax] = 3.475 s.
Amount = 2 Mean = 3.402 s. - 89.73%
OnTesterDeinit
------
Interval = 7.584 s., Count = 0, 0.0 unit/sec

Trade SBは純粋なMQL5より1.5倍遅いことが判明!?

これが 原因だと思い、Trade.mqhで少し修正しました。

//+------------------------------------------------------------------+
//| Access functions PositionSelect(...)                             |
//+------------------------------------------------------------------+
bool CPositionInfo::Select(const string & symbol)
  {
   return(PositionSelect(symbol));
  }

しかし、SBバリアントの減速は消えていない。

SBの遅さの原因はどこにあるんだ?

 

トレーディング、自動売買システム、ストラテジーテストに関するフォーラム

ライブラリ: TesterBenchmark

fxsaber さん 2017.07.24 14:24

それがOptimisationモードでした。同じEAをシングルランモードで使用しています。

Core 1  2017.07.21 23:59:59   Interval = 5.140 s., Count = 3387955, 659135.2 unit/sec
Core 1  EURUSD,M1: 3387955 ticks, 52608 bars generated. Test passed in 0:00:05.164.

ローカルエージェントでのシングルランは、同じエージェントで最適化中に比べて2.3倍遅くなりました。


おそらくテスターの不調だと思いますので、OnTickのプロファイリングで最適化モードとシングルランモードでどのような結果が出るか(実行や他の取引環境の問題は結果に影響しません)見てみましょう。


最適化

------
OnTesterInit
i = 0 Pass = 0 OnTester = 2.910 s.: OnTick Profiler: Count = 3387955, Interval = 0.969 s., 3496753.0 unit/sec , Agent = C:\Program Files\Alpari Limited MT5\Tester\Agent-127.0.0.1-3000 build = 1641
i = 1 Pass = 1 OnTester = 2.862 s.: OnTick Profiler: Count = 3387955, Interval = 0.952 s., 3559797.1 unit/sec , Agent = C:\Program Files\Alpari Limited MT5\Tester\Agent-127.0.0.1-3000 build = 1641
iMin = 1 Results[iMin] = 2.862 s.
iMax = 0 Results[iMax] = 2.910 s.
Amount = 2 Mean = 2.886 s. - 78.06%
OnTesterDeinit
------
Interval = 7.394 s., Count = 0, 0.0 unit/sec


シングルパス

Core 1  2017.07.21 23:59:59   Interval = 6.149 s. (Profiler: Count = 3387955, Interval = 4.018 s., 843148.2 unit/sec)
Core 1  EURUSD,M1: 3387955 ticks, 52608 bars generated. Test passed in 0:00:06.162.


OnTick自体のネット実行は、Single RunモードではOptimizeモードに比べ4.2倍遅くなります。それも同じ地元のAgentで!

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

ライブラリ: TesterBenchmark

fxsaber さん 2017.07.24 14:33

MT4でも同じ状況です。シングルパス時にログが形成されたため、おそらく4でブレーキがかかったと思われる。

 

色を選択できるMT5インジケータをチャートに適用した後、リコンパイルすると、色は元に戻り、その他の設定は残ります。

なぜ色がリセットされるかというと、特にインジケーターがMTFで色がTFに紐付いている場合、非常に不便だからです。

 
あなたのコードで作業 - 99.9% - あなたは "ポジションを開くためにお金がない "のようなエラーの完全なログを持っています。

スローエージェントが何を返してくるか、座って待っていた。結局、INIT_PARAMETERS_INCORRECTというエラーが返ってきました(何も操作していません)。私の場合は、入力パラメータが適合していないことを示しています。ですから、100分の99の確率で、誰かが古いノートパソコンをシステムに接続しただけだと言えます。その分、発想が無意味になる。MQL5 Cloud USAで観測された


過去ログにある

MQL5 Cloud USAの遺伝的パス(0、206)のテストでは、0:00:00.359にエラー「不正な入力パラメータ」が発生(PR 142)。

 

開発者の方への質問(つまらなかったらごめんなさい)

遺伝的アルゴリズムでは 12000パスと言われているのに、エージェントは実際には9000パスしか実行していないのですが、理解できません。- あと3000件の結果はどうなるのでしょうか?

 
何かを「不具合」と呼ぶ前に、ドキュメント(Особенности тестирования - Алгоритмический трейдинг, торговые роботы)を勉強してください - 全セクションを読んでください。
Графические объекты при тестировании

Во время тестирования/оптимизации не осуществляется построение графических объектов. Таким образом, при обращении к свойствам созданного объекта во время тестирования/оптимизации эксперт получит нулевые значения.

Данное ограничение не распространяется на тестирование в визуальном режиме.
では、ロボットがストップをうまくかけたかどうかを、視覚化とは別にチャート上で確認するにはどうしたらいいのでしょうか?ビジュアライゼーションが遅い(
 
fxsaber:

Expert Advisorは、高速な取引履歴を持つ1641の下でコンパイルされています。

ビルド1596のエージェントで、ヒストリーの動作が非常に遅く、そのため最適化が何度も遅くなるということはありますか?

いいえ、クルーデスの古いエージェントにタスクが配布されることはありません。