exponenta event banner

routeOrderWithStrat

Маршрут Bloomberg EMSX заказа со стратегиями

Описание

пример

events = routeOrderWithStrat(c,route,strat) маршрутизирует заказ Bloomberg ® EMSX со стратегиями с использованием соединения Bloomberg EMSXc с интерфейсом Bloomberg EMSX C++, запрос маршрута routeи стратегия strat. routeOrderWithStrat возвращает порядковый номер, номер маршрута и сообщение о состоянии с помощью обработчика событий по умолчанию.

пример

events = routeOrderWithStrat(c,route,strat,'timeOut',timeout) задает значение тайм-аута timeout для выполнения обработчика событий по умолчанию.

пример

routeOrderWithStrat(___,'useDefaultEventHandler',false) маршрутизирует заказ Bloomberg EMSX со стратегиями, использующими любой из входных аргументов в предыдущих синтаксисах и пользовательский обработчик событий. Создайте пользовательский обработчик событий для обработки событий, связанных с заказами маршрутизации. Этот синтаксис не имеет выходного аргумента, поскольку пользовательский обработчик событий обрабатывает содержимое очереди событий. Если вы хотите использовать обработчик событий по умолчанию, установите флаг 'useDefaultEventHandler' кому true и используйте events выходной аргумент. По умолчанию флаг 'useDefaultEventHandler' имеет значение true.

пример

___ = routeOrderWithStrat(c,route,strat,options) использует options для настройки выходных данных, что полезно для предварительной настройки и сохранения опций для повторного использования. Доступное options поля структуры: timeOut и useDefaultEventHandler. Используйте events выходной аргумент, когда флаг useDefaultEventHandler имеет значение true и опустить этот выходной аргумент, когда useDefaultEventHandler имеет значение false.

Примеры

свернуть все

Чтобы направить заказ Bloomberg EMSX со стратегиями, создайте соединение c использование emsx, настройте подписку на заказ с помощью ordersи создайте заказ с помощью createOrder. Пример, показывающий эти действия, см. в разделе Создание заказа Bloomberg EMSX и управление им с помощью интерфейса Bloomberg EMSX C++. Настройка подписки на маршрут с помощью routes.

Определение структуры запроса маршрута route. Преобразование чисел в 32-разрядные целые числа со знаком с помощью int32. Этот код определяет направление 100 акций IBM ® брокеруBMTB используя любую ручную инструкцию и номер заказа 335877.

route.EMSX_SEQUENCE = int32(335877);
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';

Создание структуры стратегий заказов strat использование стратегии SSP. Преобразование индикаторов полей в 32-разрядное целое число со знаком int32.

strat.EMSX_STRATEGY_NAME = 'SSP';
strat.EMSX_STRATEGY_FIELD_INDICATORS = int32([0 0 0]);
strat.EMSX_STRATEGY_FIELDS = {'09:30:00','14:30:00',50};

Маршрутизация заказа с помощью соединения Bloomberg EMSX c, route, и strat.

events = routeOrderWithStrat(c,route,strat)
events = 
 
     EMSX_SEQUENCE: 335877
     EMSX_ROUTE_ID: 1
           MESSAGE: 'Order Routed'

Обработчик событий по умолчанию обрабатывает события, связанные с маршрутизацией заказа. routeOrderWithStrat прибыль events как структура, содержащая следующие поля:

  • Номер заказа Bloomberg EMSX

  • Идентификатор маршрута Bloomberg EMSX

  • Сообщение Bloomberg EMSX

Отменить подписку на события заказа и маршрутизации с помощью объектов списка подписки Bloomberg EMSX osubs и rsubs. Этот код предполагает, что orders создает osubs и routes создает rsubs.

c.Session.unsubscribe(osubs)
c.Session.unsubscribe(rsubs)

Закройте соединение Bloomberg EMSX.

close(c)

Чтобы направить заказ Bloomberg EMSX со стратегиями, создайте соединение c использование emsx, настройте подписку на заказ с помощью ordersи создайте заказ с помощью createOrder. Пример, показывающий эти действия, см. в разделе Создание заказа Bloomberg EMSX и управление им с помощью интерфейса Bloomberg EMSX C++. Настройка подписки на маршрут с помощью routes.

Определение структуры запроса маршрута route. Преобразование чисел в 32-разрядные целые числа со знаком с помощью int32. Этот код определяет направление 100 акций IBM брокеру BMTB используя любую ручную инструкцию и номер заказа 335877.

route.EMSX_SEQUENCE = int32(335877);
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';

