CPositionInfo

 

Hallo,


ist das nur bei mir ein Fehler oder denk ich grad zu kompliziert


ich definiere in einen EA im allgemeinen Teil

#include <Trade\PositionInfo.mqh>            // wird verwendet für die Position Information Funktionen 
CTrade position;                             // initialisieren der Position Informationen z.B position.Profit();


meine Intuition war, das ich dann einfach auf die Klasse zugreifen kann.

quasi

position.SelectByTicket(TicketID);


das funktioniert ja in allen anderen Trade Klassen auch so

nur hier kennt er es nicht


https://www.mql5.com/de/docs/standardlibrary/tradeclasses/cpositioninfo

Dokumentation zu MQL5: Standardbibliothek / Handelsklassen / CPositionInfo
Dokumentation zu MQL5: Standardbibliothek / Handelsklassen / CPositionInfo
  • www.mql5.com
Standardbibliothek / Handelsklassen / CPositionInfo - Nachschlagewerk über die Sprache des algothitmischen/automatischen Handels für MetaTrader 5
 

Amando,

  1. klicke mal auf CodeBase
  2. Dann wählst Du MT5 &  Expert Advisor und sucht Die einen aus: zB. Puria method
  3. Dann studierst Du wie es dort gemacht wird..
 
amando:


Du verwechselst da etwas:


Ein Object von der Klasse CTrade wird so erstellt

#include <Trade\Trade.mqh>
CTrade trade;

Und das von der Klasse CPositionInfo folgend.

 #include <Trade\PositionInfo.mqh>

CPositionInfo position;

Erst dann kannst du

position.SelectByTicket(TicketID);

anwenden.

 
Christian:

Du verwechselst da etwas:


Ein Object von der Klasse CTrade wird so erstellt

Und das von der Klasse CPositionInfo folgend.

Erst dann kannst du

anwenden.

Danke, jetzt ist es klar

kannst Du mis den Hintergrund dafür erklären??

offne ich mit dem CPositioniInfo die Klasse?

 
amando:

Danke, jetzt ist es klar

kannst Du mis den Hintergrund dafür erklären??

offne ich mit dem CPositioniInfo die Klasse?

Klarr , ich mach es kurz.


CTrade und CPositionInfo sind Klassennamen.Den Namen einer Klasse findest du in der *.mqh passend zur Klasse.

Ein Objekt wird erstellt und zwar eine Kopie in dem du den Klassennamen gefolgt von dem Namen des neuen Objektes.



Mehr findest du hier :

https://www.mql5.com/de/docs/basis/oop

https://www.mql5.com/de/articles/351

https://www.mql5.com/de/articles/116

http://www.online-tutorials.net/c-c%2b%2b-c/c%2b%2b-tutorial-teil-1/tutorials-t-1-58.html

http://wwwlehre.dhbw-stuttgart.de/~kfg/cpp/cpp.pdf

Grundlagen der objektorientierten Programmierung
Grundlagen der objektorientierten Programmierung
  • www.mql5.com
Wir können annehmen, dass jeder, der angefangen hat, die objektorientierte Programmierung (OOP) zu erlernen, als Erstes auf Begriffe wie Polymorphismus, Kapselung, Overload und Vererbung gestoßen ist. Vielleicht hat jemand einige vorgefertigte Klassen betrachtet und versucht herauszufinden, wo sich der Polymorphismus oder die Kapselung...
 
Christian:

Klarr , ich mach es kurz.


CTrade und CPositionInfo sind Klassennamen.Den Namen einer Klasse findest du in der *.mqh passend zur Klasse.

Ein Objekt wird erstellt und zwar eine Kopie in dem du den Klassennamen gefolgt von dem Namen des neuen Objektes.



Mehr findest du hier :

https://www.mql5.com/de/docs/basis/oop

https://www.mql5.com/de/articles/351

https://www.mql5.com/de/articles/116

http://www.online-tutorials.net/c-c%2b%2b-c/c%2b%2b-tutorial-teil-1/tutorials-t-1-58.html

http://wwwlehre.dhbw-stuttgart.de/~kfg/cpp/cpp.pdf

Danke, das war mal super verständlich 🍾🍾🍾