exponenta event banner

modifyRouteWithStrat

Измените Bloomberg маршрут EMSX со стратегиями

Синтаксис

events = modifyRouteWithStrat(c,modroute,strat)
events = modifyRouteWithStrat(c,modroute,strat,'timeOut',timeout)
modifyRouteWithStrat(___,'useDefaultEventHandler',false)
___ = modifyRouteWithStrat(c,modroute,strat,options)

Описание

пример

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

пример

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

пример

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

пример

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

Примеры

свернуть все

Чтобы изменить маршрут для EMSX Bloomberg заказывают со стратегиями:

  • Создайте связь c с помощью emsx.

  • Настройте порядок и направьте подписку с помощью orders и routes.

  • Создайте и направьте порядок с помощью createOrderAndRoute.

Для примера, показывающего эти действия, смотрите, Управляют Порядком EMSX Bloomberg и Маршрутом.

Задайте структуру modroute, которая содержит эти поля:

  • Bloomberg EMSX заказывает порядковому номеру EMSX_SEQUENCE

  • Bloomberg тикер EMSX EMSX_TICKER

  • Bloomberg количество EMSX долей EMSX_AMOUNT

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

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

modroute.EMSX_SEQUENCE = int32(731128)
modroute.EMSX_TICKER = 'IBM';
modroute.EMSX_AMOUNT = int32(100);
modroute.EMSX_ROUTE_ID = int32(1);

Создайте структуру стратегий порядка 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};

Измените маршрут с помощью связи EMSX Bloomberg c, modroute и strat.

events = modifyRouteWithStrat(c,modroute,strat)
events = 
    
    EMSX_SEQUENCE: 0
    EMSX_ROUTE_ID: 0
          MESSAGE: 'Route modified'

Обработчик стандартного события обрабатывает события, сопоставленные с изменением маршрута. modifyRouteWithStrat возвращает 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 и routes.

  • Создайте и направьте порядок с помощью createOrderAndRoute.

Для примера, показывающего эти действия, смотрите, Управляют Порядком EMSX Bloomberg и Маршрутом.

Задайте структуру modroute, которая содержит эти поля:

  • Bloomberg EMSX заказывает порядковому номеру EMSX_SEQUENCE

  • Bloomberg тикер EMSX EMSX_TICKER

  • Bloomberg количество EMSX долей EMSX_AMOUNT

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

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

modroute.EMSX_SEQUENCE = int32(731128)
modroute.EMSX_TICKER = 'IBM';
modroute.EMSX_AMOUNT = int32(100);
modroute.EMSX_ROUTE_ID = int32(1);

Создайте структуру стратегий порядка 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};

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

events = modifyRouteWithStrat(c,modroute,strat,'timeOut',200)
events = 
    
    EMSX_SEQUENCE: 0
    EMSX_ROUTE_ID: 0
          MESSAGE: 'Route modified'

Обработчик стандартного события обрабатывает события, сопоставленные с изменением маршрута. modifyRouteWithStrat возвращает 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 и routes.

  • Создайте и направьте порядок с помощью createOrderAndRoute.

Для примера, показывающего эти действия, смотрите, Управляют Порядком EMSX Bloomberg и Маршрутом.

Задайте структуру modroute, которая содержит эти поля:

  • Bloomberg EMSX заказывает порядковому номеру EMSX_SEQUENCE

  • Bloomberg тикер EMSX EMSX_TICKER

  • Bloomberg количество EMSX долей EMSX_AMOUNT

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

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

modroute.EMSX_SEQUENCE = int32(731128)
modroute.EMSX_TICKER = 'IBM';
modroute.EMSX_AMOUNT = int32(100);
modroute.EMSX_ROUTE_ID = int32(1);

Создайте структуру стратегий порядка 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. Для получения дополнительной информации смотрите Запись и Выполнение Пользовательских Функций обработчика событий с Bloomberg EMSX.

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

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

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

modifyRouteWithStrat(c,modroute,strat,'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 и routes.

  • Создайте и направьте порядок с помощью createOrderAndRoute.

Для примера, показывающего эти действия, смотрите, Управляют Порядком EMSX Bloomberg и Маршрутом.

Задайте структуру modroute, которая содержит эти поля:

  • Bloomberg EMSX заказывает порядковому номеру EMSX_SEQUENCE

  • Bloomberg тикер EMSX EMSX_TICKER

  • Bloomberg количество EMSX долей EMSX_AMOUNT

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

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

modroute.EMSX_SEQUENCE = int32(731128)
modroute.EMSX_TICKER = 'IBM';
modroute.EMSX_AMOUNT = int32(100);
modroute.EMSX_ROUTE_ID = int32(1);

Создайте структуру стратегий порядка 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 миллисекунд. Измените маршрут с помощью связи EMSX Bloomberg c, modroute, strat и структура опций options.

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

events = modifyRouteWithStrat(c,modroute,strat,options)
events = 
    
    EMSX_SEQUENCE: 0
    EMSX_ROUTE_ID: 0
          MESSAGE: 'Route modified'

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

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

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

Поле

Описание

EMSX_SEQUENCE

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

EMSX_TICKER

Bloomberg тикер EMSX

EMSX_AMOUNT

Bloomberg количество EMSX долей

EMSX_ROUTE_ID

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

Пример: modroute.EMSX_SEQUENCE = int32(731128);
modroute.EMSX_TICKER = 'XYZ';
modroute.EMSX_AMOUNT = int32(100);
modroute.EMSX_ROUTE_ID = int32(1);

Типы данных: 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

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

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

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

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

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

свернуть все

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

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

Введенный в R2013a