Diskussion zum Artikel "Schrittweiser Leitfaden für Anfänger zum Schreiben eines Expert Advisors in MQL5" - Seite 3
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Versuche den neuen Code zu verstehen. Der Code funktioniert erst mal.
Leider öffnet der EA weitere Positionen, wenn schon welche offen sind.
Wo steckt der Fehler?
Danke
Vermutlich daran das du nicht fragst ob schon eine position offen ist oder nicht. Wenn du das nicht machst eröffnet er solange die bedingung erfüllt ist
Hallo allerseits,
ich habe Samuels EA derzeit auf einem Demokonto laufen und bin durchaus zufrieden. Gute Programmierung!
Er zeigt immer mal wieder gute Handelsabläufe, aber er hat eine Schwäche:
SELL-Optionen häufen sich bei Wendepunkten im Tal der Chartverläufe und dasselbe an entsprechenden Scheitelpunkten mit BUY-Optionen, die dann erstmal massiv als Negativa zu buche schlagen. Ich würde das gerne umprogrammieren, d. h. BUYs im Tag, SELLs auf dem Scheitel, und scheitere mit meinen Versuchen bislang. Ich beherrsche auch nur rudimentär MQL5.
Kann mir jemand helfen?
SG und vielen Dank!
So etwas funktioniert meist nicht, weil dann auch die anderen Punkte, an denen der EA eine profitable Position eingeht, umgedreht werden ....
Lies aber mal das hier:
EA-freelancer Pflichtenheft : https://www.mql5.com/de/articles/4368
Indi : https://www.mql5.com/de/articles/4304
How to Order a Trading Robot in MQL5 and MQL4 : https://www.mql5.com/de/articles/117
Mit den dortigen Hinweisen kannst Du Deine Idee genauer präzisieren, sei es nur für Dich, um zu sehen, ob es geht, oder sei es, um jemanden zu bitten es zu tun, mit oder ohne Bezahlung.
Hallo zusammen😊
@Mario31415927
Das liegt ganz einfach daran, dass im Ticker, jedes Mal, wenn eine neue Periode- bzw. neuer Balken (wie auch immer) die Variablen:
zurückgesetzt werden, unabhängig davon, ob bereits Positionen offen sind oder nicht.
Lässt sich ja im Code relativ schnell finden.
Hier stellt sich mir allerding die Frage, ob das beabsichtig wurde, und wenn ja, wie werden dann alle Positionen wieder geschlossen?
Vielleicht verstehe ich auch den Ordertyp TRADE_ACTION_DEAL in dem Zusammenhang nicht?
Den Ablauf der Handelsorder könnte man auch einfach auf die Handelsklasse Trade anpassen. Wie z.B.:
Schöne Grüße:-)Lies mal: https://www.mql5.com/de/articles/232
Das erklärt den Unterschied und die Zusammenhänge von Orders, Positionen und Deals. Letztere spiegeln die Buchungsvorgänge auf Brokerseite.
Lies mal: https://www.mql5.com/de/articles/232
Das erklärt den Unterschied und die Zusammenhänge von Orders, Positionen und Deals. Letztere spiegeln die Buchungsvorgänge auf Brokerseite.
Hallo Carl,
danke für den Hinweis!
Ich muss mich allerdings berichtigen.
Es ist zwar richtig, dass die Variablen bei jeder neuen Zeitperiode zurückgesetzt werden:
Aber diese werden anschließend wieder gesetzt, wenn dementsprechend eine Position vorliegt.
Bei mir tritt jedoch das Phänomen auf, dass die Buy (POSITION_TYPE_BUY) korrekterweise abgefragt wird, jedoch nicht die Sell (POSITION_TYPE_SELL). Die Variable wir einfach nicht mehr gesetzt??
Muss den Code Schritt- für Schritt durch-debuggen. Das kann doch nur ein logischer Fehler sein😉
Sell_opened = true; // It is a Sell
Ohje, ich steh heute sowas von auf der Leitung.
Es wird ja auch nur einmal abgefragt. Das ist der Fehler;-)
Hier sollten wie folgt alle Positionen abgesucht werden;