library(pacman)
p_load(tidyverse, lubridate, readxl, highcharter, tidyquant, 
       timetk, tibbletime, quantmod, PerformanceAnalytics, scales)
p_load(reshape2)
etf3 <- read.csv("TEJ.CSV" , header = TRUE)
etf3 <-etf3 %>% select(-2)
colnames(etf3) <-c('id','date','close')
head(etf3)
##        id     date   close
## 1 0050    20080102 39.6472
## 2 0052    20080102 27.0983
## 3 0050    20080103 38.9876
## 4 0052    20080103 26.0676
## 5 0050    20080104 38.9876
## 6 0052    20080104 25.9346
etf3.1 <- dcast(etf3,date~id) %>% na.omit()
## Using close as value column: use value.var to override.
head(etf3.1)
##          date 0050    0052    0061    006206  00638R  00646  
## 1973 20151214 51.1736 30.6881   17.74   28.68   20.05   19.61
## 1974 20151215 51.2167 30.9138   17.94   29.28   19.54   19.63
## 1975 20151216 51.9921 31.3820   18.06   29.19   19.53   19.89
## 1976 20151217 52.5951 31.5993   18.36   29.51   19.13   20.05
## 1977 20151218 52.3367 31.8000   18.34   29.68   18.99   19.85
## 1978 20151221 52.2505 31.5993   18.90   30.40   18.51   19.64
etf3.xts <- 
  xts(etf3.1 [, -1], order.by = as.Date(as.character(etf3.1$date), format ="%Y%m%d")) %>% na.omit()
