Währungsumrechner
Beim algorithmischen Handel ist es unerlässlich, cBots und Indikatoren die Fähigkeit zu geben, Währungen unter Verwendung aktueller Marktkurse autonom umzurechnen. In diesem API-Leitfaden behandeln wir, wie diese Funktion in cTrader implementiert ist.
Währungsumrechnung in einer Minute!
- Die Methoden
Convert (double value, Asset from, Asset toundConvert(double value, string from, string to))geben den exakten Umrechnungskurs zwischen den angegebenen Assets oder den Assets mit den angegebenen Namen zurück. Greifen Sie über die neue EigenschaftAssetConverterder KlasseAlgodarauf zu. - Die Klasse
Assetenthält ihre eigenen MethodenConvert(Asset to, double value)undConvert(string to, double value), die einfach von jedemAsset-Objekt aufgerufen werden können. - Beim Backtesting verwendet cTrader automatisch historische Umrechnungskurse. Das bedeutet, dass Sie immer historisch genaue Ergebnisse erwarten und die Performance Ihrer cBots vollständig bewerten können.
Wie die Währungsumrechnung funktioniert
Die Schnittstelle IAssetConverter im Namespace cAlgo.API.Internals enthält die Methode Convert(), die die folgenden Überladungen aufweist:
double Convert(double value, Asset from, Asset to)- rechnet den angegebenen Wert vom Assetfromin das Assettoum.double Convert(double value, string from, string to)- rechnet den angegebenen Wert vom Asset, dessen Name mit der Zeichenfolgefromübereinstimmt, in das Asset um, dessen Name mit der Zeichenfolgetoübereinstimmt.
Die Klasse Algo enthält nun die Eigenschaft AssetConverter vom Typ IAssetConverter. Sie können auf die beiden oben genannten Methoden zugreifen, indem Sie Folgendes eingeben.
1 | |
Die Klasse Asset verfügt auch über eigene Methoden Convert() mit den folgenden Überladungen:
double Convert(Asset to, double value)- rechnet den angegebenen Wert vom Asset, von dem aus diese Methode aufgerufen wird, in das Assettoum.double Convert(string to, double value)- rechnet den angegebenen Wert vom Asset, von dem aus diese Methode aufgerufen wird, in das Asset um, dessen Name mit der Zeichenfolgetoübereinstimmt.
Betrachten Sie das folgende Beispiel, in dem unser cBot GBP in JPY umrechnet und dann eine neue Market-Order ausführt, wobei der berechnete Wert als Ordervolumen verwendet wird.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | |
Wenn wir uns das Protokoll ansehen, können wir sehen, dass sich unser cBot wie erwartet verhält. Zum Zeitpunkt des Starts der Instanz betrug der Geldkurs für GBPJPY 159,619.

Währungsumrechnung beim Backtesting
cTrader unterstützt historische Umrechnungskurse beim Backtesting vollständig.
Das bedeutet, dass beim Backtesting eines cBots, der eine der oben beschriebenen Methoden verwendet, Umrechnungsberechnungen mit historisch genauen Daten und nicht mit den aktuellen Wechselkursen zwischen den angegebenen Assets durchgeführt werden. Diese Funktion stellt sicher, dass die Ergebnisse von Backtesting und Optimierung angesichts vergangener Marktbedingungen so präzise wie möglich sind.
Beachten Sie, dass cTrader genaue Umrechnungsketten unter Verwendung potenziell unbegrenzter Handelsinstrumente erstellen kann. Selbst wenn sich Ihre Kontoeinzahlungswährung von den Basis- oder Notierungsassets des Symbols unterscheidet, für das Sie ein Backtesting durchführen möchten, führt cTrader daher alle erforderlichen Berechnungen durch, um Ihnen präzise Backtesting-Ergebnisse zu liefern.
Zusammenfassend lässt sich sagen, dass Umrechnungskurse ein weiteres wertvolles Instrument darstellen, um sicherzustellen, dass Ihre cBots und Indikatoren genau wie erwartet funktionieren. Da cTrader die Verwendung historischer Daten beim Umrechnen von Assets im Backtesting unterstützt, können Sie sicher sein, dass alle Backtesting- und Optimierungsergebnisse historisch genau sind.