BasketMessageAdapter

StockSharp.Algo

Адаптер-агрегатор, позволяющий одновременно работать с несколькими адаптерами, подключенными к разным торговым системам.

Наследует: BaseLogReceiver

Реализует: IMessageAdapterWrapper, IMessageAdapter, IMessageTransport, IPersistable, ILogReceiver, ILogSource, IDisposable, ICloneable<IMessageAdapter>, ICloneable

Конструкторы

BasketMessageAdapter
public BasketMessageAdapter(IdGenerator transactionIdGenerator, CandleBuilderProvider candleBuilderProvider, ISecurityMessageAdapterProvider securityAdapterProvider, IPortfolioMessageAdapterProvider portfolioAdapterProvider, IStorageBuffer buffer)
basketMessageAdapter = BasketMessageAdapter(transactionIdGenerator, candleBuilderProvider, securityAdapterProvider, portfolioAdapterProvider, buffer)

Инициализирует новый экземпляр BasketMessageAdapter.

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 с внедряемыми зависимостями.

Свойства

Buffer
public IStorageBuffer Buffer { get; }
value = basketMessageAdapter.Buffer

Буфер хранения.

CommissionManager
public ICommissionManager CommissionManager { get; set; }
value = basketMessageAdapter.CommissionManager
basketMessageAdapter.CommissionManager = value

Менеджер по расчету комиссионных.

ConnectDisconnectEventOnFirstAdapter
public bool ConnectDisconnectEventOnFirstAdapter { get; set; }
value = basketMessageAdapter.ConnectDisconnectEventOnFirstAdapter
basketMessageAdapter.ConnectDisconnectEventOnFirstAdapter = value

Позвонить на мероприятие ConnectMessage, когда первый адаптер подключится к InnerAdapters.

ExtendedInfoStorage
public IExtendedInfoStorage ExtendedInfoStorage { get; set; }
value = basketMessageAdapter.ExtendedInfoStorage
basketMessageAdapter.ExtendedInfoStorage = value

Расширенное хранилище информации.

FillGapsBehaviour
public IFillGapsBehaviour FillGapsBehaviour { get; set; }
value = basketMessageAdapter.FillGapsBehaviour
basketMessageAdapter.FillGapsBehaviour = value

IFillGapsBehaviour

GenerateOrderBookFromLevel1
public bool GenerateOrderBookFromLevel1 { get; set; }
value = basketMessageAdapter.GenerateOrderBookFromLevel1
basketMessageAdapter.GenerateOrderBookFromLevel1 = value

Создайте книгу заказов из данных Level1.

IgnoreExtraAdapters
public bool IgnoreExtraAdapters { get; set; }
value = basketMessageAdapter.IgnoreExtraAdapters
basketMessageAdapter.IgnoreExtraAdapters = value

Не добавляйте дополнительные адаптеры.

InnerAdapters
public IInnerAdapterList InnerAdapters { get; }
value = basketMessageAdapter.InnerAdapters

Адаптеры, с которыми работает агрегатор.

IsRestoreSubscriptionOnErrorReconnect
public bool IsRestoreSubscriptionOnErrorReconnect { get; set; }
value = basketMessageAdapter.IsRestoreSubscriptionOnErrorReconnect
basketMessageAdapter.IsRestoreSubscriptionOnErrorReconnect = value

Восстановить подписку на Reconnect.

IsSecurityNewsOnly
public bool IsSecurityNewsOnly { get; }
value = basketMessageAdapter.IsSecurityNewsOnly

Адаптер предоставляет новости, связанные с определенным финансовым инструментом.

IsSupportTransactionLog
public bool IsSupportTransactionLog { get; set; }
value = basketMessageAdapter.IsSupportTransactionLog
basketMessageAdapter.IsSupportTransactionLog = value

Используйте TransactionOrderingMessageAdapter.

LatencyManager
public ILatencyManager LatencyManager { get; set; }
value = basketMessageAdapter.LatencyManager
basketMessageAdapter.LatencyManager = value

