OOPのあるアプリケーションについて - ページ 10

 
Alexey Volchanskiy:

ゲッ - みんなをバラバラにするインテルのコンパイラが、インタプリタに追いつくのか?

Sanychさん、飲み過ぎないようにね ))))

投稿をよくお読みください。

行列クラスでは、行列演算にインテル® ライブラリーを使用する必要があります。

これは、 BIBLE!

そこから 視野を広げていく。その手間を省くために、ここに紹介します。

インテル® マス・カーネル・ライブラリー (インテル® MKL) は、アプリケーションのパフォーマンスを向上させ、開発時間を短縮する数式処理ルーチンを高速化します。インテル® MKLには、高度にベクトル化され、スレッド化された線形代数、高速フーリエ変換(FFT)、ベクトル数学、統計学の各機能が含まれています。

げっ...ギィィィー...。

Intel® Math Kernel Library (Intel® MKL) | Intel® Software
Intel® Math Kernel Library (Intel® MKL) | Intel® Software
  • software.intel.com
Intel® Math Kernel Library (Intel® MKL) accelerates math processing routines that increase application performance and reduce development time. Intel® MKL includes highly vectorized and threaded Linear Algebra, Fast Fourier Transforms (FFT), Vector Math and Statistics functions. The easiest way to take advantage of all of that processing power...
 
СанСаныч Фоменко:
インタプリタというのは、あなたのお気に入りのR
 
Комбинатор:
インタープリターとは、あなたの好きなRのことです。

Rでは何も解釈されません。すべての機能はネイティブコードです。関数を呼び 出すと、コマンドそのものだけが解釈される。以上です。

そして、内蔵機能の実行速度が素晴らしい。MKLではできないことです。あるいは長すぎて、必要性がない。

 
Yuriy Asaulenko:

私が決めることではありません。ベクトルや行列の演算はそこそこのレベルだと、私はかなり思っています。そうでなければ、トップ5には入っていないでしょう。

そして、言語そのものに対する姿勢もいい。しかし、MQLとRを比較するのは馬鹿げています)。

アプリケーション・トレーディング言語とデータ分析言語、どうやって比較するんだ?

アンロードされたデータ(MQL)を分析(R)エッジを見つけ、必要に応じてATS(MQL)を書き、分析プラットフォームの必要な機能へのリンクがある。

必要な機能を移植するのであれば、それはそれで結構なことです。開発者が移植したalglibの形で、より可能性の高いヘルプが用意されています。

 

理想的には、EA のエコシステム全体を動かして、EA がどのように生き残り、GA に基づいて変化して、過去の相場とよりよく一致するかをモデル化することができます。

最初の頃のように、ある簡単な条件で売買するシンプルなものがありました。そして、単純なものをベースに、より複雑なものが形成されるようになった。一般に、絶滅と新しい効率的な専門家の出現を追跡する)))他の個体とのブール交配に基づく進化型プログラミングの一種

 
Avals:

理想的には、EAのエコシステム全体を立ち上げて、EAがどのように生き残り、GAに基づいて変化して、過去の相場によりマッチするかをシミュレートすることができます。

最初のころは原生動物がいたように、ある簡単な条件で売買されていた。そして、単純なものをベースに、より複雑なものが形成されるようになった。一般に、絶滅と新しい効率的な専門家の出現を追跡する)))他 の個体とのブール交配に基づく進化型プログラミングの一

進化と「消滅」について:ある悪名高い企業がAIプログラミングのコンペを開催。捕食者-被食者モデル、生態、地理、繁殖、標本間のコミュニケーション能力など、すべてが大人です。何度も実行した結果、手の届くものはすべて食べ、隙あらば繁殖し、何かあれば群れで逃げ回るという、最もシンプルな行動のアルゴリズムが、すべての賢いAIに勝利することがわかったのです。

 
Maxim Kuznetsov:

