PLO

 

S'il vous plaît, ne me donnez pas de coup de pied, mais expliquez sur vos doigts ce qu'est le type d'OOP et comment le préparer.

J'espère avoir une réponse des créateurs de MKL5 et des programmeurs qui ont demandé à faire de la POO dans MKL5.

En ce qui concerne l'accélération ou le ralentissement. A première vue, MKL5 est un mangeur de ressources qui n'augmente pas la vitesse par rapport à MKL4.

J'aimerais voir des exemples concrets de gains de performance.

 
Serj_Che:

S'il vous plaît, ne me donnez pas de coup de pied, mais expliquez sur vos doigts ce qu'est le type d'OOP et comment le préparer.

J'espère avoir une réponse des créateurs de MKL5 et des programmeurs qui ont demandé à faire de la POO dans MKL5.

En ce qui concerne l'accélération ou le ralentissement. A première vue, MKL5 est un mangeur de ressources qui n'augmente pas la vitesse par rapport à MKL4.

J'aimerais voir des exemples concrets de gains de performance.

Consultez cet article https://www.mql5.com/ru/articles/116
Написание советника в MQL5 с использованием объектно-ориентированного подхода
Написание советника в MQL5 с использованием объектно-ориентированного подхода
  • 2010.07.12
  • Samuel
  • www.mql5.com
Эта статья посвящена использованию объектно-ориентированного подхода для создания советника, рассмотренного в статье "Пошаговое руководство по написанию советников для начинающих". Большинство людей думают, что это сложно, но могу вас заверить, что после прочтения этой статьи вы сможете написать свой собственный советник на основе объектно-ориентированного похода.
 
sergey1294:
lire cet article https://www.mql5.com/ru/articles/116

Je t'ai dit de ne pas me frapper, relis mon message.

P.S. J'ai fait des recherches mais je n'ai jamais compris de quoi il s'agissait.

 
Serj_Che:

Je t'ai dit de ne pas me frapper, relis mon message.

P.S. Je l'ai fait, mais je ne sais toujours pas quel est le but.

L'essentiel est que vous pouvez créer des algorithmes plus complexes dans un programme.
 
sergey1294:
Eh bien, d'après ce que j'ai compris, la POO vous permet de créer des algorithmes plus complexes dans un programme.

Des algorithmes complexes ne signifient pas des algorithmes efficaces.

Pour entrer dans une maison, on peut passer par une porte, par une fenêtre ou par une cheminée.

C'est pourquoi j'ai demandé des exemples (de préférence pour le trading, pas pour tetris).

 

Essayez de lire les articles

Je l'ai lu. Ça aide.

 

Bien sûr, la POO n'est pas une panacée.

cela va consommer plus de ressources

car il charge l'objet entier

en programmation structurelle, le compilateur écarte les fonctions inutilisées

ainsi, contrairement à la programmation structurée, la programmation de base a ses propres avantages

En général, la POO permet de créer une structure pour stocker des données avec des méthodes spécifiques.

Bien sûr, tout cela ouvre de nombreuses possibilités pour la POO et la différence avec la structure

mais c'est à chaque individu de décider de l'approche à adopter.

 
CoreWinTT:

Essayez de lire les articles

la lecture aide.

Je l'ai fait. Ce n'est pas le cas.

C'est pourquoi je demande si la POO est utile pour le commerce et non pour le tétris. Je n'ai pas trouvé d'exemples.

 
Serj_Che:

Lecture. Ça ne sert à rien.

C'est pourquoi je demande s'il y a une utilité de la POO pour le commerce et non pour le tétris. Je n'ai pas pu trouver un seul exemple.

La POO n'augmente pas les performances. C'est utile - par exemple, il y a une fonction appelée avec certains paramètres (disons le calcul de l'EMA), la fonction utilise une variable statique pour stocker la valeur précédente de l'EMA. Puisque la fonction stocke la dernière valeur sur la base de laquelle les calculs seront effectués, elle ne peut pas être appelée avec d'autres paramètres (symbole, timeframe, période de lissage) lors de l'appel suivant de la fonction. Par conséquent, si la fonction doit être appelée avec des paramètres différents, il est nécessaire d'en faire une copie avec un nom différent ou d'utiliser une variable globale passée par référence au lieu d'une variable statique. C'est le seul cas où il est plus pratique d'utiliser un objet - vous chargez une instance d'objet, définissez ses paramètres et appelez ensuite la méthode sans paramètres. Si l'objet comprend des méthodes, dont l'exécution ne dépend pas des exécutions précédentes ou en général des paramètres avec lesquels l'objet est chargé, il ne donne rien d'autre que la consommation de ressources.

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

S'il vous plaît, ne me donnez pas de coup de pied, mais expliquez sur vos doigts ce qu'est le type d'OOP et comment le préparer.

J'espère entendre la réponse des créateurs de MKL5 et des programmeurs qui demandent à faire de la POO dans MKL5.



Donc, un peu de POO (je l'explique sur mes doigts, comme je peux)...

LaPOO (programmation orientée générique ) - un paradigme de programmation dans lequel les concepts de base sont les concepts d'objets et de classes.

Dans le cadre de MQL5, les éléments de base de la POO sont : les structures, les classes (qui ont leurs propres propriétés et méthodes), les objets et les événements.

Quel que soit le langage dans lequel la programmation est effectuée, il est nécessaire de connaître (comme une prière ou une table de multiplication) les concepts suivants : abstraction de données, encapsulation, héritage et polymorphisme.

La bibliothèque standard MQL5 comprend actuellement les classes de transaction suivantes : CAccountInfo, CSymbolInfo, COrderInfo, CHistoryOrderInfo, CPositionInfo, CDealInfo et CTrade.

Pour autant que je sache, les développeurs vont étendre la liste des objets de la bibliothèque standard (et personne n'interdit de créer sa propre bibliothèque de classes d'objets).

Serj_Che:

Est-ce que cela accélère ou ralentit le travail. A première vue, MKL5 est un mangeur de ressources sans aucune augmentation de vitesse par rapport à MKL4.

J'aimerais voir des exemples concrets de gains de performance.

Si même MQL4 met en œuvre(par miracle) la moitié de ce que MQL5 permet déjà, il consommera 100 fois plus de ressources que prévu (aussi étrange que cela puisse paraître). Je veux dire purement MQL4 ici, sans DLLs tiers et autres réglages du programme...

En fait, la POO mise en œuvre dans MQL5 (ainsi que les ressources du terminal lui-même) donnerait une augmentation significative de la vitesse d'opération, en utilisant une approche normale.

 
Serj_Che:

Lecture. Ça ne sert à rien.

C'est pourquoi je demande s'il y a une utilité de la POO pour le commerce et non pour le tétris. Je n'ai pas pu trouver un seul exemple.

Je pense queMACD Sample.mq5 et Moving Average.mq5 ne sont plus des exemples d'experts en cibles (d'ailleurs, personne ne doit blâmer Tetris, c'était un bon exemple de travail avec des objets) ? Et il semble qu'il n'y ait plus 2 EA dans la base...
Raison: