# UNIVERSIDAD NACIONAL DEL ALTIPLANO
# INGENIERIA ESTADISTICA E INFORMATICA
# CURSO: SERIES DE TIEMPO

library(readxl)
## Warning: package 'readxl' was built under R version 4.0.2
library(lubridate)
## Warning: package 'lubridate' was built under R version 4.0.5
## 
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
## 
##     date, intersect, setdiff, union
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.0.5
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.3     v purrr   0.3.4
## v tibble  3.1.5     v dplyr   1.0.7
## v tidyr   1.1.4     v stringr 1.4.0
## v readr   2.0.2     v forcats 0.5.1
## Warning: package 'ggplot2' was built under R version 4.0.3
## Warning: package 'tibble' was built under R version 4.0.5
## Warning: package 'tidyr' was built under R version 4.0.5
## Warning: package 'readr' was built under R version 4.0.5
## Warning: package 'dplyr' was built under R version 4.0.5
## Warning: package 'forcats' was built under R version 4.0.5
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x lubridate::as.difftime() masks base::as.difftime()
## x lubridate::date()        masks base::date()
## x dplyr::filter()          masks stats::filter()
## x lubridate::intersect()   masks base::intersect()
## x dplyr::lag()             masks stats::lag()
## x lubridate::setdiff()     masks base::setdiff()
## x lubridate::union()       masks base::union()
library(car)
## Warning: package 'car' was built under R version 4.0.5
## Loading required package: carData
## 
## Attaching package: 'car'
## The following object is masked from 'package:dplyr':
## 
##     recode
## The following object is masked from 'package:purrr':
## 
##     some
library(tseries)
## Warning: package 'tseries' was built under R version 4.0.5
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
library(astsa)
## Warning: package 'astsa' was built under R version 4.0.5
library(foreign)
## Warning: package 'foreign' was built under R version 4.0.3
library(timsac)
## Warning: package 'timsac' was built under R version 4.0.3
library(vars)
## Warning: package 'vars' was built under R version 4.0.5
## Loading required package: MASS
## 
## Attaching package: 'MASS'
## The following object is masked from 'package:dplyr':
## 
##     select
## Loading required package: strucchange
## Warning: package 'strucchange' was built under R version 4.0.5
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## Loading required package: sandwich
## 
## Attaching package: 'strucchange'
## The following object is masked from 'package:stringr':
## 
##     boundary
## Loading required package: urca
## Warning: package 'urca' was built under R version 4.0.5
## Loading required package: lmtest
## Warning: package 'lmtest' was built under R version 4.0.2
library(lmtest)
library(mFilter)
## Warning: package 'mFilter' was built under R version 4.0.5
library(dynlm)
## Warning: package 'dynlm' was built under R version 4.0.5
library(nlme)
## Warning: package 'nlme' was built under R version 4.0.5
## 
## Attaching package: 'nlme'
## The following object is masked from 'package:dplyr':
## 
##     collapse
library(broom)
## Warning: package 'broom' was built under R version 4.0.5
library(kableExtra)
## Warning: package 'kableExtra' was built under R version 4.0.5
## 
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
## 
##     group_rows
library(knitr)
library(MASS)
library(parallel)
library(car)
library(mlogit)
## Warning: package 'mlogit' was built under R version 4.0.5
## Loading required package: dfidx
## Warning: package 'dfidx' was built under R version 4.0.5
## 
## Attaching package: 'dfidx'
## The following object is masked from 'package:MASS':
## 
##     select
## The following object is masked from 'package:stats':
## 
##     filter
library(dplyr)
library(tidyr)
library(forecast)
## Warning: package 'forecast' was built under R version 4.0.5
## 
## Attaching package: 'forecast'
## The following object is masked from 'package:nlme':
## 
##     getResponse
## The following object is masked from 'package:astsa':
## 
##     gas
library(fpp2)
## Warning: package 'fpp2' was built under R version 4.0.5
## -- Attaching packages ---------------------------------------------- fpp2 2.4 --
## v fma       2.4     v expsmooth 2.3
## Warning: package 'fma' was built under R version 4.0.5
## Warning: package 'expsmooth' was built under R version 4.0.5
## -- Conflicts ------------------------------------------------- fpp2_conflicts --
## x forecast::getResponse() masks nlme::getResponse()
## x car::some()             masks purrr::some()
## 
## Attaching package: 'fpp2'
## The following object is masked from 'package:astsa':
## 
##     oil
library(stats)
library(quantmod)
## Warning: package 'quantmod' was built under R version 4.0.5
## Loading required package: xts
## Warning: package 'xts' was built under R version 4.0.5
## 
## Attaching package: 'xts'
## The following objects are masked from 'package:dplyr':
## 
##     first, last
## Loading required package: TTR
library(urca)
library(FinTS)
## Warning: package 'FinTS' was built under R version 4.0.5
## 
## Attaching package: 'FinTS'
## The following object is masked from 'package:forecast':
## 
##     Acf
library(fGarch)
## Warning: package 'fGarch' was built under R version 4.0.5
## Loading required package: timeDate
## Warning: package 'timeDate' was built under R version 4.0.5
## Loading required package: timeSeries
## Warning: package 'timeSeries' was built under R version 4.0.5
## 
## Attaching package: 'timeSeries'
## The following object is masked from 'package:zoo':
## 
##     time<-
## Loading required package: fBasics
## Warning: package 'fBasics' was built under R version 4.0.5
## 
## Attaching package: 'fBasics'
## The following object is masked from 'package:TTR':
## 
##     volatility
## The following object is masked from 'package:mlogit':
## 
##     stdev
## The following object is masked from 'package:astsa':
## 
##     nyse
## The following object is masked from 'package:car':
## 
##     densityPlot
library(parallel)

