Получение level1 с помощью IMarketDataProvider
При использовании нескольких подключений к различным торговым системам для каждой из них могут приходить данные по одному и тому же инструменту, и данные, записанные в поля инструмента, могут содержать коллизии.
До версии
4.2.16 данные по последней сделке, лучшим ценам, и другая Level1 информация всегда записывалась в поля инструмента.
Начиная с версии
4.2.16 Connector реализует дополнительный интерфейс IMarketDataProvider, с помощью которого можно получать торговую информацию для инструмента и содержит два дополнительных свойства (UpdateSecurityLastQuotes и UpdateSecurityByLevel1), с помощью которых можно запретить запись этих данных в поля инструмента. Получить значение цены последней сделки для конкретного подключения можно с помощью метода IMarketDataProvider.GetSecurityValue:
Код
connector.GetSecurityValue(security, Level1Fields.LastTradePrice);
При значениях по умолчанию, для свойств UpdateSecurityLastQuotes и UpdateSecurityByLevel1, данные по сделкам, лучшим ценам записываются в поля инструмента аналогично поведению в предыдущих версиях.