記事"R で 統計分布を MQL5 に -"についてのディスカッション - ページ 6 12345678910111213...20 新しいコメント Maxim Kuznetsov 2016.10.10 22:31 #51 Renat Fatkhullin:これは、https://www.mql5.com/ru/forum/96176/page10(どこかで言及があった)のトピックで一部のトレーダーが表明した立場の誤りを、実践と理論で純粋に証明したに過ぎない:Rのライブラリはすべて最適化されており、可能な限り高速である。インテル・スレッディング・ビルディング・ブロックなど、Rには多くの最適化がある。 これは真実ではないことがわかった。最も単純な関数では、それは無駄であり、MQL5の方が効率的であることが判明した。さらに、理論的になぜMQL5の方が速いのかを実証した。実用的な結果に加えて。Rは公式には "言語と環境 "と呼ばれているが、その中身はdsl、マクロ、sexprと、さまざまなライブラリや環境に "接着 "するゴミのようなスキームである。少し前までは、mat.stat.パッケージの擁護者とFPのファンが、Rのブレーキについて非難していました。)PS.ところで、マイクロベンチマークではseq()がすでに測定値の中に導入されている疑いがある。もちろん、些細なことである。 Renat Fatkhullin 2016.10.10 22:36 #52 Maxim Kuznetsov:Rは公式には「言語と環境」と呼ばれているが、その中身はdsl、マクロ、sexpr、そしてさまざまなライブラリや環境に「接着」するゴミのようなスキームである。少し前までは、mat.stat.パッケージの擁護者とFPのファンが、Rのブレーキについて非難していました。)好きなように言わせておけばいい。ただ、64ビットのネイティブDLLに多くの関数があったとしても、その最適化に関する声明が誤りであることが判明しただけだ。私たちの行列計算がRよりも高速であることは、どこでも指摘できるだろう。そして、RからMQL5への開発アイデアの移転は、真のアドバンテージをもたらすだろう。PS.ところで、マイクロベンチマークでは、seq()がすでに測定値の中に導入されている疑いがある。もちろん些細なことだ。いや、seqは計測の外側にある。seq()を使って1回フィルした後、自分で何度も呼び出してみてほしい。res <- microbenchmark(a<-dbinom(k, n, pi/10, log = TRUE)) print(res) Реter Konow 2016.10.10 22:36 #53 理論家である私は、開発者である実践者と議論する勇気はない。なぜなら、私の分野では開発者である実践者である私は、理論家の批判を常に見下した目で見ているからだ。 Dr. Trader 2016.10.10 22:36 #54 Renat Fatkhullin:MQL5では、Rの20マイクロ秒に対して10マイクロ秒と、2倍の速さでカウントされる。私は少し違います。 平均時間:MT5 12マイクロ秒、R 16マイクロ秒 最小時間:MT5 8マイクロ秒、R 15マイクロ秒。Windows 10 Pro (x64 based PC)、IE 11.00、UAC、Intel Core i7-6700 @ 3.40GHz R - 3.3.1 x64 MT5 1445おめでとう、mqlコンパイラーは良い最適化ができる。<nerd mode.MT5の結果に、コンパイルに費やした100ミリ秒を追加してください。 Rは16マイクロ秒で文字列からの入力を解釈し、それをライブラリに渡して結果を返すことに成功している。</ オタクモード Discussion of article "Statistical Errors, bugs, questions エラー、バグ、質問 Renat Fatkhullin 2016.10.10 22:41 #55 Dr.Trader:< オタクモードMT5の結果に、コンパイルに費やした100ミリ秒を追加する必要がある。 R は文字列から結果を解釈し、それをライブラリに渡して結果を返すのに16マイクロ秒かかります。</オタクモード>.そんなことはない。私もRで最適化されるべきだと信じていた。でも、自分でインストールして、自分で理解し始めて、このシステムは動的言語のシステム・オーバーヘッドのせいで最大値を絞り出すことができないことに絶対に気づいたんだ。 最短時間を見るべきだ。私の結果は、8対15で直接確認できる。 Maxim Kuznetsov 2016.10.10 22:46 #56 Renat Fatkhullin:好きなように呼んでください。ただ、ネイティブの64ビットDLLに多くの関数があったとしても、その最適化に関する記述は誤りであることが判明しただけだ。私たちの行列計算がRよりも高速であることは、どこでも指摘できるだろう。そして、 RからMQL5に開発されたアイデアを移行することで、本当のアドバンテージが得られるだろう。いいえ、seqは測定外です。seqで1回充填した後、自分で何回もコールしてみてください。RはFPであり、計算の重要な部分を単に不要だからという理由で "省略 "することもできるし、計算経路について特定の結論を出すこともできる。酸いも甘いも噛み分けたようなものだ。) Renat Fatkhullin 2016.10.10 22:51 #57 Maxim Kuznetsov:RはFPであり、単純に不必要な計算の重要な部分を "省略 "することもできるし、計算の経路について特定の推論を行うこともできる。酸いも甘いも一緒くたにしたようなものだ。)ナンセンスはもうたくさんだ。何度も何度も現実を否定しようとしている。 ivanivan_11 2016.10.10 23:02 #58 私はRについて話していますが、私のスキルは非常に小さいです))誰かコードの正しさをチェックできますか?library(microbenchmark) library(compiler) n <- 2000 k <- seq(0,n,by=20) q<- function(xx) { dbinom(k, n, pi/10, log = TRUE) } res <- microbenchmark(cmpfun(q)) print(res) 結果はこのコードと同じグラフを示しています、とRenateのコードで同じグラフが表示されます。もしコードが正しければ、ベンチマークをチェックしてもらえますか? Dr. Trader 2016.10.10 23:09 #59 Dr.Trader:MT5の結果に、コンパイルにかかった100ミリ秒を追加してください。つまり、mqlコンパイラーはコンパイル中にすべての入力パラメーターをすでに知っているのです。コンパイル中にすべてを計算し、スクリプトを呼び出すときには、事前に計算された結果を返すだけで十分です。ハブの記事でc++コンパイラが比較されているのを見たことがあるが、アセンブラ・コードの解析から判断すると、まさにそこで起こっていることだ。 ivanivan_11 2016.10.10 23:10 #60 ivanivan_11:もしコードが正しければ、ベンチマークをチェックしてもらえますか?最初のテストでは結果はマイクロ秒でしたが、ここではミリ秒になっています。 12345678910111213...20 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
これは、https://www.mql5.com/ru/forum/96176/page10(どこかで言及があった)のトピックで一部のトレーダーが表明した立場の誤りを、実践と理論で純粋に証明したに過ぎない:
これは真実ではないことがわかった。最も単純な関数では、それは無駄であり、MQL5の方が効率的であることが判明した。さらに、理論的になぜMQL5の方が速いのかを実証した。実用的な結果に加えて。
Rは公式には "言語と環境 "と呼ばれているが、その中身はdsl、マクロ、sexprと、さまざまなライブラリや環境に "接着 "するゴミのようなスキームである。少し前までは、mat.stat.パッケージの擁護者とFPのファンが、Rのブレーキについて非難していました。)
PS.ところで、マイクロベンチマークではseq()がすでに測定値の中に導入されている疑いがある。もちろん、些細なことである。
Rは公式には「言語と環境」と呼ばれているが、その中身はdsl、マクロ、sexpr、そしてさまざまなライブラリや環境に「接着」するゴミのようなスキームである。少し前までは、mat.stat.パッケージの擁護者とFPのファンが、Rのブレーキについて非難していました。)
好きなように言わせておけばいい。
ただ、64ビットのネイティブDLLに多くの関数があったとしても、その最適化に関する声明が誤りであることが判明しただけだ。私たちの行列計算がRよりも高速であることは、どこでも指摘できるだろう。そして、RからMQL5への開発アイデアの移転は、真のアドバンテージをもたらすだろう。
PS.ところで、マイクロベンチマークでは、seq()がすでに測定値の中に導入されている疑いがある。もちろん些細なことだ。
いや、seqは計測の外側にある。
seq()を使って1回フィルした後、自分で何度も呼び出してみてほしい。
MQL5では、Rの20マイクロ秒に対して10マイクロ秒と、2倍の速さでカウントされる。
私は少し違います。
平均時間:MT5 12マイクロ秒、R 16マイクロ秒
最小時間:MT5 8マイクロ秒、R 15マイクロ秒。
Windows 10 Pro (x64 based PC)、IE 11.00、UAC、Intel Core i7-6700 @ 3.40GHz
R - 3.3.1 x64
MT5 1445
おめでとう、mqlコンパイラーは良い最適化ができる。
<nerd mode.
MT5の結果に、コンパイルに費やした100ミリ秒を追加してください。
Rは16マイクロ秒で文字列からの入力を解釈し、それをライブラリに渡して結果を返すことに成功している。
</ オタクモード
< オタクモード
MT5の結果に、コンパイルに費やした100ミリ秒を追加する必要がある。
R は文字列から結果を解釈し、それをライブラリに渡して結果を返すのに16マイクロ秒かかります。
</オタクモード>.
そんなことはない。
私もRで最適化されるべきだと信じていた。でも、自分でインストールして、自分で理解し始めて、このシステムは動的言語のシステム・オーバーヘッドのせいで最大値を絞り出すことができないことに絶対に気づいたんだ。
最短時間を見るべきだ。私の結果は、8対15で直接確認できる。
好きなように呼んでください。
ただ、ネイティブの64ビットDLLに多くの関数があったとしても、その最適化に関する記述は誤りであることが判明しただけだ。私たちの行列計算がRよりも高速であることは、どこでも指摘できるだろう。そして、 RからMQL5に開発されたアイデアを移行することで、本当のアドバンテージが得られるだろう。
いいえ、seqは測定外です。
seqで1回充填した後、自分で何回もコールしてみてください。
RはFPであり、計算の重要な部分を単に不要だからという理由で "省略 "することもできるし、計算経路について特定の結論を出すこともできる。酸いも甘いも噛み分けたようなものだ。)
RはFPであり、単純に不必要な計算の重要な部分を "省略 "することもできるし、計算の経路について特定の推論を行うこともできる。酸いも甘いも一緒くたにしたようなものだ。)
ナンセンスはもうたくさんだ。
何度も何度も現実を否定しようとしている。
私はRについて話していますが、私のスキルは非常に小さいです))誰かコードの正しさをチェックできますか?
結果はこのコードと同じグラフを示しています、
とRenateのコードで同じグラフが表示されます。
もしコードが正しければ、ベンチマークをチェックしてもらえますか?
MT5の結果に、コンパイルにかかった100ミリ秒を追加してください。
つまり、mqlコンパイラーはコンパイル中にすべての入力パラメーターをすでに知っているのです。コンパイル中にすべてを計算し、スクリプトを呼び出すときには、事前に計算された結果を返すだけで十分です。ハブの記事でc++コンパイラが比較されているのを見たことがあるが、アセンブラ・コードの解析から判断すると、まさにそこで起こっていることだ。
もしコードが正しければ、ベンチマークをチェックしてもらえますか?
最初のテストでは結果はマイクロ秒でしたが、ここではミリ秒になっています。