Table of Contents

Class SmartComWrapper<TServer>

Namespace
StockSharp.SmartCom.Native
Assembly
StockSharp.SmartCom.dll

Базовая обертка над SmartCOM API.

public abstract class SmartComWrapper<TServer> : ISmartComWrapper where TServer : class, new()

Type Parameters

TServer

Тип ссылки на SmartCOM API.

Inheritance
SmartComWrapper<TServer>
Implements
Derived
Inherited Members
Extension Methods

Constructors

SmartComWrapper()

Инициализировать SmartComWrapper<TServer>.

protected SmartComWrapper()

Properties

ClientSettings

Настройки клиентской части.

public string ClientSettings { get; set; }

Property Value

string

IsSupportCancelAllOrders

Поддерживается ли отмена всех заявок.

public abstract bool IsSupportCancelAllOrders { get; }

Property Value

bool

Server

Ссылка на SmartCOM API.

protected TServer Server { get; }

Property Value

TServer

ServerSettings

Настройки серверной части.

public string ServerSettings { get; set; }

Property Value

string

Version

Версия обертки.

public abstract SmartComVersions Version { get; }

Property Value

SmartComVersions

Methods

CancelAllOrders()

Отменить все активные заявки.

public abstract void CancelAllOrders()

CancelOrder(string, string, string)

Отменить заявку.

public abstract void CancelOrder(string portfolioName, string securityId, string smartId)

Parameters

portfolioName string

Номер портфеля.

securityId string

Идентификатор инструмента.

smartId string

SmartCOM идентификатор заявки.

Connect(string, short, string, string)

Подключиться к SmartCOM.

public void Connect(string host, short port, string login, string password)

Parameters

host string

Адрес сервера.

port short

Порт сервера.

login string

Логин.

password string

Пароль.

Disconnect()

Отключиться от SmartCOM.

public void Disconnect()

LookupPortfolios()

Запросить все доступные портфель.

public abstract void LookupPortfolios()

LookupSecurities()

Запросить все доступные инструменты.

public abstract void LookupSecurities()

OnConnect(string, short, string, string)

Подключиться к SmartCOM.

protected abstract void OnConnect(string host, short port, string login, string password)

Parameters

host string

Адрес сервера.

port short

Порт сервера.

login string

Логин.

password string

Пароль.

OnDisconnect()

Отключиться от SmartCOM.

protected abstract void OnDisconnect()

ReRegisterOrder(string, string, double, string)

Перерегистрировать заявку.

public abstract void ReRegisterOrder(string portfolioName, string symbol, double newPrice, string smartId)

Parameters

portfolioName string

Номер портфеля.

symbol string

Код ЦБ из таблицы котировок SmartTrade.

newPrice double

Новая цена.

smartId string

SmartCOM идентификатор заявки.

RegisterOrder(string, string, SmartOrderAction, SmartOrderType, SmartOrderValidity, double, int, double, int)

Зарегистрировать заявку.

public abstract void RegisterOrder(string portfolioName, string securityId, SmartOrderAction action, SmartOrderType type, SmartOrderValidity validity, double price, int volume, double stopPrice, int transactionId)

Parameters

portfolioName string

Номер портфеля.

securityId string

Идентификатор инструмента.

action SmartOrderAction

Направление действия.

type SmartOrderType

Тип заявки.

validity SmartOrderValidity

Время действия.

price double

Цена.

volume int

Объем.

stopPrice double

Стоп цена (если регистрируется стоп-заявка).

transactionId int

Идентификатор транзакции.

RequestHistoryBars(string, SmartBarInterval, DateTime, int)

Начать получать исторические временные свечи от сервера SmartCOM через событие NewBar.

public abstract void RequestHistoryBars(string securityId, SmartBarInterval timeFrame, DateTime from, int count)

Parameters

securityId string

Идентификатор инструмента, для которого необходимо начать получать исторические свечи.

timeFrame SmartBarInterval

Тайм-фрейм.

from DateTime

Временная точка отсчета.

count int

Количество свечек.

RequestHistoryTrades(string, DateTime, int)

Начать получать исторические тиковые сделки от сервера SmartCOM через событие NewHistoryTrade.

public abstract void RequestHistoryTrades(string securityId, DateTime from, int count)

Parameters

