Skip to content
All library documents

Weekend FX Quotes Reflect an OTC Market That Does Not Close

Article Quant Q&A · Author: n1k31t4

Summary

The document examines why an FX data feed from OANDA, accessed through an R package, includes Saturday and Sunday observations while another data source shows business-day records. The questioner suspects that weekend values might be imputed or interpolated and asks whether relying on them could obscure a data-cleaning choice.

The answer explains that foreign exchange is an over-the-counter market without an official trading-day definition or formal market close. OANDA’s weekend observations can reflect trades reported during those periods because it continues collecting data and counterparties may trade on weekends or holidays. The examples show differing date coverage, but they do not establish the provenance or construction of every quote in either feed. Analysts should distinguish observed weekend market data from synthetic gap filling and verify source conventions before using the series.

Key ideas

  • FX is an over-the-counter market without a single official definition of trading days.
  • Weekend FX observations can reflect actual reported trading rather than interpolated values.
  • A data provider’s collection schedule can create dates absent from another source.
  • The examples do not document the construction or quality of every value in either feed.

Tags

Full text
# Anomaly or feature from Quantmod in R regarding getFX - currency data


# Anomaly or feature from Quantmod in R regarding getFX - currency data












I am using R to analyse stock data, using the quantmod package to get all sorts of data, but here specifically FX data using the function `getFX()`. This uses the Oanda database as its source.

This works great, however it returns weekend values - i.e. values for days on which no trading takes place. These values must therefore have somehow been exptrapolated, for example by taking the average over the surrounding period, using a spline...

This is the problem, I can't find out how it is done on the website nor in the quantmod documentation. I can actually just use the `Quandl` package to get around this, but I would like to know what I am avoiding or potentially missing out on.

I say that I may be missing out on something here because I may myself need to deal with data imputation, filling in the weekends, so if Oanda has done something half-sensible, I could just swipe there gap-filling skills. Just to make it super clear, compare the two outputs below, first from Quandl {package: Quandl} and then from Oanda {package: quantmod}. Notice the dates and the 'filled values' **

```
> head(x, n=10)
               Rate High (est) Low (est)
2013-01-14 0.749652    0.75838   0.74102
2013-01-15 0.748650    0.75799   0.73942
2013-01-16 0.751178    0.76022   0.74225
2013-01-17 0.751165    0.00000   0.00000
2013-01-18 0.749440    0.75843   0.74056
2013-01-21 0.750220    0.75880   0.74174
2013-01-22 0.750742    0.75993   0.74167
2013-01-23 0.750851    0.75944   0.74236
2013-01-24 0.750387    0.00000   0.00000
2013-01-25 0.747175    0.00000   0.00000

> head(y, n=10)
           USD.EUR
2013-01-14  0.7480
2013-01-15  0.7490
2013-01-16  0.7524
2013-01-17  0.7504
2013-01-18  0.7489
2013-01-19  0.7508 ** Saturday
2013-01-20  0.7508 ** Sunday
2013-01-21  0.7510
2013-01-22  0.7506
2013-01-23  0.7510
```

--> I would have added more links to documentation etc., but I can only add two with my current rep:

www dot quandl dot com/help/r

## Answer by Joshua Ulrich (score 1)

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

Your premise that there should be no data is incorrect. The foreign exchange market is an over-the-counter market, so there is no official definition of a trading day and the market never officially closes. The fact that you see some data on weekends is because OANDA never stops collecting data. There is nothing to prevent any of the parties who report trades to OANDA from trading on weekends or holidays.

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.