PLO

 

私を蹴らないで、OOPとはどんなもので、どのように準備するのか、指で説明してください。

MKL5のクリエイターやプログラマーから「MKL5でOOPを作りたい」という声が上がっているようなので、その回答を期待します。

スピードが速くなったり遅くなったりする分には。一見すると、MKL5はMKL4と比較して速度が上がらず、リソースを食うように見えます。

性能向上の具体的な事例を紹介してほしい。

 
Serj_Che:

私を蹴らないで、OOPとはどんなもので、どのように準備するのか、指で説明してください。

MKL5のクリエイターやプログラマーから「MKL5でOOPを作りたい」という声が上がっているようなので、その回答を期待します。

スピードが速くなったり遅くなったりする分には。一見すると、MKL5はMKL4と比較して速度が上がらず、リソースを食いつぶしているように見えます。

性能向上の具体的な事例を紹介してほしい。

この記事をチェックするhttps://www.mql5.com/ru/articles/116
Написание советника в MQL5 с использованием объектно-ориентированного подхода
Написание советника в MQL5 с использованием объектно-ориентированного подхода
  • 2010.07.12
  • Samuel
  • www.mql5.com
Эта статья посвящена использованию объектно-ориентированного подхода для создания советника, рассмотренного в статье "Пошаговое руководство по написанию советников для начинающих". Большинство людей думают, что это сложно, но могу вас заверить, что после прочтения этой статьи вы сможете написать свой собственный советник на основе объектно-ориентированного похода.
 
sergey1294:
この記事を読むhttps://www.mql5.com/ru/articles/116

蹴るなと言っただろ、もう一度読んでみろ。

P.S. 調べてみたが、どういうことかわからなかった。

 
Serj_Che:

蹴るなと言っただろ、もう一度読んでみろ。

P.S.やったけど、まだ何が言いたいのかわからない。

要は、より複雑なアルゴリズムをプログラムの中で作ることができるのです。
 
sergey1294:
私が理解した限りでは、OOPによって、より複雑なアルゴリズムをプログラムの中で作ることができるようになりました。

複雑なアルゴリズムが有効とは限らない。

家の中に入るには、ドアから入るか、窓から入るか、煙突から入るか。

そのため、例題(できればテトリスではなく、トレーディングのもの)をお願いしたのです。

 

記事を読んでみてください

読みました、役に立ちます

 

もちろん、OOPは万能ではありません。

より多くのリソースを消費することになる

オブジェクト全体を読み込むため

構造化プログラミングでは、コンパイラは使用されない関数を破棄する

ということで、構造化プログラミングと違って、ベーシックプログラミングには

一般にOOPでは、特定のメソッドを持つデータを格納するための構造を作ることができます

もちろん、これらのことは、基本的なプログラミングや構造の多くの可能性を開くものです。

が、どのようなアプローチをとるかは人それぞれです。

 
CoreWinTT:

記事を読んでみてください

の読書が役立つ。

しました。そんなことはない。

だから、OOPはトレーディングに使えて、テトリスに使えないのかと聞いているんです。事例が見つかりませんでした。

 
Serj_Che:

読書です。役に立ちません。

だから、テトリスじゃなくてトレーディングにOOPの使い道があるのかって聞いてるんです。一例も見つかりませんでした。

OOPは性能を上げるものではありません。これは便利です。例えば、いくつかのパラメータを使って呼び出された関数(例えばEMAの計算)があり、その関数は静的変数を使って以前のEMAの値を保存します。この関数は、計算が実行される最後の値を保存するので、次にこの関数を 呼び出すときに、他のパラメータ(シンボル、タイムフレーム、平滑化期間)を指定して呼び出すことはできません。これは、オブジェクトを使った方が便利な唯一のケースです。オブジェクトのインスタンスをロードして、そのパラメータを設定し、パラメータなしでメソッドを呼び出すのです。もしオブジェクトがメソッドを含んでいて、その実行が以前の実行や、一般的にオブジェクトがロードされたパラメータに依存しない場合、それはリソースの消費以外には何も与えません。

Документация по MQL5: Основы языка / Функции / Вызов функции
Документация по MQL5: Основы языка / Функции / Вызов функции
  • www.mql5.com
Основы языка / Функции / Вызов функции - Документация по MQL5
 
Serj_Che:

蹴らないでください、OOPとはどんなもので、どのように準備するのか、指で説明してください。

MKL5のクリエイターやプログラマーから、MKL5でOOPを作りたいとの要望があれば、その答えが聞けることを期待しています。



そこで、OOPについて少し...(出来るだけ、指で説明します)。

OOP(Generic-oriented programming)- オブジェクトとクラスの概念を基本概念とするプログラミングパラダイムである。

MQL5で言えば、OOPの基本要素は、構造体、クラス(プロパティやメソッドを持つ)、オブジェクト、イベントです。

プログラミングを行う言語に関係なく、データの抽象化カプセル化継承ポリモーフィズムという 概念を(祈りや掛け算の表のように)知っておく必要がある。

現在、MQL5の標準ライブラリには、CAccountInfoCsymbolInfoCOrderInfoCHistoryOrderInfoCPositionInfoCDealInfo およびCTradeという トレードクラスが 含まれています。

私の知る限り、開発者は標準ライブラリのオブジェクトのリストを拡張するつもりです(誰もオブジェクトクラスの独自のライブラリを形成することを禁じていません)。

Serj_Che:

仕事のスピードが上がるのか、遅くなるのか。一見すると、MKL5はMKL4に比べて速度が上がらず、リソースを食いつぶしているように見えます。

性能向上の具体的な事例を紹介してほしい。

MQL4でも、MQL5ですでに可能なことの半分を(奇跡 的に)実装すれば、(不思議なことに)予想の100倍以上のリソースを消費することになるのです。ここでいう純粋なMQL4とは、サードパーティーのDLLや他のプログラムのチューニングをしない...という意味です。

実際、MQL5で実装されたOOPは(端末自体のリソースと合わせて)、通常のアプローチで、操作速度を大幅に向上させることができます。

 
Serj_Che:

読書です。役に立ちません。

だから、テトリスではなく、トレーディングにOOPの使い道はないかと聞いているんです。一例も見つかりませんでした。

MACD Sample.mq5と Moving Average.mq 5はもうTARGET専門家の例ではないと思うのですが(ところで、誰もテトリスを責めるべきではない、それはオブジェクトで作業する 良い例でした)?そして、もう基地のEAは2台ではなさそうです...。