Менеджер расчета задержки регистрации заказов.

Level1Extend
public bool Level1Extend { get; set; }
value = basketMessageAdapter.Level1Extend
basketMessageAdapter.Level1Extend = value

Используйте Level1ExtendBuilderAdapter.

MappingProvider
public ISecurityMappingStorageProvider MappingProvider { get; set; }
value = basketMessageAdapter.MappingProvider
basketMessageAdapter.MappingProvider = value

Поставщик хранилища сопоставлений идентификаторов финансовых инструментов.

NativeIdStorage
public INativeIdStorageProvider NativeIdStorage { get; set; }
value = basketMessageAdapter.NativeIdStorage
basketMessageAdapter.NativeIdStorage = value

Поставщик хранилища собственных идентификаторов финансовых инструментов.

PnLManager
public IPnLManager PnLManager { get; set; }
value = basketMessageAdapter.PnLManager
basketMessageAdapter.PnLManager = value

Менеджер прибылей-убытков.

PortfolioAdapterProvider
public IPortfolioMessageAdapterProvider PortfolioAdapterProvider { get; }
value = basketMessageAdapter.PortfolioAdapterProvider

Поставщик адаптера сообщений на основе портфолио.

RoutingManager
public IBasketRoutingManager RoutingManager { get; }
value = basketMessageAdapter.RoutingManager

Получил менеджера маршрутизации.

SecurityAdapterProvider
public ISecurityMessageAdapterProvider SecurityAdapterProvider { get; }
value = basketMessageAdapter.SecurityAdapterProvider

Поставщик адаптера сообщений на основе финансовых инструментов.

SendFinishedCandlesImmediatelly
public bool SendFinishedCandlesImmediatelly { get; set; }
value = basketMessageAdapter.SendFinishedCandlesImmediatelly
basketMessageAdapter.SendFinishedCandlesImmediatelly = value

SendFinishedCandlesImmediatelly.

SlippageManager
public ISlippageManager SlippageManager { get; set; }
value = basketMessageAdapter.SlippageManager
basketMessageAdapter.SlippageManager = value

Менеджер проскальзывания.

StorageProcessor
public IStorageProcessor StorageProcessor { get; }
value = basketMessageAdapter.StorageProcessor

Процессор памяти.

StorageSettings
public StorageCoreSettings StorageSettings { get; }
value = basketMessageAdapter.StorageSettings

Настройки хранилища.

SupportBuildingFromOrderLog
public bool SupportBuildingFromOrderLog { get; set; }
value = basketMessageAdapter.SupportBuildingFromOrderLog
basketMessageAdapter.SupportBuildingFromOrderLog = value

Используйте OrderLogMessageAdapter.

SupportCandlesCompression
public bool SupportCandlesCompression { get; set; }
value = basketMessageAdapter.SupportCandlesCompression
basketMessageAdapter.SupportCandlesCompression = value

Используйте CandleBuilderMessageAdapter.

SupportLookupTracking
public bool SupportLookupTracking { get; set; }
value = basketMessageAdapter.SupportLookupTracking
basketMessageAdapter.SupportLookupTracking = value

Используйте LookupTrackingMessageAdapter.

SupportOffline
public bool SupportOffline { get; set; }
value = basketMessageAdapter.SupportOffline
basketMessageAdapter.SupportOffline = value

Используйте OfflineMessageAdapter.

SupportOrderBookTruncate
public bool SupportOrderBookTruncate { get; set; }
value = basketMessageAdapter.SupportOrderBookTruncate
basketMessageAdapter.SupportOrderBookTruncate = value

Используйте OrderBookTruncateMessageAdapter.

SupportSecurityAll
public bool SupportSecurityAll { get; set; }
value = basketMessageAdapter.SupportSecurityAll
basketMessageAdapter.SupportSecurityAll = value

Используйте SubscriptionSecurityAllMessageAdapter.

SupportStorage
public bool SupportStorage { get; set; }
value = basketMessageAdapter.SupportStorage
basketMessageAdapter.SupportStorage = value