preciopm <- read_excel("E:/SERIES DE TIEMPO/TAREA 07/preciopm.xls")
preciopm
## # A tibble: 352 x 1
##    Precio
##     <dbl>
##  1  14.9 
##  2  13.9 
##  3  12.3 
##  4  10.9 
##  5  10.5 
##  6   9.82
##  7  13.2 
##  8  20.8 
##  9  26.2 
## 10  25.5 
## # ... with 342 more rows
#View(preciopm)
attach(preciopm)
names(preciopm)
## [1] "Precio"
Preciopm <- preciopm$Precio
Preciopm
##   [1]  14.897350  13.856284  12.298178  10.927095  10.452086   9.817348
##   [7]  13.188972  20.825314  26.238379  25.461774  23.590050  19.221472
##  [13]  13.795437  10.845017  11.366329  12.068577  11.991099  11.930451
##  [19]  12.852894  12.724638  13.357160  14.094443  11.643019  10.081917
##  [25]  10.079426  10.222971  10.928616  12.263161  13.882490  14.717433
##  [31]  14.694666  14.592165  15.002168  15.047736  13.499847  11.999895
##  [37]  11.803837  12.505585  12.812625  12.873810  12.220930  11.106039
##  [43]  11.024373  11.150484  11.278000  11.218994   9.715306   9.101101
##  [49]  10.227919   9.954569  10.307307  11.943946  12.818879  14.009499
##  [55]  14.525943  12.763118  12.527938  13.827166  14.100563  13.831668
##  [61]  14.282580  14.800758  15.121214  16.031652  16.052267  14.611588
##  [67]  13.256370  13.449261  13.363175  12.991089  13.580205  15.116482
##  [73]  14.640357  15.096147  16.682205  17.461726  16.069193  15.561163
##  [79]  15.978825  17.149939  19.308046  20.562573  18.913614  19.316873
##  [85]  18.060119  15.709637  14.482912  14.259241  14.834376  13.795084
##  [91]  14.158890  14.821528  14.748565  15.700761  14.316305  11.438379
##  [97]   9.713509   8.882054   7.631504   9.058311   9.082049   8.297230
## [103]   8.804921   8.239905   9.465377   9.128815   7.865962   6.349166
## [109]   7.392438   7.126746   9.856138  12.350982  12.237096  13.074408
## [115]  15.319650  17.430406  19.077463  18.434955  19.961135  20.140117
## [121]  21.348773  23.547154  22.935065  20.260149  23.193243  24.744170
## [127]  22.778127  24.355191  25.822586  25.011949  24.065706  17.812948
## [133]  18.309991  18.799571  16.851520  16.360149  18.199624  18.789678
## [139]  18.433045  19.274814  19.325549  15.571857  13.259511  13.662242
## [145]  14.032789  15.278664  19.405427  21.897267  21.987875  21.507413
## [151]  22.389223  23.253909  24.514419  22.826465  20.001942  23.282675
## [157]  27.074817  27.012354  23.663690  20.458351  21.904876  23.570076
## [163]  24.909283  25.174429  22.513946  24.135865  24.170211  24.437509
## [169]  25.316733  25.162286  26.962854  28.014928  30.823501  29.251947
## [175]  30.770350  32.403355  33.356997  37.293723  30.656835  26.902246
## [181]  30.012074  32.092964  36.346343  38.118350  38.912862  43.204432
## [187]  44.357927  47.831527  48.880013  45.437368  41.707053  42.989153
## [193]  47.779745  46.563260  49.381610  54.956204  55.260986  53.833091
## [199]  56.818337  57.866679  49.690903  46.744199  45.794018  47.642082
## [205]  42.745920  47.033095  48.943810  52.898664  54.958534  58.682133
## [211]  63.212159  62.190669  66.439359  71.018809  78.145548  77.690069
## [217]  78.879230  79.714309  87.177370  93.028973 102.884604 112.291047
## [223] 118.026634 105.209472  83.841054  58.685407  40.592316  32.916936
## [229]  37.230832  37.848297  41.678599  47.490271  56.016166  63.641365
## [235]  60.191980  66.404843  64.108802  67.933160  71.534239  68.493029
## [241]  70.866452  69.134714  70.093660  72.292077  66.101763  65.540751
## [247]  66.923774  68.245485  68.332474  72.942531  75.758392  80.208666
## [253]  84.324640  89.161930  99.432700 106.104005 101.835090 100.828631
## [259] 102.599593  96.988597  97.634395  99.366005 105.806100 105.126973
## [265] 107.455818 108.451418 109.604263 104.893764 100.233358  90.181843
## [271]  94.012683  99.512167 100.076628  97.108629  93.682388  94.939944
## [277]  97.982782 103.352938 100.770902  97.755385  97.906861  96.993153
## [283]  99.672555  99.244140  98.145716  93.873293  88.485898  89.409659
## [289]  88.310808  90.822240  91.395224  93.888630  95.086309  97.011046
## [295]  93.320166  89.507449  84.128243  72.509358  63.479800  50.181375
## [301]  40.451272  45.986060  46.017331  49.325551  52.039105  52.825725
## [307]  45.165949  38.419266  36.290362  34.860768  32.508829  26.196096
## [313]  23.102382  23.729330  28.326563  31.335818  36.726361  39.807146
## [319]  37.971526  37.740903  36.826661  40.668356  38.361623  42.325962
## [325]  44.500081  44.174971  41.932428  43.221180  43.850742  41.151050
## [331]  43.877714  45.554842  48.162370  48.891135  53.345048  54.055756
## [337]  57.453995  56.156762  57.224584  58.159732  62.899289  64.636865
## [343]  66.421619  64.265666  68.363482  71.153304  59.825830  51.868669
## [349]  54.056660  57.379810  59.464492  62.077030
#  Generar Serie de Tiempo de Rendimeintos
precio <- ts(Precio,start = c(2000,02), frequency = 12)
chartSeries(precio)

