exponenta event banner

groupRouteOrderWithStrat

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

Описание

пример

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

пример

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

пример

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

пример

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

Примеры

свернуть все

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

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

  • Номера заказов 335877 и 335878

  • Символ акции IBM ®

  • 100 процентов акций, указанных в заказе на маршрутизацию

  • Брокер BMTB

  • Любая ручная инструкция

  • Время действия установлено на DAY

  • Вид рыночного заказа

route.EMSX_SEQUENCE = {int32(335877);int32(335878)};
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT_PERCENT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';
route.EMSX_TIF = 'DAY';
route.EMSX_ORDER_TYPE = 'MKT';

Создание структуры стратегий заказов 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 = groupRouteOrderWithStrat(c,route,strat)
events = 
 
     EMSX_SUCCESS_ROUTES: [1x1 struct]
      EMSX_FAILED_ROUTES: [1x1 struct]
                 MESSAGE: '1 of 1 Order(s) Routed'

   where

   events.EMSX_SUCCESS_ROUTES =

        EMSX_SEQUENCE: 335877
        EMSX_ROUTE_ID: 1

   and events.EMSX_FAILED_ROUTES =

        EMSX_SEQUENCE: 335878
           ERROR_CODE: 0
        ERROR_MESSAGE: {'Order 335878  View-only orders can not be routed'} 

Обработчик событий по умолчанию обрабатывает события, связанные с маршрутизацией заказа. groupRouteOrderWithStrat прибыль 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. Пример, показывающий эти действия, см. в разделе Создание заказа EMSX Bloomberg и управление им. Настройка подписки на маршрут с помощью routes.

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

  • Номера заказов 335877 и 335878

  • Символ акции IBM

  • 100 процентов акций, указанных в заказе на маршрутизацию

  • Брокер BMTB

  • Любая ручная инструкция

  • Время действия установлено на DAY

  • Вид рыночного заказа

route.EMSX_SEQUENCE = {int32(335877);int32(335878)};
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT_PERCENT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';
route.EMSX_TIF = 'DAY';
route.EMSX_ORDER_TYPE = 'MKT';

Создание структуры стратегий заказов 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 = groupRouteOrderWithStrat(c,route,strat,'timeOut',200)
events = 
 
     EMSX_SUCCESS_ROUTES: [1x1 struct]
      EMSX_FAILED_ROUTES: [1x1 struct]
                 MESSAGE: '1 of 1 Order(s) Routed'

   where

   events.EMSX_SUCCESS_ROUTES =

        EMSX_SEQUENCE: 335877
        EMSX_ROUTE_ID: 1

   and events.EMSX_FAILED_ROUTES =

        EMSX_SEQUENCE: 335878
           ERROR_CODE: 0
        ERROR_MESSAGE: {'Order 335878  View-only orders can not be routed'} 

Обработчик событий по умолчанию обрабатывает события, связанные с маршрутизацией заказа. groupRouteOrderWithStrat прибыль 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. Пример, показывающий эти действия, см. в разделе Создание заказа EMSX Bloomberg и управление им. Настройка подписки на маршрут с помощью routes.

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

  • Номера заказов 335877 и 335878

  • Символ акции IBM

  • 100 процентов акций, указанных в заказе на маршрутизацию

  • Брокер BMTB

  • Любая ручная инструкция

  • Время действия установлено на DAY

  • Вид рыночного заказа

route.EMSX_SEQUENCE = {int32(335877);int32(335878)};
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT_PERCENT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';
route.EMSX_TIF = 'DAY';
route.EMSX_ORDER_TYPE = 'MKT';

Создание структуры стратегий заказов 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 обрабатывает события, связанные с маршрутизацией заказа.

groupRouteOrderWithStrat(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. Пример, показывающий эти действия, см. в разделе Создание заказа EMSX Bloomberg и управление им. Настройка подписки на маршрут с помощью routes.

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

  • Номера заказов 335877 и 335878

  • Символ акции IBM

  • 100 процентов акций, указанных в заказе на маршрутизацию

  • Брокер BMTB

  • Любая ручная инструкция

  • Время действия установлено на DAY

  • Вид рыночного заказа

route.EMSX_SEQUENCE = {int32(335877);int32(335878)};
route.EMSX_TICKER = 'IBM';
route.EMSX_AMOUNT_PERCENT = int32(100);
route.EMSX_BROKER = 'BMTB';
route.EMSX_HAND_INSTRUCTION = 'ANY';
route.EMSX_TIF = 'DAY';
route.EMSX_ORDER_TYPE = 'MKT';

Создание структуры стратегий заказов 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 = groupRouteOrderWithStrat(c,route,strat,options)
events = 
 
     EMSX_SUCCESS_ROUTES: [1x1 struct]
      EMSX_FAILED_ROUTES: [1x1 struct]
                 MESSAGE: '1 of 1 Order(s) Routed'

   where

   events.EMSX_SUCCESS_ROUTES =

        EMSX_SEQUENCE: 335877
        EMSX_ROUTE_ID: 1

   and events.EMSX_FAILED_ROUTES =

        EMSX_SEQUENCE: 335878
           ERROR_CODE: 0
        ERROR_MESSAGE: {'Order 335878  View-only orders can not be routed'} 

Обработчик событий по умолчанию обрабатывает события, связанные с маршрутизацией заказа. groupRouteOrderWithStrat прибыль 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, указанное как объект соединения, созданный с помощью 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

EMSX_TIF

Время действия Bloomberg EMSX

EMSX_ORDER_TYPE

Тип заказа 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';
route.EMSX_TIF = 'DAY';
route.EMSX_ORDER_TYPE = 'MKT';

Типы данных: 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 является пустым двойником.

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