Objetivo

Un recorrido de conceptos básicos

Buscar AMZN, SPOT, TSLA en Yahoo! Finance

Tickers

  • El National Numbering Agency (NNA) creo el ISIN (International Securities Identification Number).
  • El CUSIP Service Bureau, operado por Standard & Poor’s for the American Bankers Association creo el CUSIP (Committee on Uniform Securities Identification Procedures).
  • También empresas como Yahoo! Finance y Bloomberg crean sus propios identificadores (aunque muchas veces son iguales a los tickers de las casas de bolsa).

Veamos algunos ejemplos en la siguiente tabla:

Ticker Yahoo! Finance ISIN CUSIP
IBM IBM US4592001014 459200101
AAPL AAPL US0378331005 037833100

¿Porqué hay un brico del punto verde al punto naranja?

Serie de precios de IBM

Serie de precios de IBM

OHLC

El NYSE, donde se hacen las transacciones de las acciones de IBM, funciona días hábiles entre 9:30am y 4:00pm EST (Eastern Standard Time). Se dice que el precio de apertura (open) es el primer precio después de las 9:30am al que se pacta una transacción de IBM en el día. El precio de cierre (close) es el último precio antes de las 4:00pm al que se pacta una transacción de IBM en el día.

En realidad, los precios de cierre y apertura no son exactamente el primer y último precio al que se cierra una transacción. Dependiendo de la casa de bolsa, los precios de cierre y apertura que se publican pueden ser el promedio de los precios pactados en los últimos/primeros minutos del día de operación.

Optimist demo

#devtools::install_github("audiracmichelle/optimist")
library(optimist)
get_

y en el drop-down aparecerán varias opciones de la paquetería junto con su descripción y parámetros

¿Cómo se usa?

Cargamos los datos

+ AMZN, SPOT, TSLA
price <- get_prices_yahoo(c('AMZN','SPOT','TSLA'), 
                                  from = '2012-12-31', 
                                  to = '2019-04-30')
class(price)
## [1] "xts" "zoo"
head(price)
##            AMZN.Adjusted SPOT.Adjusted TSLA.Adjusted
## 2012-12-31        250.87        149.01         33.87
## 2013-01-02        257.31        149.01         35.36
## 2013-01-03        258.48        149.01         34.77
## 2013-01-04        259.15        149.01         34.40
## 2013-01-07        268.46        149.01         34.34
## 2013-01-08        266.38        149.01         33.68
tail(price)
##            AMZN.Adjusted SPOT.Adjusted TSLA.Adjusted
## 2019-04-22       1887.31        135.92        262.75
## 2019-04-23       1923.77        138.79        263.90
## 2019-04-24       1901.75        135.62        258.66
## 2019-04-25       1902.25        132.82        247.63
## 2019-04-26       1950.63        138.25        235.14
## 2019-04-29       1938.43        138.14        241.47
#Para el seminario usamos plotly
#install.packages("plotly")
library(plotly)

#' @title plotly_xts
#' @description Plots time series from xts
#' @param x xts

plotly_xts <- function(x, ...){
 x %<>%
   as.data.frame() %>%
   tibble::rownames_to_column("date") %>%
   mutate(date = as.Date(date)) %>%
   gather(key, value, -date)

 p <- x %>%
   plot_ly(x = ~date,
           y = ~value,
           color = ~key, ...) %>%
   add_lines()

 p
}

¿Cuál es la diferencia de la siguiente gráfica y la que vimos en Yahoo! Finance?

price %>% 
  plotly_xts()

Rendimiento acumulado

price %>% 
  get_dlyChg_from_price() %>% 
  get_cumRet_from_dlyChg() %>% 
  plotly_xts()