IOrderBook
Schnittstelle für das Orderbuchmanagement.
Eigenschaften
public ValueTuple<decimal, decimal>? BestAsk { get; }
value = iOrderBook.BestAsk
Holen Sie sich beste fragen Preis und Volumen.
public ValueTuple<decimal, decimal>? BestBid { get; }
value = iOrderBook.BestBid
Holen Sie sich den besten Gebotspreis und das beste Volumen.
public SecurityId SecurityId { get; }
value = iOrderBook.SecurityId
Kennung des Finanzinstruments.
public decimal TotalAskVolume { get; }
value = iOrderBook.TotalAskVolume
Gesamtvolumen aller Anfragen.
public decimal TotalBidVolume { get; }
value = iOrderBook.TotalBidVolume
Gesamtvolumen aller Gebote.
Methoden
public void AddQuote(EmulatorOrder order)
iOrderBook.AddQuote(order)
Fügen Sie ein Zitat zum Auftragsbuch hinzu.
- order
- Wenn TransactionId standardmäßig ist, wird es als Marktangebot behandelt.
public void Clear(Sides side)
iOrderBook.Clear(side)
Löschen Sie alle Zitate für eine bestimmte Seite.
- side
- Seite zu klar.
public IEnumerable<OrderBookLevel> GetLevels(Sides side)
result = iOrderBook.GetLevels(side)
Holen Sie sich Angebote für eine Seite, geordnet nach Preis (bester zuerst).
- side
- Seite, um Levels für abzurufen.
public IEnumerable<EmulatorOrder> GetOrdersAtPrice(Sides side, decimal price)
result = iOrderBook.GetOrdersAtPrice(side, price)
Erhalten Sie alle Benutzerbestellungen zu einem bestimmten Preisniveau.
- side
- Seite zur Abfrage.
- price
- Preisniveau für die Abfrage.
public decimal GetTotalVolume(Sides side)
result = iOrderBook.GetTotalVolume(side)
Holen Sie sich das Gesamtvolumen für eine Seite.
- side
- Seite, um das gesamtvolumen für.
public decimal GetVolumeAtPrice(Sides side, decimal price)
result = iOrderBook.GetVolumeAtPrice(side, price)
Holen Sie sich Volumen zu einem bestimmten Preisniveau.
- side
- Seite zur Abfrage.
- price
- Preisniveau für die Abfrage.
public bool HasLevel(Sides side, decimal price)
result = iOrderBook.HasLevel(side, price)
Überprüfen Sie, ob es ein Angebot zum angegebenen Preis gibt.
- side
- Seite zu überprüfen.
- price
- Preisniveau zu überprüfen.
public IEnumerable<EmulatorOrder> RemoveLevel(Sides side, decimal price)
result = iOrderBook.RemoveLevel(side, price)
Entfernen Sie das gesamte Niveau zum Preis.
- side
- Seite, um das Niveau zu entfernen.
- price
- Preisniveau zu entfernen.
Rückgabe: Entfernte Bestellungen, die auf dieser Ebene vorhanden waren.
public bool RemoveQuote(long transactionId, Sides side, decimal price)
result = iOrderBook.RemoveQuote(transactionId, side, price)
Entfernen Sie ein Zitat aus dem Orderbuch.
- transactionId
- Transaktions-ID des Auftrages zu entfernen.
- side
- Seite (Kaufen/Verkaufen), auf der die Bestellung aufgegeben wird.
- price
- Preisniveau der Bestellung.
Rückgabe: Wahr, wenn entfernt, falsch, wenn nicht gefunden.
public void SetSnapshot(IEnumerable<QuoteChange> bids, IEnumerable<QuoteChange> asks)
iOrderBook.SetSnapshot(bids, asks)
Legen Sie das Auftragsbuch aus einem Snapshot fest (ersetzt alle Nicht-Benutzer-Zitate).
- bids
- Die Reihenfolge der Gebotsnotierung ändert sich auf Set.
- asks
- Die Reihenfolge des Ask-Zitats ändert sich auf set.
public QuoteChangeMessage ToMessage(DateTime localTime, DateTime serverTime)
result = iOrderBook.ToMessage(localTime, serverTime)
Erstellen Sie ein QuoteChangeMessage aus dem aktuellen Zustand.
- localTime
- Lokale Zeit, um die generierte Nachricht einzustellen.
- serverTime
- Serverzeit, um die generierte Nachricht einzustellen.
public IEnumerable<EmulatorOrder> TrimToDepth(Sides side, int maxDepth)
result = iOrderBook.TrimToDepth(side, maxDepth)
Entfernen Sie die schlechtesten Ebenen, die die maximale Tiefe überschreiten.
- side
- Seite zum trimmen.
- maxDepth
- Maximal zulässige Tiefe zu halten.
Rückgabe: Entfernte Bestellungen aus getrimmten Levels.
public void UpdateLevel(Sides side, decimal price, decimal volume)
iOrderBook.UpdateLevel(side, price, volume)
Aktualisierungsvolumen auf einem Preisniveau (für Marktkurse).
- side
- Seite zum Update.
- price
- Preisniveau zu aktualisieren.
- volume
- Neues Marktvolumen auf dem Niveau.