Vous manquez des opportunités de trading :
- Applications de trading gratuites
- Plus de 8 000 signaux à copier
- Actualités économiques pour explorer les marchés financiers
Inscription
Se connecter
Vous acceptez la politique du site Web et les conditions d'utilisation
Si vous n'avez pas de compte, veuillez vous inscrire
Oui ? Cela ne crée-t-il pas un nouvel objet indépendant ?
Vérifions maintenant - je vais insérer des lignes comme ceci :
ainsi que
et un script de test :
Résultat :
Un objet est créé, puis un SECOND (il s'avère qu'il n'y a pas de recréation - un nouveau est créé), la position BUY est ouverte avec la magie "0" - c'est-à-dire que le second objet "trade" l'a ouverte.
On constate alors que les deux objets sont détruits dans l'ordre inverse : d'abord le second (avec la magie "0") puis le premier (avec la magie "123").
Oui ? Cela ne crée-t-il pas un nouvel objet indépendant ?
Oui, il s'agira d'une nouvelle instance de la classeCTrade.
etmême plus, le destructeur de CTrade sera appeléà la sortie de void OnTick() et au prochain OnTick() le constructeur de CTrade sera appelé à nouveau.
oui, il y aura une nouvelle instance de la classeCTrade
Si le void OnTick() est quitté, le destructeur de CTrade sera appelé, et le prochain OnTick() appellera à nouveau le constructeur de CTrade.
Oui, je m'en suis rendu compte immédiatement après la réponse d'Artem.
Forum sur le trading, les systèmes de trading automatisés et les tests de stratégie
OOP pour les écoliers.
Artyom Trishkin, 2019.10.08 20:23
C'est exactement la même chose qu'avec les variables.
Et la concentration :
À mon avis, mql a un ensemble très restreint de tâches qui doivent être résolues par la POO. Le langage lui-même me semble n'être rien de plus qu'un OOP en C++ ou autre. Et cette POO est proposée sous la forme d'une bibliothèque standard. Et à cette OOP, il est suggéré d'ajouter, sinon je ne dirais pas, une autre OOP. Et puis une autre étape... Bien dit Warlock, bien que fâché, mais bienveillant, pour mes tâches OOP est comme une platine de chien. Et à quoi bon définir un problème et sa réalisation ultérieure au moyen de la POO si ce problème sans problème peut être résolu en style procédural.
Ici par exemple prendre .mqh de fxsaber`a pour écrire des codes pour MT5 ainsi que pour MT4. Peut-être que quelqu'un en a besoin, mais regarde qui. Ceux qui ne veulent ou ne peuvent absolument pas maîtriser le mql5. Ou prenez iCanvas de Nikolay ... j'ai oublié son nom de famille. Il semble que ce soit une bibliothèque utile, mais il n'est pas facile de la comprendre, et il n'y a pas de documentation, même une petite description. Ce n'est pas une plainte, désolé Nikolay, c'est un fait. Ainsi, lorsque j'ai décidé d'essayer d'écrire une étiquette graphique, il était plus facile de l'écrire sans faire référence à la bibliothèque standard ou à la bibliothèque de Nikolaï.
En fait, Alexey, tu peux obtenir suffisamment d'informations sur iCanvas en consultant la page de description de KB.https://www.mql5.com/ru/code/22164. Vous devez étudier attentivement les commentaires du code. La signification de toutes les fonctions est intuitive à partir de leur nom.
Mais tu pourrais avoir raison. Je devrais enregistrer une vidéo de l'écriture d'un indicateur simple mais utile en utilisant iCanvas et expliquer visuellement certaines caractéristiques de cette classe. Il y a encore quelques subtilités.
Pour être franc, je n'aime pas la façon dont iCanvas est écrit actuellement. Je veux le froisser, le jeter à la poubelle et le réécrire dans un style plus correct.
70% du code de cette bibliothèque consiste à accélérer certaines des fonctions régulières nécessaires pour gérer les coordonnées et l'accès aux données.
Ainsi, si vous appliquez cette classe, les graphiques seront plus rapides que si vous le faites "de front" avec CCanvas. C'est sa principale caractéristique et son avantage. Et, bien sûr, il est vraiment plus facile de former des graphiques, des figures, des commentaires.
Je voudrais également ajouter, Alexey, que l'objectif de nombreuses publications dans CodeBase, y compris fxsaber et mes publications est un désintéressement "juste pour partager - qui en a besoin, le comprendra". Si souvent, passer du temps sur des instructions détaillées est tout simplement une perte de temps.
Dans le forum notamment, j'ai posté de nombreux exemples courts et illustratifs utilisant iCanvas.
Ici, par exemple :
https://www.mql5.com/ru/code/25929
https://www.mql5.com/ru/code/25113
https://www.mql5.com/ru/code/25414
https://www.mql5.com/en/code/24798
https://www.mql5.com/ru/forum/227736/page41#comment_13259627
https://www.mql5.com/ru/forum/227736/page24#comment_12836622
https://www.mql5.com/en/forum/323629#comment_13442470
https://www.mql5.com/ru/forum/321704#comment_13131995
https://www.mql5.com/ru/forum/317257/page3#comment_12341593
https://www.mql5.com/en/forum/229521/page2#comment_10258148
En fait, Alexey, tu peux obtenir suffisamment d'informations sur iCanvas en consultant la page de description de la KB. https://www.mql5.com/ru/code/22164 Vous devez étudier attentivement les commentaires du code. La signification de toutes les fonctions est intuitivement claire à partir de leur nom.
Nikolaï, ne prête pas attention à mes paroles. Il y a si peu de gens comme moi parmi ceux qui étudient la programmation, si je ne suis pas le seul, que cela ne vaut pas la peine de leur prêter attention du tout.
Pour moi, pour apprendre les commentaires en code, il faut d'abord apprendre Aglitsky)).
Si j'avais un besoin urgent, je pourrais passer du temps et traduire tous les commentaires, essayer de comprendre la traduction automatique et faire des corrections. Mais ce n'est pas nécessaire.
Par exemple, prenez le .mqh de fxsaber`a pour écrire des codes pour MT5 ainsi que pour MT4. Peut-être que quelqu'un en a besoin, mais regardez qui... Ceux qui ne veulent pas ou ne peuvent absolument pas maîtriser le mql5.
Je pense que je connais assez bien MQL5, mais j'ai besoin d'une bibliothèque de trading. Je ne parle pas du style MT4, mais d'une bibliothèque de trading pour MT5, qui serait confortable et rapide à utiliser. Et cette bibliothèque ne présente pas de bogues pendant les transactions réelles.
Comme une telle bibliothèque n'était pas disponible (et je ne sais pas si elle existe) dans le domaine public, j'ai dû développer la mienne. À cette fin, j'ai dû décider quel type d'outil, sous la forme d'un ensemble defonctions commerciales, j'allais inventer. J'ai emprunté le jeu MT4, qui est assez bon. Ce qui, en prime, a permis de ne pas écrire la documentation à la bibliothèque et de l'étudier. Et d'autres goodies.
Ainsi, la connaissance de MQL5 est parfois à un niveau élevé parmi les utilisateurs.