# Estimar la ecuacion de preciopm 
precio.mean <- dynlm(precio ~ 1, data = preciopm)
summary(precio.mean)
## 
## Time series regression with "ts" data:
## Start = 2000(2), End = 2029(5)
## 
## Call:
## dynlm(formula = precio ~ 1, data = preciopm)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -34.43 -25.99 -12.61  19.14  77.25 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)   40.778      1.609   25.35   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 30.18 on 351 degrees of freedom
arima22 <- arima(precio,order = c(2,0,2))

#Calcular los Residuales al Cuadrado
rescuad <- resid(arima22)^2
rescuad
##               Jan          Feb          Mar          Apr          May
## 2000              7.992110e+00 1.122990e+00 1.811396e+00 8.033846e-01
## 2001 1.105986e+01 1.183476e+01 1.634808e-01 2.218577e+00 7.653346e-02
## 2002 2.320950e-01 2.622240e-01 1.885075e-01 3.912699e-02 3.921104e-01
## 2003 8.560824e-01 7.421088e-02 1.101830e-01 2.504947e-01 1.710734e-01
## 2004 1.984278e-02 1.129677e+00 1.914410e+00 1.981171e-02 1.358904e+00
## 2005 4.942817e-01 1.491806e-01 4.720345e-03 9.259098e-02 2.227558e-01
## 2006 7.475798e-01 2.774870e+00 2.330309e-01 1.236997e+00 2.110999e-01
## 2007 1.461034e+00 2.965274e+00 4.225616e+00 2.704014e-02 8.719470e-04
## 2008 5.895186e+00 1.730321e-01 1.524632e-01 1.874374e+00 2.770658e+00
## 2009 1.247886e+00 2.016204e+00 1.853223e+00 5.835247e+00 4.835006e-01
## 2010 7.561569e-01 6.499317e-01 1.984851e+00 4.179838e+00 5.962702e+00
## 2011 3.422026e+01 1.306651e+01 3.986648e-02 8.325589e+00 2.296676e-01
## 2012 1.701778e+00 2.321138e-01 4.095340e-01 1.034662e+01 2.263102e-03
## 2013 2.168263e+01 2.430280e+00 6.103010e+00 9.785872e+00 1.766941e+00
## 2014 1.351812e-02 4.921095e-01 7.183426e-01 2.940555e+00 3.944818e-03
## 2015 5.403151e-03 2.710030e+01 1.473254e-01 8.319925e+00 9.348408e-02
## 2016 1.122598e+01 1.422986e+01 1.588203e+01 1.459536e+01 1.925700e+01
## 2017 3.206919e+00 3.480277e+01 5.059871e+01 1.316767e-01 7.100218e+00
## 2018 1.316221e+01 5.045957e+00 1.001053e+00 5.334950e+01 5.353979e+00
## 2019 7.678949e-01 4.898384e+01 7.198702e+00 1.132244e+01 1.706276e+01
## 2020 2.382410e+01 2.241109e+01 6.450855e+00 4.000901e+00 4.883196e+00
## 2021 1.111005e+01 6.032401e+00 1.040150e+01 7.112345e+01 3.568579e+00
## 2022 1.115233e+01 1.381716e+01 7.563039e-01 1.597865e+00 1.899179e+01
## 2023 1.335467e+01 7.383005e+00 1.771186e+01 2.147404e+01 3.356121e-01
## 2024 1.914109e+01 1.893292e+00 1.172933e+01 4.604830e-03 7.451909e+00
## 2025 7.071266e+01 8.938121e+00 1.082560e+02 1.496917e+01 9.116088e+00
## 2026 2.597313e+01 3.225305e-02 3.648761e+00 1.301358e+01 4.276616e-02
## 2027 2.749357e+01 4.496806e-02 2.802108e+00 2.833626e+00 7.035899e+00
## 2028 2.247733e+00 1.042282e+01 7.298237e+00 3.986616e+00 5.193074e-01
## 2029 1.016899e+00 4.548928e+01 1.617295e+00 1.618963e-02 4.329960e+00
##               Jun          Jul          Aug          Sep          Oct
## 2000 2.033965e-02 7.028946e-01 1.080338e+01 2.918286e+01 8.206292e-01
## 2001 8.018110e-01 6.224724e-02 4.130387e-01 1.019605e+00 1.450395e-01
## 2002 2.984801e-01 1.120120e-01 4.895176e-01 9.354452e-02 3.110778e-02
## 2003 9.295923e-01 1.180266e+00 3.042036e-02 6.047180e-02 1.322294e-01
## 2004 1.828670e-01 1.703104e-01 1.201166e-01 5.400344e+00 2.355802e-01
## 2005 5.675464e-01 2.980542e+00 6.456507e-01 3.436110e-01 4.161857e-01
## 2006 4.196401e+00 9.444140e-03 1.588013e-01 2.653482e-01 1.486636e+00
## 2007 4.736306e-02 2.916861e+00 4.175486e-01 2.730962e-02 6.988018e-01
## 2008 1.422276e+00 1.514755e+00 4.647295e-01 1.606433e+00 1.199431e+00
## 2009 3.428878e+00 6.114005e-01 2.456479e+00 2.395893e-01 7.624837e-02
## 2010 1.859834e+01 1.887949e-01 1.000932e+01 7.583882e+00 1.717868e-01
## 2011 3.385063e+00 7.886283e-01 8.410565e-01 8.684712e-01 4.703588e-01
## 2012 1.964543e+00 2.071218e-01 1.020389e+00 7.606174e-03 3.001588e-01
## 2013 8.121718e+00 1.209148e-01 5.956719e-03 2.281743e-01 8.346910e+00
## 2014 4.258604e+00 9.771102e+00 5.499178e+00 6.477617e-01 4.103449e-02
## 2015 9.109596e-03 1.664603e+01 1.359284e+00 8.662083e+00 2.598394e-01
## 2016 7.874987e+00 1.286491e+00 1.850949e+01 3.153492e-01 7.452322e+01
## 2017 1.628989e-01 8.247707e+00 8.342836e+00 1.000927e+01 2.868130e+01
## 2018 5.430694e+01 2.705831e+01 2.964215e+00 2.080856e+02 1.653369e+02
## 2019 2.854455e+01 1.111341e+01 4.870390e+01 8.022590e+01 2.677365e+01
## 2020 5.144271e+01 1.106054e+01 4.219544e+00 1.364240e-01 5.137816e-02
## 2021 4.664605e+01 8.036261e+00 1.055216e+01 4.008592e+01 2.039788e+01
## 2022 1.400198e+00 4.551884e+01 9.306620e+01 1.303653e+01 5.490515e+00
## 2023 7.769440e+00 4.188506e-01 1.369470e+01 1.298974e+00 3.345829e-02
## 2024 3.852887e-01 3.777793e+00 1.543241e+01 1.086880e+00 6.798707e+00
## 2025 2.448697e+00 4.353067e-01 5.986126e+01 4.992756e+00 2.258453e+00
## 2026 1.428201e+01 1.233153e-01 1.147531e+01 1.239929e+00 5.410291e-01
## 2027 3.513224e-02 9.864624e+00 1.934401e+01 2.864303e-02 2.406693e+00
## 2028 1.844786e+01 3.071591e-01 1.503991e+00 6.361535e+00 3.184120e+01
## 2029                                                                 
##               Nov          Dec
## 2000 1.317705e+01 1.153005e+00
## 2001 1.445791e-02 1.026190e+01
## 2002 2.649931e-01 3.536683e+00
## 2003 2.147549e-01 3.277677e+00
## 2004 1.169966e+00 8.406780e-01
## 2005 5.072760e-01 2.593262e-01
## 2006 2.231489e-02 6.218556e+00
## 2007 5.400940e-01 4.729760e+00
## 2008 1.825792e+00 2.194991e+00
## 2009 2.713081e+00 3.027037e+00
## 2010 3.914609e+00 2.542508e-01
## 2011 1.657815e+01 1.909621e-01
## 2012 6.247914e+00 4.126532e+00
## 2013 8.669815e+00 1.256190e+00
## 2014 1.201185e+01 7.697499e+01
## 2015 1.509324e+01 2.325063e+00
## 2016 4.068962e+00 4.517125e-01
## 2017 7.474692e+00 2.317848e+01
## 2018 1.599886e+02 2.592350e+01
## 2019 2.580770e+01 5.039428e+00
## 2020 2.552842e+01 4.368520e-01
## 2021 4.617180e+00 3.295055e+01
## 2022 4.103477e+00 5.540748e-01
## 2023 7.733971e+00 5.975006e+00
## 2024 7.102964e+01 5.788324e+00
## 2025 8.799746e-01 3.854093e+00
## 2026 1.683200e+01 1.981484e+01
## 2027 1.396885e-01 1.812677e+01
## 2028 7.494063e-01 1.598382e+02
## 2029
chartSeries(rescuad)

