En el presente post, se utilizará una vez más la librería “quantmod”, la cual emplearemos para descargar desde Oanda el precio tanto del oro (XAU) como de la plata (XAG) expresados en dólares norteamericanos.

Las series que se obtienen van desde 01 de enero de 2012 hasta la fecha.

library(quantmod)

getMetals("XAU",
      from = "2012-01-01",
      base.currency="USD",
      env = .GlobalEnv,
      verbose = FALSE,
      warning = TRUE,
      auto.assign = TRUE,
      return.class='zoo')
## [1] "XAUUSD"
getMetals("XAG",
      from = "2012-01-01",
      base.currency="USD",
      env = .GlobalEnv,
      verbose = FALSE,
      warning = TRUE,
      auto.assign = TRUE,
      return.class='zoo')
## [1] "XAGUSD"

A continuación con “chartseries” se graficará la evolución de dichos commodities y se le añadirá un promedio móvil simple de 20 (TA=“addSMA(20)):

chartSeries(XAUUSD, show.grid = TRUE,name = "Evolucion del precio del Oro", theme = chartTheme("white"), TA="addSMA(20)") 

plot of chunk unnamed-chunk-2

chartSeries(XAGUSD, show.grid = TRUE,name = "Evolucion del precio de la Plata", theme = chartTheme("white"), TA="addSMA(20)") 

plot of chunk unnamed-chunk-2

Si queremos conocer los valores máximos y mínimos:

ValorminXAUUSD <- min(XAUUSD)
ValorminXAGUSD <- min(XAGUSD)

ValormaxXAUUSD <- max(XAUUSD)
ValormaxXAGUSD <- max(XAGUSD)

Valormin = c(ValorminXAUUSD,ValorminXAGUSD)
valormax = c(ValormaxXAUUSD,ValormaxXAGUSD)

Tabla1= data.frame (rbind(Valormin,valormax))
colnames(Tabla1)<- c("Oro","Plata")

Tabla1
##               Oro   Plata
## Valormin 1054.685 13.7377
## valormax 1788.240 36.5895

Por último, si queremos hallar el rendimiento promedio y la volatilidad (diaria):

Rendimiento promedio diario: se calcula la diferencia logarí­tmica de los precios, a la cual se le extrae la media.
Volatilidad diaria: se calcula la desviación estándar del rendimiento o retorno.

Para expresarlo en porcentajes se multiplica por 100 (Tabla2*100):

RetornoXAUUSD<-diff(log(XAUUSD))
RetornoXAGUSD<-diff(log(XAGUSD))

RendimientoPromedio = c(mean(RetornoXAUUSD),mean(RetornoXAGUSD))
Volatilidad= c(sd(RetornoXAUUSD),sd(RetornoXAGUSD))

Tabla2 = data.frame (rbind(RendimientoPromedio,Volatilidad))
colnames(Tabla2)<- c("Oro","Plata")

Tabla2*100
##                             Oro       Plata
## RendimientoPromedio -0.01615706 -0.03898427
## Volatilidad          0.67564574  1.07198044
Evolución del precio de Commodities: Descarga y análisis con Rhttps://i1.wp.com/finanzaszone.com/wp-content/uploads/2016/03/Evolución-del-precio-del-Oro.png?fit=847%2C525&ssl=1https://i1.wp.com/finanzaszone.com/wp-content/uploads/2016/03/Evolución-del-precio-del-Oro.png?resize=150%2C150&ssl=1Conney Marulanda LópezMercados FinancierosRCommodities,Datos,Mercados Financieros,Oro,Plata,quantmod,REn el presente post, se utilizará una vez más la librería “quantmod”, la cual emplearemos para descargar desde Oanda el precio tanto del oro (XAU) como de la plata (XAG) expresados en dólares norteamericanos. Las series que se obtienen van desde 01 de enero de 2012 hasta la fecha. library(quantmod) getMetals('XAU', ...