exponenta event banner

Запись и выполнение пользовательских функций обработчика событий с Bloomberg EMSX

Запишите пользовательскую функцию обработчика событий

Можно обработать события, связанные с любыми порядками Bloomberg® EMSX и маршрутами путем записи пользовательской функции обработчика событий, чтобы использовать с Trading Toolbox™. Например, можно построить изменения в количестве направленных долей. Следуйте за этими задачами записать пользовательский обработчик событий.

  1. Выберите события, которые вы хотите обработать, контролировать или оценить.

  2. Решите, как пользовательская функция обработчика событий обрабатывает эти события.

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

  4. Запишите код для пользовательской функции обработчика событий.

Для получения дополнительной информации смотрите, Создают Функции в Файлах (MATLAB). Для примера кода функции обработчика событий введите edit emsxOrderBlotter.m в командной строке. Затем смотрите функциональный processEventToBlotter в этом файле.

Запустите пользовательскую функцию обработчика событий

Можно запустить пользовательскую функцию обработчика событий при помощи timer. Задайте пользовательское имя функции обработчика событий как указатель на функцию и передайте этот указатель на функцию как входной параметр к timer. Для получения дополнительной информации об указателях на функцию, см. Создание указателя на функцию (MATLAB). Например, предположите, что вы хотите создать порядок с помощью createOrderAndRoute с пользовательской функцией обработчика событий под названием eventhandler. Этот код принимает связь EMSX Bloomberg c, Bloomberg EMSX заказывает order, и объект - таймер t.

  1. Запустите timer выполнить eventhandler. Аргумент пары "имя-значение" TimerFcn задает функцию обработчика событий. Аргумент пары "имя-значение" Period задает 1 вторую задержку между выполнением функции обработчика событий. Когда аргумент пары "имя-значение" ExecutionMode установлен в fixedRate, функция обработчика событий сразу выполняется после того, как она будет добавлена к очереди выполнения MATLAB®.

    t = timer('TimerFcn',{@c.eventhandler},'Period',1,...
              'ExecutionMode','fixedRate');
    
  2. Запустите таймер, чтобы инициировать и выполнить eventhandler сразу.

    start(t)
    
  3. Запустите createOrderAndRoute использование пользовательского обработчика событий установкой useDefaultEventHandler к false.

    createOrderAndRoute(c,order,'useDefaultEventHandler',false)
    
  4. Остановите таймер, чтобы остановить обновления данных.

    stop(t)
    

    Если вы хотите возобновить обновления данных, запустить start.

  5. Удалите таймер, если вы сделаны с обработкой обновлений данных для связи EMSX Bloomberg.

    delete(t)

Рабочий процесс для пользовательской функции обработчика событий

Этот рабочий процесс обобщает задачи работать с пользовательским использованием функции обработчика событий Bloomberg EMSX.

  1. Запишите пользовательскую функцию обработчика событий и сохраните ее в файл.

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

  3. Подпишитесь на поля Bloomberg EMSX с помощью orders и routes. Можно также записать пользовательские функции обработчика событий, чтобы обработать события подписки.

  4. Запустите пользовательскую функцию обработчика событий с помощью timer. Используйте указатель на функцию, чтобы задать пользовательское имя функции обработчика событий, чтобы запустить timer.

  5. Запустите таймер, чтобы сразу выполнить пользовательскую функцию обработчика событий с помощью start.

  6. Остановите обновления данных с помощью stop.

  7. Отпишитесь от полей Bloomberg EMSX при помощи синтаксиса API.

  8. Удалите таймер с помощью delete.

  9. Закройте связь с помощью close.

Смотрите также

| | | | | | | |

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

Больше о

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