EntityCache
Cache für die Speicherung von Aufträgen, Trades, Nachrichten und anderen Handelseinheiten.
Implementiert: ISnapshotHolder
Konstruktoren
public EntityCache(ILogReceiver logReceiver, IExchangeInfoProvider exchangeInfoProvider, IPositionProvider positionProvider)
entityCache = EntityCache(logReceiver, exchangeInfoProvider, positionProvider)
Entity cache for storing orders, trades, news and other trading entities.
- logReceiver
- Log receiver for logging messages.
- exchangeInfoProvider
- Exchange info provider.
- positionProvider
- Position provider.
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 ReleaseLevel1Ownership(SecurityId securityId, DataType dataType)
entityCache.ReleaseLevel1Ownership(securityId, dataType)
Hand the Level1 fields an ended market data stream owned back to Level1. An order book owns the best quotes and a tick stream owns the last trade only while it runs; once it is gone Level1 is the only source left for them.
- securityId
- Security the stream carried.
- dataType
- Data type of the stream that ended.
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 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 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 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.