Нарисовать исторический последний ценовой график с помощью Bloomberg API
Я хочу нарисовать исторические графики последних цен с помощью Java API Bloomberg, но я не знаю, какие классы Bloomberg мне следует использовать.
1 ответ
Решение
Предполагая, что вы используете Java API Bloomberg, для исторических данных вам нужно использовать "//blp/refdata"
обслуживание и отправить "HistoricalDataRequest"
, Несколько примеров приведены в руководстве разработчика, доступном на странице проекта.
Кроме того, вы можете использовать jBloomberg*, который проще в использовании, потому что он обрабатывает беспорядочные детали для вас. Чтобы получить исторические данные, вы можете следовать примеру, приведенному в Javadoc:
BloombergSession session = new DefaultBloombergSession();
session.start();
RequestBuilder<HistoricalData> hrb = new HistoricalRequestBuilder("SPX Index",
"PX_LAST", DateTime.now().minusDays(7),
DateTime.now())
.fill(HistoricalRequestBuilder.Fill.NIL_VALUE)
.days(HistoricalRequestBuilder.Days.ALL_CALENDAR_DAYS);
HistoricalData result = session.submit(hrb).get();
Map<DateTime, TypedObject> data = result.forSecurity("SPX Index").forField("PX_LAST").get();
for (Map.Entry<DateTime, TypedObject> e : data.entrySet()) {
DateTime dt = e.getKey();
double price = e.getValue().asDouble();
System.out.println("[" + dt + "] " + price);
}
* Отказ от ответственности: я являюсь автором jBloomberg