securityId string

Идентификатор инструмента, для которого необходимо начать получать исторические сделки.

from DateTime

Временная точка отсчета.

count int

Количество сделок.

SubscribeEvents()

Подписаться на события.

protected abstract void SubscribeEvents()

SubscribeMarketDepth(string)

Начать получать котировки (стакан) по инструменту. Значение котировок можно получить через событие QuoteChanged.

public abstract void SubscribeMarketDepth(string securityId)

Parameters

securityId string

Идентификатор инструмента, по которому необходимо начать получать котировки.

SubscribePortfolio(string)

Начать получать новую информацию по портфелю.

public abstract void SubscribePortfolio(string portfolioName)

Parameters

portfolioName string

Номер портфеля, по которому необходимо начать получать новую информацию.

SubscribeSecurity(string)

Начать получать новую информацию по инструменту.

public abstract void SubscribeSecurity(string securityId)

Parameters

securityId string

Идентификатор инструмента, по которому необходимо начать получать новую информацию.

SubscribeTrades(string)

Начать получать сделки (тиковые данные) по инструменту. Новые сделки будут приходить через событие NewTrade.

public abstract void SubscribeTrades(string securityId)

Parameters

securityId string

Идентификатор инструмента, по которому необходимо начать получать сделки.

UnSubscribeEvents()

Отписаться от событий.

protected abstract void UnSubscribeEvents()

UnSubscribeMarketDepth(string)

Остановить получение котировок по инструменту.

public abstract void UnSubscribeMarketDepth(string securityId)

Parameters

securityId string

Идентификатор инструмента, по которому необходимо остановить получение котировок.

UnSubscribePortfolio(string)

Остановить получение новой информации по портфелю.

public abstract void UnSubscribePortfolio(string portfolioName)

Parameters

portfolioName string

Номер портфеля, по которому необходимо остановить получение новой информации.

UnSubscribeSecurity(string)

Остановить получение новой информации.

public abstract void UnSubscribeSecurity(string securityId)

Parameters

securityId string

Идентификатор инструмента, по которому необходимо остановить получение новой информации.

UnSubscribeTrades(string)

Остановить получение сделок (тиковые данные) по инструменту.

public abstract void UnSubscribeTrades(string securityId)

Parameters

securityId string

Идентификатор инструмента, по которому необходимо остановить получение сделок.

Events

Connected

Событие об успешном подсоединении к серверу SmartCOM.

public event Action Connected

Event Type

Action

Disconnected

Событие об успешном отсоединении от сервера SmartCOM или о разрыве соединения.

public event Action<Exception> Disconnected

Event Type

Action<Exception>

Remarks

Передаваемые параметры:

  1. Причина.

NewBar

Событие о появлении исторической временной свечи.

public event Action<int, int, string, SmartBarInterval, DateTime, decimal?, decimal?, decimal?, decimal?, decimal?, decimal?> NewBar

Event Type

Action<int, int, string, SmartBarInterval, DateTime, decimal?, decimal?, decimal?, decimal?, decimal?, decimal?>

Remarks

Передаваемые параметры:

  1. Номер бара в списке.
  2. Всего баров в списке.
  3. Код ЦБ из таблицы котировок SmartTrade.
  4. Интервал времени.
  5. Дата и время интервала.
  6. Цена первой сделки после открытия в интервале.
  7. Максимальная цена сделки в интервале.
  8. Минимальная цена сделки в интервале.
  9. Цена последней сделки в интервале.
  10. Объём сделок в интервале.
  11. Открытые позиции.

NewHistoryTrade

Событие о появлении исторической тиковой сделки.

public event Action<int, int, string, DateTime, decimal?, decimal?, long?, SmartOrderAction> NewHistoryTrade

Event Type

Action<int, int, string, DateTime, decimal?, decimal?, long?, SmartOrderAction>

Remarks

Передаваемые параметры:

  1. Номер сделки в списке.
  2. Всего сделок в списке.
  3. Код ЦБ из таблицы котировок SmartTrade.
  4. Время сделки.
  5. Цена сделки.
  6. Объём сделки.
  7. Id сделки на рынке.
  8. Направление сделки.

NewMyTrade

Событие о появлении собственной сделки.

