エラー、バグ、質問 - ページ 2672 1...266526662667266826692670267126722673267426752676267726782679...3185 新しいコメント Igor Makanu 2020.03.12 20:36 #26711 fxsaber: optファイルにはデータしか入っていません。フォーマットが用意されています。 私はファイルから読みたくない、私はすでに私が欲しかったものをやった - ユニークなファイル名 - 入力パラメータのMD5、このような。 string getMD5(const SSaveStruct &inpstr) { const uchar key[1]= {0}; uchar data[],md5[]; StructToCharArray(inpstr,data); CryptEncode(CRYPT_HASH_MD5, data, key, md5); string result = ""; for(int i = 0; i < ArraySize(md5); i++) result += StringFormat("%02x", md5[i]); return(result); } void SaveInputParam() { SSaveStruct savestruct; FillSaveStruct(savestruct); string fname = "EA_TST//" + getMD5(savestruct) + ".bin"; int handle = FileOpen(fname,FILE_WRITE|FILE_COMMON|FILE_BIN); FileWriteStruct(handle,savestruct); } double OnTester() { if(!IS_OPTIMIZATION) { SSaveStruct savestruct; FillSaveStruct(savestruct); Print("fname = " + getMD5(savestruct)); return(AccountInfoDouble(ACCOUNT_BALANCE)); } #define BADTEST() { srand((int)TimeCurrent()); return (-(rand() % 1000)); } if(EA_STOP || TesterStatistics(STAT_TRADES) < EA_MIN_TRADEES) BADTEST(); SaveInputParam(); return(AccountInfoDouble(ACCOUNT_BALANCE)); #undef BADTEST } ファイルが書き込まれ、1パスでファイル名:fname = 04a19580d36f0a749143211b57efbebc が表示されます。 のコードは少し繰り返しになりますが、テストが失敗した場合に入力パラメータでオプティマイザ構造体を埋めないようにするためです......。でも、多分書き直すと思います。いい加減なコードなので、なぜそのようにしたのか理解できないでしょう ))) Slava 2020.03.13 06:08 #26712 Igor Makanu: は、テスターエージェントからパス番号を取得することは可能でしょうか? HH: または、ファイル名のためにテスト中の各パスから一意の識別子が必要 - 私はテスト中に興味のあるEAの設定をファイルに保存したいのですが、設定でファイル名を形成するために何かユニークなものが必要です。 パスナンバーは1024ビットとすることができます。 その行にはすでにパラメータが設定されているのに、なぜパスナンバーが必要なのでしょうか? Slava 2020.03.13 06:10 #26713 Igor Makanu: 私はファイルからテスターから読みたくない、私はすでに私が欲しかったものをやったと思う - ユニークなファイル名 - MD5入力パラメータは、このことについて。 ファイルが書き込まれ、1パスでファイル名:fname = 04a19580d36f0a749143211b57efbebc が表示されます。 のコードは少し繰り返しになりますが、テストが失敗した場合に入力パラメータでオプティマイザ構造体を埋めないようにするためです......。でも、多分書き直すと思います。いい加減なコードなので、なぜそのようにしたのか理解できないでしょう ))) 入力パラメータのMD5はすでに計算されており、optファイルのパスレコードにあります。 Igor Makanu 2020.03.13 08:46 #26714 Slava: この行にすでにパラメータが設定されているのに、なぜパスナンバーが必要なのでしょうか? EA起動時に、.setの代わりに.binファイルを自動的にロードし、オプティマイザが成功したパスを直ちにEA設定ファイルにリセットしたい。 スラバ 入力パラメータのMD5はすでに計算されており、optファイルのパスレコードにあります。 最適化のスピードのために3ヶ月近く格闘し、達成できたと思うので、逆に質問です。 の方が速い。 1.オプティマイザからMD5でopt-fileを読み込む? 2.または、私のMD5コードで計算する 特に、すべての入力パラメータを構造体の配列としてコード内部で使用するため、計算が速くなるのではないかと思います(約40個のパラメータを最適化します)。 Slava 2020.03.13 09:16 #26715 Igor Makanu: EA起動時に、.setの代わりに.binファイルを自動的にロードし、オプティマイザが成功したパスをすぐにEA設定ファイルにリセットしたい。 最適化のスピードのために3ヶ月近く格闘し、達成できたと思うので、逆に質問です。 の方が速い。 1.オプティマイザからMD5でopt-fileを読み込む? 2.または、私のMD5コードで計算する 特に、すべての入力パラメータを構造体の配列としてコード内部で使用するため、計算が速くなるのではないかと思います(約40個のパラメータを最適化します)。 MD5の方が計算が速い。 今後opt-fileを使用しない場合は、MD5を計算します。 もし使うのであれば、すでに計算済みのMD5を使う方が良いでしょう。あなたの計算は私たちの計算と一致しないかもしれません(おそらく一致しないでしょう)。 Igor Makanu 2020.03.13 09:53 #26716 Slava: MD5の方が読み取りが早い。 optファイルを今後使用するつもりがない場合は、MD5を読んでください。 もし使用するのであれば、すでに計算されているMD5を使用する方が良いでしょう。あなたの計算は私たちの計算と一致しないかもしれません(ほとんどの場合一致しないでしょう)。 ありがとうございました。 オプトファイルは使用しない SZS: 数週間前、私はテスターから MathSrand() を初期化することを探していました。https://www.mql5.com/ru/forum/1111/page2657#comment_15165819 テスターエージェントで MD5 (ウェルまたは文字列) を含む uchar[] を取得するのは悪くないでしょう。これはユニークな値なので、MathSrand() を初期化して、ユニークなファイル名が欲しい場合は、TesterStatistics() で MD5 を与えてください。 Ilyas 2020.03.13 12:33 #26717 Sergey Dzyublik: MT5(build2323)で、B<void*>クラスのオブジェクトの後に同じテンプレートオブジェクトB<int>を作成できるが、その前に作成するとコンパイルエラーに なるバグ。 おそらく、テンプレートクラス生成キャッシュの働きが原因だと思われます。 投稿ありがとうございます、修正しました Aliaksandr Hryshyn 2020.03.13 13:37 #26718 マクロはどのように使うのですか? ホラーです。コンパイル時のエラーです。 小さな文字。 void OnStart() { #define m 1000; ulong n_yes=3*m; //Тут всё хорошо ulong n_no=(3*m); //Тут ошибка: ';' - unexpected token test2.mq5 27 18 } 現時点での最新版であるBuild 2361。 Igor Makanu 2020.03.13 13:42 #26719 Aliaksandr Hryshyn: マクロはどのように使うのですか? というのが、私たちの使い方です。#define m 1000; Aliaksandr Hryshyn 2020.03.13 13:48 #26720 Igor Makanu: これが私たちの使い方です そこで違うのは、括弧の有無です。 1...266526662667266826692670267126722673267426752676267726782679...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
optファイルにはデータしか入っていません。フォーマットが用意されています。
私はファイルから読みたくない、私はすでに私が欲しかったものをやった - ユニークなファイル名 - 入力パラメータのMD5、このような。
ファイルが書き込まれ、1パスでファイル名:fname = 04a19580d36f0a749143211b57efbebc が表示されます。
は、テスターエージェントからパス番号を取得することは可能でしょうか?
HH: または、ファイル名のためにテスト中の各パスから一意の識別子が必要 - 私はテスト中に興味のあるEAの設定をファイルに保存したいのですが、設定でファイル名を形成するために何かユニークなものが必要です。
パスナンバーは1024ビットとすることができます。
その行にはすでにパラメータが設定されているのに、なぜパスナンバーが必要なのでしょうか?
私はファイルからテスターから読みたくない、私はすでに私が欲しかったものをやったと思う - ユニークなファイル名 - MD5入力パラメータは、このことについて。
ファイルが書き込まれ、1パスでファイル名:fname = 04a19580d36f0a749143211b57efbebc が表示されます。
入力パラメータのMD5はすでに計算されており、optファイルのパスレコードにあります。
この行にすでにパラメータが設定されているのに、なぜパスナンバーが必要なのでしょうか?
EA起動時に、.setの代わりに.binファイルを自動的にロードし、オプティマイザが成功したパスを直ちにEA設定ファイルにリセットしたい。
入力パラメータのMD5はすでに計算されており、optファイルのパスレコードにあります。
最適化のスピードのために3ヶ月近く格闘し、達成できたと思うので、逆に質問です。
の方が速い。
1.オプティマイザからMD5でopt-fileを読み込む?
2.または、私のMD5コードで計算する
特に、すべての入力パラメータを構造体の配列としてコード内部で使用するため、計算が速くなるのではないかと思います(約40個のパラメータを最適化します)。
EA起動時に、.setの代わりに.binファイルを自動的にロードし、オプティマイザが成功したパスをすぐにEA設定ファイルにリセットしたい。
最適化のスピードのために3ヶ月近く格闘し、達成できたと思うので、逆に質問です。
の方が速い。
1.オプティマイザからMD5でopt-fileを読み込む?
2.または、私のMD5コードで計算する
特に、すべての入力パラメータを構造体の配列としてコード内部で使用するため、計算が速くなるのではないかと思います(約40個のパラメータを最適化します)。
MD5の方が計算が速い。
今後opt-fileを使用しない場合は、MD5を計算します。
もし使うのであれば、すでに計算済みのMD5を使う方が良いでしょう。あなたの計算は私たちの計算と一致しないかもしれません(おそらく一致しないでしょう)。
MD5の方が読み取りが早い。
optファイルを今後使用するつもりがない場合は、MD5を読んでください。
もし使用するのであれば、すでに計算されているMD5を使用する方が良いでしょう。あなたの計算は私たちの計算と一致しないかもしれません(ほとんどの場合一致しないでしょう)。
ありがとうございました。
オプトファイルは使用しない
SZS: 数週間前、私はテスターから MathSrand() を初期化することを探していました。https://www.mql5.com/ru/forum/1111/page2657#comment_15165819
テスターエージェントで MD5 (ウェルまたは文字列) を含む uchar[] を取得するのは悪くないでしょう。これはユニークな値なので、MathSrand() を初期化して、ユニークなファイル名が欲しい場合は、TesterStatistics() で MD5 を与えてください。
MT5(build2323)で、B<void*>クラスのオブジェクトの後に同じテンプレートオブジェクトB<int>を作成できるが、その前に作成するとコンパイルエラーに なるバグ。
おそらく、テンプレートクラス生成キャッシュの働きが原因だと思われます。
投稿ありがとうございます、修正しました
マクロはどのように使うのですか?
ホラーです。コンパイル時のエラーです。
小さな文字。
現時点での最新版であるBuild 2361。マクロはどのように使うのですか?
これが私たちの使い方です
そこで違うのは、括弧の有無です。