Как программно открыть определенную страницу терминала Bloomberg?
Есть ли надежный способ программного открытия конкретной страницы терминала Bloomberg (например, "MSFT Equity")?
Я открыт для любых предложений и примеров кода:
- Начать процесс с пути к исполняемому файлу терминала Bloomberg и тикера в аргументах
- Bloomberg API
- DDE
- COM Автоматизация
SendKeys(может быть заблокирован некоторыми антивирусами)- ...
Большое спасибо
4 ответа
Вы можете получить ответ на это через терминал:
API
И конкретный вопрос: как я могу программно общаться с Bloomberg Professional?
Строка, которую нужно отправить через DDE:
<blp-1><home>MSFT US<EQUITY><GO>DES<GO>
Поддержка DDE устарела. Со страницы разных тем WAPI
- Поддерживаете ли вы получение данных API Bloomberg программно с помощью DDE?
Нет. Мы больше не поддерживаем программный поиск данных Bloomberg через API с DDE. Фактически, вся справка и пример содержимого DDE, относящиеся к запросу данных API Bloomberg с помощью DDE, были удалены. Это решение было принято по следующим причинам: 1. Сервер DDE изначально разрабатывался для использования в качестве канала для извлечения данных Bloomberg в ячейки листа Microsoft Excel по ссылкам Bloomberg DDE, введенным в эти ячейки. Он не предназначен для использования в качестве интерфейса программирования в приложении. 2. Существуют гораздо более эффективные и мощные альтернативы программному запросу данных API Bloomberg из приложения, чем использование DDE (то есть DDERequest()). Например, в случае сред разработки, таких как Microsoft Excel и Access VBA, мы рекомендуем использовать управление данными COM v3. Этот интерфейс прост в программировании и способен дать вам больший контроль над вашим запросом и большую гибкость при обработке ответа на данные. В случае C++ мы рекомендуем либо интерфейс API C v3, либо. Для приложений.NET вам необходимо использовать интерфейс API.NET v3.
Мы предоставляем образцы для всех этих интерфейсов в пакете установки Desktop API SDK, который доступен для загрузки в Центре загрузки API.
Вы можете использовать JavaScript для создания объекта ActiveX new ActiveXObject("Excel.Application")
, Отсюда вы можете использовать DDE для доступа к открытому окну Bloomberg Terminal. DDEInitiate("Winblp", "bbk")
и отправь ему команду.
Небольшой момент, на который стоит обратить внимание:
<blp-1><home>MSFT US<EQUITY><GO>DES<GO>
blp-1 в основном blp- + (номер окна -1)
так что если вы хотите нацелиться на BLOOMBERG-3, используйте blp-2 (3-1 = 2)