public event Action<string, string, long, decimal?, decimal?, DateTime, long, decimal?, decimal?> NewMyTrade

Event Type

Action<string, string, long, decimal?, decimal?, DateTime, long, decimal?, decimal?>

Remarks

Передаваемые параметры:

  1. Номер торгового счёта на торговой площадке.
  2. Код ЦБ из таблицы котировок SmartTrade.
  3. Идентификатор заявки на сервере котировок.
  4. Цена сделки.
  5. Объём сделки.
  6. Время сделки.
  7. Id сделки на рынке.
  8. Объем сделки в валюте расчетов.
  9. Накопленный купонный доход.

NewOrder

Событие о появлении новой заявки.

public event Action<int, string> NewOrder

Event Type

Action<int, string>

Remarks

Передаваемые параметры:

  1. Уникальный номер заявки.
  2. Id заявки на сервере котировок.

NewPortfolio

Событие о появлении портфеля.

public event Action<int, int, string, string, SmartPortfolioStatus> NewPortfolio

Event Type

Action<int, int, string, string, SmartPortfolioStatus>

Remarks

Передаваемые параметры:

  1. Номер счета в списке.
  2. Всего счетов в списке.
  3. Наименование портфеля.
  4. Площадка доступная для портфеля.
  5. Статус портфеля.

NewSecurity

Событие о появлении инструмента.

public event Action<int, int, string, string, string, string, int, int, decimal?, decimal?, string, string, DateTime?, decimal?, decimal?> NewSecurity

Event Type

Action<int, int, string, string, string, string, int, int, decimal?, decimal?, string, string, DateTime?, decimal?, decimal?>

Remarks

Передаваемые параметры:

  1. Номер инструмента в справочнике.
  2. Всего инструментов в справочнике.
  3. Код ЦБ из таблицы котировок SmartTrade.
  4. Краткое наименование.
  5. Полное наименование.
  6. Код типа из справочника SmartTrade.
  7. Точность цены.
  8. Размер лота ценных бумаг.
  9. Цена минимального шага.
  10. Минимальный шаг цены.
  11. ISIN.
  12. Наименование площадки.
  13. Дата экспирации.
  14. Дней до экспирации.
  15. Страйк.

NewTrade

Событие о появлении тиковой сделки.

public event Action<string, DateTime, decimal?, decimal?, long?, SmartOrderAction> NewTrade

Event Type

Action<string, DateTime, decimal?, decimal?, long?, SmartOrderAction>

Remarks

Передаваемые параметры:

  1. Код ЦБ из таблицы котировок SmartTrade.
  2. Время сделки.
  3. Цена сделки.
  4. Объём сделки.
  5. Id сделки на рынке.
  6. Направление сделки.

OrderCancelFailed

Событие об ошибке при отмене заявки.

public event Action<string> OrderCancelFailed

Event Type

Action<string>

Remarks

Передаваемые параметры:

  1. Id заявки на сервере котировок.

OrderCancelled

Событие об успешной отмене заявки.

public event Action<string> OrderCancelled

Event Type

Action<string>

Remarks

Передаваемые параметры:

  1. Id заявки на сервере котировок.

OrderChanged

Событие об изменении заявки.

public event Action<string, string, SmartOrderState, SmartOrderAction, SmartOrderType, bool, decimal?, int, decimal?, int, DateTime, string, long?, int, int, string> OrderChanged

Event Type

Action<string, string, SmartOrderState, SmartOrderAction, SmartOrderType, bool, decimal?, int, decimal?, int, DateTime, string, long?, int, int, string>

Remarks

Передаваемые параметры:

  1. Номер торгового счёта на торговой площадке.
  2. Код ЦБ из таблицы котировок SmartTrade.
  3. Состояние заявки.
  4. Вид торговой операции.
  5. Тип заявки.
  6. Срок действия приказа. True - один день, false - до отмены.
  7. Цена Лимит для заявок типа Лимит и Стоп-Лимит.
  8. Объем заявки.
  9. Цена СТОП для заявок типа Стоп и Стоп-Лимит.
  10. Объем, оставшийся в заявке.
  11. Время последнего изменения заявки.
  12. Id приказа на сервере котировок.
  13. Идентификатор приказа на сервере котировок.
  14. Системный статус.
  15. Идентификатор транзакции.
  16. Описание ошибки, в случае если приказ был отвергнут биржей/системой.