Создание структуры стратегий заказов strat использование стратегии SSP. Преобразование индикаторов полей в 32-разрядное целое число со знаком int32.

strat.EMSX_STRATEGY_NAME = 'SSP';
strat.EMSX_STRATEGY_FIELD_INDICATORS = int32([0 0 0]);
strat.EMSX_STRATEGY_FIELDS = {'09:30:00','14:30:00',50};

Маршрутизация заказа с помощью соединения Bloomberg EMSX c, route, и strat. Установите значение тайм-аута 200 миллисекунд.

events = routeOrderWithStrat(c,route,strat,'timeOut',200)
events = 
 
     EMSX_SEQUENCE: 335877
     EMSX_ROUTE_ID: 1
           MESSAGE: 'Order Routed'

Обработчик событий по умолчанию обрабатывает события, связанные с маршрутизацией заказа. routeOrderWithStrat прибыль events как структура, содержащая следующие поля:

  • Номер заказа Bloomberg EMSX

  • Идентификатор маршрута Bloomberg EMSX

  • Сообщение Bloomberg EMSX

Отменить подписку на события заказа и маршрутизации с помощью объектов списка подписки Bloomberg EMSX osubs и rsubs. Этот код предполагает, что orders создает osubs и routes создает rsubs.

c.Session.unsubscribe(osubs)
c.Session.unsubscribe(rsubs)

Закройте соединение Bloomberg EMSX.

close(c)

Чтобы направить заказ Bloomberg EMSX со стратегиями, создайте соединение c использование emsx, настройте подписку на заказ с помощью ordersи создайте заказ с помощью createOrder. Пример, показывающий эти действия, см. в разделе Создание заказа Bloomberg EMSX и управление им с помощью интерфейса Bloomberg EMSX C++. Настройка подписки на маршрут с помощью routes.

Определение структуры запроса маршрута route. Преобразование чисел в 32-разрядные целые числа со знаком с помощью int32. Этот код определяет направление 100 акций IBM брокеру BMTB используя любую ручную инструкцию и номер заказа 335877.

route.EMSX_SEQUENCE = int32(335877);
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';

Создание структуры стратегий заказов strat использование стратегии SSP. Преобразование индикаторов полей в 32-разрядное целое число со знаком int32.

strat.EMSX_STRATEGY_NAME = 'SSP';
strat.EMSX_STRATEGY_FIELD_INDICATORS = int32([0 0 0]);
strat.EMSX_STRATEGY_FIELDS = {'09:30:00','14:30:00',50};

Предположим, что создана пользовательская функция обработчика событий с именем eventhandler с входным аргументом c. Управляемый eventhandler использование timer. Запуск таймера для запуска eventhandler немедленное использование start. Дополнительные сведения см. в разделе Запись и выполнение пользовательских функций обработчика событий.

t = timer('TimerFcn',{@c.eventhandler},'Period',1,...
          'ExecutionMode','fixedRate')
start(t)

t является объектом таймера MATLAB ®. Для получения более подробной информации см.timer.

Маршрутизация заказа с помощью соединения Bloomberg EMSX c, route, и strat. Установка флага 'useDefaultEventHandler' кому false чтобы eventhandler обрабатывает события, связанные с маршрутизацией заказа.

routeOrderWithStrat(c,route,strat,'useDefaultEventHandler',false)

Отменить подписку на события заказа и маршрутизации с помощью объектов списка подписки Bloomberg EMSX osubs и rsubs. Этот код предполагает, что orders создает osubs и routes создает rsubs. Остановить таймер для остановки обновления данных с помощью stop.

c.Session.unsubscribe(osubs)
c.Session.unsubscribe(rsubs)
stop(t)

Если обработка обновлений данных завершена, удалите таймер с помощью delete.

delete(t)

Закройте соединение Bloomberg EMSX.

close(c)

Чтобы направить заказ Bloomberg EMSX со стратегиями, создайте соединение c использование emsx, настройте подписку на заказ с помощью ordersи создайте заказ с помощью createOrder. Пример, показывающий эти действия, см. в разделе Создание заказа Bloomberg EMSX и управление им с помощью интерфейса Bloomberg EMSX C++. Настройка подписки на маршрут с помощью routes.

Определение структуры запроса маршрута route. Преобразование чисел в 32-разрядные целые числа со знаком с помощью int32. Этот код определяет направление 100 акций IBM брокеру BMTB используя любую ручную инструкцию и номер заказа 335877.

route.EMSX_SEQUENCE = int32(335877);
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';

Создание структуры стратегий заказов strat использование стратегии SSP. Преобразование индикаторов полей в 32-разрядное целое число со знаком int32.

