exponenta event banner

createOrderAndRouteWithStrat

Создание и маршрутизация заказа Bloomberg EMSX со стратегиями

Описание

пример

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

пример

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

пример

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

пример

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

Примеры

свернуть все

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

Создание структуры запроса заказа order для определения параметров заказа. Этот код создает заказ на покупку 100 акций IBM ®. Этот код использует брокерBB с действующим временем, равным DAY и любую ручную инструкцию. Преобразование количества общих ресурсов в 32-разрядное целое число со знаком с помощью int32.

order.EMSX_TICKER = 'IBM';
order.EMSX_AMOUNT = int32(100);
order.EMSX_ORDER_TYPE = 'MKT';
order.EMSX_BROKER = 'BB';
order.EMSX_TIF = 'DAY';
order.EMSX_HAND_INSTRUCTION = 'ANY';
order.EMSX_SIDE = 'BUY';

Создание структуры стратегий заказов 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, order, и strat.

events = createOrderAndRouteWithStrat(c,order,strat)
events = 
    
    EMSX_SEQUENCE: 335877
    EMSX_ROUTE_ID: 1
          MESSAGE: 'Order created and routed' 

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

Создание структуры запроса заказа order для определения параметров заказа. Этот код создает заказ на покупку 100 акций IBM. Этот код использует брокер BB с действующим временем, равным DAY и любую ручную инструкцию. Преобразование количества общих ресурсов в 32-разрядное целое число со знаком с помощью int32.

order.EMSX_TICKER = 'IBM';
order.EMSX_AMOUNT = int32(100);
order.EMSX_ORDER_TYPE = 'MKT';
order.EMSX_BROKER = 'BB';
order.EMSX_TIF = 'DAY';
order.EMSX_HAND_INSTRUCTION = 'ANY';
order.EMSX_SIDE = 'BUY';

Создание структуры стратегий заказов 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, order, и strat. Установите значение тайм-аута 200 миллисекунд.

events = createOrderAndRouteWithStrat(c,order,strat,'timeOut',200)
events = 
    
    EMSX_SEQUENCE: 335877
    EMSX_ROUTE_ID: 1
          MESSAGE: 'Order created and routed' 

Обработчик событий по умолчанию обрабатывает события, связанные с созданием и маршрутизацией заказа. createOrderAndRouteWithStrat прибыль 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 со стратегиями, создайте соединение Bloomberg EMSX c использование emsx и настроить заказ и маршрут подписки с помощью orders и routes. Пример, показывающий эти действия, см. в разделе Управление порядком и маршрутом Bloomberg EMSX с использованием интерфейса Bloomberg EMSX C++.

Создание структуры запроса заказа order для определения параметров заказа. Этот код создает заказ на покупку 100 акций IBM. Этот код использует брокер BB с действующим временем, равным DAY и любую ручную инструкцию. Преобразование количества общих ресурсов в 32-разрядное целое число со знаком с помощью int32.

order.EMSX_TICKER = 'IBM';
order.EMSX_AMOUNT = int32(100);
order.EMSX_ORDER_TYPE = 'MKT';
order.EMSX_BROKER = 'BB';
order.EMSX_TIF = 'DAY';
order.EMSX_HAND_INSTRUCTION = 'ANY';
order.EMSX_SIDE = 'BUY';

Создание структуры стратегий заказов 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, order, и strat. Установка флага 'useDefaultEventHandler' кому false чтобы eventhandler обрабатывает события, связанные с созданием и маршрутизацией заказа.

createOrderAndRouteWithStrat(c,order,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 и routes. Пример, показывающий эти действия, см. в разделе Управление порядком и маршрутом Bloomberg EMSX с использованием интерфейса Bloomberg EMSX C++.

Создание структуры запроса заказа order для определения параметров заказа. Этот код создает заказ на покупку 100 акций IBM. Этот код использует брокер BB с действующим временем, равным DAY и любую ручную инструкцию. Преобразование количества общих ресурсов в 32-разрядное целое число со знаком с помощью int32.

order.EMSX_TICKER = 'IBM';
order.EMSX_AMOUNT = int32(100);
order.EMSX_ORDER_TYPE = 'MKT';
order.EMSX_BROKER = 'BB';
order.EMSX_TIF = 'DAY';
order.EMSX_HAND_INSTRUCTION = 'ANY';
order.EMSX_SIDE = 'BUY';

Создание структуры стратегий заказов 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, order, strat, и структура опций options.

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

events = createOrderAndRouteWithStrat(c,order,strat,options)
events = 
    
    EMSX_SEQUENCE: 728924
    EMSX_ROUTE_ID: 1
          MESSAGE: 'Order created and routed'

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

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

Область

Описание

EMSX_TICKER

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

EMSX_AMOUNT

Объем акций Bloomberg EMSX

EMSX_ORDER_TYPE

Тип заказа Bloomberg EMSX

EMSX_BROKER

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

EMSX_TIF

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

EMSX_HAND_INSTRUCTION

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

EMSX_SIDE

Bloomberg EMSX купил или продал спецификацию

Пример: order.EMSX_TICKER = 'XYZ';
order.EMSX_AMOUNT = int32(100);
order.EMSX_ORDER_TYPE = 'MKT';
order.EMSX_BROKER = 'BB';
order.EMSX_TIF = 'DAY';
order.EMSX_HAND_INSTRUCTION = 'ANY';
order.EMSX_SIDE = 'BUY';

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