|
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 |
|
|||
Funktioniert denn nun das Programm fehlerfrei oder erscheint immer noch Error1?
Übrigens in die OrderModify()-Funktion wird nur gesprungen, wenn nur 1 Order offen ist. Falls immer noch Error1 kommt, dann wird evtl. if(OrderStopLoss() != OrderOpenPrice()) auch nach dem Verschieben des SL true ergeben. Dazu mal Über Alert(DoubleToStr(OrderStopLoss(), 10), " ", DoubleToStr(OrderOpenPrice(), 10)); gucken, ob auch wirklich die 10. Stelle identisch ist. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Es funktioniert nur im Strategytester kommt Error 1. Obwohl er genau macht was er soll.
Ja genau wenn nur noch 1 Order offen ist egal ob Buy oder Sell soll der SL nachgezogen werden. Alert(DoubleToStr(OrderStopLoss(), 10), " ", DoubleToStr(OrderOpenPrice(), 10)); Habe ich mal ausprobiert natürlich mit Print anstatt mit Alert. Aber ein Ergebnis liefert er mir nicht. Gibt es zu: if(OrderStopLoss() != OrderOpenPrice()) Keine Alternative? Vielleicht würde ein anderer Code besser funktionieren. |
|
|||
Direkt hinter beide
if(OrderStopLoss() != OrderOpenPrice()) muss die Print- oder Alertzeile. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Oh. hab es davor gemacht.
So sieht jetzt die Fehler Meldung aus. 2018.08.09 20:53:06.000 2018.01.12 09:40:36 Juwa EURUSD,H1: ErrorBuy: 1 2018.08.09 20:53:06.000 2018.01.12 09:40:36 Juwa EURUSD,H1: OrderModify error 1 2018.08.09 20:53:06.000 2018.01.12 09:40:36 Juwa EURUSD,H1: Alert: 1.2032100000 1.2032100000 2018.08.09 20:53:06.000 2018.01.12 09:40:36 Juwa EURUSD,H1: ErrorBuy: 1 2018.08.09 20:53:06.000 2018.01.12 09:40:36 Juwa EURUSD,H1: OrderModify error 1 2018.08.09 20:53:06.000 2018.01.12 09:40:36 Juwa EURUSD,H1: Alert: 1.2032100000 1.2032100000 Also er will immer wieder auf die selbe stelle den SL ziehen. Wie bekomme ich das Problem gelöst? |
|
|||
Dann teste einfach nochmal statt mit 10 Kommastellen mit 20.
Ich hatte früher ein ähnliches Verhalten, nur weiss ich nicht mehr, welche Stelle das war. Ansonsten kannst Du auch mal folgendes probieren: if(NormalizeDouble(OrderStopLoss(), Digits) != NormalizeDouble(OrderOpenPrice(), Digits)) Ist zwar eigentlich albern, aber man weiss nie, aber der springt nur in die OrderModify()-Funktion wenn die != Abfrage true ist. traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
Nach 3 Seiten versteh ich hier weniger als vorher.
Was fürn Stop soll auf 0 gezogen werden Und warum überhaupt? Wenn dabei der Minstoplevel nicht eingehalten wird, funkts sowieso nicht. |
|
|||
Wer redet denn von SL 0. Schau Dir den Code in Post # 20 an, da iwrd der Sl auf Entry gezogen.
Und das MinStopLevel kann auch durchaus bei 0 liegen! traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
|
|||
@traderdoc Also: if(NormalizeDouble(OrderStopLoss(), Digits) != NormalizeDouble(OrderOpenPrice(), Digits))
Hat tatsächlich funktioniert es gibt kein ERROR 1 mehr. Das Alberne hat funktioniert ^^. Danke dafür. |
|
|||
Ja, beim Vergleich von double-Zahlen gibt es immer wieder solche Überraschungen. Daher lieber mal zusätzlich die double-Zahl normieren, v.a. wenn es um Orderwerte geht.
traderdoc
__________________
Ich erfülle Euch gern Eure EA-, Indikator- und Script-Programmierungswünsche auf Honorarbasis. |
Lesezeichen |
Stichworte |
nachziehen, null, stoploss |
Themen-Optionen | Thema durchsuchen |
Ansicht | |
|
|