EntityCache
Cache für die Speicherung von Aufträgen, Trades, Nachrichten und anderen Handelseinheiten.
Implementiert: ISnapshotHolder
Konstruktoren
public EntityCache(ILogReceiver logReceiver, Func<SecurityId?, Security> tryGetSecurity, IExchangeInfoProvider exchangeInfoProvider, IPositionProvider positionProvider)
entityCache = EntityCache(logReceiver, tryGetSecurity, exchangeInfoProvider, positionProvider)
Cache für die Speicherung von Aufträgen, Trades, Nachrichten und anderen Handelseinheiten.
- logReceiver
- Protokollempfänger für Protokollierungsnachrichten.
- tryGetSecurity
- Funktion, um Finanzinstrument nach ID zu erhalten.
- exchangeInfoProvider
- Exchange-Info-Anbieter.
- positionProvider
- Positionsgeber.
Eigenschaften
public IExchangeInfoProvider ExchangeInfoProvider { get; }
value = entityCache.ExchangeInfoProvider
Exchange-Info-Anbieter.
public IEnumerable<MyTrade> MyTrades { get; }
value = entityCache.MyTrades
Alle eigenen Trades.
public IEnumerable<OrderFail> OrderCancelFails { get; }
value = entityCache.OrderCancelFails
Auftragsauslöschungen fehlgeschlagen.
public IEnumerable<OrderFail> OrderEditFails { get; }
value = entityCache.OrderEditFails
Fehler bei der Auftragsänderung.
public IEnumerable<OrderFail> OrderRegisterFails { get; }
value = entityCache.OrderRegisterFails
Fehlgeschlagene Auftragsregistrierung.
public int OrdersKeepCount { get; set; }
value = entityCache.OrdersKeepCount
entityCache.OrdersKeepCount = value
Maximale Anzahl von Orders, die im Cache gespeichert werden können.
Methoden
public void AddFail(OrderOperations operation, OrderFail fail)
entityCache.AddFail(operation, fail)
Order Fail hinzufügen.
- operation
- Betrieb.
- fail
- Fehlschlag.
public void AddOrderByCancelationId(Order order, long transactionId)
entityCache.AddOrderByCancelationId(order, transactionId)
Fügen Sie die Bestellung durch Stornierung Transaktions-ID hinzu.
- order
- Bestellung.
- transactionId
- Transaktionskennung.
public void AddOrderByEditionId(Order order, long transactionId)
entityCache.AddOrderByEditionId(order, transactionId)
Fügen Sie die Order nach Edition Transaktions-ID hinzu.
- order
- Bestellung.
- transactionId
- Transaktionskennung.
public void AddOrderByRegistrationId(Order order)
entityCache.AddOrderByRegistrationId(order)
Fügen Sie die Bestellung nach Registrierung Transaktions-ID hinzu.
- order
- Bestellung.
public void AddOrderFailById(OrderFail fail, OrderOperations operation, long transactionId)
entityCache.AddOrderFailById(fail, operation, transactionId)
Fügen Sie Order Fail by Transaction ID hinzu.
- fail
- Ordnung fehlgeschlagen.
- operation
- Auftragsoperation.
- transactionId
- Transaktionskennung.
public void AddOrderStatusTransactionId(long transactionId)
entityCache.AddOrderStatusTransactionId(transactionId)
Fügen Sie die Transaktions-ID des Auftragsstatus hinzu.
- transactionId
- Transaktionskennung.
public IEnumerable<Level1Fields> GetLevel1Fields(Security security)
result = entityCache.GetLevel1Fields(security)
Erhalten Sie verfügbare Level1-Felder für Finanzinstrumente.
- security
- Finanzinstrument.
Rückgabe: Felder.
public IEnumerable<Order> GetOrders(Security security, OrderStates state)
result = entityCache.GetOrders(security, state)
Erhalten Sie Aufträge nach Finanzinstrument und Staat.
- security
- Finanzinstrument.
- state
- Ordnungsstaat.
Rückgabe: Befehle.
public object GetSecurityValue(Security security, Level1Fields field)
result = entityCache.GetSecurityValue(security, field)
Erhalten Sie den Feldwert des Finanzinstruments Level1.
- security
- Finanzinstrument.
- field
- Feld.
Rückgabe: Wert.
public Level1Info GetSecurityValues(Security security, DateTime serverTime)
result = entityCache.GetSecurityValues(security, serverTime)
Holen Sie sich oder erstellen Sie Level1-Infos für Finanzinstrumente.
- security
- Finanzinstrument.
- serverTime
- Serverzeit.
Rückgabe: Level1 Infos.
public bool HasLevel1Info(Security security)
result = entityCache.HasLevel1Info(security)
Überprüfen Sie, ob das Finanzinstrument Level1-Infos hat.
- security
- Finanzinstrument.
Rückgabe: Wenn es Infos hat.
public bool IsMassCancelation(long transactionId)
result = entityCache.IsMassCancelation(transactionId)
Überprüfen Sie, ob die Transaktion eine Massenstornierung ist.
- transactionId
- Transaktionskennung.
Rückgabe: bei Massenauslöschung.
public bool IsOrderStatusRequest(long transactionId)
result = entityCache.IsOrderStatusRequest(transactionId)
Überprüfen Sie, ob die Transaktion eine Orderstatusanforderung ist.
- transactionId
- Transaktionskennung.
Rückgabe: Wenn Bestellstatusanforderung.
public ValueTuple<News, bool> ProcessNewsMessage(Security security, NewsMessage message)
result = entityCache.ProcessNewsMessage(security, message)
Nachrichtennachrichten verarbeiten.
- security
- Finanzinstrument.
- message
- Nachricht.
Rückgabe: News und ist neue Flagge.
public IEnumerable<ValueTuple<OrderFail, OrderOperations>> ProcessOrderFailMessage(Order order, Security security, ExecutionMessage message)
result = entityCache.ProcessOrderFailMessage(order, security, message)
Meldung „Process Order Fail.
- order
- Bestellung.
- security
- Finanzinstrument.
- message
- Nachricht.
Rückgabe: Ordnung scheitert mit Operationen.
public IEnumerable<OrderChangeInfo> ProcessOrderMessage(Order order, Security security, ExecutionMessage message, long transactionId, Func<string, Portfolio> getPortfolio)
result = entityCache.ProcessOrderMessage(order, security, message, transactionId, getPortfolio)
Auftragsmeldung verarbeiten.
- order
- Bestellung.
- security
- Finanzinstrument.
- message
- Nachricht.
- transactionId
- Transaktionskennung.
- getPortfolio
- Funktion, um Portfolio zu erhalten.
Rückgabe: Auftragsänderungsinformationen.
public ValueTuple<MyTrade, bool> ProcessOwnTradeMessage(Order order, Security security, ExecutionMessage message, long transactionId)
result = entityCache.ProcessOwnTradeMessage(order, security, message, transactionId)
Eigene Handelsnachricht verarbeiten.
- order
- Bestellung.
- security
- Finanzinstrument.
- message
- Nachricht.
- transactionId
- Transaktionskennung.
Rückgabe: Handel und ist neue Flagge.
public void RemoveOrderStatusTransactionId(long transactionId)
entityCache.RemoveOrderStatusTransactionId(transactionId)
Entfernen Sie die Transaktions-ID des Auftragsstatus.
- transactionId
- Transaktionskennung.
public void TryAddMassCancelationId(long transactionId)
entityCache.TryAddMassCancelationId(transactionId)
Versuchen Sie, die Transaktions-ID für Massenstornierung hinzuzufügen.
- transactionId
- Transaktionskennung.
public IMessageAdapter TryGetAdapter(Order order)
result = entityCache.TryGetAdapter(order)
Versuchen Sie, den Message Adapter für die Bestellung zu erhalten.
- order
- Bestellung.
Rückgabe: Adapter oder .
public Order TryGetOrder(long? orderId, string orderStringId)
result = entityCache.TryGetOrder(orderId, orderStringId)
Versuchen Sie, Bestellung per ID zu erhalten.
- orderId
- Ordnungsnummer.
- orderStringId
- Order string id.
Rückgabe: Ordnung oder .
public Order TryGetOrder(long transactionId, OrderOperations operation)
result = entityCache.TryGetOrder(transactionId, operation)
Versuchen Sie, die Bestellung nach Transaktions-ID und Operation zu erhalten.
- transactionId
- Transaktionskennung.
- operation
- Betrieb.
Rückgabe: Ordnung oder .
public void TrySetAdapter(Order order, IMessageAdapter adapter)
entityCache.TrySetAdapter(order, adapter)
Versuchen Sie, den Message Adapter für die Bestellung einzustellen.
- order
- Bestellung.
- adapter
- Adapter.
public void UpdateOrderBookSnapshot(QuoteChangeMessage message)
entityCache.UpdateOrderBookSnapshot(message)
Aktualisieren Sie den zwischengespeicherten Auftragsbuch-Snapshot für ein Finanzinstrument.
- message
- Auftragsbuchmeldung.