トレーディングにおける機械学習:理論、モデル、実践、アルゴトレーディング - ページ 3260 1...325332543255325632573258325932603261326232633264326532663267...3399 新しいコメント Forester 2023.09.26 06:37 #32591 Aleksey Vyazmikin #: 15000 * 100 * 4 バイト / 1024 / 1024 ≒ 5.72 MB これが入力行列である。 出力は15000行ずつになる。他の例と同様、約1.7Ggとなる(8バイトで2倍した場合)。 Aleksey Vyazmikin 2023.09.26 06:50 #32592 Forester #:これが入力マトリックスである。 出力は、15000行それぞれに15000ストロークとなる。他の例と同様、それぞれ約1.7Gg(Double by 8バイトの場合)。 これがカウント方法でないことは同意する。 mytarmailS 2023.09.26 06:52 #32593 fxsaber #:今のところ、簡単な家庭用マシンで100万×100万の 行列を計算する技術的な障害は見当たらない。しかし、NumPyとMQL5の比較は私にとって非常に重要である。 本当ですか? 例えば、50,000 列/100行の入力行列は、50,000 x 50, 000 x 8バイト / (1024 x 1024 x 1024) = 18.63 GBの相関行列を生成します。 fxsaber 2023.09.26 07:01 #32594 Maxim Dmitrievsky #:https://drive.google.com/file/d/1ATJkHwUY8jzeRp-rdTsYBeYHor-68EPB/view?usp=share_link input int inRows = 100; // Длина строки input int inCols = 15000; // Количество строк bool IsEqual( matrix<double> &Matrix1, const matrix<double> &Matrix2 ) { Matrix1 -= Matrix2; const bool Res = (MathAbs(Matrix1.Mean()) < 1 e-15); Matrix1 += Matrix2; return(Res); } #define TOSTRING(A) #A + " = " + (string)(A) + " " void OnStart() { double Array[]; Print(FileLoad("qwe\\arr.csv", Array)); // RAM-drive. https://www.mql5.com/ru/forum/86386/page3258#comment_49549438 matrix<double> Matrix; Matrix.Assign(Array); Matrix.Init(inCols, inRows); Matrix = Matrix.Transpose(); ArrayFree(Array); Print(FileLoad("qwe\\matr.csv", Array)); // RAM-drive. https://www.mql5.com/ru/forum/86386/page3258#comment_49549438 matrix<double> Matrix2; Matrix2.Assign(Array); Matrix2.Init(inCols, inCols); Matrix2 = Matrix2.Transpose(); ArrayFree(Array); matrix<double> Matrix1 = CorrMatrix(Matrix); // https://www.mql5.com/ru/forum/86386/page3256#comment_49538685 Print(TOSTRING(IsEqual(Matrix1, Matrix2))); } MQL5とNumPyの計算値の完全一致。 1500000 225000000 IsEqual(Matrix1, Matrix2) = true Aleksey Vyazmikin 2023.09.26 07:20 #32595 Forester #:これが入力マトリックスである。 出力は、15000行それぞれに15000ストロークとなる。他の例と同様、それぞれ約1.7Gg(Double by 8バイトの場合)。 一般的に、残念なことに、pythonはintを扱う方法を知りません - 明らかにdoubleに変換します。 import numpy as np import time def calc_corr_matrix(): arr = np.random.randint(1, 101, size=(15000,100), dtype=np.int32) corr_matrix = np.corrcoef(arr) size_in_mb = corr_matrix.nbytes / 1024**2 print("Array size:", size_in_mb, "MB") return corr_matrix np.random.seed(123) start_time = time.time() corr_matrix = calc_corr_matrix() end_time = time.time() print("Time taken:", end_time - start_time, "seconds") Array size: 1716.61376953125 MB Time taken: 4.62926459312439 seconds Maxim Dmitrievsky 2023.09.26 08:13 #32596 Aleksey Vyazmikin #:一般的に、残念なことに、パイソンはintを扱う方法を知らない。 どうやらdoubleに変換するようだ。intでの相関はカウントされません。 Aleksey Vyazmikin 2023.09.26 08:16 #32597 Maxim Dmitrievsky #:でたらめなスパムはやめろ。intsでの相関はカウントされない。 アメリカを開く必要はない。カウントするのは一般的ではないが、どうすればできるかを考える価値はある。 Maxim Dmitrievsky 2023.09.26 08:20 #32598 Aleksey Vyazmikin #:アメリカは発見される必要はない。考えることは一般的ではないが、どうすればそれができるかを考える価値はある。 新しいスレッドで、何かを考える Aleksey Vyazmikin 2023.09.26 08:28 #32599 Maxim Dmitrievsky #:新しいスレッドで なんて人たちなんだ。彼のために時間を無駄にしに行ったら、失礼なことを言われた。 何なんだ... Forester 2023.09.26 08:33 #32600 Aleksey Vyazmikin #:America doesn't need to be discovered.考えることは一般的ではないが、どうすればそれができるかを考える価値はある。 私はすでにその方法を説明しました - Alglibのf-iys(PearsonCorrMから呼び出される8つの部分があります)を取り、データ型を変更します。Even in 1 byte uchar.4バイトのintsではあまり大きな効果は得られません。 必要であれば自分でやってみてください。 1...325332543255325632573258325932603261326232633264326532663267...3399 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
15000 * 100 * 4 バイト / 1024 / 1024 ≒ 5.72 MB
これが入力行列である。
出力は15000行ずつになる。他の例と同様、約1.7Ggとなる(8バイトで2倍した場合)。
これが入力マトリックスである。
出力は、15000行それぞれに15000ストロークとなる。他の例と同様、それぞれ約1.7Gg(Double by 8バイトの場合)。
これがカウント方法でないことは同意する。
今のところ、簡単な家庭用マシンで100万×100万の 行列を計算する技術的な障害は見当たらない。しかし、NumPyとMQL5の比較は私にとって非常に重要である。
本当ですか?
例えば、50,000 列/100行の入力行列は、50,000 x 50, 000 x 8バイト / (1024 x 1024 x 1024) = 18.63 GBの相関行列を生成します。
https://drive.google.com/file/d/1ATJkHwUY8jzeRp-rdTsYBeYHor-68EPB/view?usp=share_link
MQL5とNumPyの計算値の完全一致。
これが入力マトリックスである。
出力は、15000行それぞれに15000ストロークとなる。他の例と同様、それぞれ約1.7Gg(Double by 8バイトの場合)。
一般的に、残念なことに、pythonはintを扱う方法を知りません - 明らかにdoubleに変換します。
一般的に、残念なことに、パイソンはintを扱う方法を知らない。
どうやらdoubleに変換するようだ。intでの相関はカウントされません。
でたらめなスパムはやめろ。intsでの相関はカウントされない。
アメリカを開く必要はない。カウントするのは一般的ではないが、どうすればできるかを考える価値はある。
アメリカは発見される必要はない。考えることは一般的ではないが、どうすればそれができるかを考える価値はある。
新しいスレッドで、何かを考える
新しいスレッドで
なんて人たちなんだ。彼のために時間を無駄にしに行ったら、失礼なことを言われた。
何なんだ...
America doesn't need to be discovered.考えることは一般的ではないが、どうすればそれができるかを考える価値はある。
必要であれば自分でやってみてください。