Handelszeiten
Seit der Veröffentlichung von cTrader Windows 4.5 enthält die API die Schnittstelle MarketSessions. Sie ermöglicht es Ihnen, Informationen über aktuelle Marktsitzungen zu erhalten und diese Daten in Ihren cBots und Indikatoren zu verwenden.
Handelszeiten in der Algo-Entwicklung
Der Typ MarketSession ist ein enum mit Werten, die verschiedene Handelszeiten darstellen (wie Singapore oder London).
Die Eigenschaft MarketSessions wiederum ist vom Typ MarketSession. Um alle aktuellen Marktsitzungen zu erhalten, verwenden Sie sie wie folgt.
1 | |
Der Wert der Eigenschaft MarketSessions sollte mit den Sitzungen übereinstimmen, die im Feld Handelszeiten in der unteren linken Ecke der cTrader-Benutzeroberfläche angezeigt werden.

Sie können die Methode HasFlag verwenden, um zu überprüfen, ob die aktuellen Sitzungen eine bestimmte Sitzung enthalten.
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 | |
Sie können auch das Ereignis MarketSessionsChanged behandeln, um Änderungen in Marktsitzungen zu erkennen und darauf zu reagieren. Die Klasse MarketSessionChangedEventArgs hat zwei Eigenschaften, nämlich NewSessions und PreviousSessions, die wie folgt funktionieren:
NewSessionsenthält alle aktuellen Sitzungen einschließlich aller Sitzungen, die gerade begonnen haben. Der Wert vonNewSessionsist immer gleich dem Wert der EigenschaftMarketSessionseines cBots oder Indikators.PreviousSessionsenthält ebenfalls alle aktuellen Sitzungen, aber es enthält auch alle vergangenen Sitzungen, die gerade beendet wurden. Sein Wert ist gleich dem Wert der EigenschaftMarketSessionseines cBots oder Indikators, bevorMarketSessionsChangedausgelöst wurde.
Für einen detaillierteren Blick darauf, wie NewSessions und PreviousSessions funktionieren, siehe das folgende Beispiel.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 | |
Im Protokoll sollten Sie zwei neue Einträge für jede Sitzungsänderung sehen. Diese Einträge informieren Sie darüber, was die vergangenen Handelszeiten waren und was sie jetzt sind.
Handelszeiten während des Backtestings
Die Eigenschaft MarketSessions funktioniert sowohl in Live- als auch in Backtesting-Umgebungen. Während des Backtestings enthält diese Eigenschaft die Sitzungen relativ zu den gewählten Backtest-Zeitpunkten. Mit anderen Worten, Sie können sie verwenden, um auf Handelszeiten zuzugreifen, die während einer bestimmten historischen Handelsperiode aktiv waren.