Используйте StorageMessageAdapter.

SuppressOrderBookIncrements
public bool SuppressOrderBookIncrements { get; set; }
value = basketMessageAdapter.SuppressOrderBookIncrements
basketMessageAdapter.SuppressOrderBookIncrements = value

Когда OrderBookIncrementMessageAdapter никогда не добавляется в конвейер — даже когда внутренний адаптер сообщает IsSupportOrderBookIncrements.

SuppressReconnectingErrors
public bool SuppressReconnectingErrors { get; set; }
value = basketMessageAdapter.SuppressReconnectingErrors
basketMessageAdapter.SuppressReconnectingErrors = value

Подавить ошибки повторного подключения.

TransactionIdGenerator
public IdGenerator TransactionIdGenerator { get; set; }
value = basketMessageAdapter.TransactionIdGenerator
basketMessageAdapter.TransactionIdGenerator = value

Генератор идентификаторов транзакций, используемый для внутренней маршрутизации подписки на ребенка, должен быть синхронизирован с генератором родительского адаптера.

UseInChannel
public bool UseInChannel { get; set; }
value = basketMessageAdapter.UseInChannel
basketMessageAdapter.UseInChannel = value

Используйте каналы для сообщений.

UseOutChannel
public bool UseOutChannel { get; set; }
value = basketMessageAdapter.UseOutChannel
basketMessageAdapter.UseOutChannel = value

Используйте каналы для рассылки сообщений.

Методы

ApplyHeartbeat
public void ApplyHeartbeat(IMessageAdapter adapter, bool on)
basketMessageAdapter.ApplyHeartbeat(adapter, on)

Примените режим включения/выключения пульса для указанного адаптера.

Clone
public IMessageAdapter Clone()
result = basketMessageAdapter.Clone()

Создайте копию BasketMessageAdapter.

DisposeManaged
protected override void DisposeManaged()
basketMessageAdapter.DisposeManaged()

Освободить выделенные ресурсы.

GetSortedAdapters
protected IEnumerable<IMessageAdapter> GetSortedAdapters()
result = basketMessageAdapter.GetSortedAdapters()

Чтобы адаптеры SortedAdapters отсортировались по указанному приоритету.

Load
public override void Load(SettingsStorage storage)
basketMessageAdapter.Load(storage)

Загрузить настройки.

storage
Хранилище настроек.
OnInnerAdapterNewOutMessage
protected virtual ValueTask OnInnerAdapterNewOutMessage(IMessageAdapter innerAdapter, Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnInnerAdapterNewOutMessage(innerAdapter, message, cancellationToken)

Встроенный обработчик событий адаптера.

OnSendInMessageAsync
protected virtual ValueTask OnSendInMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnSendInMessageAsync(message, cancellationToken)

Отправить сообщение.

OnSendOutMessageAsync
protected virtual ValueTask OnSendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.OnSendOutMessageAsync(message, cancellationToken)

Отправьте исходящее сообщение и вызовите событие NewOutMessageAsync.

Save
public override void Save(SettingsStorage storage)
basketMessageAdapter.Save(storage)

Сохраните настройки.

storage
Хранилище настроек.
SendOutMessageAsync
public ValueTask SendOutMessageAsync(Message message, CancellationToken cancellationToken)
result = basketMessageAdapter.SendOutMessageAsync(message, cancellationToken)

Отправка исходящего сообщения (изменение состояния, заказа и т.п.).

message
Сообщение.
cancellationToken
CancellationToken
TryGetAdapter
public bool TryGetAdapter(string porfolioName, IMessageAdapter adapter)
result = basketMessageAdapter.TryGetAdapter(porfolioName, adapter)

Попробуйте найти адаптер по названию портфолио.

События

NewOutMessageAsync
public event Func<Message, CancellationToken, ValueTask> NewOutMessageAsync
basketMessageAdapter.NewOutMessageAsync += handler

Новое событие сообщения.