In diesem Video wollen wir uns einmal anschauen, wie man auf einem einzelnen Chart Positionen für unterschiedliche Währungspaare eröffnen kann. In dem Fall ziehe ich jetzt hier meinen Expert Advisor auf das Chart, bestätige mit ja, aktiviere das Livetrading und klicke auf ok. Und wenn ich das hier oben auch aktiviere, dann sollten wir innerhalb von wenigen Sekunden hier unten mehrere eröffnete Positionen sehen. Das ist jetzt geschehen. Und in diesem Video wollen wir uns einmal anschauen, wie man so einen Expert Advisor in MQL4 programmieren kann. Um das zu tun, klicken Sie bitte hier oben auf dieses kleine Symbol oder drücken 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 SimpleMultiCurrencyOrder, klicke auf weiter, weiter und fertigstellen. Jetzt kann hier alles oberhalb der OnTick-Funktion gelöscht werden. Und auch die zwei Kommentarzeilen können weg. Wir starten damit, dass wir den aktuellen Ask-Preis berechnen. Für MQL4 ist das ungewöhnlich, denn eigentlich kann man direkt auf den Ask-Preis zugreifen. Wir brauchen das aber gleich für die anderen Währungspaare. Und um den Ask-Preis zu berechnen, nutzen wir SymbolInfoDouble für das aktuelle Währungspaar auf dem Chart. Wir nutzen hier SYMBOL_ASK, alles in Großbuchstaben, und mit NormalizeDouble und _Digits stellen wir sicher, dass die richtige Anzahle von Nachkommastellen berechnet wird. Je nach verwendetem Währungspaar können das 3 oder 5 Nachkommastellen sein. Und dieser Ausdruck hier, berechnet uns alles für das aktuelle Währungspaar. Und jetzt möchten wir das Ganze auch für ein anderes Währungspaar berechnen. In diesem Fall das Britische Pfund gegen den US-Dollar. Wir nutzen hier einen anderen Namen für die Variable. Und hier im ersten Parameter haben wir jetzt in Großbuchstaben das Währungspaar angegeben. Bitte stellen Sie sicher, dass Sie genau das nehmen, was Sie hier auch in der Marktübersicht angezeigt bekommen. Manche Broker verwenden auch andere Bezeichnungen. Ich habe zum Beispiel einige Konten wo ein Suffix mit .M benutzt wird. Jetzt wiederholen wir das Ganze noch einmal und holen uns den Ask-Preis für den US-Dollar gegen den Kanadischen Dollar. Bis auf den Variablennamen und die Symbolbezeichnung hier für das Währungspaar, sind alle andere Dinge identisch. Das Ganze kann man natürlich auch für den Bid-Preis berechnen. In dem Fall nutzen wir SymbolInfoDouble für das aktuelle Währungspaar. Der zweite Parameter ist SYMBOL_BID, auch alles in Großbuchstaben, bitte. Und danach wiederholen wir das Ganze noch für die anderen beiden Währungspaare. Auch hier sind, bis auf den Variablennamen und den ersten Parameter, alle anderen Dinge identisch. Machen wir mal weiter. Dazu erstellen wir uns eine string-Variable für das Signal. In diesem einfachen Beispiel soll uns ein zufälliger Einstieg reichen. Dazu nutzen wir die Funktion MathSrand, zur Initialisierung eines zufälligen Wertes, der mit dieser Funktion hier initialisiert wird. GetTickCount liefert uns die Anzahl der Millisekunden seit dem wir das System gestartet haben. Und in dieser Kombination ergibt das einen Initialwert der ausschließt, dass wir immer die selben pseudo zufälligen Zahlen berechnen. Denn jetzt ermitteln wir eine Zufallszahl mit der Funktion MathRand. Die sieht so ähnlich aus, wie diese hier, allerdings ohne das S in der Mitte. Und dieses %2 am Ende, wird uns 1 von 2 möglichen Werten zurückliefern. MathRand erzeugt allerdings pseudo zufällige Zahlen. Das bedeutet: Ohne den Initialisierungsschritt hier oben, würden wir jedes Mal die gleichen Zufallszahlen sehen, also bitte vergessen Sie die Initialisierung nicht. Und wenn die ermittelte Zufallszahl jetzt den Wert 0 hat, dann möchten wir gerne kaufen, also weisen wir den Begriff buy unserer signal-Variable zu. Im anderen fall, wenn die Zufallszahl eine 1 ist, dann möchten wir gerne verkaufen.