head(etf3.xts)
##            0050    0052    0061    006206  00638R  00646  
## 2015-12-14 51.1736 30.6881   17.74   28.68   20.05   19.61
## 2015-12-15 51.2167 30.9138   17.94   29.28   19.54   19.63
## 2015-12-16 51.9921 31.3820   18.06   29.19   19.53   19.89
## 2015-12-17 52.5951 31.5993   18.36   29.51   19.13   20.05
## 2015-12-18 52.3367 31.8000   18.34   29.68   18.99   19.85
## 2015-12-21 52.2505 31.5993   18.90   30.40   18.51   19.64
etf3.ret <-  Return.calculate(etf3.xts,method = 'log') %>% na.omit()
head(etf3.ret)
##                  0050         0052         0061         006206        00638R 
## 2015-12-15  0.0008418767  0.007327729  0.011210880  0.020704673 -0.0257655071
## 2015-12-16  0.0150261332  0.015031794  0.006666691 -0.003078504 -0.0005119017
## 2015-12-17  0.0115311755  0.006900488  0.016474837  0.010903004 -0.0206939614
## 2015-12-18 -0.0049251137  0.006331321 -0.001089918  0.005744229 -0.0073452586
## 2015-12-21 -0.0016483856 -0.006331321  0.030077455  0.023969190 -0.0256013982
## 2015-12-22  0.0024696515  0.000000000 -0.005305052 -0.003955180 -0.0005403945
##                 00646  
## 2015-12-15  0.001019368
## 2015-12-16  0.013158085
## 2015-12-17  0.008012061
## 2015-12-18 -0.010025147
## 2015-12-21 -0.010635704
## 2015-12-22  0.004065046
##
etf3.w <- etf3.xts %>% to.weekly(indexAt = 'lastof',OHLC = FALSE)
head(etf3.w)
##            0050    0052    0061    006206  00638R  00646  
## 2015-12-18 52.3367 31.8000   18.34   29.68   18.99   19.85
## 2015-12-25 53.0690 32.1176   18.84   30.33   18.40   19.99
## 2015-12-31 52.3367 31.7665   18.27   29.48   19.01   20.06
## 2016-01-08 49.4937 29.7017   16.92   27.53   20.19   19.32
## 2016-01-15 48.8476 29.9692   15.80   25.53   21.88   18.97
## 2016-01-22 48.7183 30.0946   15.82   25.73   21.81   18.77
##
etf3.m <- etf3.xts %>% to.monthly(indexAt = 'lastof',OHLC = FALSE)
head(etf3.m)
##            0050    0052    0061    006206  00638R  00646  
## 2015-12-31 52.3367 31.7665   18.27   29.48   19.01   20.06
## 2016-01-31 51.3029 31.2315   15.34   25.15   21.70   19.28
## 2016-02-29 52.7674 32.8198   15.00   24.23   21.85   19.21
## 2016-03-31 55.6966 34.3914   16.65   26.40   18.98   19.71
## 2016-04-30 53.0690 32.3433   16.05   25.98   19.30   19.90
## 2016-05-31 54.4043 33.7157   16.09   25.99   19.27   20.34
library(fBasics)
## Loading required package: timeDate
## 
## Attaching package: 'timeDate'
## The following objects are masked from 'package:PerformanceAnalytics':
## 
##     kurtosis, skewness
## Loading required package: timeSeries
## 
## Attaching package: 'timeSeries'
## The following object is masked from 'package:zoo':
## 
##     time<-
## 
## Attaching package: 'fBasics'
## The following object is masked from 'package:TTR':
## 
##     volatility
summary(etf3.ret)
##      Index               0050                 0052             
##  Min.   :2015-12-15   Min.   :-0.0728608   Min.   :-0.0697980  
##  1st Qu.:2017-01-16   1st Qu.:-0.0041123   1st Qu.:-0.0055004  
##  Median :2018-02-21   Median : 0.0006887   Median : 0.0004682  
##  Mean   :2018-02-20   Mean   : 0.0004806   Mean   : 0.0006991  
##  3rd Qu.:2019-03-26   3rd Qu.: 0.0054577   3rd Qu.: 0.0074995  
##  Max.   :2020-04-30   Max.   : 0.0765017   Max.   : 0.0944648  
##     0061                 006206               00638R           
##  Min.   :-1.307e-01   Min.   :-1.245e-01   Min.   :-0.0824494  
##  1st Qu.:-5.188e-03   1st Qu.:-5.427e-03   1st Qu.:-0.0060615  
##  Median : 0.000e+00   Median : 0.000e+00   Median :-0.0005598  
##  Mean   :-2.352e-05   Mean   : 5.761e-05   Mean   :-0.0005164  
##  3rd Qu.: 5.465e-03   3rd Qu.: 5.667e-03   3rd Qu.: 0.0050842  
##  Max.   : 5.739e-02   Max.   : 6.056e-02   Max.   : 0.1600802  
##     00646           
##  Min.   :-0.089612  
##  1st Qu.:-0.003229  
##  Median : 0.000474  
##  Mean   : 0.000297  
##  3rd Qu.: 0.004533  
##  Max.   : 0.054780
basicStats(etf3.ret)
##                X0050...    X0052...    X0061...    X006206.    X00638R.
## nobs        1068.000000 1068.000000 1068.000000 1068.000000 1068.000000
## NAs            0.000000    0.000000    0.000000    0.000000    0.000000
## Minimum       -0.072861   -0.069798   -0.130705   -0.124454   -0.082449
## Maximum        0.076502    0.094465    0.057388    0.060559    0.160080
## 1. Quartile   -0.004112   -0.005500   -0.005188   -0.005427   -0.006062
## 3. Quartile    0.005458    0.007499    0.005465    0.005667    0.005084
## Mean           0.000481    0.000699   -0.000024    0.000058   -0.000516
## Median         0.000689    0.000468    0.000000    0.000000   -0.000560
## Sum            0.513293    0.746659   -0.025115    0.061527   -0.551544
## SE Mean        0.000306    0.000395    0.000384    0.000376    0.000402
## LCL Mean      -0.000121   -0.000076   -0.000777   -0.000680   -0.001305
## UCL Mean       0.001082    0.001474    0.000730    0.000796    0.000272
## Variance       0.000100    0.000166    0.000157    0.000151    0.000172
## Stdev          0.010016    0.012902    0.012547    0.012293    0.013131
## Skewness      -0.571958    0.036007   -1.897245   -1.091621    1.597257
## Kurtosis       9.727350    6.558729   19.776633   13.337392   24.002633
##                X00646..
## nobs        1068.000000
## NAs            0.000000
## Minimum       -0.089612
## Maximum        0.054780
## 1. Quartile   -0.003229
## 3. Quartile    0.004533
## Mean           0.000297
## Median         0.000474
## Sum            0.317201
## SE Mean        0.000293
## LCL Mean      -0.000277
## UCL Mean       0.000871
## Variance       0.000092
## Stdev          0.009566
## Skewness      -1.190811
## Kurtosis      13.513005