Main Content

bloombergServer

Bloomberg Server connection V3

Since R2021a

Description

The bloombergServer function creates a bloombergServer object. The bloombergServer object represents a Bloomberg® Server connection using the Bloomberg V3 C++ API.

Other Datafeed Toolbox™ functions connect to different Bloomberg services: Bloomberg Desktop (bloomberg) and Bloomberg B-PIPE® (bloombergBPIPE). For details about these services, see Comparing Bloomberg Connections.

For details about Bloomberg connection requirements, see Data Server Connection Requirements. To ensure a successful Bloomberg connection, perform the required steps before executing bloombergServer. For details, see Installing Bloomberg and Configuring Connections.

Creation

Description

c = bloombergServer(uuid,ipaddress) creates a Bloomberg Server connection object c to the Bloomberg Server running on another machine, and sets the Uuid and IPAddress properties. You need a Bloomberg Server software license for the machine running the Bloomberg Server.

example

c = bloombergServer(uuid,ipaddress,port) also sets the Port property.

example

c = bloombergServer(uuid,ipaddress,port,timeout) also sets the TimeOut property.

Caution

To refer to a Bloomberg connection in other functions, use the connection object created by the bloombergServer function. Otherwise, using bloombergServer as an input argument opens multiple Bloomberg connections, causing unexpected behavior and exhausting memory resources.

example

Properties

expand all

Bloomberg user identity UUID, specified as a numeric scalar. To find your UUID, enter IAM in the Bloomberg terminal and press GO.

Example: 12345678

Data Types: double

This property is read-only.

Bloomberg user, specified as a Bloomberg user identity object.

Example: [1x1 com.bloomberglp.blpapi.impl.aT]

This property is read-only.

IP address of the machine running MATLAB, specified as a character vector.

Example: '111.11.11.111'

Data Types: char

This property is read-only.

Bloomberg V3 session, specified as a Bloomberg V3 API Session object.

Example: [1x1 BLPSession]

Bloomberg Server IP address, specified as a character vector or string scalar that identifies the machine running the Bloomberg Server.

Example: '111.11.11.111'

Data Types: char | string

Port number, specified as a numeric scalar that identifies the port number of the machine running the Bloomberg Server.

Example: 8194

Data Types: double

Timeout specifying the time in milliseconds that MATLAB attempts to connect to the machine running the Bloomberg Server before timing out, specified as a numeric scalar.

Example: 10

Data Types: double

Date and time data type, specified as one of these values.

ValueDescription
'' (default)Return date and time values as MATLAB date numbers.
'datetime'Return date and time values as a datetime array.

You can specify these values using a character vector or string (for example, "datetime").

When you create a bloombergServer object, the bloombergServer function leaves this property unset. To retrieve data, you must set this property value manually at the command line or in a script using dot notation, for example:

c.DatetimeType = 'datetime';
Then, you can use these supported functions:

  • getbulkdata

  • getdata

  • history

  • tahistory

  • timeseries

    Note

    If the DataReturnFormat property value is 'table' and the DatetimeType property value is 'datetime', then the returned data is a table that contains date and time values as a datetime array. If the DataReturnFormat property value is an empty character vector, then setting the DatetimeType property to 'datetime' returns date and time values for aggregated ticks and historical requests as MATLAB date numbers.

Data return format, specified as one of these values, which determine the data type of the returned data.

ValueData Type of Returned Data
'cell'cell array
'table'table
'timetable'timetable
'structure'structure

Note

The default data type of the returned data depends on the executed function. To specify the default data type, set the DataReturnFormat property to ''. For default data types, see the supported function list.

You can specify these values using a character vector or string (for example, "table").

When you create a bloombergServer object, the bloombergServer function leaves this property unset. To retrieve data, you must set this property value manually at the command line or in a script using dot notation, for example:

c.DataReturnFormat = 'structure';
Then, you can use these supported functions.

Supported FunctionValid Data Types for Returned Data
category
  • cell array (default)

  • structure

  • table

eqs
  • cell array (default)

  • structure

  • table

fieldinfo
  • cell array (default)

  • structure

  • table

fieldsearch
  • cell array (default)

  • structure

  • table

lookup
  • structure (default)

  • table

portfolio
  • structure (default)

  • table

getbulkdata
  • structure (default)

  • table

  • timetable

getdata
  • structure (default)

  • table

  • timetable

history
  • numeric array (default)

  • table

  • timetable

tahistory
  • structure (default)

  • table

  • timetable

timeseries
  • cell array (default for raw tick data)

  • numeric array (default for interval tick data)

  • table

  • timetable

Note

Regardless of the DatetimeType property value, if the DataReturnFormat property value is 'timetable', then the getdata and getbulkdata functions return a table that contains date and time values as datetime arrays.

Object Functions

expand all

closeClose Bloomberg Server connection V3
isconnectionDetermine Bloomberg Server connection V3
eqsEquity screening data for Bloomberg Server connection V3
getProperties of Bloomberg Server connection V3
getbulkdataBulk data with header information for Bloomberg Server connection V3
getdataCurrent data for Bloomberg Server connection V3
historyHistorical data for Bloomberg Server connection V3
portfolioCurrent portfolio data for Bloomberg Server connection V3
realtimeReal-time data for Bloomberg Server connection V3
tahistoryHistorical technical analysis for Bloomberg Server connection V3
timeseriesIntraday tick data for Bloomberg Server connection V3
categoryField category search for Bloomberg Server connection V3
fieldinfoField information for Bloomberg Server connection V3
fieldsearchField search for Bloomberg Server connection V3
lookupFind information about securities for Bloomberg Server connection V3

