|
Startseite | Registrieren | Hilfe | Benutzerliste | Kalender | Suchen | Heutige Beiträge | Alle Foren als gelesen markieren |
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Stop/Loss löschen - SL löschen - Stopp löschen
Hallo,
ich möchte in einem bestehende EA einen eingetragenen Stop Loss bei einer bestimmten Bedingung löschen. Ich bin totale Anfängerin Kann noch nichtmal Wenn Dann Beziehungen programmieren ... Also, wenn der aktuelle Kurs über dem OrderOpenPrice() liegt, sollen alle eingetragenen StopLoss gelöscht werden. Ist "Bid" der aktuelle Kurs?? Ist "ObjectDelete(SL)" der Befehl um einen Stop/Loss zu löschen Wie lautet der Befehl um einen StopLoss zu löschen ? Wie lautet die Wenn Dann-Bedingung? Mein CodeSchnipsel lautet -der nicht funktioniert : if(Bid>OrderOpenPrice())ObjectDelete(SL) Der geht aber nicht Brauche eure Hilfe Liebe Grüße Julia |
|
|||
geht auch nicht
if(bid<OrderOpenPrice())OrderStopLoss(delete)
geht auch nicht |
|
|||
Zitat:
Mach Dich mal über Bid und Ask schlau. |
|
|||
Vorher die Order selektieren und dann wird in der Funktion OrderModify() an der Stelle, wo der StopLoss eingetragen wird, eine 0 geschrieben - fertig.
traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Zitat:
dann die entsprechende order schließt, aber das ist weder zuverlässig, noch "gutes Timing", wenn der Kurs mal ausschlägt. Viel besser wäre es doch, deinen Stoploss dann einfach +- Null zu setzen, um kein Risiko mehr zu haben... Zitat:
Stark vereinfacht... Eine BUY-Order wird zum Ask eingegangen und zum Bid geschlossen. Eine SELL-Order wird zum Bid eingegangen und zum Ask geschlossen. So das du zu Beginn einer Order immer den Spread im Minus bist. Nein. Wie der Funktionsname schon vermuten lässt, löscht du damit ein vorhandenes Objekt. Die Funktion hat garnichts mit Orders zu tun. Einen direkten Befehl dafür gibt es nicht. Dazu musst du deine Order Modifizieren. Wie Traderdoc bereits gesagt hat, musst du OrderModify(...) aufrufen und den "neuen" Stoploss mit 0 angeben. Dadurch wird der gesetzte entfernt. Zitat:
Code:
// Order vorher natürlich selektieren... if(OrderType() == OP_BUY) // BUY-Order => Bid abfragen! { if(Bid > OrderOpenPrice()) OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderTakeProfit(),0); } else // SELL-Order => Ask abfragen! { if(Ask < OrderOpenPrice()) OrderModify(OrderTicket(),OrderOpenPrice(),0,OrderTakeProfit(),0); } |
Lesezeichen |
Stichworte |
mql4, programmierung, programmierung metatrader, programmierung mql4, s/l löschen, stop löschen, stoploss löschen |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|