進化と「絶滅」について:ある悪名高い 企業がAIプログラミングのコンペを開催。捕食者-被食者モデル、生態、地理、繁殖、コピー間のコミュニケーションの可能性など、すべてが大人です。手の届くものはすべて食べ、隙あらば繁殖し、何かあれば群れで逃げるという、最もシンプルなAIアルゴリズムが、何度も実行された末に勝利を収めたのです。

MSが2000年代初頭にC#の普及のためにアレンジしたもの。それ以前は、Javaで人気がありました。

でも、MSが賞品で全部包んでくれて、どこかのステージで優勝したんですよ、どれだったか忘れましたが。しかし、その作戦は待ち伏せのラットだった))))

そういえば、郵便配達の人がドアベルを鳴らして、MSから小包が届いていましたね。

郵便局に来ました。20kgの箱、すべてプログラミングの本で埋まっていました))。

 
Alexander Laur:
もし、継承の矛盾についての議論を裏付けるために、あなたのクラス階層の見方を図式化したものを提供すれば、あなたの投稿は論理的な結論に達するでしょう。わかりやすくするために!:)
標準ライブラリは、コードの最良の例ではありませんが、(中略)その中にだけあるわけではありません。強くプラスに働く。
 
Alexander Laur:
もし、継承の矛盾に関するあなたの推論を確認するために、クラスの階層構造に関するあなたのビジョンの図式を持ってくれば、あなたの投稿は論理的な結論に達するでしょう。わかりやすくするために!:)

ここまでが卒論のレベル。

銀の弾丸 はない("NoSilver Bullet" Frederick Brooks, 1986)。つまり、正しいソフトウェア開発のための画一的な技術は存在しないのです。どのような設計手法でも、矛盾や認識の複雑さを引き起こし、結果として開発のスピードが落ちたり、不可能になったりすることがあります。

継承は本質的に矛盾している。し かし、それを使うことで、矛盾したデザインを作ることは、デザインの初期段階では案外簡単なのです。

インターフェイスやインクルージョンがより安全になりました。

これまでの話から、フラットモデルを原則としたほうがよさそうだ。2階層、最大3階層の限定された継承の連鎖と、インターフェースによる交流、その機能はインクルージョンによって実現されたほうがよい。

純粋に抽象的なクラスの多重継承を 可能にするという巧妙な手もあったのですが、残念ながらMQL5ではインターフェースは禁止されており、非常に残念なことです。

ZZY 時間があるときに、私のCStrategy プロジェクトのクラスツリーを描きます。比べてみると面白いかもしれませんね。しかし、もう一度強調しておきますが、銀の弾丸は 存在しません。

 
СанСаныч Фоменко:

猫料理ができない人は黙っててね...。

R.統計データ解析のためのこの言語は、2つのオブジェクト指向プログラミングシステムも持っています。

それで?MQLにはないものがたくさんあるんです。それがどうした?

そういう問題じゃないんです。ある言語が他の言語よりアルゴリズム的に優れていることは、対象領域に関してある閾値を超えると全く問題にならなくなります。

ここではコーダーの嗜好を噛み砕いて説明していますが、個人的には商売のために来ているんです。

PS.

行列クラスは、行列演算のためにインテル・ライブラリを使用しなければなりませんが、その場合、この問題ではRと同等になるかもしれません。

あなたはどの記事にもマトリクスを貼り付けていますね。実際の取引での応用は非常に限られています。99.9%のExpert Advisorは行列計算を使用しません(MQLの配列と混同しないでください)。

Rは高速なデータ解析のために作られたもので、本格的なシミュレーションのためのものではありません。スライディングウィンドウでの計算についてはどうでしょうか?トレーディングにおける計算の99.99%はスライディングウィンドウで行われています。つまり、行列に新しい要素を挿入して古い要素を取り除き、再計算する場合、この操作のコストはO(1) でなければならず、それ以外には何もないのです。MQLではほぼ全てのケースで保証できますが、Rではどうすればいいのでしょうか?