トレーディングにおける機械学習:理論、モデル、実践、アルゴトレーディング - ページ 3269 1...326232633264326532663267326832693270327132723273327432753276...3399 新しいコメント fxsaber 2023.10.01 08:27 #32681 mytarmailS #: では、この相関関係の最終目標は何なのか? どの実装がより速く、どの実装が同じ結果をもたらし、どの実装がそうでないか...。この知識を使って何をするつもりですか? 技術的な限界のために他の人が計算できないことを計算できるようになる。 Maxim Dmitrievsky 2023.10.01 08:27 #32682 mytarmailS #: また、テストとビジュアライゼーション、そして素早いアクションも必要だろう。 最終的な最適化も普通で、ディールのパラメーターをピックアップする。 Forester 2023.10.01 08:27 #32683 fxsaber #:最初は、毎回すべての行を数えるという、正面からの変形を試みました。Alglibには何かエラーがあるような気がした。結果はしばしば一致する。しかし、そうならない状況もある。いつもこうなら、私の責任だ。でも、何か怪しいんだ。 。 Print(Matrix1); Print("------------------"); Print(Matrix2); Matrix2は、最初の5つがマッチし、次にゼロがマッチしている。 Res.Col(Corr.Row(0), i);をRes.Row(Corr.Row(0), i)に変更しました; 行列は似たようなものになったが、それでもIsEqualは通らない。どこかで何かあったのだろうか...。 fxsaber 2023.10.01 08:29 #32684 Forester #:Res.Col(Corr.Row(0), i); を Res.Row(Corr.Row(0), i) に変更; どうやら間違っているようだ。 Forester 2023.10.01 08:37 #32685 Forester #: 作成 Print(Matrix1); Print("------------------"); Print(Matrix2);Matrix2は、最初の5つがマッチし、次にゼロがマッチしている。 Res.Col(Corr.Row(0), i);をRes.Row(Corr.Row(0), i)に変更しました; 行列は似たようなものになったが、それでもIsEqualは通らない。どこかに原因があるのだろうか? 問題を発見 次のようにする for (int i = 0; i < (int)Matrix.Cols(); i++) { if (i) Vector.ー SwapCols(0, i); CBaseStat::PearsonCorrM2(Vector, MatrixIn, MatrixIn.ー(), 1, MatrixIn.Cols(), Corr); Res.Col(Corr.Row(0), i); }. Forester 2023.10.01 08:48 #32686 そして、PearsonCorrM2は、三角形でカウントすれば、2倍のスピードアップが可能である。100行をすべてで数え、次に99行をすべて0-99で数え、99番目と100番目はすでに数えてある。 追伸 一般的に、あなたのコードは美しく簡潔です。私なら、すべてをループで処理します。) mytarmailS 2023.10.01 08:52 #32687 Forester #: そして、PearsonCorrM2は、三角形でカウントすれば、2倍速くなる。100行をallで数え、次に99行をall 0-99で数え、99番目と100番目はすでに数えられている。 高速フーリエ変換で相関を素早く計算できる...というのをどこかで読んだことがある。 Maxim Dmitrievsky 2023.10.01 08:55 #32688 residuals_a= a_mat- a_mat. column_means residuals_b= b_mat- b_mat. column_means a_residual_sums= residuals_a. column_sums b_residual_sums= residuals_b. column_sums residual_products= dot_product( residuals_a. transpose, residuals_b)sum_products= sqrt( dot_product( a_residual_sums, b_residual_sums))相関= residual_products/ sum_products fxsaber 2023.10.01 09:31 #32689 mytarmailS #: 高速フーリエ変換で相関を素早く読み取ることができるとどこかで読んだが...スピードアップのオプションとしても。 やったことがある。文字列の長さが大きいときには意味がある。いつかお見せします。 fxsaber 2023.10.01 09:39 #32690 Forester #:問題発見以下のようになるはずだ。 その通りだ!なぜ間違ったオプションがinCols < 100で機能したのか理解できません。 1...326232633264326532663267326832693270327132723273327432753276...3399 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
では、この相関関係の最終目標は何なのか?
技術的な限界のために他の人が計算できないことを計算できるようになる。
また、テストとビジュアライゼーション、そして素早いアクションも必要だろう。
最終的な最適化も普通で、ディールのパラメーターをピックアップする。
最初は、毎回すべての行を数えるという、正面からの変形を試みました。Alglibには何かエラーがあるような気がした。
結果はしばしば一致する。
しかし、そうならない状況もある。
いつもこうなら、私の責任だ。でも、何か怪しいんだ。
。
Print(Matrix1);
Print("------------------");
Print(Matrix2);
Matrix2は、最初の5つがマッチし、次にゼロがマッチしている。
行列は似たようなものになったが、それでもIsEqualは通らない。どこかで何かあったのだろうか...。Res.Col(Corr.Row(0), i);をRes.Row(Corr.Row(0), i)に変更しました;
Res.Col(Corr.Row(0), i); を Res.Row(Corr.Row(0), i) に変更;
どうやら間違っているようだ。
作成
Print(Matrix1);
Print("------------------");
Print(Matrix2);
Matrix2は、最初の5つがマッチし、次にゼロがマッチしている。
行列は似たようなものになったが、それでもIsEqualは通らない。どこかに原因があるのだろうか?Res.Col(Corr.Row(0), i);をRes.Row(Corr.Row(0), i)に変更しました;
問題を発見
次のようにする
for (int i = 0; i < (int)Matrix.Cols(); i++)
{
if (i)
Vector.ー SwapCols(0, i);
CBaseStat::PearsonCorrM2(Vector, MatrixIn, MatrixIn.ー(), 1, MatrixIn.Cols(), Corr);
Res.Col(Corr.Row(0), i);
}.
追伸
一般的に、あなたのコードは美しく簡潔です。私なら、すべてをループで処理します。)
そして、PearsonCorrM2は、三角形でカウントすれば、2倍速くなる。100行をallで数え、次に99行をall 0-99で数え、99番目と100番目はすでに数えられている。
高速フーリエ変換で相関を素早く読み取ることができるとどこかで読んだが...スピードアップのオプションとしても。
やったことがある。文字列の長さが大きいときには意味がある。いつかお見せします。
問題発見
以下のようになるはずだ。