2014-01-11 5 views
2

Цель: Я использую подписную службу Bloomberg Java API для мониторинга цен на облигации в режиме реального времени (подписка на поля ASK/BID реального времени). Однако в сообщениях RESPONSE, bloomberg не обеспечивает соответствующий доход по данной цене. Мне нужен способ расчета доходности.Bloomberg Java API - доходность облигаций в реальном времени

Попытка: Вот что я пытался: В в коде, который обрабатывает события приходят поддержку от реального времени подписки, когда я получаю BID или ASK ответ, извлечь цену из элемента сообщения, а затем инициирует новый запрос синхронных эталонных данных, используя переопределения, чтобы получить YAS_BOND_YLD, предоставив YAS_BOND_PX и установив флаг переопределения.

Задача: Это кажется очень медленным и громоздким. Есть ли лучший способ, кроме того, чтобы самостоятельно вычислять урожай? В моем коде я, кажется, могу обрабатывать цены в реальном времени, если они отправляются мне медленно. Если несколько цен облигаций были обновлены в одно и то же время (скажем, в оценке MSG1), я, кажется, только фиксирую одно из этих обновлений, похоже, что мне не хватает других событий. Это потому, что я не могу использовать синхронный запрос справочных данных, пока подписка еще жива?

Спасибо.

+0

Apaprently поля 'ASK_YIELD' и' BID_YIELD' были удалены. Вы можете попробовать: 'YIELD_ASK_CLOSE_RT' или' EVT_QUOTE_ASK_YIELD_RT' или их комбинацию. – assylias

+0

Я не думаю, что эти два поля отправляются обратно как часть нового сообщения о событии подписки. Лично я думаю, что они должны быть для облигаций, так как это избавляет вас от подачи другого запроса. Вычислять его на лету слишком много хлопот, потому что вам нужно будет много узнать о датах денежных потоков облигаций ... – WillZ

ответ

1

Блумберг не обеспечивает соответствующий выход для данной цены

вы пробовали извлечение ASK_YIELD и BID_YIELD поля? Они могут быть тем, что вы ищете.

Задача: Это кажется очень медленным и громоздким.

Синхронные одноразовые запросы медленнее, чем в режиме реального времени. Если вам не нужны данные в реальном времени о выходе, вы можете запросить очереди и отправить их сразу каждые x секунд, например. Время получить 100 или 1 урожай, вероятно, не так уж и отличается, и, конечно, не в 100 раз медленнее.

В моем коде я, кажется, могу обрабатывать цены в реальном времени, если они будут отправлены мне медленно. Если несколько цен облигаций были обновлены в одно и то же время (скажем, в оценке MSG1), я, кажется, только фиксирую одно из этих обновлений, похоже, что мне не хватает других событий. Это потому, что я не могу использовать синхронный запрос справочных данных, пока подписка еще жива?

Вы не должны пропустить предметы только потому, что вы отправляете синхронный запрос. Вы можете получить «Медленное предупреждение потребителя», но это все. Трудно сказать больше, не видя ваш код. Однако, если вы хотите, чтобы ваши данные в реальном времени не были отложены вашими синхронными запросами, вы должны использовать две отдельные сессии.

+0

«Вы пытались восстановить поля ASK_YIELD и BID_YIELD? Возможно, они могут быть тем, что вы ищете». Да, эти поля не являются частью сообщений о событиях, отправленных блумбергом.«Проблема: это кажется очень медленным и громоздким». В настоящий момент скорость не критична, но большое предложение, спасибо. Да, я получил ответ от помощи Bloomberg, предлагая использовать новую отдельную сессию. Я попробую это и вернусь. – WillZ