Diskussion zum Artikel "Universeller Expert Advisor: Ein benutzerdefiniertes Trailing Stop (Part 6)"
Veröffentlichter Artikel Universal Trading Expert Advisor: Arbeiten mit benutzerdefinierten Trailing Stops (Teil 6):
Autor: Vasiliy Sokolov
- 2015.06.18
- Vasiliy Sokolov
- www.mql5.com
Hallo. Tolle Arbeit, vielen Dank! Sagen Sie mir, planen Sie, in der Engine die Ansätze für den Handel an der MOEX zu implementieren, die Sie in dem Artikel https://www.mql5.com/de/articles/1683 beschreiben ? Ich interessiere mich besonders für die Analyse der Marktliquidität und die darauf basierende Eingabe mit einer bestimmten Abweichung (max. Slippage).
//+------------------------------------------------------------------+ //| Schließt die aktuelle Marktposition durch Setzen des Schlusskurses. //| Kommentar gleich Kommentar| //+------------------------------------------------------------------+ bool CPosition::CloseAtMarket(string comment="") { if(!IsActive()) return false; m_trade.PositionModify(m_id, 0.0, 0.0); ENUM_ACCOUNT_MARGIN_MODE mode=(ENUM_ACCOUNT_MARGIN_MODE)AccountInfoInteger(ACCOUNT_MARGIN_MODE); if(mode != ACCOUNT_MARGIN_MODE_RETAIL_HEDGING) return m_trade.PositionClose(m_symbol); return m_trade.PositionClose(m_id); }
Können Sie mir sagen, warum m_trade.PositionModify(m_id, 0.0, 0.0) in dieser Funktion? Ich habe Invalid Stops Fehler im Protokoll wegen dieser Operation.
Können Sie mir sagen, warum m_trade.PositionModify(m_id, 0.0, 0.0) in dieser Funktion? Ich habe wegen dieses Vorgangs ungültige Stopps im Protokoll.
Ich habe nichts geändert, aber beim Kompilieren eines der nachgestellten Module, einschließlich der Basisklasse, erhalte ich Fehler:
'CTrailing' - declaration without type PositionMT5.mqh 48 4 'Trailing' - undeclared identifier PositionMT5.mqh 73 20 'Trailing' - object pointer expected PositionMT5.mqh 73 20 'Trailing' - object pointer expected PositionMT5.mqh 74 14
bool CTrailingClassic::Modify(void) { if(CheckPointer(m_position)==POINTER_INVALID) { string text="Invalid position for current trailing-stop. Set position with 'SetPosition' method"; CMessage *msg=new CMessage(MESSAGE_WARNING,__FUNCTION__,text); Log.AddMessage(msg); return false; } if(m_diff_extremum<=0.0) { string text="Set points trailing-stop with 'SetDiffExtremum' method"; CMessage *msg=new CMessage(MESSAGE_WARNING,__FUNCTION__,text); Log.AddMessage(msg); return false; } double extremum=FindExtremum(m_position); if(extremum == 0.0)return false; double n_sl = 0.0; if(m_position.Direction()==POSITION_TYPE_BUY) n_sl=extremum-m_diff_extremum; else n_sl=extremum+m_diff_extremum; if(n_sl!=m_position.StopLossValue()) return m_position.StopLossValue(n_sl); return false; }
Es kann nicht schaden, zu prüfen, ob der neue Sl unter dem aktuellen Preis für eine Long-Position und über dem aktuellen Preis für eine Short-Position liegt.
Hallo. Vielen Dank für den Artikel.
Wie kann ich die Losgröße für jeden Handel einstellen? Ich sehe, dass es nur ein Lot kauft.
Vielen Dank im Voraus
Dear Mr Sokolov,
Very interesting article, but unfortunately I couldn't instal a single one of your codes without tons of compiller errors. I tried all 9 parts but in vain.
Hence my question: Is there a specific approach to install your code?
Thank You
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Neuer Artikel Universeller Expert Advisor: Ein benutzerdefiniertes Trailing Stop (Part 6) :
Der sechste Teil des Artikels über den universellen Expert Advisor beschreibt die Verwendung eines Trailingstops. Dieser Artikel führt sie durch die Erstellung eines Trailingstop-Moduls, welches einheitliche Regeln verwendet, sowie durch den Vorgang, wie dieses Modul der Trading Engine hinzugefügt wird, damit es automatisch Positionen verwaltet.
Die CStrategy Trading Engine hat sich seit ihrer ersten Publikation in dem ersten Teil dieser Artikel stark verändert. Wir haben neue Funktionen und Module für erweiterte Handelsmöglichkeiten hinzugefügt. Zudem sind einige Compiler Versionen mit unterschiedlichen Veränderungen seit der ersten Veröffentlichung erschienen. Einige dieser Veränderungen sind inkompatibel mit den älteren Versionen der CStrategy, was dazu geführt hat, dass wir die Trading-Engine modifizieren mussten. Diese Korrekturen und Erweiterungen für Ursachen das Auftreten von unvermeidlichen Fehlern. In diesem Abschnitt werden wir die Fehlerkorrekturen der neuesten Version der Trading Engine abdecken.
Autor: Vasiliy Sokolov