exponenta event banner

routeOrder

Направьте Bloomberg порядок EMSX

Синтаксис

events = routeOrder(c,route)
events = routeOrder(c,route,'timeOut',timeout)
routeOrder(___,'useDefaultEventHandler',false)
___ = routeOrder(c,route,options)

Описание

пример

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

пример

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

пример

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

пример

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

Примеры

свернуть все

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

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

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

Направьте порядок с помощью связи EMSX Bloomberg c и route.

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

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

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

  • Bloomberg EMSX направляет идентификатор

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

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

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

Закройте связь EMSX Bloomberg.

close(c)

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

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

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

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

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

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

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

  • Bloomberg EMSX направляет идентификатор

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

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

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

Закройте связь EMSX Bloomberg.

close(c)

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

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

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

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

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

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

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

routeOrder(c,route,'useDefaultEventHandler',false)

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

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

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

delete(t)

Закройте связь EMSX Bloomberg.

close(c)

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

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

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

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

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

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

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

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

  • Bloomberg EMSX направляет идентификатор

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

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

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

Закройте связь EMSX Bloomberg.

close(c)

Входные параметры

свернуть все

Bloomberg сервисная связь EMSX, заданная как объект связи, созданный с помощью emsx.

Направьте запрос, заданный как структура, содержащая эти поля.

Преобразуйте числа в 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

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

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

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

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

Пример: options.useDefaultEventHandler = false;
options.timeOut = 500;

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

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

свернуть все

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

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

Введенный в R2013a