Para el análisis econométrico en finanzas, es importante trabajar los datos financieros. En este sentido el siguiente trabajo corresponde a un tratamiento de los datos desde la descarga hasta la creación de un modelo ARMAR para los retornos de TRES instrumentos financieros del tipo Stock(Acciones) y dos INDICES bursátiles (uno de ellos deberá ser el SP500) :

1) Descarge los precios de un instrumendo financiero

Los instrumentos financieros que se escogieron en este caso seran: TESLA, MICROSOFT, AAPLE; los indices bursatiles: SP500, DAX

#Instalamos el package 'tseries' Para poder descargar los datos
#install.packages('tseries')
#Una vez descargado llamamos a la libreria descargada tseries
library(tseries)
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo

Una ves ya instalada la libreria descargamos los datos de nuestro proveedor que es yahoo los tickers de las acciones y bursatiles son "TSLA,MSFT, APPL , ^GSPC, DAX respectivamente al orden que se presento. Las fechas que se usan son fecha de inicio 2013-01-01 hasta ayer.

#Usamos uno de los metodos que tiene la libreria tseries y descargamos los precios close; con sus tickers respectivos y los datos lo acumulamos en una variable.
preciostesla = get.hist.quote(instrument = "TSLA",start="2012-01-01",quote=c("Cl"))
## 'getSymbols' currently uses auto.assign=TRUE by default, but will
## use auto.assign=FALSE in 0.5-0. You will still be able to use
## 'loadSymbols' to automatically load data. getOption("getSymbols.env")
## and getOption("getSymbols.auto.assign") will still be checked for
## alternate defaults.
## 
## This message is shown once per session and may be disabled by setting 
## options("getSymbols.warning4.0"=FALSE). See ?getSymbols for details.
## time series starts 2012-01-03
## time series ends   2020-07-07
preciosmsft = get.hist.quote(instrument = "MSFT", start="2012-01-01", quote=c("Cl"))
## time series starts 2012-01-03
## time series ends   2020-07-07
preciosaapl = get.hist.quote(instrument = "AAPL", start="2012-01-01",quote=c("Cl"))
## time series starts 2012-01-03
## time series ends   2020-07-07
preciossp500 = get.hist.quote(instrument = "^GSPC",start="2012-01-01",quote=c("Cl"))
## time series starts 2012-01-03
## time series ends   2020-07-07
preciosdax = get.hist.quote(instrument = "DAX",start="2012-01-01",quote=c("Cl"))
## time series starts 2014-10-23
## time series ends   2020-07-07

2) Realize la comparativa de los precios de cierre con los retornos a un dia

Los retornos usamos la formula geometrica que se usa en series financieras la acumulamos en una variable y la compramos con la de la pagina web.

\(R_t=ln(P_t/P_(t-1))\)

#Usamos los comandos diff que nos permitira diferenciar la serie y luego logaritmo(log) neperiano para suavisar la serie
retornostesla = diff(log(preciostesla))
retornomsft = diff(log(preciosmsft))
retornoaapl = diff(log(preciosaapl))
retornosp500 = diff(log(preciossp500))
retornodax = diff(log(preciosdax))

2.1) Muestre graficamente la evolución temporal del precio y del retorno, analice en todo momento y comente su análisis y resultados. El retorno puede ser calculado de manera aritmética o geométrica.

#Graficamos los precios close con el comando plot que nos podra graficar los precios que ya bajamos en la primera parte el comando mfrow nos permitira abrir nuestra pantalla en 2 filas y 3 columnas, con el comando main damos un titulo (que tiene que estar en comillas) al grafico
par(mfrow=c(2,3))
plot(preciostesla, main = "Precios TESLA")
plot(preciosmsft, main = "Precios MICROSOFT")
plot(preciosaapl, main = " Precios APPLE")
plot(preciossp500, main = "Precios Sp500")
plot(preciosdax, main = "Precios DAX")
par(mfrow=c(1,1))

vemos que la mayoria de las series sigue una tendencia creciente debido a que nos encontrabamos en un boom financiero, DAX esta cotizando recien desde el 2014,con la epidemia del coronavirus las acciones se desplomaron el lunes negro pero tesla al ser una empresa innovadora con los coches electricos no se vio tan perjudicada; con la nueva normalidad los precios ya estan retomando su tendencia creciente.