OrderFailed

Событие об ошибке при регистрации заявки.

public event Action<int, string, string> OrderFailed

Event Type

Action<int, string, string>

Remarks

Передаваемые параметры:

  1. Идентификатор заявки.
  2. Id заявки на сервере котировок.
  3. Причина.

OrderReRegisterFailed

Событие об ошибке при перерегистрации заявки.

public event Action<string> OrderReRegisterFailed

Event Type

Action<string>

Remarks

Передаваемые параметры:

  1. Id заявки на сервере котировок.

OrderReRegistered

Событие об успешной перерегистрации заявки.

public event Action<string> OrderReRegistered

Event Type

Action<string>

Remarks

Передаваемые параметры:

  1. Id заявки на сервере котировок.

PortfolioChanged

Событие об изменении портфеля.

public event Action<string, decimal?, decimal?, decimal?, decimal?, decimal?, decimal?, decimal?> PortfolioChanged

Event Type

Action<string, decimal?, decimal?, decimal?, decimal?, decimal?, decimal?, decimal?>

Remarks

Передаваемые параметры:

  1. Номер торгового счёта на торговой площадке.
  2. Сумма доступных наличных средств на счёте.
  3. Плечо для маржинальной торговли.
  4. Сумма биржевой комиссии за торговый день.
  5. Сальдо торгового дня.
  6. Ликвидационная стоимость портфеля.
  7. Размер гарантийного обеспечения.
  8. Всего активов.

PositionChanged

Событие об изменении позиции.

public event Action<string, string, decimal?, decimal?, decimal?> PositionChanged

Event Type

Action<string, string, decimal?, decimal?, decimal?>

Remarks

Передаваемые параметры:

  1. Номер торгового счёта на торговой площадке.
  2. Код ЦБ из таблицы котировок SmartTrade.
  3. Средневзвешенная цена.
  4. Объём сделки, если положительный Long, отрицательный в случае Short.
  5. Количество ЦБ с учетом выставленных заявок.

QuoteChanged

Событие изменения стакана.

public event Action<string, int, int, decimal?, decimal?, decimal?, decimal?> QuoteChanged

Event Type

Action<string, int, int, decimal?, decimal?, decimal?, decimal?>

Remarks

Передаваемые параметры:

  1. Код ЦБ из таблицы котировок SmartTrade.
  2. Порядковый номер строки в очереди заявок.
  3. Общее количество строк в очереди заявок.
  4. Цена на покупку.
  5. Объем ценных бумаг по цене на покупку.
  6. Цена на продажу.
  7. Объем ценных бумаг по цене на продажу.

SecurityChanged

Событие об изменении инструмента.

public event Action<string, Tuple<decimal?, decimal?, DateTime>, decimal?, decimal?, decimal?, decimal?, decimal?, QuoteChange, QuoteChange, decimal?, Tuple<decimal?, decimal?>, Tuple<decimal?, decimal?>, Tuple<decimal?, decimal?>, int, Tuple<decimal?, decimal?>, decimal?> SecurityChanged

Event Type

Action<string, Tuple<decimal?, decimal?, DateTime>, decimal?, decimal?, decimal?, decimal?, decimal?, QuoteChange, QuoteChange, decimal?, Tuple<decimal?, decimal?>, Tuple<decimal?, decimal?>, Tuple<decimal?, decimal?>, int, Tuple<decimal?, decimal?>, decimal?>

Remarks

Передаваемые параметры:

  1. Код ЦБ из таблицы котировок SmartTrade.
  2. Информация о последней сделке.
  3. Цена первой сделки в текущей сессии.
  4. Максимальная цена сделки в текущей сессии.
  5. Минимальная цена сделки в текущей сессии.
  6. Цена последней сделки предыдущей торговой сессии.
  7. Объём по ЦБ за текущую торговую сессию.
  8. Информация о спросе.
  9. Информация о предложении.
  10. Открытые позиции.
  11. Гарантийное обеспечение (фьючерсы).
  12. Гарантийное обеспечение продажи опционов и по синтетическим позициям (опционы).
  13. Лимит цены.
  14. Статус.
  15. Волатильность и теоретическая цена.
  16. Стоимость шага цены.