MQL5 Tutorial - Automatisch traden mit Metatrader5

MQL5 Tutorial - Automatisch traden mit Metatrader5

By MQL5 Tutorial - Automatisch traden mit Metatrader5BusinessInvesting
Download on the App Store

MQL5 Tutorial - Automatisch traden mit Metatrader5 episodes

  • MQL5 TUTORIAL DEUTSCH – SIMPLER ITRIX STANDALONE EXPERT ADVISOR
    In diesem Video geht es um die Erstellung einer lauffähigen Version für den automatischen Handel mit diesem Indikator hier. Es handelt sich um den Triple Exponential Moving Averages. Diese rote Linie hier ist ein Indikator, der sich auf und ab bewegt. Immer wenn er sich unterhalb dieser gestrichelten Linie bewegt, dann ist das ein verkaufen Signal. Und sobald er über dieser Linie liegt, hätten wir ein kaufen Signal. Wie kann man jetzt einen Expert Advisor programmieren, der in der Lage ist, das hier generierte Signal im Metatrader automatisch zu handeln? Um das zu tun klicken Sie im Meta Trader bitte hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerItrixStandaloneEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt können wir alles löschen, was sich oberhalb der On Tick Funktion befindet. Und auch die zwei Kommentarzeilen werden entfernt. Wir beginnen damit, dass wir mit der include Funktion die Datei Trade.mqh importieren, die in MQL5 bereits enthalten ist. Danach können wir eine Instanz von CTrade erstellen. Die bekommt den Namen trade. Und diese Instanz werden wir später nutzen, um Positionen zu eröffnen. Innerhalb der OnTick Funktion berechnen wir uns zunächst einmal den Ask Preis und den Bid Preis. Wir brauchen beide Preise, wenn wir eine Position eröffnen wollen. Den Ask Preis erhalten wir mit der Funktion SymbolInfoDouble für das aktuelle Symbol auf dem Chart. Und wir nutzen SYMBOL_ASK um den Ask Preis zu ermitteln. Die Zeile hier ist quasi identisch. Aber wir nutzen hier SAYBOL_BID um den Bid Preis zu ermitteln. Und mit NormalizeDouble und Unterstrich Digits stellen wir sicher, dass die richtige Anzahl von Nachkommastellen ermittelt wird. Dieses Währungspaar hätte drei und dieses fünf Nachkommastellen. Und die Funktion Unterstrich Digits ermittelt die Anzahl der Ziffern nach dem Dezimalpunkt so, dass das für jedes Währungspaar passt. Im nächsten Schritt erstellen wir uns ein Preis-Array. Das geht mit der Funktion MqlRates. Wir vergeben hier den Namen PriceInfo. Dann sortieren wir das Array von der aktuellen Kerze an abwärts. Das übernimmt für uns die Funktion ArraySetAsSeries. Und mit CopyRates füllen wir unser PriceInfo Array für das aktuelle Symbol, also das Währungspaar auf dem Chart und die aktuell eingestellte Zeiteinheit auf diesem Chart. Wir starten mit der aktuellen Kerze null. Und uns reichen die Preisdaten für drei Kerzen. Für unser Signal erstellen wir hier noch eine gleichnamige Variable vom Typ string. Die kann Textketten aufnehmen. Aber hier ist noch kein Wert zugewiesen, denn den möchten wir ja noch ermitteln. Dafür brauchen wir ein zweites Array. Auch das ist vom Typ double, damit es Nachkommastellen verarbeiten kann. Wir definieren unseren aktuellen Expert Advisor mit der Funktion iTriX. Die ist in MQL5 eingebaut und benötigt als Parameter wiederum das aktuelle Währungspaar, die aktuell auf dem Chart ausgewählte Zeiteinheit. Wir berechnen das Ganze für 14 Kerzen und zwar anhand der Schlusskurse. Wenn Sie im Meta Trader einmal auf Einfügen, Indikatoren, Triple Exponential Moving Averages klicken, dann sehen Sie auch hier die 14 und den Schlusskurs. Und das ist auch das, was wir hier verwenden. Auch das zweite Array wird mit ArraySetAsSeries abwärts von der aktuellen Kerze an sortiert. Und jetzt nutzen wir den Befehl CopyBuffer um anhand der iTriX Definition, die wir hier oben getroffen haben, unser Array mit Preisdaten zu füllen. Und zwar für Buffer null. Das ist diese rote Linie hier. Auch hier starten wir mit der aktuellen Kerze null und kopieren uns die Preisdaten für drei Kerzen in unser Preis Array. Jetzt können wir den aktuellen Wert berechnen, indem wir auf Kerze null in unserem Preis Array zugreifen. Das Ergebnis wird der Variable iTriXValue zugewiesen. Und immer wenn der Wert über null liegt, dann möchten wir kaufen.
    8 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER IFRAMA STANDALONE EXPERT ADVISOR
    In diesem Video möchten wir uns einmal anschauen, wie man diesen Indikator hier automatisch handeln kann. Es handelt sich um den Fractal Adaptive Moving Average Indikator. Das ist diese blaue Linie hier. Wir haben hier bereits eine erste Position vollautomatisch eröffnet. Und wir möchten jetzt einmal schauen, wie man einen Expert Advisor programmieren kann, der in der Lage ist, auf dem Chart diese Kaufen und Verkaufen Signale auszugeben und Positionen automatisch zu eröffnen. Um das zu tun, klicken wir im Metatrader auf diesen kleinen Button hier oder drücken die F4 Taste. Das öffnet dann hier den Metaeditor. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerIFRAMAStandaloneEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann aller oberhalb der OnTick Funktion gelöscht werden. Auch die zwei Kommentarzeilen werden entfernt. Und wir beginnen damit, dass wir mittels include die Datei Trade.mqh importieren. Die bringt einige Handelsfunktionen mit sich und wir erstellen von der Klasse CTrade, die in dieser Datei enthalten ist, eine Instanz mit dem Namen Trade. In der On Tick Funktion berechnen wir zunächst den Ask-Preis. Das geht mittels SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Und wir nutzen SYMBOL_ASK um den Ask-Preis zu berechnen. Die Funktion NormalizeDouble_Digits sorgen dafür, dass die Anzahl von Ziffern nach dem Dezimalpunkt richtig berechnet werden. Denn das ist, je nach Währungspaar unterschiedlich. Da wir in beide Richtungen handeln möchten, brauchen wir auch noch den Bid-Preis. Den ermitteln wir genauso. Allerdings nutzen wir dieses Mal SYMBOL_BID. Für unser Signal erstellen wir eine gleichnamige Variable. Die ist vom Typ string, damit sie Textketten aufnehmen kann. Aber im Moment weisen wir noch keinen Wert zu. Mit MqlRates erstellen wir uns ein Preis Array. MylRates ist eine Funktion, die die Informationen über die Preise, das Volumen und den Spread der Kerzen aufbewahrt. Unser Preis Array sortieren wir jetzt mit ArraySetAsSeries von der aktuellen Kerze an abwärts. Danach nutzen wir CopyRates für das aktuelle Währungspaar und die aktuell auf dem Chart ausgewählte Zeiteinheit um unser Preis Array von der aktuellen Kerze null für drei Kerzen mit Preisdaten zu füllen. Jetzt brauchen wir noch ein Array. Das ist für unseren Expert Advisor und bekommt den Namen FramaArray. Für die Definition nutzen wir die, in MQL5 eingebaute Funktion, iFrAMA für das aktuelle Währungspaar auf den Chart und die auf dem Chart ausgewählte Zeiteinheit. Wir berechnen unseren Expert Advisor anhand von 14 Kerzen, benutzen keine Verschiebung. Und ermittelt wird das Ganze anhand der Schlusskurse. Wenn Sie sich hier einmal mit der rechten Maustaste die Eigenschaften anzeigen lassen, dann sehen Sie auch hier: 14 Kerzen, Verschiebung ist null und Anwenden auf Close Preis. Das ist genau das, was wir auch hier verwenden. Auch dieses Array sortieren wir wieder von der aktuellen Kerze an abwärts mit ArraySetAsSeries. Und mit CopyBuffer füllen wir jetzt unseren FRAMA EA anhand der Definition, die wir hier oben getroffen haben. Für Buffer null, das ist diese blaue Linie hier, von der aktuellen Kerze null für drei Kerzen mit Daten, die wir in unserem Array abspeichern. Nun berechnen wir den letzten Wert. Das tun wir, indem wir auf Kerze eins in unserem Array zugreifen. Und wir möchten verkaufen, wenn der Frama Wert über dem letzten Kerzenhoch liegt. Wenn also der Frama Wert größer ist als der Höchstpreis von Kerze eins in unserem Preis Array. Dann möchten wir gerne verkaufen und weisen den Wert verkaufen unserer Signal Variable zu. Umgekehrt, ist der Frama Wert kleiner als unser tiefster Preis von Kerze eins im Array, dann möchten wir gerne kaufen und weisen den Wert kaufen unserer Signal Variable zu. Und wenn unser Signal dem Wert kaufen entspricht und PositionsTotal uns einen Wert von kleiner eins zurück liefert, mit anderen Worten,
    7 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER IVIDYA STANDALONE EXPERT ADVISOR
    In diesem Video geht es darum, diesen Indikator hier zu handeln. Es handelt sich um den variable Index Dynamic Average Indikator. Der wird hier automatisch gehandelt. Wir haben bereits eine erste eröffnete Position. Und wir wollen uns einmal anschauen, wie man in MQL5 einen eigenständig handelsfähigen Expert Advisor in wenigen Minuten programmieren kann. Um das zu tun, klicken Sie bitte im Meta Trader hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier wählen wir Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerIcidyaStandAloneEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles gelöscht, was sich hier oberhalb der On Tick Funktion befindet. Auch die beiden Kommentarzeilen können entfernt werden. Wir beginnen damit, dass wir hier oben mit dem Include Befehl die Datei Trade.mqh importieren. Die gehört zum Lieferumfang von MQL5 dazu. Danach erstellen wir uns eine Instanz von der Klasse CTrade. Die bekommt den Namen Trade und wird uns einige Handelsfunktionen zur Verfügung stellen, die wir später nutzen, um Positionen zu eröffnen. Dafür brauchen wir erst einmal den Ask- und den Bid-Preis. Die ermitteln wir mit der Funktion SymbolInfoDouble. Die kann den Wert für diverse Eigenschaften eines Währungspaars zurückliefern. Und hier sehen wir SYMBOL_BID ist für den Bid-Preis und SYMBOL_ASK ist für den Ask-Preis. Wenn sie einmal ein Währungspaar anklicken, dann sehen sie hier, wir haben zwei Preislevel. Der rote Preis hier, ist der Ask-Preis, der blaue Preis hier, ist der Bid-Preis. Das dazwischen ist der spread an dem der Broker verdient. Wenn wir etwas kaufen, bekommen wir immer den etwas teureren Ask-Preis berechnet. Und wenn wir etwas verkaufen, erzielen wir nur den etwas niedrigeren Bid-Preis. Wir ermitteln mit _SYMBOL den Ask-Preis für das aktuelle Währungspaar auf dem Chart. Und mit NormalizeDouble und _Digits sorgen wir dafür, dass wir entweder fünf oder drei Nachkommastellen berechnen. Je nachdem, welches Währungspaar auf dem Chart sich gerade befindet. Das gleiche machen wir unten nochmal für den Bid-Preis. Außerdem benötigen wir noch eine String Variable für unser Signal. Wir vergeben auch den Namen Signal. Der Wert ist hier noch leer, denn der wird noch ermittelt. Jetzt brauchen wir noch ein Price Array. Das soll unsere Preisdaten aufnehmen. Und wir erstellen das mit der Funktion MQLRates. Die hat die Information über Preise, Volumen und Spread für uns. Mit der Funktion ArraySetAsSeries sortieren wir unser Price Array von der aktuellen Kerze an abwärts. Und mit CopyRates füllen wir unser Price Array mit Daten. Für das aktuelle Währungspaar und die aus dem Chart aktuell ausgewählte Zeiteinheit. Wir starten mit der aktuellen Kerze 0. Und brauchen Daten für drei Kerzen. Das reicht uns. Danach brauchen wir noch ein EA Array für die Werte von unserem Expert Advisor. Auch das sortieren wir mit ArraySetAsSeries. Und jetzt kommt die eigentliche Definition: Die erstellen wir mit dieser eingebauten Funktion iVIDyA. Die liefert uns den Wert für den Variable Index Dynamic Average Indikator zurück. Wenn man sich das einmal kurz anschaut, dann gibt es für jeden Punkt auf dieser roten Linie einen Wert, hier zu sehen als Value. Und alle diese Werte zusammen ergeben dann die Linie. Das ermittelt diese Funktion. Die braucht noch ein paar Parameter. Auch hier wieder das aktuelle Währungspaar auf dem Chart. Die aktuell ausgewählte Zeiteinheit und hier haben wir eine 9, eine 12 und eine 0. Und wenn wir auf Einfügen, Indikatoren, Tendenz, Variable Index Dynamic Average klicken, dann finden wir hier eine CMO Periode mit dem Wert 9, eine EMA Periode mit dem Wert 12 und eine Verschiebung von 0. Das sind die Standartwerte für diesen Indikator. Und das ist auch das, was wir hier verwenden. Ermitteln möchten wir unsere Ergebnisse anhand des Schlusskurses. Und jetzt nutzen wir die Funktion CopyBuffer,
    9 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER ICCI EXPERT ADVISOR
    In diesem Video schauen wir uns einmal diesen Indikator hier an. Es handelt sich um einen Oszillator. Es ist der Commodity Channel Index. Und wir möchten uns einmal ansehen, wie man für diesen Indikator, für den Metatrader 5 in MQL5 einen Expert Advisor programmieren kann, der in der Lage ist, nicht nur die Signale auf dem Chart auszugeben, sondern auch selbständig Positionen zu eröffnen und zu schließen. Um das zu tun, klicken Sie bitte auf den kleinen Button hier oben links oder drücken sie die F4 Taste im Metatrader. Das öffnet dann hier das Meta Editor Fenster. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier mal den Namen SimplerICCIStandaloneEA. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der On Tick Funktion gelöscht werden. Auch die zwei Kommentarzeilen werden entfernt. Wir starten hier oben damit, dass wir die Datei Trade.mqh importieren. Das geht mit dem include Befehl. Diese Datei gehört zum Umfang von MQL5 dazu. Diese Datei ermöglicht uns eine Instanz von der Klasse CTrade zu bilden. Die bekommt den Namen trade. Und wir werden sie später verwenden, um Positionen zu eröffnen. Vorher müssen wir ein paar Dinge berechnen. Zunächst brauchen wir den Ask und den Bid Preis. Die liefert uns die Funktion SymboInfoDouble für das aktuelle Währungspaar auf dem Chart. Mit SYMBOL_ASK kriegen wir den Ask Preis. Und SYMBOL_BID wird uns den Bid Preis liefern. Wir formatieren das Ganze mit NormalizeDouble und Unterstrich Digits. Denn manche Währungspaare haben drei Nachkommastellen, während andere fünf Nachkommastellen haben. Und diese Funktion stellt sicher, dass die richtige Anzahl von Nachkommastellen berechnet wird. Jetzt wo wir die zwei Preise haben, erstellen wir uns ein Preis-Array. Das machen wir mit der Funktion MqlRates und nennen es PriceInfo. Dieses Array wird die Preise für die Kerzen auf dem Chart aufnehmen. Zunächst sortieren wir es mit ArrySetAsSeries von der aktuellen Kerze an abwärts. Danach nutzen wir CopyRates um es mit Preisdaten zu füllen. Und zwar für das aktuelle Symbol, also Währungspaar auf dem Chart, die auf dem Chart ausgewählte Zeiteinheit. Wir starten von der aktuellen Kerze null und kopieren uns die Preisdaten für drei Kerzen in unser PriceInfo Array. Außerdem brauchen wir eine string Variable für unser Signal. Die nennen wir auch Signal. Den wert ermitteln wir später. Zunächst weisen wir hier noch keinen Wert zu. Jetzt brauchen wir noch ein Array. Das bekommt den Namen myPriceArray. Und das wird dieses Mal die Daten für unseren Expert Advisor aufnehmen. Wir definieren jetzt den Commodity Channel Index Expert Advisor indem wir die Funktion ICCI benutzen. Die wird mit MQL5 mitgeliefert. Und als Parameter nutzen wir das aktuelle Währungspaar, die aus dem Chart ausgewählte Zeiteinheit. Und wenn Sie sich fragen, was diese 14 hier bedeutet, dann klicken Sie doch einmal auf Einfügen, Indikatoren, Oszillatoren, Commodity Channel Index. Dann werden Sie sehen, dass hier die Periode auf 14 eingestellt ist. Das sind 14 Kerzen und genau das, was wir hier verwenden. Als letzten Parameter übergeben wir PRICE_CLOSE, damit die Ergebnisse anhand der Schlusskurse berechnet werden. Auch dieses Array wird mit ArraySetAsSeries wieder von der aktuellen Kerze an abwärts sortiert. Und dieses Mal nutzen wir CopyBuffer um anhand der von uns getroffenen Definition, die wir hier oben erstellt haben für Buffer null, also das erste Puffer, im Klartext diese blaue Linie hier, von der aktuellen Kerze null für drei Kerzen die Preisdaten in unser PriceArray zu kopieren. Und jetzt erhalten wir den aktuellen ICCIWert für die Kerze, die gerade auf dem Chart ausgebildet wird, indem wir einfach auf Kerze null in unserem PriceArray zugreifen. Wenn dieser Wert über der oberen Linie ist, dann möchten wir verkaufen. Wir prüfen also, ob der ICCIWert größer ist als 100. Das wäre der Fall, wenn diese blaue Linie hier oberhalb der gestrichelten 100-er Linie ist.
    8 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER TRIPLE SMA STANDALONE EXPERT ADVISOR
    In diesem Video geht es um den Triple SMA also einen dreifachen gleitenden Durchschnitt. Diese drei roten Linien hier werden für unterschiedliche Anzahlen von Kerzen berechnet. Wir haben hier bereits einen ersten Verkaufstrade. Und wir wollen uns jetzt einmal anschauen, wie man in MQL5 einen Expert Advisor programmieren kann, der in der Lage ist, diese Signale hier nicht nur auszugeben, sondern auch tatsächlich zu handeln. Um das zu tun, klicken wir im Meta Trader hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage, Weiter. Ich vergebe hier einmal den Namen SimplerTripleSMAStandaloneEA. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der On Tick Funktion gelöscht werden. Auch die zwei Kommentarzeilen hier werden entfernt. Für die Handelsfunktion nutzen wir erst mal den include Befehl um die Datei Trade.mqh zu importieren. Die ist Bestandteil von MQL5 und die ermöglicht uns, eine Instanz von der Klasse CTrade zu erstellen. Die hat den Namen trade. Damit werden wir gleich Positionen eröffnen. Dazu brauchen wir zunächst einmal den Ask und den Bid Preis. Die liefert uns die Funktion SymbolInfoDouble für das aktuelle Symbol. Und den Ask Preis bekommen wir mit SYMBOL_ASK. Den Bid Preis liefert uns SYMBOL_BID. Und hier mit NormalizeDouble und Unterstrich Digits sorgen wir dafür, dass die richtige Anzahl von Nachkommastellen für unterschiedliche Währungspaare berechnet werden. Hier hätten wir fünf Nachkommastellen und hier nur drei. Und Unterstrich Digits liefert uns den jeweils richtigen Wert. Mit MqlRates erstellen wir uns ein Preis-Array mit dem Namen PriceInfo. Das Sortieren mittels ArraySetAsSeries von der aktuellen Kerze an abwärts. Und nutzen CopyRates um für das aktuelle Währungspaar und die auf dem Währungspaar ausgewählte Zeiteinheit unser PriceArray von der aktuellen Kerze null für drei Kerzen mit Daten zu füllen. Wir erstellen uns auch eine Signal Variable. Die ist vom Typ string damit sie Textketten aufnehmen kann. Weisen aber an der Stelle aber noch keinen Wert zu. Wir brauchen drei Arrays für unsere drei unterschiedlichen Moving Averages. Eins für eine Berechnung auf zehn. Eins für eine Berechnung auf fünfzig und eines für eine Berechnung auf hundert Kerzen. Den Symbol Moving Average können wir mit der Funktion iMA berechnen. Auch hier wieder für das aktuelle Währungspaar und die auf dem Chart ausgewählte Zeiteinheit. Der dritte Parameter steht für die jeweilige Anzahl der Kerzen. MODE_SMA liefert uns einen Symbol Moving Average. Und PRICE_CLOSE steht für die Schlusskurse. Auch diese drei Arrays werden mit ArraySetAsSeries von der aktuellen Kerze an abwärts sortiert. Anschließend füllen wir das Array mit Preisdaten. Das macht der Befehl CopyBuffer. Der füllt unser jeweiliges Array anhand der von uns getroffenen Definition für Buffer null, also unsere erste und einzige Signallinie, von der aktuellen Kerze null für zehn Kerzen mit Daten. Jetzt können wir ein Kaufen Signal ermitteln. Das hätten wir, wenn der Zehner Wert für die aktuelle Kerze über dem Fünfziger Wert liegt und der Fünfziger Wert für die aktuelle Kerze über dem Hunderter Wert liegt. In dem Fall setzen wir unser Signal auf den Wert kaufen. Dann gibt es auch noch das Verkaufen Signal. Immer wenn der Zehner Wert für die aktuelle Kerze kleiner ist als der Fünfziger Wert, und der Fünfziger Wert für die aktuelle Kerze kleiner ist als der Hunderter Wert, dann hätten wir ein Verkaufen Signal und weisen das unserer Signal Variable zu. Um eine Position zu eröffnen prüfen wir jetzt, ob unser Signal den Wert verkaufen hat. Und diese Funktion hier liefert uns die Anzahl der geöffneten Positionen zurück. Und wenn wir keine geöffneten Positionen haben, dann nutzen wir trade.Sell um zehn Microlot zu verkaufen. Andernfalls, wenn unser Signal den Wert kaufen hat und wir keine geöffneten Positionen haben, dann nutzen wir trade.
    7 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER ADAPTIVE MOVING AVERAGE STANDALONE EA
    In diesem Video geht es um diesen Indikator hier. Das ist der Adaptive Moving Average. Der setzt sich aus mehreren Werten zusammen. Und zeichnet hier diese rote Linie. Und wann immer sich der Preis oberhalb der roten Linie befindet, ist das ein Kaufen Signal. Im andern Fall, wenn sich die Kerzen unterhalb der roten Linie bewegen, dann wäre das ein Verkaufen Signal. Wie kann man jetzt einen Expert Advisor erstellen, der in der Lage ist, nicht nur die Signale hier auf den Chart auszugeben, sondern auch eigenständig Positionen zu eröffnen. Um das zu tun, klicken wir auf diesen kleinen Button hier oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier mal den Namen SimplerAMAStandaloneEA. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann man alles oberhalb von der On Tick Funktion löschen. Und die zwei Kommentarzeilen können ebenfalls entfernt werden. Zunächst nutzen wir die include Funktion. Damit holen wir uns die Datei Trade.mqh. Die ist Teil von MQL5 und stellt Handelsfunktionen bereit. Und sie ermöglicht uns, von CTrade eine Instanz mit dem Namen trade zu erstellen. Die werden wir gleich nutzen um Positionen zu eröffnen. Damit wir das können müssen einige Dinge berechnet werden. Zunächst einmal holen wir uns den Ask und den Bid Preis. Das geht mit SymbolInfoDouble für das aktuelle Währungspaar. SYMBOL_ASK liefert uns den Ask Preis. SYMBOL_BID liefert uns den Bid Preis. Wenn man mal auf ein Währungspaar hier klickt, dann sieht man: Das hier ist der Ask und das hier der Bid Preis. Diesen Preis zahlen wir, wenn wir etwas kaufen. Und das bekommen wir, wenn wir etwas verkaufen. Das dazwischen ist der Spread, davon lebt der Broker. Jetzt erstellen wir uns ein Preis Array. Das geht mit der Funktion MqlRates. Wir vergeben mal den Namen PriceInfo. Mit dem Befehl ArraySetAsSeries sortieren wir unser PriceInfo Array von der aktuellen Kerze an abwärts. Und mit der Funktion CopyRates füllen wir unser Array mit Preisdaten für das aktuelle Währungspaar und die auf dem Chart ausgewählte Zeiteinheit. Wir starten mit der aktuellen Kerze null, holen uns die Daten für drei Kerzen und speichern sie in unserem Array PriceInfo. Jetzt haben wir die Daten für die Kerzen, brauchen aber noch einen String für unser Signal. Diese Variable bekommt auch den Namen Signal. Noch haben wir keinen Wert zugewiesen. Den müssen wir nämlich noch berechnen. Für unser Signal brauchen wir noch ein Array. Das bekommt den Namen myPriceArray. Und nun kommt der eigentlich spannende Teil. Wir nutzen die Funktion iAMA, die mit MQL5 kommt, um für das aktuelle Währungspaar und die ausgewählte Zeiteinheit eine Definition für unseren Expert Advisor zu erstellen. Falls Sie sich fragen, was diese Zahlen hier bedeuten. 9,2,30, 0. Dann klicken Sie doch einmal auf Einfügen, Indikatoren, Tendenz, Adaptive Moving Average. Dann sehen wir hier eine neun für die Periode, zwei ist der Wert für den schnellen EMA. Null ist die Verschiebung und dreißig ist der langsame EMA. EMA steht an der Stelle für Exponential Moving Average. Und das sind genau die Zahlen, die wir hier sehen. Für den letzten Parameter verwenden wir PRICE_CLOSE. Denn wir möchten gerne unsere Ergebnisse aufgrund der Schlusskurse ermitteln. Auch dieses PriceArray müssen wir wieder von der aktuellen Kerze an abwärts sortieren indem wir ArraySetAsSeries verwenden. Und nun füllen wir mit CopyBuffer unser PriceArray anhand der MovingAverageDefinition, die wir hier oben getroffen haben. Für Buffer null, das ist die erste Signallinie von der aktuellen Kerze null für drei Kerzen mit Preisdaten und speichern sie in unserem Array. Indem wir auf Kerze null in unserem PriceArray zugreifen, können wir den AdaptivMovingAverage Wert berechnen. Wenn man hier mal kurz den Strategietester anhält und die Maus hier über den roten Strich hält, dann sieht man, dass hier ein Wert mit sechs Nachkommastellen angezeigt wird. Das ist das,
    8 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER ORDER HISTORY PROFIT
    In diesem Video möchten wir uns einmal anschauen, wie man auf die historischen Ergebnisse, beispielsweise den Profit zugreifen kann. Wir öffnen dazu in diesem Expert Advisor vollautomatisch Positionen. Und wenn immer eine Position geschlossen wird, ändert sich hier oben diese Ausgabe. Die zeigt uns aktuell den Profit der letzten Position, die entsprechende Ticketnummer und die Positionsrichtung an. Wie kann man jetzt einen Expert Advisor programmieren, der in der Lage ist, den Profit aus den historischen Daten der geschlossenen Positionen zu ermitteln? Um das zu tun, klicken wir hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier wählen wir Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier mal den Namen SimplerOrderHistoryProfit. Klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb der On Tick Funktion verschwinden. Auch die zwei Kommentarzeilen werden gelöscht. Zunächst importieren wir uns die Datei Trade.mqh und erstellen eine Instanz der Klasse CTrade. Die hat den Namen trade und wir werden sie gleich zum Öffnen von Positionen benötigen. In der On Tick Funktion berechnen wir uns den Ask und den Bid Preis. Das geht mit SymbolInfoDouble für das aktuelle Symbol. Wir nutzen SYMBOL_ASK für den Ask Preis. Und SYMBOL_BID für den Bid Preis. Wenn die Funktion PositionsTotal kleiner als eins ist, also wir keine geöffneten Positionen haben, dann möchten wir mit trade.Buy und trade.Sell jeweils zehn Mikrolot als Testposition eröffnen. Denn wir brauchen ja etwas, damit wir Profite ermitteln können. Das tun wir dann indem wir eine noch zu erstellende Funktion GetLastProfit aufrufen. Die wird uns dann unseren letzten Profit zurück liefern. Und zum Schluss erstellen wir noch eine Chartausgabe, die uns anzeigt: Mein letzter Profit war. In der neuen Zeile sehen wir dann unseren Rückgabewert von dieser Funktion, die wir jetzt noch programmieren müssen. Dazu erstellen wir unter der On Tick Funktion eine weitere Funktion. Die bekommt den Namen GetLastProfit. Hier brauchen wir zunächst einige Variablen. TotalNumberOfDeals wird uns die Gesamtanzahl der Deals aus der Historie anzeigen. MQl5 kennt Deals, Tickets, Orders und Positionsbezeichnungen. Eine Order ist immer ein Auftrag. Ich will etwas. Ob der Broker das annimmt oder nicht, ist zu diesem Zeitpunkt noch nicht klar. Wenn es aber dazu kommt, dann wird aus der Order ein sogenannter Deal. Der Broker erklärt sich bereit, das zu tun, was ich von ihm möchte. Und daraus kann dann eine Position entstehen, die in eine bestimmte Richtung geht. Zunächst nutzen wir den Befehl HistorySelect um uns die Historie aufzurufen. Wir hätten gerne vom Anfang bis zum derzeitigen Zeitpunkt alles. Jetzt gehen wir alle Vorgänge durch. Dazu machen wir uns hier eine Integerwert von null. Und solange der kleiner ist als die totale Anzahl von Deals in der Historie, zählen wir den immer weiter hoch. Jetzt versuchen wir eine Ticketnummer zu bekommen. Deswegen diese If Abfrage. Denn solange wir noch keine geschlossenen Positionen existieren, ist das nicht möglich. Sobald aber eine Ticketnummer in der Historie auftaucht, holen wir uns mit HistoryDealGetTicket für diese Position die entsprechende Ticketnummer und speichern sie in dieser Variable. Jetzt ermitteln wir den Profit. Das geht mit der Funktion HistoryDealGetDouble für die Ticketnummer. Und hier nutzen DEAL_PROFIT. Alles in Großbuchstaben. Zusätzlich holen wir uns noch den OrderTyp. Hierfür nutzen wir HistoryDealGetInteger für unsere Ticketnummer und holen uns den DEAL_TYPE. Auch alles in Großbuchstaben. Jetzt ermitteln wir das Symbol zur Ticketnummer mit HistoryDealGetString, holen wir uns aus unserer Ticketnummer den Wert für DEAL_SYMBOL. Und außerdem brauchen wir noch den DealEntryTyp für das OrderTicket. Wir möchten gern wissen, ob es sich um eine Kaufen oder Verkaufen Order handelt. Und diesen Ordertyp bekommen wir über HistoryDealGetInteger für die Ticketnummer.
    9 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER SAR STANDALONE EXPERT ADVISOR
    In diesem Video möchten wir uns einmal anschauen, wie man diesen Indikator, den parabolischen SAR mit Metatrader 5 automatisch handeln kann. Wir werden hier diesen Expert Advisor so programmieren, dass er in der Lage ist, eigenständig Positionen zu eröffnen. Man sieht hier diese Punkte. Immer wenn die sich unterhalb des Preises befinden, dann ist das ein Kaufen Signal. Und wenn die Punkte oberhalb der Kerzen gezeichnet werden, ist das ein Verkaufen Signal. Hier unten haben wir bereits eine erste Position eröffnet. Und wir werden uns jetzt einmal anschauen, wie man das mit dem Meta Editor programmieren kann. Um das zu tun klicken Sie bitte im Metatrader hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier einmal den Namen SimplerSARStandaloneEA. Klicke auf Weiter, Weiter, Fertigstellen. Jetzt kann alles oberhalb der On Tick Funktion gelöscht werden. Und wir entfernen auch die zwei Kommentarzeilen. Zunächst einmal nutzen wir den include Befehl, um die Datei Trade.mqh zu importieren. Die bietet uns Handelsfunktionen. Und damit können wir jetzt von der Klasse CTrade eine Instanz mit dem Namen trade erstellen. Die brauchen wir gleich für die Eröffnung der Positionen. In der On Tick Funktion erstellen wir uns zunächst ein Preis-Array mit dem Namen PreisArray. Das übernimmt für uns die Funktion MqlRates. Hier oben passen wir noch den Kommentar an. Danach nutzen wir ArraySetAsSeries, um unser Array von der aktuellen Kerze an abwärts zu sortieren. Und mit CopyRates füllen wir es mit Preisdaten für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Wir tun das von der aktuellen Kerze null für drei Kerzen und speichern das Ergebnis in unserem PreisArray. Außerdem brauchen wir noch einen String für unsere Signal Variable. Die bekommt den Namen Signal. Der Wert wird später zugewiesen, denn den müssen wir erst noch ermitteln. Zuvor berechnen wir erst mal den Ask und den Bid Preis. Diese Informationen gibt uns die Funktion SymbolInfoDouble für das aktuelle Symbol auf dem Chart. Mit SYMBOL_ASK bekommen wir den Ask Preis. Mit SYMBOL_BID den Bid Preis. Und NormalizeDouble und Unterstrich Digits nutzen wir, um die richtige Anzahl der Nachkommastellen zu ermitteln. Hier hätten wir drei Nachkommastellen. Und hier fünf. Und mit diesem Ausdruck hier wird das für jedes Währungspaar entsprechend angepasst. Jetzt brauchen wir noch ein Array für den SAR Indikator. Die Definition dieses Indikators geht über die iSAR Funktion, die in MQL5 eingebaut ist. Auch hier nutzen wir das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Und wenn Sie sich fragen, was diese beiden Werte hier bedeuten, die sehen Sie auch, wenn Sie hier auf Einfügen, Indikatoren, Tendenz, Parabolic SAR klicken. Dann sehen wir eine Schrittweite von 0,02 und ein Maximum von 0,2. Und genau das nutzen wir hier auch. Auch dieses Array sortieren wir wieder abwärts von der aktuellen Kerze, indem wir ArraySetAsSeries verwenden. Und im Anschluss nutzen wir CopyBuffer um unser SARArray anhand der SAR Definition, die wir hier oben getroffen haben für Buffer null, also den ersten Signalwert, von der aktuellen Kerze null für drei Kerzen mit Daten zu füllen. Und jetzt können wir die Werte für die letzte Kerze berechnen. Dazu schauen wir uns einfach die Kerze eins in unserem Array an. Und kürzen mit NormalizeDouble und dieser fünf den gemessenen Wert auf fünf Nachkommastellen. Denn wenn Sie hier mal die Maus über einen dieser Punkte halten, dann sehen Sie, bei Value werden auch fünf Nachkommastellen angezeigt. Und NormalizeDouble rundet halt unsere Zahl auf die angegebene Genauigkeit ab. In unserem Fall sind das diese fünf Nachkommastellen. Jetzt machen wir das Gleiche noch mal. Allerdings diesmal für Kerze zwei, um die Werte für die Kerze davor zu erhalten.
    8 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER STOCHASTIC STANDALONE EXPERT
    In diesem Video möchten wir einen Expert Adviser erstellen, der in der Lage ist, den Stochastic Indicator eigenständig zu handeln. Es handelt sich hier um einen Oszillator. Immer wenn wir eine Überkreuzung dieser beiden Signallinien oberhalb der gestichelten oberen Linie habe, wäre das ein Verkaufen. Und unterhalb wäre es ein Kaufen Signal. Die Signale werden nicht nur hier auf dem Chart ausgegeben. Sondern wir haben hier unten auch schon eine erste geöffnete Position, die automatisch gehandelt wurde. Und wir möchten uns jetzt einmal anschauen, wie man so etwas in MQL5 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf diesen kleinen Button oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier klicken wir auf Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier mal den Namen SimplerStochasticStandaloneEA, klicke auf Weiter, Weiter und Fertigstellen. Jetzt kann alles oberhalb dieser On Tick Funktion hier gelöscht werden. Auch die zwei Kommentarzeilen kommen weg. Hier oben nutzen wir den include Befehl, um die Datei Trade.mqh zu importieren. Die ermöglicht uns eine Instanz von der Klasse CTrade zu erstellen. Damit lassen sich dann später die Positionen eröffnen. In der On Tick Funktion, die bei jeder Preisänderung aufgerufen wird, erstellen wir erst einmal eine Signal Variable. Die ist vom Typ String, damit sie Textketten aufnehmen kann, bekommt aber hier noch keinen Wert zugewiesen. Der wird gleich noch ermittelt. Dazu benötigen wir erst einmal ein paar Dinge. Zum Beispiel den Ask und den Bid Preis. Hier oben kann man sehen, dass wir einen roten und einen blauen Preisverlauf haben. Der blaue Preis ist der Ask Preis. Den müssen wir zahlen, wenn wir etwas kaufen. Und der rote ist der Bid Preis. Den erhalten wir, wenn wir etwas verkaufen. Ermitteln können wir das mit der Funktion SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Mit SYMBOL_ASK bekommen wir den Ask Preis. Und mit SYMBOL_BID bekommen wir den Bid Preis. Und diese NormalizeDouble Funktion in Kombination mit _Digits sorgt dafür, dass wir entweder drei oder fünf Nachkommastellen haben, je nachdem, welches Währungspaar auf dem Chart ist. Jetzt brauchen wir noch zwei Arrays. Das eine heißt KArray und das andere heißt DArray. Wenn man im Metatrader auf Einfügen, Indikatoren, Oszillatoren, Stochastic Oszillator klickt, sieht man auch hier eine K Periode und eine D Periode. Zunächst einmal sortieren wir mit ArraySeAsSeries beide Arrays von der aktuellen Kerze an abwärts. Jetzt können wir unsere StochasticDefinition mit Hilfe der Funktion iStochastic umsetzen. Wir tun das für das aktuelle Währungspaar auf dem Chart und die auf dem Chart ausgewählte Zeiteinheit. Auch diese Parameter hier finden wir in den Standardeinstellungen für den Stochastic Oszillator wieder. Wir haben hier 5,3,3, MODE_SMA und STO_LOWHIGH. Und auch hier sehen wir eine Fünf für die K Periode, eine Drei für die D Periode. Die Verlangsamung ist drei. Die Methode steht auf Simple. Das ist gleich zu setzten mit MODE SMA. Der Preisbereich steht auf Low/High. Das entspricht hier diesem letzten Parameter. STO_LOWHIGH. Mit der Funktion CopyBuffer füllen wir jetzt unser KArray und unser DArray mit Preisdaten. Das erste Array für den Buffer null. Das ist die erste Signallinie. Das zweite Array ist Buffer eins. Das ist die zweite Signallinie. Wir brauchen jeweils von der aktuellen Kerze für drei Kerzen die Preisdaten laut unserer Definition, die wir hier oben getroffen haben. Und speichern sie in den jeweiligen Arrays. Und mit diesen Daten können wir jetzt die aktuellen Werte, den KWert null und den DWert null für die jeweilige Kerze null berechnen. Das ist die aktuelle Kerze. Das Gleiche machen wir noch mal für die Kerze davor. Das wäre Kerze eins. Die Ergebnisse weisen wir den Variablen KWert eins und DWert eins zu. Und jetzt können wir ein Kaufen Signal ermitteln. Immer wenn beide Werte unter 20 sind, wenn als der KWert für die aktuelle Kerze kleiner...
    9 min
  • MQL5 TUTORIAL DEUTSCH – SIMPLER RSI STANDALONE EXPERT ADVISOR
    In diesem Video geht es um diesen Indikator hier. Das ist der Relative Strength Index. Auch bekannt unter dem Namen RSI. Und wir wollen uns einmal anschauen, wie man den für den Metatrader 5 komplett automatisiert handeln kann. Immer wenn diese blaue Linie hier oberhalb der oberen gestrichelten Linie ist, dann wäre das ein Verkaufen Signal. Ist sie hier unter der unteren Linie, dann wäre das ein Kaufen Signal. Wir haben ja auch schon eine geöffnete Position. Und wir schauen uns jetzt einmal an, wie man so ein System hier mit MQL5 komplett automatisiert, so dass es tatsächlich eigenständig handelt. Um das zu tun, klicken Sie im Metatrader 5 bitte auf diesen kleinen Button hier oben oder drücken die F4 Taste. Das ruft dann hier den Meta Editor auf. Und hier wählen wir Datei, Neu, Expert Advisor aus Vorlage. Weiter. Ich vergebe hier einmal den Namen SimplerRSIStandaloneEA. Klicke auf Weiter, Weiter und Fertigstellen. Und jetzt kann alles oberhalb dieser On Tick Funktion hier gelöscht werden. Wir entfernen auch noch die zwei Kommentarzeilen. Im ersten Schritt importieren wir hier die Datei Trade.mqh. Die kommt mit MQL5 und stellt einige nützliche Handelsfunktionen bereit. Wir erstellen zunächst eine Instanz von CTrade. Die bekommt den Namen trade und wird gleich genutzt, um die Positionen auch eröffnen. Innerhalb der On Tick Funktion erstellen wir eine leere String Variable mit dem Namen signal. Jetzt brauchen wir noch den Ask Preis und den Bid Preis. Die bekommen wir über die Funktion SymbolInfoDouble. Für das aktuelle Währungspaar auf den Chart mit SYMBOL_ASK bekommen wir den Ask Preis. Mit SYMBOL_BID bekommen wir den Bid Preis. Man sieht das hier ganz gut, dass eine Preisspanne existiert. Der blaue Preis ist der Ask Preis. Und der rote Preis ist der Bid Preis. Und da es Währungspaare mit unterschiedlicher Anzahl von Nachkommastellen gibt, nutzen wir noch NormalizeDouble_Digits. Denn _Digits bewahrt die Anzahl von Ziffern nach dem Dezimalpunkt auf. In diesem Währungspaar hätten wir drei Nachkommastellen und in diesem Währungspaar fünf Nachkommastellen. Danach erstellen wir ein Array für einige Preisdaten. Und vergeben den Namen RSIArray. Und jetzt kommt die eigentliche Definition. Dazu nutzen wir die in MQL5 eingebaute Funktion iRSI für das aktuelle Währungspaar auf den Chart und die auf dem Chart ausgewählte Zeiteinheit. Wenn Sie sich fragen, wo diese 14 hier herkommt, die sieht man übrigens auch hier unten. Und wenn Sie einmal auf Einfügen, Indikatoren, Oszillatoren, Relativ Strength Index klicken, dann sehen Sie, dass die Berechnung auf 14 Kerzen erfolgt. Und hier wird der Close Preis genutzt. Genauso machen wir das auch. 14 Kerzen und PRICE_CLOSE für den Schlusskurs. Jetzt nutzen wir ArraySetAsSeries und sortieren das Array von der aktuellen Kerze an abwärts. Und mit CopyBuffer füllen wir unser RSIArray anhand der RSI Definition, die wir hier oben getroffen haben, für das erste Signal. Das ist Buffer 0, von der aktuellen Kerze 0 für 3 Kerzen und speichern das Endergebnis in unserem Array hier. Um jetzt den aktuellen RSIWert zu berechnen, erstellen wir eine Variable mit dem gleichen Namen und greifen auf die Kerze 0 in unserem RSIArray zu. Das gibt uns hier den RSIWert. Mit NormalizeDouble und dieser 2 kürzen wir das Ergebnis noch auf zwei Nachkommastellen. Damit lassen sich die Signale ermitteln. Wenn der RSIWert größer ist als 70, dann weisen wir unserer Signal Variable den Wert Verkaufen zu. Also immer, wenn die blaue Linie hier oberhalb der gestrichelten oberen Linie ist, dann möchten wir verkaufen. Im andern Fall, wenn der RSIWert kleiner ist als 30, dann weisen wir unserem Signal den Wert Kaufen zu. Das wäre jetzt hier der Fall gewesen. Denn hier war die blaue Linie unterhalb der unteren gestrichelten Linie. Kommen wir zur eigentlichen Positionseröffnung. Wenn unser Signal Kaufen ist und wenn die Funktion PositionsTotal kleiner als 1 ist, das wäre immer dann der Fall, wenn wir keine geöffnete Position haben,
    7 min

About MQL5 Tutorial - Automatisch traden mit Metatrader5

From the publisher's feed

Metatrader5 MQL5 Expert Advisor Tutorial