Examples

collapse all

Connect to the Bloomberg Server using the IP address of the machine running the Bloomberg Server. This example uses the Bloomberg Server C++ interface and assumes the following:

  • The Bloomberg UUID is 12345678.

  • The IP address for the machine running the Bloomberg Server is '111.11.11.111'.

uuid = 12345678;
ipaddress = '111.11.11.111';

c = bloombergServer(uuid,ipaddress)
c = 

  bloombergServer with properties:

                Uuid: 12345678
                User: []
              Userip: '111.11.11.112'
             Session: [1×1 BLPSession]
           IPAddress: '111.11.11.111'
                Port: 8194
             TimeOut: 0
        DatetimeType: ''
    DataReturnFormat: ''

The bloombergServer function connects to the machine running the Bloomberg Server using the default port number 8194. The bloombergServer function creates the bloombergServer object c with these properties:

  • Bloomberg user identity UUID

  • Bloomberg user identity object

  • IP address of the machine running MATLAB

  • Bloomberg V3 API Session object

  • IP address of the machine running the Bloomberg Server

  • Port number of the machine running the Bloomberg Server

  • Number in milliseconds specifying how long MATLAB attempts to connect to the machine running the Bloomberg Server before timing out

  • Date and time data type

  • Data return format

Request the last and open prices for Microsoft®.

format bank  % Display data format for currency
s = 'MSFT US Equity';
f = {'LAST_PRICE';'OPEN'};
[d,sec] = getdata(c,s,f)
d = 
    LAST_PRICE: 33.34
          OPEN: 33.60

sec = 
    'MSFT US Equity'

getdata returns a structure d with the last and open prices. Also, getdata returns the name of the security in sec.

Close the Bloomberg Server connection.

close(c)

Connect to the Bloomberg Server using the IP address of the machine running the Bloomberg Server. This example uses the Bloomberg Server C++ interface and assumes the following:

  • The Bloomberg UUID is 12345678.

  • The IP address for the machine running the Bloomberg Server is '111.11.11.111'.

  • The port number of the machine running the Bloomberg Server is 5678.

uuid = 12345678;
ipaddress = '111.11.11.111';
port = 5678;

c = bloombergServer(uuid,ipaddress,port)
c = 

  bloombergServer with properties:

                Uuid: 12345678
                User: []
              Userip: '111.11.11.112'
             Session: [1×1 BLPSession]
           IPAddress: '111.11.11.111'
                Port: 5678
             TimeOut: 0
        DatetimeType: ''
    DataReturnFormat: ''

The bloombergServer function connects to the machine running the Bloomberg Server using the port number 8194 and creates the bloombergServer object c with these properties:

  • Bloomberg user identity UUID

  • Bloomberg user identity object

  • IP address of the machine running MATLAB

  • Bloomberg V3 API Session object

  • IP address of the machine running the Bloomberg Server

  • Port number of the machine running the Bloomberg Server

  • Number in milliseconds specifying how long MATLAB attempts to connect to the machine running the Bloomberg Server before timing out

  • Date and time data type

  • Data return format

Request the last and open prices for Microsoft.

format bank  % Display data format for currency
s = 'MSFT US Equity';
f = {'LAST_PRICE';'OPEN'};
[d,sec] = getdata(c,s,f)
d = 
    LAST_PRICE: 33.34
          OPEN: 33.60

sec = 
    'MSFT US Equity'

getdata returns a structure d with the last and open prices. Also, getdata returns the name of the security in sec.

Close the Bloomberg Server connection.

close(c)

Connect to the Bloomberg Server using the IP address of the machine running the Bloomberg Server. This example uses the Bloomberg Server C++ interface and assumes the following:

  • The Bloomberg UUID is 12345678.

  • The IP address for the machine running the Bloomberg Server is '111.11.11.111'.

  • The port number of the machine running the Bloomberg Server is your default port number.

  • The timeout value is 10 milliseconds.

uuid = 12345678;
ipaddress = '111.11.11.111';
port = [];
timeout = 10;

c = bloombergServer(uuid,ipaddress,port,timeout)
c = 

  bloombergServer with properties:

                Uuid: 12345678
                User: []
              Userip: '111.11.11.112'
             Session: [1×1 BLPSession]
           IPAddress: '111.11.11.111'
                Port: 8194
             TimeOut: 10
        DatetimeType: ''
    DataReturnFormat: ''

The bloombergServer function connects to the machine running the Bloomberg Server using the default port number 8194 and a timeout value of 10 milliseconds. The bloombergServer function creates the bloombergServer object c with these properties:

  • Bloomberg user identity UUID

  • Bloomberg user identity object

  • IP address of the machine running MATLAB

  • Bloomberg V3 API Session object

  • IP address of the machine running the Bloomberg Server

  • Port number of the machine running the Bloomberg Server

  • Number in milliseconds specifying how long MATLAB attempts to connect to the machine running the Bloomberg Server before timing out

  • Date and time data type

  • Data return format

Request the last and open prices for Microsoft.

format bank  % Display data format for currency
s = 'MSFT US Equity';
f = {'LAST_PRICE';'OPEN'};
[d,sec] = getdata(c,s,f)
d = 
    LAST_PRICE: 33.34
          OPEN: 33.60

sec = 
    'MSFT US Equity'

getdata returns a structure d with the last and open prices. Also, getdata returns the name of the security in sec.

Close the Bloomberg Server connection.

close(c)

Version History

Introduced in R2021a