BasketMessageAdapter
Adapter-Aggregator, der es ermöglicht, mehrere Adapter gleichzeitig zu betreiben, die mit verschiedenen Handelssystemen verbunden sind.
Erbt von: BaseLogReceiver
Implementiert: IMessageAdapterWrapper, IMessageAdapter, IMessageTransport, IPersistable, ILogReceiver, ILogSource, IDisposable, ICloneable<IMessageAdapter>, ICloneable
Konstruktoren
public BasketMessageAdapter(IdGenerator transactionIdGenerator, CandleBuilderProvider candleBuilderProvider, ISecurityMessageAdapterProvider securityAdapterProvider, IPortfolioMessageAdapterProvider portfolioAdapterProvider, IStorageBuffer buffer)
basketMessageAdapter = BasketMessageAdapter(transactionIdGenerator, candleBuilderProvider, securityAdapterProvider, portfolioAdapterProvider, buffer)
Initialisiert eine neue Instanz von BasketMessageAdapter.
public BasketMessageAdapter(IdGenerator transactionIdGenerator, CandleBuilderProvider candleBuilderProvider, ISecurityMessageAdapterProvider securityAdapterProvider, IPortfolioMessageAdapterProvider portfolioAdapterProvider, IStorageBuffer buffer, IAdapterWrapperPipelineBuilder pipelineBuilder, IBasketRoutingManager routingManager)
basketMessageAdapter = BasketMessageAdapter(transactionIdGenerator, candleBuilderProvider, securityAdapterProvider, portfolioAdapterProvider, buffer, pipelineBuilder, routingManager)
Initialisiert eine neue Instanz des BasketMessageAdapter mit injizierbaren Abhängigkeiten.
Eigenschaften
public ICommissionManager CommissionManager { get; set; }
value = basketMessageAdapter.CommissionManager
basketMessageAdapter.CommissionManager = value
Der Provisionsberechnungsmanager.
public bool ConnectDisconnectEventOnFirstAdapter { get; set; }
value = basketMessageAdapter.ConnectDisconnectEventOnFirstAdapter
basketMessageAdapter.ConnectDisconnectEventOnFirstAdapter = value
Um das ConnectMessage Ereignis aufzurufen, wenn der erste Adapter eine Verbindung zu InnerAdapters herstellt.
public IExtendedInfoStorage ExtendedInfoStorage { get; set; }
value = basketMessageAdapter.ExtendedInfoStorage
basketMessageAdapter.ExtendedInfoStorage = value
Erweiterte Informationsspeicherung.
public IFillGapsBehaviour FillGapsBehaviour { get; set; }
value = basketMessageAdapter.FillGapsBehaviour
basketMessageAdapter.FillGapsBehaviour = value
IFillGapsBehaviour
public bool GenerateOrderBookFromLevel1 { get; set; }
value = basketMessageAdapter.GenerateOrderBookFromLevel1
basketMessageAdapter.GenerateOrderBookFromLevel1 = value
Generieren Sie das Orderbuch aus Level1-Daten.
public bool IgnoreExtraAdapters { get; set; }
value = basketMessageAdapter.IgnoreExtraAdapters
basketMessageAdapter.IgnoreExtraAdapters = value
Fügen Sie keine zusätzlichen Adapter hinzu.
public IInnerAdapterList InnerAdapters { get; }
value = basketMessageAdapter.InnerAdapters
Adapter, mit denen der Aggregator arbeitet.
public bool IsRestoreSubscriptionOnErrorReconnect { get; set; }
value = basketMessageAdapter.IsRestoreSubscriptionOnErrorReconnect
basketMessageAdapter.IsRestoreSubscriptionOnErrorReconnect = value
Restore-Abonnement bei Reconnect.
public bool IsSecurityNewsOnly { get; }
value = basketMessageAdapter.IsSecurityNewsOnly
Adapter liefert Nachrichten zu einem bestimmten Finanzinstrument.
public bool IsSupportTransactionLog { get; set; }
value = basketMessageAdapter.IsSupportTransactionLog
basketMessageAdapter.IsSupportTransactionLog = value
Verwenden Sie TransactionOrderingMessageAdapter.
public ILatencyManager LatencyManager { get; set; }
value = basketMessageAdapter.LatencyManager
basketMessageAdapter.LatencyManager = value
Orders Registration Delay Calculation Manager.
public bool Level1Extend { get; set; }
value = basketMessageAdapter.Level1Extend
basketMessageAdapter.Level1Extend = value
Verwenden Sie Level1ExtendBuilderAdapter.
public ISecurityMappingStorageProvider MappingProvider { get; set; }
value = basketMessageAdapter.MappingProvider
basketMessageAdapter.MappingProvider = value
Anbieter von Speichern für die Finanzinstrumentkennung.
public INativeIdStorageProvider NativeIdStorage { get; set; }
value = basketMessageAdapter.NativeIdStorage
basketMessageAdapter.NativeIdStorage = value
Anbieter von nativen Finanzinstrumenten
public IPnLManager PnLManager { get; set; }
value = basketMessageAdapter.PnLManager
basketMessageAdapter.PnLManager = value
Der Profit-Loss-Manager.
public IPortfolioMessageAdapterProvider PortfolioAdapterProvider { get; }
value = basketMessageAdapter.PortfolioAdapterProvider
Der portfoliobasierte Nachrichtenadapter-Anbieter.
public IBasketRoutingManager RoutingManager { get; }
value = basketMessageAdapter.RoutingManager
Bekommt den Routing-Manager.
public ISecurityMessageAdapterProvider SecurityAdapterProvider { get; }
value = basketMessageAdapter.SecurityAdapterProvider
Der Anbieter des Finanzinstruments basierten Nachrichtenadapters.
public bool SendFinishedCandlesImmediatelly { get; set; }
value = basketMessageAdapter.SendFinishedCandlesImmediatelly
basketMessageAdapter.SendFinishedCandlesImmediatelly = value
SendFinishedCandlesImmediatelly.
public ISlippageManager SlippageManager { get; set; }
value = basketMessageAdapter.SlippageManager
basketMessageAdapter.SlippageManager = value
Slippage-Manager.
public IStorageProcessor StorageProcessor { get; }
value = basketMessageAdapter.StorageProcessor
Speicherprozessor.
public StorageCoreSettings StorageSettings { get; }
value = basketMessageAdapter.StorageSettings
Speichereinstellungen.
public bool SupportBuildingFromOrderLog { get; set; }
value = basketMessageAdapter.SupportBuildingFromOrderLog
basketMessageAdapter.SupportBuildingFromOrderLog = value
Verwenden Sie OrderLogMessageAdapter.
public bool SupportCandlesCompression { get; set; }
value = basketMessageAdapter.SupportCandlesCompression
basketMessageAdapter.SupportCandlesCompression = value
Verwenden Sie CandleBuilderMessageAdapter.
public bool SupportLookupTracking { get; set; }
value = basketMessageAdapter.SupportLookupTracking
basketMessageAdapter.SupportLookupTracking = value
Verwenden Sie LookupTrackingMessageAdapter.
public bool SupportOffline { get; set; }
value = basketMessageAdapter.SupportOffline
basketMessageAdapter.SupportOffline = value
Verwenden Sie OfflineMessageAdapter.
public bool SupportOrderBookTruncate { get; set; }
value = basketMessageAdapter.SupportOrderBookTruncate
basketMessageAdapter.SupportOrderBookTruncate = value
Verwenden Sie OrderBookTruncateMessageAdapter.
public bool SupportSecurityAll { get; set; }
value = basketMessageAdapter.SupportSecurityAll
basketMessageAdapter.SupportSecurityAll = value
Verwenden Sie SubscriptionSecurityAllMessageAdapter.
public bool SupportStorage { get; set; }
value = basketMessageAdapter.SupportStorage
basketMessageAdapter.SupportStorage = value
Verwenden Sie StorageMessageAdapter.
public bool SuppressOrderBookIncrements { get; set; }
value = basketMessageAdapter.SuppressOrderBookIncrements
basketMessageAdapter.SuppressOrderBookIncrements = value
Wenn , wird der OrderBookIncrementMessageAdapter niemals zur Pipeline hinzugefügt - selbst wenn der innere Adapter IsSupportOrderBookIncrements meldet.
public bool SuppressReconnectingErrors { get; set; }
value = basketMessageAdapter.SuppressReconnectingErrors
basketMessageAdapter.SuppressReconnectingErrors = value
Unterdrücken Sie Wiederverbindungsfehler.
public IdGenerator TransactionIdGenerator { get; set; }
value = basketMessageAdapter.TransactionIdGenerator
basketMessageAdapter.TransactionIdGenerator = value
Transaktions-ID-Generator für internes Kinderabonnement-Routing: muss synchron mit dem Generator des übergeordneten Adapters gehalten werden.
public bool UseInChannel { get; set; }
value = basketMessageAdapter.UseInChannel
basketMessageAdapter.UseInChannel = value
Verwenden Sie Kanäle für in Nachrichten.
public bool UseOutChannel { get; set; }
value = basketMessageAdapter.UseOutChannel
basketMessageAdapter.UseOutChannel = value
Verwenden Sie Kanäle für unsere Nachrichten.
Methoden
public void ApplyHeartbeat(IMessageAdapter adapter, bool on)
basketMessageAdapter.ApplyHeartbeat(adapter, on)
Wenden Sie den Ein-/Aus-Herzschlagmodus für den angegebenen Adapter an.
public IMessageAdapter Clone()
result = basketMessageAdapter.Clone()
Erstellen Sie eine Kopie von BasketMessageAdapter.
protected override void DisposeManaged()
basketMessageAdapter.DisposeManaged()
Um zugewiesene Ressourcen freizugeben.
protected IEnumerable<IMessageAdapter> GetSortedAdapters()
result = basketMessageAdapter.GetSortedAdapters()
Um Adapter SortedAdapters zu erhalten, die nach der angegebenen Priorität sortiert sind.
public override void Load(SettingsStorage storage)
basketMessageAdapter.Load(storage)
Lasteinstellungen.
- storage
- Einstellungen Lagerung.
protected virtual ValueTask OnInnerAdapterNewOutMessage(IMessageAdapter innerAdapter, Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnInnerAdapterNewOutMessage(innerAdapter, message, cancellationToken)
Der Embedded Adapter Event Handler.
protected virtual ValueTask OnSendInMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnSendInMessageAsync(message, cancellationToken)
Senden Sie eine Nachricht.
protected virtual ValueTask OnSendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnSendOutMessageAsync(message, cancellationToken)
Senden Sie ausgehende Nachricht und erhöhen NewOutMessageAsync @ Veranstaltung.
public override void Save(SettingsStorage storage)
basketMessageAdapter.Save(storage)
Einstellungen speichern.
- storage
- Einstellungen Lagerung.
public ValueTask SendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.SendOutMessageAsync(message, cancellationToken)
Senden Sie ausgehende Nachrichten (Zustandsänderung, Reihenfolge usw.).
- message
- Nachricht.
- cancellationToken
- CancellationToken
public bool TryGetAdapter(string porfolioName, IMessageAdapter adapter)
result = basketMessageAdapter.TryGetAdapter(porfolioName, adapter)
Versuchen Sie, Adapter nach Portfolioname zu finden.
Ereignisse
public event Func<Message, CancellationToken, ValueTask> NewOutMessageAsync
basketMessageAdapter.NewOutMessageAsync += handler
Neues Nachrichtenereignis.