エラー、バグ、質問 - ページ 2221 1...221422152216221722182219222022212222222322242225222622272228...3185 新しいコメント SEM 2018.06.26 09:24 #22201 合成工具です。分単位のバーをインポート すると、各分単位のバーが1ポイント(5桁)ずつ異なる。 シンボルのあるウィンドウを閉じてから、このウィンドウを再び開き、前回のロードから分単位のバーを要求すると、次のような結果が得られます。 記号は全日程共通です。エラーは何ですか? Koldun Zloy 2018.06.26 15:53 #22202 elibrarius:Alglibパッケージのコードに目を通す。こういう構文がいっぱいあって、コードを読み にくくしているんです。こっちの方がシンプルでしょう?実行速度がさらに上がるような気がします。 なぜ、あんなに複雑なコードにしたのでしょうか?それとも、他の言語から何も手を加えずに移植したのでしょうか?しかし、やはり原文ではなぜそんなこじつけをしたのだろうか?これは、スピードアップのために、オリジナルのコードで正確に行われた可能性が高いです。 MQLで速くなるかどうかは測定する必要があり、ここでは「らしい」は通用しない。 Nikolai Semko 2018.06.26 16:10 #22203 Koldun Zloy:これは、加速のためにオリジナルで行っている可能性が 高いです。 MQLで速くなるかどうかは測定する必要があり、ここでは「らしい」は通用しない。"Most likely "も通用しない。 このような形が、どうして速く機能するのでしょうか?何を言っているんだ!? 2つの余分なループと、1つの変数の代わりに余分な配列があります。 Koldun Zloy 2018.06.27 02:16 #22204 Nikolai Semko: 2つの余分なループと、1つの変数の代わりに余分な配列があります。このような原始的な推論は、現代のプロセッサーには適さない。 Nikolai Semko 2018.06.27 05:58 #22205 Koldun Zloy:このような原始的な推論は、現代のプロセッサーには適さない。よくご存じですね。もっと経験を 積んで... Nikolai Semko 2018.06.27 08:40 #22206 Koldun Zloy:このような原始的な推論は、現代のプロセッサーには適さない。要するに、申し訳ないが、妄想なのだ。 現在存在するどのプロセッサーも、決して for(i=0;i<=npoints-1;i++) に比べれば早い for(i=0;i<npoints;i++) であり、配列への アクセスが単純な変数へのアクセスより高速になることはない。 3つの同じループが1つの組み合わせのループより速くなることはない。 私は怠惰なされていないと、根拠のないように、元のALGLIBで直接2つの異なるバリアントの速度をテストしている 。 e=0; double tmp1; ulong t=GetMicrosecondCount(); for(i=0;i<npoints;i++) { v=0.0; for(i_=0;i_<nvars;i_++) { tmp1=xy[i][i_]-ct[xyc[i]][i_]; v+=tmp1*tmp1; } e=e+v; } t=GetMicrosecondCount()-t; Print("fast = "+(string)t+" микросекунд, e = "+DoubleToString(e) + " , npoints = " + (string)npoints+" , nvars = " + (string)nvars ); e=0; t=GetMicrosecondCount(); for(i=0;i<=npoints-1;i++) { for(i_=0;i_<=nvars-1;i_++) tmp[i_]=xy[i][i_]; for(i_=0;i_<=nvars-1;i_++) tmp[i_]=tmp[i_]-ct[xyc[i]][i_]; //--- calculation v=0.0; for(i_=0;i_<=nvars-1;i_++) v+=tmp[i_]*tmp[i_]; e=e+v; } t=GetMicrosecondCount()-t; Print("slow = "+(string)t+" микросекунд, e = "+DoubleToString(e) + " , npoints = " + (string)npoints+" , nvars = " + (string)nvars ); の結果です。 2018.06.27 04:36:50.265 TestClasses (GBPUSD,M6) fast = 571 микросекунд, e = 534.47773777 , npoints = 1500 , nvars = 40 2018.06.27 04:36:50.266 TestClasses (GBPUSD,M6) slow = 841 микросекунд, e = 534.47773777 , npoints = 1500 , nvars = 40 2018.06.27 04:36:50.630 TestClasses (GBPUSD,M6) fast = 577 микросекунд, e = 531.85904819 , npoints = 1500 , nvars = 40 2018.06.27 04:36:50.631 TestClasses (GBPUSD,M6) slow = 812 микросекунд, e = 531.85904819 , npoints = 1500 , nvars = 40 2018.06.27 04:36:51.143 TestClasses (GBPUSD,M6) fast = 599 микросекунд, e = 537.42685690 , npoints = 1500 , nvars = 40 2018.06.27 04:36:51.144 TestClasses (GBPUSD,M6) slow = 853 микросекунд, e = 537.42685690 , npoints = 1500 , nvars = 40 2018.06.27 04:36:51.955 TestClasses (GBPUSD,M6) fast = 600 микросекунд, e = 531.17444713 , npoints = 1500 , nvars = 40 2018.06.27 04:36:51.956 TestClasses (GBPUSD,M6) slow = 809 микросекунд, e = 531.17444713 , npoints = 1500 , nvars = 40 2018.06.27 04:36:52.344 TestClasses (GBPUSD,M6) fast = 567 микросекунд, e = 540.39509565 , npoints = 1500 , nvars = 40 2018.06.27 04:36:52.344 TestClasses (GBPUSD,M6) slow = 813 микросекунд, e = 540.39509565 , npoints = 1500 , nvars = 40 2018.06.27 04:36:52.857 TestClasses (GBPUSD,M6) fast = 690 микросекунд, e = 550.68494369 , npoints = 1500 , nvars = 40 2018.06.27 04:36:52.858 TestClasses (GBPUSD,M6) slow = 820 микросекунд, e = 550.68494369 , npoints = 1500 , nvars = 40 2018.06.27 04:36:53.229 TestClasses (GBPUSD,M6) fast = 585 микросекунд, e = 547.94313745 , npoints = 1500 , nvars = 40 2018.06.27 04:36:53.230 TestClasses (GBPUSD,M6) slow = 811 микросекунд, e = 547.94313745 , npoints = 1500 , nvars = 40 2018.06.27 04:36:53.736 TestClasses (GBPUSD,M6) fast = 560 микросекунд, e = 568.39404456 , npoints = 1500 , nvars = 40 2018.06.27 04:36:53.737 TestClasses (GBPUSD,M6) slow = 813 микросекунд, e = 568.39404456 , npoints = 1500 , nvars = 40 つまり、40%以上の速度向上が確認できます。 ファイル: dataanalysis.mqh 1150 kb TestClasses.mqh 2762 kb Forester 2018.06.27 09:16 #22207 Nikolai Semko:まあ要するに、申し訳ないけど妄想なんだよね。 現在存在するどのプロセッサーも、決して に比べれば早い であり、配列への アクセスが単純な変数へのアクセスより高速になることはない。 3つの同じループが1つの組み合わせのループより速くなることはない。 私は怠惰なされていないと、根拠のないように、元のALGLIBで直接2つの異なるバリアントの速度をテストしている 。 の結果です。 つまり、40%以上の速度向上が確認できます。 テストありがとうございましたMQLだけでなく、すべての言語で高速に動作するようになると思います。私が考えていた理由は、それを書いたプログラマーは、プログラムが動いただけでなく、行数に対して報酬をもらっていたことです。なぜなら、500行のプログラムと5000行のプログラムでは、お客様にとってあまり印象が良くないからです。そのために、コードのスピードや読みやすさが損なわれてしまったのは残念です。 Nikolai Semko 2018.06.27 11:41 #22208 elibrarius: MQLだけでなく、すべての言語で高速に動作するようになると思います。もちろんです。 ruslan 2018.06.28 10:54 #22209 MQLにログインする際にエラーが発生し、ブラウザのステータスにFacebookからの長い回答(おそらく認証)があることに気づきました。 Alexander 2018.07.02 06:56 #22210 SEM:合成工具です。分単位のバーをインポートすると、各分単位のバーが1ポイント(5桁)ずつ異なる。 シンボルのあるウィンドウを閉じてから、このウィンドウを再び開き、前回のロードから分単位のバーを要求すると、次のような結果が得られます。 記号は全日程共通です。エラーは何ですか?安定した再生ができていますか?ビルドとは? 1...221422152216221722182219222022212222222322242225222622272228...3185 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
合成工具です。分単位のバーをインポート すると、各分単位のバーが1ポイント(5桁)ずつ異なる。
シンボルのあるウィンドウを閉じてから、このウィンドウを再び開き、前回のロードから分単位のバーを要求すると、次のような結果が得られます。
記号は全日程共通です。エラーは何ですか?
Alglibパッケージのコードに目を通す。こういう構文がいっぱいあって、コードを読み にくくしているんです。
こっちの方がシンプルでしょう?
実行速度がさらに上がるような気がします。
なぜ、あんなに複雑なコードにしたのでしょうか?それとも、他の言語から何も手を加えずに移植したのでしょうか?しかし、やはり原文ではなぜそんなこじつけをしたのだろうか?これは、スピードアップのために、オリジナルのコードで正確に行われた可能性が高いです。
MQLで速くなるかどうかは測定する必要があり、ここでは「らしい」は通用しない。
これは、加速のためにオリジナルで行っている可能性が 高いです。
MQLで速くなるかどうかは測定する必要があり、ここでは「らしい」は通用しない。
"Most likely "も通用しない。
このような形が、どうして速く機能するのでしょうか?何を言っているんだ!?
2つの余分なループと、1つの変数の代わりに余分な配列があります。
Nikolai Semko:
2つの余分なループと、1つの変数の代わりに余分な配列があります。
このような原始的な推論は、現代のプロセッサーには適さない。
このような原始的な推論は、現代のプロセッサーには適さない。
よくご存じですね。もっと経験を 積んで...
Koldun Zloy:
このような原始的な推論は、現代のプロセッサーには適さない。
要するに、申し訳ないが、妄想なのだ。
現在存在するどのプロセッサーも、決して
に比べれば早い
であり、配列への アクセスが単純な変数へのアクセスより高速になることはない。
3つの同じループが1つの組み合わせのループより速くなることはない。
私は怠惰なされていないと、根拠のないように、元のALGLIBで直接2つの異なるバリアントの速度をテストしている 。
の結果です。
つまり、40%以上の速度向上が確認できます。
まあ要するに、申し訳ないけど妄想なんだよね。
現在存在するどのプロセッサーも、決して
に比べれば早い
であり、配列への アクセスが単純な変数へのアクセスより高速になることはない。
3つの同じループが1つの組み合わせのループより速くなることはない。
私は怠惰なされていないと、根拠のないように、元のALGLIBで直接2つの異なるバリアントの速度をテストしている 。
の結果です。
つまり、40%以上の速度向上が確認できます。
私が考えていた理由は、それを書いたプログラマーは、プログラムが動いただけでなく、行数に対して報酬をもらっていたことです。なぜなら、500行のプログラムと5000行のプログラムでは、お客様にとってあまり印象が良くないからです。そのために、コードのスピードや読みやすさが損なわれてしまったのは残念です。
MQLだけでなく、すべての言語で高速に動作するようになると思います。
もちろんです。
合成工具です。分単位のバーをインポートすると、各分単位のバーが1ポイント(5桁)ずつ異なる。
シンボルのあるウィンドウを閉じてから、このウィンドウを再び開き、前回のロードから分単位のバーを要求すると、次のような結果が得られます。
記号は全日程共通です。エラーは何ですか?
安定した再生ができていますか?ビルドとは?