|
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
MQL4: Stoplevel zu nah -> erst MarketOrder ausführen und dann SL & TP mit OrderModify
Hallo zusammen,
ich bin bisher erfolglos auf der Suche, wie ich eine PendingOrder umgehen kann, wenn der MODE_STOPLEVEL zu nah an der eigentlichen Ausführung liegt. Beispiel: USDJPY Ask: 110.053 Bid: 110.042 Mit einem Buy Stop Order erstelle ich eine Kauforder (PendingOrder) über dem Askpreis. Allerdings muss ein bestimmter Abstand vorhanden sein, damit die Order gesetzt wird. Soll der EntryPrice bei 110.055 gesetzt werden, dann ist keine PendingOrder möglich - ich müsste also warten bis der Askpreis zumindest etwas runter gegangen ist. Mein aktueller Ansatz Manuell löse ich das Problem, indem ich erst eine Marketorder setze - also direkt die Lotgröße bestimme und auf "buy" klicke. Erst nach dem offenen Trade platziere ich den StopLoss und meinen TakeProfit. Dies würde ich gerne durch den Expert Advisor ausführen lassen. Ich habe es noch nicht ausprobiert, aber wäre das in der Form korrekt?: Code:
OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,0,"buy",12345,0,clrGreen); OrderSelect(12345,SELECT_BY_TICKET) OrderModify(OrderTicket(),OrderOpenPrice(),NormalizeDouble(Bid-Point*30,Digits),NormalizeDouble(Ask+Point*30,Digits),0,Blue); |
|
|||
Wenn ein StopLevel > 0 ist, dann wird man weder eine PendinOrder innerhalb dieses Wertes vom aktuellen Preis platzieren können, noch eine MarketOrder mit einem SL und/oder TP ausgehend vom OpenPrice versehen können.
D.h. der vorgegebene Abstand, durch den Wert des StopLevels, muss so oder so berücksichtigt werden. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Das einzige was mir einfällt, um das zu "umgehen" ist eine eigene Stoplinie.
Beispiel: - Du willst Long gehen bei 100 - Der erforderliche Stopwert ist 10, d.h. Dein Stoplevel wäre also bei 90 - Du willst aber Stoplevel 95 haben, der wäre normalerweise zu nahe am Kurs Wenn die Order erfolgreich geöffnet wurde, erstellst Du Deine Stoplinie auf 95 und dann überwachst Du, ob der Bidkurs die Stoplinie erreicht (wenn ja, Order schließen, wenn nein und 90 erreicht, kannst Du die Linie durch einen normalen SL ersetzen wenn Du willst). So würde ich vorgehen. AVT |
Lesezeichen |
Stichworte |
marketorder, ordermodify, pendingorder |
|
|