Skip to content

rockscie/async_blp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

96 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

async_blp

Build Status

Overview

The goal of async_blp is to create simple and fast Bloomberg Open API wrapper that can be used in highload environments. It allows asynchronous processing of hundreds of Bloomberg request simultaneously. Currently async_blp provides support for reference and historical data, instruments lookup and field search, as well as subscriptions. More request types will be added in the future.

Features

  • Fast. Using asyncio allows to process Bloomberg requests simultaneously while creating little overhead
  • Simple. async_blp takes care of creating and managing Bloomberg sessions as well as of parsing responses
  • User-friendly output. Data is returned as a pandas.DataFrame object
  • Error handling. Security and field errors are returned in a separate object that can be easily inspected

Installation

You can install async_blp from PyPI using

pip install async_blp

Requirements

Documentation

https://async-blp.readthedocs.io/en/latest/

Examples

Before using async_blp, install blpapi from the link above and login in the Bloomberg Terminal.

import async_blp

async def blp_example(loop):
    bloomberg = async_blp.AsyncBloomberg(loop=loop)
  
    data, _ = await bloomberg.get_reference_data(['F US Equity'], ['LAST_PRICE'])
  
    # it is important to wait until Bloomberg successfully closes all the sessions
    await bloomberg.stop()
  
    return data

More examples can be found here: https://github.com/rockscie/async_blp/tree/master/examples