#HAcer una Regresion con los residuales al2 rezagados
precio.arch <- dynlm(rescuad ~ L(rescuad), data = preciopm)
summary(precio.arch)
## 
## Time series regression with "ts" data:
## Start = 2000(3), End = 2029(5)
## 
## Call:
## dynlm(formula = rescuad ~ L(rescuad), data = preciopm)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -59.740  -7.489  -6.086   0.836 200.134 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  6.95335    1.29298   5.378 1.38e-07 ***
## L(rescuad)   0.33662    0.05041   6.678 9.59e-11 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 22.1 on 349 degrees of freedom
## Multiple R-squared:  0.1133, Adjusted R-squared:  0.1108 
## F-statistic: 44.59 on 1 and 349 DF,  p-value: 9.587e-11
#Probamos con archtest
precioarchtest <- ArchTest(precio, lags = 1, demean = T)
precioarchtest
## 
##  ARCH LM-test; Null hypothesis: no ARCH effects
## 
## data:  precio
## Chi-squared = 327.78, df = 1, p-value < 2.2e-16
acf.res2 <- acf(rescuad,main = "ACF Residuales al Cuadrado", lag.max = 100, ylim = c(-0.5,1))

acf.res2 <- pacf(rescuad,main = "PACF Residuales al Cuadrado", lag.max = 100, ylim = c(-0.5,1))