Instrumentenbezeichner
In S# verwenden Instrumente aus unterschiedlichen Quellen eine einheitliche Security.Id. Dadurch bleibt der Code von Handelsalgorithmen unabhängig vom Verbindungstyp, etwa OpenECry, Rithmic oder Interactive Brokers.
Instrumentenbezeichner verwenden die folgende Syntax: [instrument code]@[board code]. Für Aktien von Apple Inc. lautet der Bezeichner AAPL@NASDAQ. Bei Derivaten ist der Board-Code das Board, an dem der Kontrakt gehandelt wird. Der Juni-Futures-Kontrakt auf den ES-Index kann beispielsweise als ESM5@NYSE identifiziert werden.
Tip
Hydra verwendet denselben Mechanismus, um Ordner mit historischen Marktdaten zu benennen.
Überschreiben des Algorithmus zur Bezeichnergenerierung
Um Instrumentenbezeichner mit einem eigenen Algorithmus zu generieren, erstellen Sie einen Nachfolger der Klasse SecurityIdGenerator und überschreiben Sie die Methode SecurityIdGenerator.GenerateId(System.String secCode, System.String boardCode ):
class CustomSecurityIdGenerator : SecurityIdGenerator { public override string GenerateId(string secCode, string boardCode) { // Bezeichner im Format CODE--BOARD erzeugen return secCode + "--" + boardCode; } }Übergeben Sie den erstellten Generator an den Connector:
connector.SecurityIdGenerator = new CustomSecurityIdGenerator();