Skip to content
All library documents

Retrieving Historical Intraday Prices and Fixings in Bloomberg

Article Quant Q&A · Author: Jo.

Summary

The note explains how Bloomberg Excel functions can retrieve a price for a specified time rather than the current quote. It contrasts BDP, which returns current data, with BDH, which can request intraday data over a short interval. Bar settings select trade, bid, or ask data, while fill settings can carry a prior observation into a period with no data.

That fill behavior needs care: the answer warns that Excel intraday history is limited, and a filled value may come from the oldest available observation rather than the requested time. Without filling, a missing observation can appear as an unavailable-data result. For longer history, the note describes using Bloomberg’s designated fixing instruments with ordinary historical-data requests, including a London-time currency fixing. The examples are specific to Bloomberg conventions and intraday availability; users should verify the relevant field, bar options, time zone, and history limits for their own instrument and use case.

Key ideas

  • BDP retrieves current Bloomberg data, while BDH can request historical observations over an intraday interval.
  • Intraday bar settings can select trade, bid, or ask observations.
  • A fill option may return an older available observation when the requested interval has no data.
  • The answer warns that Excel intraday history limits can make filled values misleading for older dates.
  • Bloomberg fixing instruments provide a way to request longer histories for specified currency fixing times.

Tags

Full text
# Price at Specific Time from Bloomberg


# Price at Specific Time from Bloomberg












I have a file where I easily export real-time prices to excel using the Bloomberg Add-In, using the formula BDP. Is there a way to get these prices of a specific time? For example, =BDP("EURGBP Curncy", "Bid") gives the real-time Bid price. How can I change it to give the Bid price of today 3pm specifically?

## Answer by nbbo2 (score 3)

https://quant.stackexchange.com/a/35129

BDP() is for current data, to get past data at a specific time or range of times you use BDH() (where H refers to Historical Data)

Try for example

```
=BDH("EURGBP Curncy","Last Price","7/13/2017 3:00:00 PM","7/13/2017 3:00:01 PM","BarTp=T,BarSz=1,Fill=P")
```

This will search the time interval from 3:00:00 and 3:00:01 and give you the price of the last trade in that interval, in other words the most recent price as 3:00:01. (It will be blank if there are no trades at all in that interval (unlikely), which you would need handle with IF statements etc.).

With BarTp=b or BarTp=a you can get the bid or ask instead of the last trade.

## Answer by AKdemy (score 0)

https://quant.stackexchange.com/a/63563

Wouldn't that be best asked on the Bloomberg help desk. I am sure they would have answered this quickly.

It would like to add that it also depends on your use case. If you just want this for a few days in the not too distant past (or like you, just for one day), the above intraday bar syntax is perfect. That said, you may as well just run `GIT<GO>` and look up that single value manually.

There is a fairly big problem with using `fill=p` here. BBG limits intraday tick and bar data in Excel for up to 140 non-weekend days. On the terminal it is 240 (but GIT actually goes back to 2008).

You can try

```
=BDH("EURGBP Curncy","OPEN","7/13/2018 3:00:00 PM","7/13/2018 3:00:01 PM","BarTp=T,BarSz=1,Fill=P")
```

vs

```
=BDH("EURGBP Curncy","OPEN","7/13/2018 3:00:00 PM","7/13/2018 3:00:01 PM","BarTp=T,BarSz=1")
```

The latter will correctly display `#N/A N/A`. The former will pull a value BUT that is simply the last one available going back with the 140d rule. Very misleading to say the least.

If you prefer a longer history, BBG has `BFIX<GO>` (also available online without a BBG subscription). You can use their API if you are a BBG user. The ticker syntax is visible on BFIX, for 3pm London it would be BPEU L150 Curncy though simply using EURGBP L150 Curncy also works. L for London and 150 for 15:00. It's a bit odd that its in 3 digits but I suspect that was chosen because it's only half hourly intervals in any case. There is a zone dropdown that offers some flexibility for regions.

With that syntax, you can simple use standard BDH without bars and pull a long time series:

```
=BDH("EURGBP L150 Curncy","PX_LAST","-10ay","")
```

pulls the last 10 actual years until today (whenever you load it) for 3pm London time.

Shown in full with attribution under the source's licence. Licence: CC BY-SA 4.0 (Stack Exchange)

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.