MQL5 Tutorial - Automatisch traden mit Metatrader5

MQL5 TUTORIAL GRUNDLAGEN – 85 SIMPLER TAKE PROFIT POINT TEST


Listen Later

In diesem Video wollen wir einmal testen, wie man Profit Punkte optimieren kann. Wir haben hier einen benutzerdefinierten Wert, den wir verändern können. Also lassen Sie uns einmal schauen, wie man so etwas in MQL5 programmieren kann. Um das zu tun klicken Sie im Metatrader bitte auf dieses kleine Symbol hier oben oder drücken Sie die F4-Taste. Das ruft dann hier den Metaeditor auf und hier klicken wir auf Datei, neue Datei, Expert Advisor aus Vorlage, weiter. Ich vergebe hier einmal den Namen SimplerProfitPointTest, klicke auf weiter, weiter und fertigstellen. Jetzt kann alles oberhalb dieser OnTick-Funktion hier gelöscht werden. Und auch die zwei Kommentarzeilen werden entfernt. Wir starten mit einem include-Befehl. Der wird uns die Datei trade.mqh importieren. Die ist Bestandteil von MQL5 und sie enthält eine Klasse mi dem Namen CTrade. Davon erstellen wir uns hier eine Instanz, die wir trade nennen. In der OnTick-Funktion möchten wir gerne den Aks- und den Bid-Preis berechnen. Das übernimmt die Funktion SymbolInfoDouble, für das aktuelle Währungspaar auf dem Chart. Der zweite Parameter ist entweder SYMBOL_ASK oder SYMBOL_BID, je nach dem ob wir den Ask- oder den Bid-Preis berechnen möchten und mit NormalizeDouble und _Digits stellen wir sicher, dass die richtige Anzahl von Nachkommastellen berechnet wird. Das kann nämlich je nach Währungspaar unterschiedlich sein. Im nächsten Schritt nutzen wir MqlRates, um uns ein Array mit Preisdaten zu erstellen. Das wird jetzt mit Hilfe der Funktion ArraySetAsSeries von der aktuellen Kerze an abwärts sortiert und mit der Funktion CopyRates füllen wir unser Array jetzt mit Preisdaten für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Wir starten bei Kerze 0 und kopieren die Werte für die nächsten drei Kerzen und speichern sie unserem PriceInfo Array. Danach möchten wir eine Signalvariable erstellen. Die ist vom Typ string damit sie Text aufnehmen kann und bekommt hier noch keinen Wert zugewiesen, denn wir möchten unser Signal anhand von einem Simple Moving Average, für 50 Kerzen, ermitteln. Dazu erstellen wir uns hier erst einmal ein passendes Array. Im nächsten Schritt nutzen wir die in MQL5 eingebaute Funktion IMA für das aktuelle Währungspaar auf dem Chart und die aktuelle Zeiteinheit auf diesem Chart, um für 50 Kerzen ohne eine Verschiebung einen Wert für einen Simple Moving Average zu berechnen. Deswegen nutzen wir hier MODE_SMA. Und der letzte Parameter PRICE_CLOSE sorgt dafür, dass die Ergebnisse anhand der Schlusskurse ermittelt werden. Auch hier nutzen wir wieder ArraySetAsSeries, um unser Array von der aktuellen Kerze an abwärts zu sortieren. Und mit CopyBuffer füllen wir unser Array mit Daten, und zwar anhand der SMA50-Definition, die wir hier oben getroffen haben. Wir tun das für Buffer 0, von der aktuellen Kerze 0 und speichern die Daten von 10 Kerzen in unserem Array. Uns interessiert im Moment nur der aktuelle Wert. Den erhalten wir, wenn wir auf den Wert von Kerze 0 in unserem Array zugreifen. Und das Ergebnis weisen wir hier dieser Variable zu. Und wenn dieser Wert größer ist als der aktuelle Ask-Preis, dann möchten wir gerne kaufen und dann weisen wir den Begriff buy unserer Signalvariable zu. Im anderen Fall, wenn der Wert kleiner ist als der aktuelle Bid Preis, dann möchten wir gerne verkaufen und dann weisen wir den Begriff sell unserer Signalvariable zu. Und jetzt kommt der eigentlich interessante Teil: Denn wenn unser Signal auf sell steht und PositionsTotal uns einen Wert kleiner 1 zurückliefert, dann haben wir keine geöffneten Positionen, aber ein Sell-Signal. Und dann nutzen wir trade.Sell, um 10 Microlot zu verkaufen. Und hier kommt jetzt unsere UserProfitPointValue-Variable zum Einsatz. Denn hier legen wir jetzt unseren Take Profit fest. Der wird hier noch mit dem Punktewert für die aktuelle Währung multipliziert. Die kann je nach ausgewähltem Währungspaar unterschiedlich sein. Im anderen Fall,
...more
View all episodesView all episodes
Download on the App Store

MQL5 Tutorial - Automatisch traden mit Metatrader5By MQL5 Tutorial - Automatisch traden mit Metatrader5