エラー、バグ、質問 - ページ 2291 1...228422852286228722882289229022912292229322942295229622972298...3185 新しいコメント fxsaber 2018.09.18 23:00 #22901 Alexey Navoykov:の場合、どのオブジェクトが上位か下位かをプログラム的に判断することはできません。 オブジェクトがテンプレートに格納される順序を調べてみるのもいいかもしれません。そこに収納されたものが後になればなるほど、他のものよりも高い位置にあると思うんです。 A100 2018.09.19 02:42 #22902 .ex5ライブラリは、ドキュメント- "Search for imported EX5 library in the following sequence: point 3 " にあるように、すべてのMetaTrader 5クライアントターミナルの共通ディレクトリ(CommonMQL5Libraries)にある場合は、読み込むことができません。 #import "Test.ex5" void f(); #import void OnStart() { f(); } 結果: ファイル 'Test.ex5' を開くことができません。 Test.ex5がCommonMQL5Librariesフォルダーにあるとき。 Slava 2018.09.19 06:37 #22903 fxsaber: オブジェクトがテンプレートに格納される順序を調べてみるのもいいかもしれません。そこに収納されたものが後になればなるほど、他のものよりも高い位置にあると思うんです。 あるオブジェクトを、保存されている順序に関係なく、他のすべてのオブジェクトの上に配置するには、まずすべてのタイムフレームでそのオブジェクトを非表示にし、次に再び表示させる必要があります Vladislav Andruschenko 2018.09.19 06:57 #22904 Tetyana Shcherba:書き込む場所が適切かどうかわかりませんが、EAのパフォーマンスを監視する役割を果たす私のシグナルに、現実とは全く関係のない警告が表示されました。 ""16日間で8割の利益を得た。これは信号の総寿命376日の4%にあたる。"" これはどうしたことか、私が何か勘違いしているのだろうか? 私も昨日気づきました。数式を直しているのでしょう。 fxsaber 2018.09.19 10:26 #22905 最適化中に INIT_PARAMETERS_INCORRECT を返したパスは、ログに次のようなエントリーがあります。 Core 3 pass 90 tested with error "incorrect input parameters" in 0:00:00.000 Core 3 pass 91 tested with error "incorrect input parameters" in 0:00:00.125 Core 3 pass 92 tested with error "incorrect input parameters" in 0:00:00.141 同時に、なぜか最適化結果に表示される スクリーンショットでは、利益順にソートされているのがわかりますが、不正解のパスはこのソートに屈しないようになっています。そのため、リストの下に移動すると、マイナスのパスではなく、不正なパスが表示されるのです。値ゼロは、本来、負のパスが存在しないことを示す。このGUIの動作に惑わされない限り、私はこれらの非常にネガティブなパスを見つけるためにスクロールしなければなりません。 以前は、OnInit と ExpertRemove の NULL は Optimization の結果に表示されませんでした。また、表示されていても、表の行は赤で表示されていた。この動作を復活させることは可能でしょうか? XMLエクスポート時に、テーブルの一部の行がIncorrect resultsであるという情報を渡しますか?私の理解が正しければ、この正誤フラグは、まだ開かれていないopt-formatに 格納されています。 OnTesterPassで取得できるようになるといいですね。 トレーディング、自動売買システム、ストラテジーテストに関するフォーラム エラー、バグ、質問 fxsaber さん 2018.09.13 06:16 Optimisationの最後に、テスターはこのようなものを渡します。Tester optimization finished, total passes 691200 (successful 673286 passes)Expertlは、最後まで到達したパスです。残りはExpertRemoveで中断されます。 TesterはAgentから受け取ったパスをどのフラグで分類していますか?OnTesterPassでこのフラグを読み取るにはどうすればよいですか? また、Optimizationチャートでは、Incorrect passを表示しないようにするのが良いと思います。 fxsaber 2018.09.19 10:47 #22906 トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム バグ、バグ、質問 fxsaber さん 2018.09.13 06:16 最適化終了後、テスターは次のように出力します。Tester optimization finished, total passes 691200 (successful 673286 passes)Expertlは、最後まで到達したパスです。残りはExpertRemoveで中断されます。テスターがサクセスドパスについて一言も言わないのは理解できない。 Tester optimization finished, total passes 1800ExpertRemoveの割り込みパスがありますが、最後の方の対応は上の引用文にあるように全くありません。 Alexey Navoykov 2018.09.19 11:29 #22907 Slava: あるオブジェクトを順序に関係なく他のすべてのオブジェクトの上に配置するには、まずすべてのタイムフレームでそのオブジェクトを非表示にし、その後再び表示させる必要があります これについては、すでに前のページで書きました。問題は、これをどうやってプログラムで決定するかということでした。 Slava 2018.09.19 13:43 #22908 Alexey Navoykov: これについては、すでに最後のページで書きました。では、それをプログラム的にどのように判断するのか、という疑問は別にありました。 いいえ A100 2018.09.19 15:48 #22909 コンパイルエラーtypedef void (*fn1)(); void f1() {} void g() { fn1 f = f1; //(1) нормально } /*...*/ typedef void (*fn2)(); void f2() {} void OnStart() { fn2 f = f2; //(2) Error: 'f2' - type mismatch }どんな違いがあるんだ!? fxsaber 2018.09.19 16:01 #22910 Slava: いいえ// В комментарии к чарту выводит текущую Z-глубину всех графических объектов чарта #define private public #include <fxsaber\Expert.mqh> // https://www.mql5.com/ru/code/19003 #undef private #define STRING_END "\r\n" #define OBJECT_NAME "name=" #define OBJECT_BEGIN ("<object>" + STRING_END) int GetZObjects( string &Names[], const long Chart_ID = 0 ) { const int Size = ArrayResize(Names, ObjectsTotal(Chart_ID)); string Template = EXPERT::TemplateToString(Chart_ID); for (int i = 0; i < Size; i++) { Template = EXPERT::StringBetween(Template, OBJECT_BEGIN); Names[i] = EXPERT::StringBetween(Template, OBJECT_NAME, STRING_END); } return(Size); } void OnChartEvent( const int id, const long&, const double&, const string& ) { if ((id == CHARTEVENT_OBJECT_CHANGE) || (id == CHARTEVENT_OBJECT_CLICK) || (id == CHARTEVENT_OBJECT_CREATE) || (id == CHARTEVENT_OBJECT_DELETE) || (id == CHARTEVENT_OBJECT_DRAG) || (id == CHARTEVENT_OBJECT_ENDEDIT)) { string ZObjects[]; string Str = NULL; for (int i = GetZObjects(ZObjects) - 1; i >= 0; i--) Str += (string)i + " Z: " + ZObjects[i] + "\n"; Comment(Str); } } 1...228422852286228722882289229022912292229322942295229622972298...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
の場合、どのオブジェクトが上位か下位かをプログラム的に判断することはできません。
.ex5ライブラリは、ドキュメント- "Search for imported EX5 library in the following sequence: point 3 " にあるように、すべてのMetaTrader 5クライアントターミナルの共通ディレクトリ(CommonMQL5Libraries)にある場合は、読み込むことができません。
結果: ファイル 'Test.ex5' を開くことができません。
Test.ex5がCommonMQL5Librariesフォルダーにあるとき。
オブジェクトがテンプレートに格納される順序を調べてみるのもいいかもしれません。そこに収納されたものが後になればなるほど、他のものよりも高い位置にあると思うんです。
書き込む場所が適切かどうかわかりませんが、EAのパフォーマンスを監視する役割を果たす私のシグナルに、現実とは全く関係のない警告が表示されました。
""16日間で8割の利益を得た。これは信号の総寿命376日の4%にあたる。""
これはどうしたことか、私が何か勘違いしているのだろうか?
最適化中に INIT_PARAMETERS_INCORRECT を返したパスは、ログに次のようなエントリーがあります。
同時に、なぜか最適化結果に表示される
スクリーンショットでは、利益順にソートされているのがわかりますが、不正解のパスはこのソートに屈しないようになっています。そのため、リストの下に移動すると、マイナスのパスではなく、不正なパスが表示されるのです。値ゼロは、本来、負のパスが存在しないことを示す。このGUIの動作に惑わされない限り、私はこれらの非常にネガティブなパスを見つけるためにスクロールしなければなりません。
以前は、OnInit と ExpertRemove の NULL は Optimization の結果に表示されませんでした。また、表示されていても、表の行は赤で表示されていた。この動作を復活させることは可能でしょうか?
XMLエクスポート時に、テーブルの一部の行がIncorrect resultsであるという情報を渡しますか?私の理解が正しければ、この正誤フラグは、まだ開かれていないopt-formatに 格納されています。
OnTesterPassで取得できるようになるといいですね。
トレーディング、自動売買システム、ストラテジーテストに関するフォーラム
エラー、バグ、質問
fxsaber さん 2018.09.13 06:16
Optimisationの最後に、テスターはこのようなものを渡します。Expertlは、最後まで到達したパスです。残りはExpertRemoveで中断されます。
TesterはAgentから受け取ったパスをどのフラグで分類していますか?OnTesterPassでこのフラグを読み取るにはどうすればよいですか?
また、Optimizationチャートでは、Incorrect passを表示しないようにするのが良いと思います。
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
バグ、バグ、質問
fxsaber さん 2018.09.13 06:16
最適化終了後、テスターは次のように出力します。Expertlは、最後まで到達したパスです。残りはExpertRemoveで中断されます。
テスターがサクセスドパスについて一言も言わないのは理解できない。
Tester optimization finished, total passes 1800ExpertRemoveの割り込みパスがありますが、最後の方の対応は上の引用文にあるように全くありません。
あるオブジェクトを順序に関係なく他のすべてのオブジェクトの上に配置するには、まずすべてのタイムフレームでそのオブジェクトを非表示にし、その後再び表示させる必要があります
これについては、すでに最後のページで書きました。では、それをプログラム的にどのように判断するのか、という疑問は別にありました。
どんな違いがあるんだ!?
いいえ