strat.EMSX_STRATEGY_NAME = 'SSP';
strat.EMSX_STRATEGY_FIELD_INDICATORS = int32([0 0 0]);
strat.EMSX_STRATEGY_FIELDS = {'09:30:00','14:30:00',50};

Создание структуры options. Чтобы использовать обработчик событий по умолчанию, задайте поле useDefaultEventHandler кому true. Установка поля timeOut до 200 миллисекунд. Маршрутизация заказа с помощью соединения Bloomberg EMSX c, route, strat, и структура опций options.

options.useDefaultEventHandler = true;
options.timeOut = 200;

events = routeOrderWithStrat(c,route,strat,options)
events = 
 
     EMSX_SEQUENCE: 335877
     EMSX_ROUTE_ID: 1
           MESSAGE: 'Order Routed'

Обработчик событий по умолчанию обрабатывает события, связанные с маршрутизацией заказа. routeOrderWithStrat прибыль events как структура, содержащая следующие поля:

  • Номер заказа Bloomberg EMSX

  • Идентификатор маршрута Bloomberg EMSX

  • Сообщение Bloomberg EMSX

Отменить подписку на события заказа и маршрутизации с помощью объектов списка подписки Bloomberg EMSX osubs и rsubs. Этот код предполагает, что orders создает osubs и routes создает rsubs.

c.Session.unsubscribe(osubs)
c.Session.unsubscribe(rsubs)

Закройте соединение Bloomberg EMSX.

close(c)

Входные аргументы

свернуть все

Соединение службы Bloomberg EMSX, указанное как bloombergEMSX объект.

Запрос маршрута, указанный как структура, содержащая эти поля.

Преобразование чисел в 32-разрядные целые числа со знаком с помощью int32. EMSX_SEQUENCE должен обозначать существующий порядковый номер.

Область

Описание

EMSX_SEQUENCE

Порядковый номер заказа Bloomberg EMSX

EMSX_TICKER

Символ бегущей строки Bloomberg EMSX

EMSX_AMOUNT

Количество акций Bloomberg EMSX

EMSX_BROKER

Имя брокера Bloomberg EMSX

EMSX_HAND_INSTRUCTION

Ручная инструкция Bloomberg EMSX

Пример: route.EMSX_SEQUENCE = int32(728918);
route.EMSX_TICKER = 'XYZ';
route.EMSX_AMOUNT = int32(100);
route.EMSX_BROKER = 'BB';
route.EMSX_HAND_INSTRUCTION = 'ANY';

Типы данных: struct

Стратегии заказа, определенные как структура, содержащая поля: EMSX_STRATEGY_NAME, EMSX_STRATEGY_FIELD_INDICATORS, и EMSX_STRATEGY_FIELDS. Значения полей структуры должны совпадать с полями стратегии, указанными в EMSX_STRATEGY_NAME. Для получения подробной информации о полях стратегии и заказе см. getBrokerInfo.

Новообращенный EMSX_STRATEGY_FIELD_INDICATORS до 32-разрядного целого числа со знаком int32. Набор EMSX_STRATEGY_FIELD_INDICATORS равно 0 для каждого поля, чтобы использовать настройку данных поля в EMSX_FIELD_DATA. Или, установить EMSX_STRATEGY_FIELD_INDICATORS равно 1 для игнорирования данных в EMSX_FIELD_DATA.

Пример: strat.EMSX_STRATEGY_NAME = 'SSP';
strat.EMSX_STRATEGY_FIELD_INDICATORS = int32([0 0 0]);
strat.EMSX_STRATEGY_FIELDS = {'09:30:00','14:30:00',50};

Типы данных: struct

Значение тайм-аута, указанное как неотрицательное целое число. Это целое число обозначает время (в миллисекундах), в течение которого обработчик событий прослушивает очередь событий для каждой итерации кода. Обработчик событий может быть обработчиком событий по умолчанию или пользовательским обработчиком событий.

Типы данных: double

Параметры пользовательского обработчика событий или значения тайм-аута, указанного как структура. Чтобы повторно использовать параметры для указания пользовательского обработчика событий или значения тайм-аута для обработчика событий, используйте options структура.

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

options.useDefaultEventHandler = false;
options.timeOut = 200;

Типы данных: struct

Выходные аргументы

свернуть все

Содержимое очереди событий, возвращаемое как двойное или структурное.

Если очередь событий содержит события, events - структура, содержащая текущее содержимое очереди событий. В противном случае events является пустым двойником.

Представлен в R2021a