[R] currency conversion function?
Liviu Andronic
landronimirc at gmail.com
Fri Oct 16 14:29:59 CEST 2009
On 10/15/09, Henrique Dallazuanna <wwwhsd at gmail.com> wrote:
> foo <- function(from, to, date){
> url <- "http://www.oanda.com/convert/classic?script=..%2Fconvert%2Fclassic&language=en&value=1"
> params <-
> sprintf("%s&date=%s&exch=%s&exch2=&margin_fixed=0&expr=%s&expr2=&SUBMIT=Convert+Now&lang=en&date_fmt=us",
>
> url, format(as.Date(date), "%m/%d/%y"), to, from)
>
> Lines <- readLines(params)
> value <- gsub(".*(.+[0-9]\\.[0-9]+).*", "\\1",
> grep("nl", grep(from, grep(to, Lines, value =
> TRUE), value = TRUE), value = TRUE))
> as.numeric(value)
> }
>
>
Hmm.. There are still some inconsistencies:
> foo('EUR', 'RUB', '2009-10-16') ### slightly wrong
[1] 43.830
> foo('RUB', 'EUR', '2009-10-16')
[1] 0.0228
#Friday, October 16, 2009
#1 Euro = 43.85951 Russian Rouble
#1 Russian Rouble (RUB) = 0.02280 Euro (EUR)
#Median price = 43.82953 / 43.85951 (bid/ask)
It seems that EUR/RUB reports the median data. For other pairs (say,
EUR/PEN) the discrepancies can be more obvious.
Thank you
Liviu
More information about the R-help
mailing list