exponenta event banner

Создание маршрута Bloomberg EMSX и управление им

В этом примере показано, как подключиться к Bloomberg ® EMSX, настроить подписку на маршрут, создать и маршрутизировать заказ и взаимодействовать с маршрутом.

Для получения подробной информации о Bloomberg EMSX см. Руководство программиста EMSX API с использованием опции WAPI < GO > на терминале Bloomberg.

Подключение к Bloomberg EMSX

Подключитесь к тестовой службе Bloomberg EMSX. Отображение текущего содержимого очереди событий с помощью processEvent.

c = emsx('//blp/emapisvc_beta');
processEvent(c)
c = 
 
  emsx with properties:

      Session: [1x1 com.bloomberglp.blpapi.Session]
      Service: [1x1 com.bloomberglp.blpapi.impl.aQ]
    Ipaddress: 'localhost'
         Port: 8194

SessionConnectionUp = {
    server = localhost/127.0.0.1:8194
}

SessionStarted = {
}

ServiceOpened = {
    serviceName = //blp/emapisvc_beta
}

Возврат MATLAB ®c в качестве соединения с тестовым сервисом Bloomberg EMSX со следующим:

  • Объект сеанса EMSX Bloomberg

  • Объект сервиса Bloomberg EMSX

  • IP-адрес машины, на которой запущена служба тестирования Bloomberg EMSX

  • Номер порта машины, на которой запущена служба тестирования Bloomberg EMSX

processEvent отображает события, связанные с подключением к Bloomberg EMSX.

Настройка подписки на маршрут

Настройка подписки на маршрут для полей Bloomberg EMSX EMSX_BROKER и EMSX_WORKING с помощью подключения Bloomberg EMSX c. Возвращает статус для существующих маршрутов.

fields = {'EMSX_BROKER','EMSX_WORKING'};

[events,subs] = routes(c,fields)
events = 

                       MSG_TYPE: {5x1 cell}
                   MSG_SUB_TYPE: {5x1 cell}
                   EVENT_STATUS: [5x1 int32]
                   ...

subs =

com.bloomberglp.blpapi.SubscriptionList@463b9287

events содержит поля для событий, находящихся в данный момент в очереди событий. subs содержит объект списка подписок Bloomberg EMSX.

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

Создание структуры запроса заказа 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';

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

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

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

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

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

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

Изменение маршрута

Определите modroute структура, содержащая следующие поля:

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

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

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

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

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

modroute.EMSX_SEQUENCE = int32(335877)
modroute.EMSX_TICKER = 'IBM';
modroute.EMSX_AMOUNT = int32(50);
modroute.EMSX_ROUTE_ID = int32(1);

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

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

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

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

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

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

Удалить измененный маршрут

Определение структуры routenum который содержит порядковый номер заказа EMSX_SEQUENCE и номер маршрута EMSX_ROUTE_ID связан с измененным маршрутом.

routenum.EMSX_SEQUENCE = 0;
routenum.EMSX_ROUTE_ID = 0;

Удаление маршрута с помощью соединения Bloomberg EMSX c и удалить структуру номеров маршрутов routenum.

events = deleteRoute(c,routenum)
events = 

     STATUS: '1'
    MESSAGE: 'Route cancellation request sent to broker'

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

  • Bloomberg EMSX статус

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

Остановить подписку на маршрут

Отменить подписку на события маршрутизации с помощью объекта списка подписок Bloomberg EMSX subs.

c.Session.unsubscribe(subs)

Закрыть подключение Bloomberg EMSX

close(c)

См. также

| | | | | |

Связанные примеры

Подробнее

Внешние веб-сайты