#Graficamos los retonos con el comando plot que nos podra graficar los retornos ya calculados en 2) el comando mfrow nos permitira habrir nuestra pantalla en 2 filas y 3 columnas, con el comando main damos un titulo (que tiene que estar en comillas) al grafico
par(mfrow=c(2,3))
plot(retornostesla, main = "Retornos TESLA")
plot(retornomsft, main = "Retornos MICROSOFT")
plot(retornoaapl, main = "Retornos APPLE")
plot(retornosp500, main = "Retornos Sp500")
plot(retornodax, main = "Retornos DAX")
par(mfrow=c(1,1))

El retorno es calculado geometricamente los retornos muestra la volatilidada en 2012 se puede observar en algunos debido a la deuda europea, 2018 la guerra comercial entre china y EEUU, y este 2020 una volatilidad tremenda debido al coronavirus se entro en cuarentena, pero las acciones ya van recuperandose. Las series financieras son muy volatiles.

2.2) Muestre la comparativa entre las funciones de distribución de probabilidades que pueda tener el precio y el retorno. Considere el histograma para tener una primera idea (recordar que el histograma es un de los primeros estadísticos no paramétricos).

#Graficamos los histogramas con el comando hist que nos podra graficar los histogramas de los precios que bajamos en la primera parte comando mfrow nos permitira habrir nuestra pantalla en 3 filas y 2 columnas, con el comando main damos un titulo (que tiene que estar en comillas) al grafico
par(mfrow=c(3,2))
hist(preciostesla, main = "Histograma de los precios de TESLA")
hist(preciosmsft, main = "Histograma de los precios de MICROSOFT")
hist(preciosaapl, main = "Histograma de los precios de APPLE")
hist(preciossp500, main = "Histograma de los precios de Sp500")
hist(preciosdax, main = "Histograma de los precios de DAX")
par(mfrow=c(1,1))

La serie tiene en su mayoria asimetria positiva y leptocurticas

#Graficamos los histogramas con el comando hist ue nos podra graficar los histogramas de los retornos ya calculados en 2) el comando mfrow nos permitira habrir nuestra pantalla en 3 filas y 2 columnas, con el comando main damos un titulo (que tiene que estar en comillas) al grafico
par(mfrow=c(3,2))
hist(retornostesla, main = "Histograma de los retornos de TESLA")
hist(retornomsft, main = "Histograma de los retornos de MICROSOFT")
hist(retornoaapl, main = "Histograma de los retornos de APPLE")
hist(retornosp500, main = "Histograma de los retornos de Sp500")
hist(retornodax, main = "Histograma de los retornos de DAX")
par(mfrow=c(1,1))

Las series financierasson mayormente leptocurticas y tienen asimetria negativa.

#Con el comando summary nos data detalles estadisticos de las variables precio y retorno en este caso solo hare para el precio y retorno de microsoft
##Posdata: Tenia clases :'v

summary(preciosmsft)
##      Index                Close       
##  Min.   :2012-01-03   Min.   : 26.37  
##  1st Qu.:2014-02-20   1st Qu.: 38.00  
##  Median :2016-04-06   Median : 53.59  
##  Mean   :2016-04-04   Mean   : 70.43  
##  3rd Qu.:2018-05-21   3rd Qu.: 97.54  
##  Max.   :2020-07-07   Max.   :210.70
summary(retornomsft)
##      Index                Close           
##  Min.   :2012-01-04   Min.   :-0.1594534  
##  1st Qu.:2014-02-20   1st Qu.:-0.0063277  
##  Median :2016-04-06   Median : 0.0006890  
##  Mean   :2016-04-05   Mean   : 0.0009586  
##  3rd Qu.:2018-05-21   3rd Qu.: 0.0085148  
##  Max.   :2020-07-07   Max.   : 0.1329290
#para hallar la kurtosis s  skewness usamos la libreria moments
#install.packages("moments")
library(moments)
#Kurtosis de precios de microsoft
kurtosis(preciosmsft)
##    Close 
## 3.397285
#skewness de tesla
skewness(preciosmsft)
##    Close 
## 1.143659
#kurtosis de tesla
kurtosis(retornomsft)
##    Close 
## 15.57667
#skewness de tesla
skewness(retornomsft)
##      Close 
## -0.2575597

Muestra asimetria postiva ya que es > 0 una kurtosis leptocurtica > 3 para los precios, en caso de los retornos asimetria negativa <0 y leptocurtica >3.