BasketMessageAdapter
Адаптер-агрегатор, позволяющий одновременно работать с несколькими адаптерами, подключенными к разным торговым системам.
Наследует: BaseLogReceiver
Реализует: IMessageAdapterWrapper, IMessageAdapter, IMessageTransport, IPersistable, ILogReceiver, ILogSource, IDisposable, ICloneable<IMessageAdapter>, ICloneable
Конструкторы
public BasketMessageAdapter(IdGenerator transactionIdGenerator, CandleBuilderProvider candleBuilderProvider, ISecurityMessageAdapterProvider securityAdapterProvider, IPortfolioMessageAdapterProvider portfolioAdapterProvider, IStorageBuffer buffer)
basketMessageAdapter = BasketMessageAdapter(transactionIdGenerator, candleBuilderProvider, securityAdapterProvider, portfolioAdapterProvider, buffer)
Инициализирует новый экземпляр 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)
Инициализирует новый экземпляр BasketMessageAdapter с внедряемыми зависимостями.
Свойства
public ICommissionManager CommissionManager { get; set; }
value = basketMessageAdapter.CommissionManager
basketMessageAdapter.CommissionManager = value
Менеджер по расчету комиссионных.
public bool ConnectDisconnectEventOnFirstAdapter { get; set; }
value = basketMessageAdapter.ConnectDisconnectEventOnFirstAdapter
basketMessageAdapter.ConnectDisconnectEventOnFirstAdapter = value
Позвонить на мероприятие ConnectMessage, когда первый адаптер подключится к InnerAdapters.
public IExtendedInfoStorage ExtendedInfoStorage { get; set; }
value = basketMessageAdapter.ExtendedInfoStorage
basketMessageAdapter.ExtendedInfoStorage = value
Расширенное хранилище информации.
public IFillGapsBehaviour FillGapsBehaviour { get; set; }
value = basketMessageAdapter.FillGapsBehaviour
basketMessageAdapter.FillGapsBehaviour = value
IFillGapsBehaviour
public bool GenerateOrderBookFromLevel1 { get; set; }
value = basketMessageAdapter.GenerateOrderBookFromLevel1
basketMessageAdapter.GenerateOrderBookFromLevel1 = value
Создайте книгу заказов из данных Level1.
public bool IgnoreExtraAdapters { get; set; }
value = basketMessageAdapter.IgnoreExtraAdapters
basketMessageAdapter.IgnoreExtraAdapters = value
Не добавляйте дополнительные адаптеры.
public IInnerAdapterList InnerAdapters { get; }
value = basketMessageAdapter.InnerAdapters
Адаптеры, с которыми работает агрегатор.
public bool IsRestoreSubscriptionOnErrorReconnect { get; set; }
value = basketMessageAdapter.IsRestoreSubscriptionOnErrorReconnect
basketMessageAdapter.IsRestoreSubscriptionOnErrorReconnect = value
Восстановить подписку на Reconnect.
public bool IsSecurityNewsOnly { get; }
value = basketMessageAdapter.IsSecurityNewsOnly
Адаптер предоставляет новости, связанные с определенным финансовым инструментом.
public bool IsSupportTransactionLog { get; set; }
value = basketMessageAdapter.IsSupportTransactionLog
basketMessageAdapter.IsSupportTransactionLog = value
Используйте TransactionOrderingMessageAdapter.
public ILatencyManager LatencyManager { get; set; }
value = basketMessageAdapter.LatencyManager
basketMessageAdapter.LatencyManager = value
Менеджер расчета задержки регистрации заказов.
public bool Level1Extend { get; set; }
value = basketMessageAdapter.Level1Extend
basketMessageAdapter.Level1Extend = value
Используйте Level1ExtendBuilderAdapter.
public ISecurityMappingStorageProvider MappingProvider { get; set; }
value = basketMessageAdapter.MappingProvider
basketMessageAdapter.MappingProvider = value
Поставщик хранилища сопоставлений идентификаторов финансовых инструментов.
public INativeIdStorageProvider NativeIdStorage { get; set; }
value = basketMessageAdapter.NativeIdStorage
basketMessageAdapter.NativeIdStorage = value
Поставщик хранилища собственных идентификаторов финансовых инструментов.
public IPnLManager PnLManager { get; set; }
value = basketMessageAdapter.PnLManager
basketMessageAdapter.PnLManager = value
Менеджер прибылей-убытков.
public IPortfolioMessageAdapterProvider PortfolioAdapterProvider { get; }
value = basketMessageAdapter.PortfolioAdapterProvider
Поставщик адаптера сообщений на основе портфолио.
public IBasketRoutingManager RoutingManager { get; }
value = basketMessageAdapter.RoutingManager
Получил менеджера маршрутизации.
public ISecurityMessageAdapterProvider SecurityAdapterProvider { get; }
value = basketMessageAdapter.SecurityAdapterProvider
Поставщик адаптера сообщений на основе финансовых инструментов.
public bool SendFinishedCandlesImmediatelly { get; set; }
value = basketMessageAdapter.SendFinishedCandlesImmediatelly
basketMessageAdapter.SendFinishedCandlesImmediatelly = value
SendFinishedCandlesImmediatelly.
public ISlippageManager SlippageManager { get; set; }
value = basketMessageAdapter.SlippageManager
basketMessageAdapter.SlippageManager = value
Менеджер проскальзывания.
public IStorageProcessor StorageProcessor { get; }
value = basketMessageAdapter.StorageProcessor
Процессор памяти.
public StorageCoreSettings StorageSettings { get; }
value = basketMessageAdapter.StorageSettings
Настройки хранилища.
public bool SupportBuildingFromOrderLog { get; set; }
value = basketMessageAdapter.SupportBuildingFromOrderLog
basketMessageAdapter.SupportBuildingFromOrderLog = value
Используйте OrderLogMessageAdapter.
public bool SupportCandlesCompression { get; set; }
value = basketMessageAdapter.SupportCandlesCompression
basketMessageAdapter.SupportCandlesCompression = value
Используйте CandleBuilderMessageAdapter.
public bool SupportLookupTracking { get; set; }
value = basketMessageAdapter.SupportLookupTracking
basketMessageAdapter.SupportLookupTracking = value
Используйте LookupTrackingMessageAdapter.
public bool SupportOffline { get; set; }
value = basketMessageAdapter.SupportOffline
basketMessageAdapter.SupportOffline = value
Используйте OfflineMessageAdapter.
public bool SupportOrderBookTruncate { get; set; }
value = basketMessageAdapter.SupportOrderBookTruncate
basketMessageAdapter.SupportOrderBookTruncate = value
Используйте OrderBookTruncateMessageAdapter.
public bool SupportSecurityAll { get; set; }
value = basketMessageAdapter.SupportSecurityAll
basketMessageAdapter.SupportSecurityAll = value
Используйте SubscriptionSecurityAllMessageAdapter.
public bool SupportStorage { get; set; }
value = basketMessageAdapter.SupportStorage
basketMessageAdapter.SupportStorage = value
Используйте StorageMessageAdapter.
public bool SuppressOrderBookIncrements { get; set; }
value = basketMessageAdapter.SuppressOrderBookIncrements
basketMessageAdapter.SuppressOrderBookIncrements = value
Когда OrderBookIncrementMessageAdapter никогда не добавляется в конвейер — даже когда внутренний адаптер сообщает IsSupportOrderBookIncrements.
public bool SuppressReconnectingErrors { get; set; }
value = basketMessageAdapter.SuppressReconnectingErrors
basketMessageAdapter.SuppressReconnectingErrors = value
Подавить ошибки повторного подключения.
public IdGenerator TransactionIdGenerator { get; set; }
value = basketMessageAdapter.TransactionIdGenerator
basketMessageAdapter.TransactionIdGenerator = value
Генератор идентификаторов транзакций, используемый для внутренней маршрутизации подписки на ребенка, должен быть синхронизирован с генератором родительского адаптера.
public bool UseInChannel { get; set; }
value = basketMessageAdapter.UseInChannel
basketMessageAdapter.UseInChannel = value
Используйте каналы для сообщений.
public bool UseOutChannel { get; set; }
value = basketMessageAdapter.UseOutChannel
basketMessageAdapter.UseOutChannel = value
Используйте каналы для рассылки сообщений.
Методы
public void ApplyHeartbeat(IMessageAdapter adapter, bool on)
basketMessageAdapter.ApplyHeartbeat(adapter, on)
Примените режим включения/выключения пульса для указанного адаптера.
public IMessageAdapter Clone()
result = basketMessageAdapter.Clone()
Создайте копию BasketMessageAdapter.
protected override void DisposeManaged()
basketMessageAdapter.DisposeManaged()
Освободить выделенные ресурсы.
protected IEnumerable<IMessageAdapter> GetSortedAdapters()
result = basketMessageAdapter.GetSortedAdapters()
Чтобы адаптеры SortedAdapters отсортировались по указанному приоритету.
public override void Load(SettingsStorage storage)
basketMessageAdapter.Load(storage)
Загрузить настройки.
- storage
- Хранилище настроек.
protected virtual ValueTask OnInnerAdapterNewOutMessage(IMessageAdapter innerAdapter, Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnInnerAdapterNewOutMessage(innerAdapter, message, cancellationToken)
Встроенный обработчик событий адаптера.
protected virtual ValueTask OnSendInMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnSendInMessageAsync(message, cancellationToken)
Отправить сообщение.
protected virtual ValueTask OnSendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnSendOutMessageAsync(message, cancellationToken)
Отправьте исходящее сообщение и вызовите событие NewOutMessageAsync.
public override void Save(SettingsStorage storage)
basketMessageAdapter.Save(storage)
Сохраните настройки.
- storage
- Хранилище настроек.
public ValueTask SendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.SendOutMessageAsync(message, cancellationToken)
Отправка исходящего сообщения (изменение состояния, заказа и т.п.).
- message
- Сообщение.
- cancellationToken
- CancellationToken
public bool TryGetAdapter(string porfolioName, IMessageAdapter adapter)
result = basketMessageAdapter.TryGetAdapter(porfolioName, adapter)
Попробуйте найти адаптер по названию портфолио.
События
public event Func<Message, CancellationToken, ValueTask> NewOutMessageAsync
basketMessageAdapter.NewOutMessageAsync += handler
Новое событие сообщения.