library(quantmod)
## Loading required package: xts
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
## Loading required package: TTR
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
library(timeDate)
library(writexl)
library(moments)
## 
## Attaching package: 'moments'
## The following objects are masked from 'package:timeDate':
## 
##     kurtosis, skewness
library(evir)
library(dplyr)
## 
## ######################### Warning from 'xts' package ##########################
## #                                                                             #
## # The dplyr lag() function breaks how base R's lag() function is supposed to  #
## # work, which breaks lag(my_xts). Calls to lag(my_xts) that you type or       #
## # source() into this session won't work correctly.                            #
## #                                                                             #
## # Use stats::lag() to make sure you're not using dplyr::lag(), or you can add #
## # conflictRules('dplyr', exclude = 'lag') to your .Rprofile to stop           #
## # dplyr from breaking base R's lag() function.                                #
## #                                                                             #
## # Code in packages is not affected. It's protected by R's namespace mechanism #
## # Set `options(xts.warn_dplyr_breaks_lag = FALSE)` to suppress this warning.  #
## #                                                                             #
## ###############################################################################
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:xts':
## 
##     first, last
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(lubridate)
## 
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
## 
##     date, intersect, setdiff, union
library(xts)
library(ggplot2)
## 
## Attaching package: 'ggplot2'
## The following object is masked from 'package:evir':
## 
##     qplot
library(evmix)
## Loading required package: MASS
## 
## Attaching package: 'MASS'
## The following object is masked from 'package:dplyr':
## 
##     select
## Loading required package: splines
## Loading required package: gsl
## Loading required package: SparseM
## 
## Attaching package: 'evmix'
## The following object is masked from 'package:ggplot2':
## 
##     qplot
## The following objects are masked from 'package:evir':
## 
##     dgpd, pgpd, qgpd, qplot, rgpd
library(tidyr)
library(scales)
library(eva)
## 
## Attaching package: 'eva'
## The following objects are masked from 'package:evmix':
## 
##     dgpd, pgpd, qgpd, rgpd
## The following objects are masked from 'package:evir':
## 
##     dgpd, pgev, pgpd, qgev, qgpd, rgpd
library(extRemes)
## Loading required package: Lmoments
## Loading required package: distillery
## 
## Attaching package: 'extRemes'
## The following object is masked from 'package:evmix':
## 
##     mrlplot
## The following object is masked from 'package:evir':
## 
##     decluster
## The following objects are masked from 'package:stats':
## 
##     qqnorm, qqplot
library(gnFit)
# 1. MENGAMBIL DATA SAHAM DARI YAHOO FINANCE ------------------------------

Saham <- c("BBCA.JK", "BBNI.JK", "BBRI.JK", "BMRI.JK", "BRIS.JK")

getSymbols(Saham, from = "2019-05-01", to = "2025-05-31")
## [1] "BBCA.JK" "BBNI.JK" "BBRI.JK" "BMRI.JK" "BRIS.JK"
AdjCloses <- merge(
  Ad(BBCA.JK), Ad(BBNI.JK), Ad(BBRI.JK), Ad(BMRI.JK), Ad(BRIS.JK)
)
colnames(AdjCloses) <- c("BBCA", "BBNI", "BBRI", "BMRI", "BRIS")

AdjCloses <- na.omit(AdjCloses[isWeekday(index(AdjCloses)), ])

head(AdjCloses)
##                BBCA     BBNI     BBRI     BMRI     BRIS
## 2019-05-01 4746.710 3426.592 2564.676 2434.270 512.6640
## 2019-05-02 4693.052 3364.127 2564.676 2426.392 508.0455
## 2019-05-03 4684.797 3301.663 2570.545 2410.636 503.4269
## 2019-05-06 4639.395 3167.812 2482.512 2371.247 498.8083
## 2019-05-07 4672.415 3194.583 2494.250 2410.636 498.8083
## 2019-05-08 4705.435 3123.195 2476.644 2371.247 494.1897
tail(AdjCloses)
##                BBCA     BBNI     BBRI     BMRI     BRIS
## 2025-05-21 9232.149 4160.240 3856.164 4907.147 2855.322
## 2025-05-22 9184.562 4114.219 3892.372 4907.147 2845.577
## 2025-05-23 9208.355 4151.036 3937.632 4884.638 2865.067
## 2025-05-26 9160.767 4141.832 3910.476 4929.657 2884.557
## 2025-05-27 8994.208 4169.444 3955.736 4862.128 2897.109
## 2025-05-28 8946.619 4132.627 4028.153 4772.088 2946.213
View(AdjCloses)
# 2. MENGHITUNG LOG RETURN MASING-MASING SAHAM ----------------------------

LogReturns <- na.omit(merge(
  dailyReturn(Ad(BBCA.JK), type = "log"),
  dailyReturn(Ad(BBNI.JK), type = "log"),
  dailyReturn(Ad(BBRI.JK), type = "log"),
  dailyReturn(Ad(BMRI.JK), type = "log"),
  dailyReturn(Ad(BRIS.JK), type = "log")
))
colnames(LogReturns) <- c("BBCA","BBNI","BBRI","BMRI","BRIS")

LogReturns <- na.omit(LogReturns)

head(LogReturns)
##                    BBCA        BBNI         BBRI         BMRI         BRIS
## 2019-05-01  0.000000000  0.00000000  0.000000000  0.000000000  0.000000000
## 2019-05-02 -0.011368569 -0.01839743  0.000000000 -0.003241407 -0.009049649
## 2019-05-03 -0.001760507 -0.01874224  0.002285553 -0.006514810 -0.009132536
## 2019-05-06 -0.009738794 -0.04138525 -0.034846779 -0.016474807 -0.009216586
## 2019-05-07  0.007092208  0.00841528  0.004717049  0.016474807  0.000000000
## 2019-05-08  0.007042159 -0.02259980 -0.007083845 -0.016474807 -0.009302384
tail(LogReturns)
##                    BBCA         BBNI         BBRI         BMRI         BRIS
## 2025-05-21  0.023469097  0.015607951  0.011806542  0.009216620  0.010291677
## 2025-05-22 -0.005167915 -0.011123623  0.009345835  0.000000000 -0.003418718
## 2025-05-23  0.002587296  0.008908775  0.011560851 -0.004597692  0.006825873
## 2025-05-26 -0.005181410 -0.002219764 -0.006920485  0.009174342  0.006779766
## 2025-05-27 -0.018349050  0.006644565  0.011507636 -0.013793270  0.004342008
## 2025-05-28 -0.005305104 -0.008869268  0.018141096 -0.018692163  0.016807107
View(LogReturns)
# 3. ANALISIS DESKRIPTIF RETURN SAHAM -------------------------------------

DeskriptifReturnSaham <- data.frame(
  Mean     = apply(LogReturns, 2, mean, na.rm = TRUE),
  Min      = apply(LogReturns, 2, min,  na.rm = TRUE),
  Max      = apply(LogReturns, 2, max,  na.rm = TRUE),
  SD       = apply(LogReturns, 2, sd,   na.rm = TRUE),
  Variance = apply(LogReturns, 2, var,  na.rm = TRUE),
  Skewness = apply(LogReturns, 2, function(x) moments::skewness(x, na.rm = TRUE)),
  Kurtosis = apply(LogReturns, 2, function(x) moments::kurtosis(x, na.rm = TRUE))
)

DeskriptifReturnSaham <- DeskriptifReturnSaham %>%
  mutate(
    Mean     = round(Mean, 6),
    Min      = round(Min, 6),
    Max      = round(Max, 6),
    SD       = round(SD, 6),
    Variance = round(Variance, 6),
    Skewness = round(Skewness, 3),
    Kurtosis = round(Kurtosis, 3)
  )

print(DeskriptifReturnSaham)
##          Mean       Min      Max       SD Variance Skewness Kurtosis
## BBCA 0.000430 -0.089153 0.159849 0.015871 0.000252    0.571   12.774
## BBNI 0.000127 -0.124642 0.127927 0.021943 0.000481    0.151    7.115
## BBRI 0.000306 -0.106733 0.186411 0.020970 0.000440    0.482    9.499
## BMRI 0.000457 -0.139172 0.146721 0.021503 0.000462   -0.049    8.119
## BRIS 0.001186 -0.155485 0.223144 0.035342 0.001249    2.017   14.258
Datareturn <- data.frame(
  Tanggal = index(LogReturns), 
  coredata(LogReturns)
)

Data_Long <- Datareturn %>%
  dplyr::select(Tanggal, BBCA, BBNI, BBRI, BMRI, BRIS) %>%
  pivot_longer(
    cols = -Tanggal,      
    names_to = "Saham",   
    values_to = "Return"  
  )

# Plot Time Series Return
PlotReturn <- ggplot(Data_Long, aes(x = Tanggal, y = Return, color = Saham)) +
  geom_line(linewidth = 0.5, alpha = 0.8) + 
  facet_wrap(~ Saham, ncol = 2) + 
  labs(
    x = "Year",
    y = "Log Return"
  ) +
  theme_minimal(base_size = 12) +
  theme(
    legend.position = "none", 
    plot.title = element_text(face = "bold"),
    strip.text = element_text(face = "bold", size = 12) 
  ) +
  scale_color_brewer(palette = "Set1")

print(PlotReturn)

# Plot Distribusi
PlotDistribusi <- ggplot(Data_Long, aes(x = Return)) +
  geom_histogram(aes(y = after_stat(density), fill = Saham), 
                 color = "white",
                 bins = 45,
                 alpha = 0.7) +
  geom_density(color = "midnightblue", linewidth = 0.8) + facet_wrap(~Saham, scales = "free") +
  labs(
    title = "Distribusi Log Return Harian",
    subtitle = "Periode 1 Mei 2019 - 31 Mei 2025",
    x = "Log Return",
    y = "Density",
    fill = "Kode Saham"
  ) +
  theme_minimal(base_size = 12) +
  theme(
    legend.position = "bottom",
    plot.title = element_text(face = "bold", size = 14),
    strip.text = element_text(face = "bold", size = 11),
    panel.grid.minor = element_blank()
  ) +
  scale_fill_brewer(palette = "Set2")

print(PlotDistribusi)

# A. UJI STATISTIK: SHAPIRO-WILK
UjiNormalitas <- data.frame(
  Saham = colnames(LogReturns),
  W_Statistic = numeric(ncol(LogReturns)),
  P_Value = numeric(ncol(LogReturns))
)

for (i in 1:ncol(LogReturns)) {
  data_saham <- as.numeric(LogReturns[, i])
  
  uji <- shapiro.test(data_saham)
  
  UjiNormalitas$W_Statistic[i] <- round(uji$statistic, 4)
  UjiNormalitas$P_Value[i]     <- uji$p.value
}

print(UjiNormalitas)
##   Saham W_Statistic      P_Value
## 1  BBCA      0.9260 2.405679e-26
## 2  BBNI      0.9469 1.270328e-22
## 3  BBRI      0.9399 5.469911e-24
## 4  BMRI      0.9426 1.807316e-23
## 5  BRIS      0.8228 1.564958e-37
# 4. MENENTUKAN BOBOT MASING MASING SAHAM ---------------------------------

meanreturn <- colMeans(LogReturns)
bobot <- as.numeric(meanreturn / sum(meanreturn))
names(bobot) <- colnames(LogReturns)

hasil <- data.frame(
  Aset = names(bobot),
  Mean_Return = round(as.numeric(meanreturn), 6),
  Bobot = round(bobot, 4),
  Bobot_Persen = round(bobot * 100, 2)
)
print(hasil)
##      Aset Mean_Return  Bobot Bobot_Persen
## BBCA BBCA    0.000430 0.1716        17.16
## BBNI BBNI    0.000127 0.0507         5.07
## BBRI BBRI    0.000306 0.1222        12.22
## BMRI BMRI    0.000457 0.1822        18.22
## BRIS BRIS    0.001186 0.4733        47.33
# 5. MENGHITUNG RETURN PORTOFOLIO ------------------------------------------

logreturns <- as.matrix(LogReturns)

Rp <- as.numeric(logreturns %*% matrix(bobot, ncol = 1))

ReturnPortofolio <- data.frame(
  Tanggal = index(LogReturns),
  Return = Rp
)

ReturnPortofolio$Loss <- -1 * ReturnPortofolio$Return

View(ReturnPortofolio)
# 6. BLOCK MAXIMA-------------------------------

ReturnPortofolio$Tanggal <- as.Date(ReturnPortofolio$Tanggal)

BlockMaxima <- ReturnPortofolio %>%
  arrange(Tanggal) %>% 
  mutate(
    BlockID = ceiling(row_number() / 15) 
  ) %>%
  group_by(BlockID) %>%
  slice_max(order_by = Loss, n = 1, with_ties = FALSE) %>%
  ungroup() %>%
  dplyr::select(Tanggal, Loss) %>%
  rename(Max_Loss = Loss)

BlockMaxima <- na.omit(BlockMaxima)
BlockMaxima <- BlockMaxima[is.finite(BlockMaxima$Max_Loss), ]

head(BlockMaxima)
## # A tibble: 6 × 2
##   Tanggal    Max_Loss
##   <date>        <dbl>
## 1 2019-05-14   0.0164
## 2 2019-05-28   0.0184
## 3 2019-06-26   0.0103
## 4 2019-07-05   0.0106
## 5 2019-08-05   0.0284
## 6 2019-09-02   0.0336
tail(BlockMaxima)
## # A tibble: 6 × 2
##   Tanggal    Max_Loss
##   <date>        <dbl>
## 1 2025-02-06  0.0368 
## 2 2025-02-27  0.0625 
## 3 2025-03-20  0.0535 
## 4 2025-04-08  0.106  
## 5 2025-05-08  0.0408 
## 6 2025-05-27  0.00186
View(BlockMaxima)

write_xlsx(BlockMaxima, "C:/Users/Asus/OneDrive/문서/BISMILLAH SKRIPSI/DATA/BlockMaxima2.xlsx")
# 7. PEAK OVER THRESHOLD (POT) ---------------------------------------------

port_loss <- ReturnPortofolio$Loss

# 1. Urutkan Data dari Terbesar ke Terkecil 
loss_sorted <- sort(port_loss, decreasing = TRUE)

n_total <- length(loss_sorted)
jumlah_ekstrem <- floor(0.10 * n_total)

# 3. Tentukan Threshold
threshold_u <- loss_sorted[jumlah_ekstrem] 

print(paste("Threshold (u) :", sprintf("%.8f", threshold_u)))
## [1] "Threshold (u) : 0.01933154"
# 4. Ambil Data Exceedances & Hitung Excess
exceedances <- loss_sorted[1:jumlah_ekstrem]
excess_vals <- exceedances - threshold_u

PeakOverThreshold <- data.frame(
  LossValue = exceedances,
  Excess     = sprintf("%.8f", excess_vals)
)

head(PeakOverThreshold)
##    LossValue     Excess
## 1 0.11779902 0.09846748
## 2 0.10625025 0.08691871
## 3 0.08390735 0.06457581
## 4 0.08061009 0.06127855
## 5 0.07176694 0.05243540
## 6 0.06989018 0.05055864
tail(PeakOverThreshold)
##      LossValue     Excess
## 142 0.02002187 0.00069033
## 143 0.01998837 0.00065683
## 144 0.01997622 0.00064468
## 145 0.01983171 0.00050017
## 146 0.01944838 0.00011684
## 147 0.01933154 0.00000000
View(PeakOverThreshold)
# Mean Residual Life Plot
evmix::mrlplot(port_loss, 
               main = "Mean Residual Life Plot",
               xlab = "Threshold u",
               ylab = "Mean Excess",
               legend.loc = NULL )
legend("topright", 
       legend = c("Sample Mean Excess", "95% CI", "Threshold Model"),
       col = c("black", "black", "blue"),
       lty = c(1, 2, 1),
       cex = 0.65,
       bg = "white",
       box.col = "gray")

# 8. GENERALIZED EXTREME VALUE --------------------------------------------

gevfit <- fevd(BlockMaxima$Max_Loss, type = "GEV", method = "MLE")

summary(gevfit) 
## 
## fevd(x = BlockMaxima$Max_Loss, type = "GEV", method = "MLE")
## 
## [1] "Estimation Method used: MLE"
## 
## 
##  Negative Log-Likelihood Value:  -272.4126 
## 
## 
##  Estimated parameters:
##   location      scale      shape 
## 0.02093909 0.01203624 0.15646202 
## 
##  Standard Error Estimates:
##    location       scale       shape 
## 0.001377596 0.001053116 0.083253049 
## 
##  Estimated parameter covariance matrix.
##               location         scale         shape
## location  1.897772e-06  7.821018e-07 -3.802290e-05
## scale     7.821018e-07  1.109054e-06 -1.233161e-05
## shape    -3.802290e-05 -1.233161e-05  6.931070e-03
## 
##  AIC = -538.8252 
## 
##  BIC = -531.0399
# 1. Plot Density
plot(gevfit, type = "density", main = "Density Plot - Generalized Extreme Value")

# 2. QQ-Plot
plot(gevfit, type = "qq", main = "QQ-Plot - Generalized Extreme Value")

# 9. GENERALIZED PARETO DISTRIBUTION --------------------------------------

gpdfit<- extRemes::fevd(ReturnPortofolio$Loss, 
                                threshold = threshold_u, 
                                type = "GP", 
                                method = "MLE")

summary(gpdfit)
## 
## extRemes::fevd(x = ReturnPortofolio$Loss, threshold = threshold_u, 
##     type = "GP", method = "MLE")
## 
## [1] "Estimation Method used: MLE"
## 
## 
##  Negative Log-Likelihood Value:  -450.8467 
## 
## 
##  Estimated parameters:
##       scale       shape 
##  0.01794833 -0.06775744 
## 
##  Standard Error Estimates:
##       scale       shape 
## 0.001838876 0.062369832 
## 
##  Estimated parameter covariance matrix.
##               scale         shape
## scale  3.381465e-06 -7.694128e-05
## shape -7.694128e-05  3.889996e-03
## 
##  AIC = -897.6934 
## 
##  BIC = -891.7262
# 1. Plot Density
plot(gpdfit, type = "density", main = "Density Plot - Generalized Pareto Distribution")

# 2. QQ-Plot
plot(gpdfit, type = "qq", main = "QQ-Plot - Generalized Pareto Distribution")

# 10. UJI KESESUAIAN DISTRIBUSI MENGGUNAKAN ANDERSON DARLING -------------------------------------------
# Generalized Extreme Value
par_gev <- distill(gevfit) 
vec_gev <- c(par_gev["location"], par_gev["scale"], par_gev["shape"])

test_gev_gnfit <- gnFit::gnfit(dat = BlockMaxima$Max_Loss, 
                               dist = "gev", 
                               pr = vec_gev)

## Test of Hypothesis for gev distribution
## Cramer-von Misses Statistics:  0.1295   P-Value:  0.04468
## Anderson-Darling Statistics:   0.6946   P-Value:  0.06975
print(test_gev_gnfit)
## $Wpval
## [1] 0.04468385
## 
## $Apval
## [1] 0.06975282
## 
## $Cram
## [1] 0.1295
## 
## $Ander
## [1] 0.6946
## 
## attr(,"class")
## [1] "gnfit"
# Generalized Pareto Distribution
par_gpd <- distill(gpdfit)
vec_gpd <- c(par_gpd["scale"], par_gpd["shape"])

adtestgpd<- gnFit::gnfit(dat = ReturnPortofolio$Loss, 
                               dist = "gpd", 
                               pr = vec_gpd,
                               threshold = threshold_u)

## Test of Hypothesis for gpd distribution
## Cramer-von Misses Statistics:  0.0779   P-Value:  0.22067
## Anderson-Darling Statistics:   0.486   P-Value:  0.22586
print(adtestgpd)
## $Wpval
## [1] 0.2206736
## 
## $Apval
## [1] 0.225859
## 
## $Cram
## [1] 0.0779
## 
## $Ander
## [1] 0.486
## 
## attr(,"class")
## [1] "gnfit"
# 11. ESTIMASI VALUE AT RISK ----------------------------------------------

#VAR GEV

conf_level <- 0.95
p_gev <- conf_level 

parametergev <- distill(gevfit) 
mu_gev    <- parametergev["location"]
sigma_gev <- parametergev["scale"]
xi_gev    <- parametergev["shape"]

term_gev <- (-log(p_gev))^(-xi_gev)
VaR_GEV  <- mu_gev - (sigma_gev / xi_gev) * (1 - term_gev)

cat("Value at Risk (VaR) GEV dengan tingkat kepercayaan", conf_level*100, "% adalah:", VaR_GEV, "\n")
## Value at Risk (VaR) GEV dengan tingkat kepercayaan 95 % adalah: 0.06644735
# VAR GPD
conf_level <- 0.95
p <- 1 - conf_level

parametergpd <- distill(gpdfit)
sigma <- parametergpd["scale"]
xi    <- parametergpd["shape"]

u     <- threshold_u

Nu <- sum(ReturnPortofolio$Loss > u)
n  <- length(ReturnPortofolio$Loss)

VaR_GPD <- u + (sigma / xi) * (((n / Nu) * p)^(-xi) - 1)

cat("Value at Risk (VaR) dengan tingkat kepercayaan", conf_level*100, "% adalah:", VaR_GPD, "\n")
## Value at Risk (VaR) dengan tingkat kepercayaan 95 % adalah: 0.03132126
# 12. BACKTESTING ----------------------------------------------

Actual_Loss <- ReturnPortofolio$Loss
Actual_Loss
##    [1]  0.000000e+00  7.757336e-03  6.482799e-03  1.539205e-02 -5.221693e-03
##    [6]  8.208329e-03  1.015411e-02  1.071251e-03  8.989056e-03  1.636811e-02
##   [11]  1.266640e-02  1.356593e-02  1.293229e-02 -1.102023e-02 -4.204237e-03
##   [16] -1.302763e-03 -1.971755e-02 -8.291292e-03 -2.044347e-02  1.835341e-02
##   [21] -1.314045e-02  0.000000e+00 -1.176312e-02  0.000000e+00  0.000000e+00
##   [26]  0.000000e+00  0.000000e+00  0.000000e+00 -1.588879e-02  3.708730e-03
##   [31]  6.946690e-03  6.998631e-03  1.651268e-04  6.609593e-03 -7.602398e-03
##   [36] -1.527531e-02  1.445361e-03  3.267492e-03  1.412419e-03 -5.960920e-03
##   [41]  1.026848e-02 -4.022827e-03 -8.125747e-03 -1.914126e-03 -4.424630e-04
##   [46]  4.131811e-04  2.930607e-04  1.055939e-02 -6.671869e-03 -6.368714e-04
##   [51]  1.908651e-03 -3.495570e-03 -9.976947e-04 -1.415084e-02 -1.145561e-02
##   [56]  1.049843e-02  5.915571e-03  1.546020e-03  4.260693e-03  4.850584e-03
##   [61]  1.871104e-03 -3.074782e-03  3.686837e-03  3.580679e-03 -5.391226e-03
##   [66] -4.661456e-03  1.286659e-02  6.441569e-03  2.843356e-02  1.734846e-02
##   [71] -1.096169e-02 -8.235899e-03 -3.572288e-04  2.785230e-03  8.605687e-03
##   [76] -4.232512e-03  1.151178e-02 -2.474092e-03  2.238978e-03  5.421989e-03
##   [81]  1.073394e-02  6.710874e-03 -7.254303e-03  1.267970e-02  2.113032e-03
##   [86]  8.215297e-03  1.224924e-02 -1.251690e-02  3.359219e-02  1.341719e-02
##   [91]  2.549376e-03 -3.162283e-02 -1.247500e-03  1.160886e-02 -2.428948e-02
##   [96] -7.184111e-03  2.203913e-03  1.090177e-02  3.087392e-02 -9.201416e-03
##  [101] -2.908385e-02  1.080845e-02  2.149866e-03  7.506699e-03  1.099348e-02
##  [106]  6.859135e-03 -8.548081e-03  9.291842e-03  6.945015e-03  1.686791e-04
##  [111]  3.803213e-02 -1.829679e-03 -1.611346e-02  1.790494e-02 -1.662985e-02
##  [116]  9.673751e-03  7.849430e-03 -6.140184e-03  1.745900e-03 -8.587186e-04
##  [121] -7.166954e-03 -6.788930e-03 -1.705167e-02  1.174611e-02 -6.868533e-04
##  [126] -8.581865e-03 -2.460576e-02  1.573230e-02  4.967752e-03 -2.671601e-03
##  [131]  2.366657e-03  8.266281e-03  3.682244e-03  2.451392e-03 -1.787598e-02
##  [136]  1.799598e-02  3.742165e-03  2.316163e-03  8.938365e-03  1.132092e-03
##  [141]  6.446664e-03  6.327794e-03 -5.145723e-03 -6.630547e-03 -6.157066e-03
##  [146]  1.691475e-03  1.690677e-03  1.615374e-02  1.480588e-02  1.696014e-02
##  [151]  2.573424e-02  2.995218e-02 -2.322486e-02 -1.400942e-02 -3.107015e-02
##  [156]  2.075093e-03  1.221901e-02 -1.411171e-03 -2.187390e-03  6.950230e-04
##  [161]  1.123875e-02  4.134660e-03 -4.097793e-03 -1.131008e-03 -4.298727e-03
##  [166] -4.476488e-02  6.364657e-03 -1.512513e-02  1.610199e-03  4.237368e-03
##  [171]  6.028499e-03  9.043554e-03 -4.550655e-03  3.088447e-03  1.296893e-02
##  [176]  8.385250e-03  1.436667e-02 -1.774608e-02  5.341259e-03 -1.253568e-02
##  [181] -5.840865e-03  4.118757e-03  2.123518e-03 -3.918022e-03 -4.772388e-03
##  [186]  3.792373e-03  1.975770e-03  8.716616e-03 -6.101790e-03  1.096335e-02
##  [191] -4.777217e-03 -9.149138e-03  1.539591e-02  1.881039e-02  8.951195e-03
##  [196] -1.525021e-02 -1.109389e-02 -5.501339e-03 -1.293242e-02  1.272333e-02
##  [201] -1.146962e-03  4.572720e-03  6.341083e-03  9.297761e-03 -3.231419e-03
##  [206]  2.653147e-03 -5.581110e-03 -1.692430e-03  1.035806e-02  2.644272e-02
##  [211]  1.624319e-02  3.282515e-02  3.966945e-02  5.576687e-02  5.207168e-02
##  [216] -3.094393e-03 -2.406132e-02 -1.036826e-01  2.994007e-02  1.177990e-01
##  [221] -9.115583e-02  3.215092e-02  8.061009e-02  2.915679e-03  4.168877e-02
##  [226]  8.390735e-02  5.681254e-02  7.176694e-02  3.661337e-02  6.827908e-02
##  [231]  5.659316e-02 -1.638236e-01 -1.432458e-01  5.016398e-02 -2.555057e-02
##  [236]  3.707796e-02 -1.313195e-02 -2.575534e-02 -4.860739e-02  9.080577e-03
##  [241]  5.262649e-02  1.712535e-03 -5.070718e-03 -1.680662e-02  2.514537e-02
##  [246]  3.270306e-02 -4.442459e-02  1.983171e-02  1.755847e-02 -1.558985e-02
##  [251]  2.426644e-03  3.883612e-02 -9.514231e-03  1.741055e-02  4.789707e-03
##  [256] -5.432250e-02 -2.005464e-03 -1.027604e-01 -6.504487e-03  1.865075e-02
##  [261] -4.331906e-03  5.186822e-02 -8.519427e-02  4.929852e-02  4.098217e-02
##  [266] -2.944975e-02 -4.428513e-02 -1.942424e-02 -1.421633e-02 -3.399518e-02
##  [271] -1.451607e-02 -1.268122e-02 -5.308582e-02 -2.105996e-02  1.506690e-02
##  [276] -1.489734e-02 -4.502674e-02  2.563106e-02  4.238613e-02  3.069366e-02
##  [281] -4.091577e-02  3.560682e-02 -5.781835e-02  7.626569e-03  1.263048e-02
##  [286] -3.707805e-03  1.755055e-02  4.427767e-03 -3.638628e-02  1.439242e-02
##  [291]  7.257372e-03  3.860663e-03 -3.542373e-03 -2.276283e-03 -2.978437e-03
##  [296] -1.747437e-02 -1.085828e-01 -6.277517e-02 -9.564745e-03  8.487200e-03
##  [301] -3.573435e-02 -1.266078e-02 -1.027652e-02  3.910003e-03 -3.044809e-03
##  [306]  1.091633e-02  1.929640e-02 -2.404129e-02  2.298768e-03 -2.517088e-02
##  [311]  1.874415e-02 -7.595027e-03 -9.919796e-02  4.112001e-02  9.376484e-04
##  [316]  4.371750e-02 -2.770222e-02 -1.776252e-02 -9.473124e-03  5.921982e-03
##  [321] -7.638090e-03 -1.937552e-02 -3.344298e-02  7.151450e-03 -1.692730e-03
##  [326] -2.536248e-02  9.177062e-04 -8.869386e-02 -9.230021e-03 -8.759456e-02
##  [331] -4.826776e-02 -1.670270e-03  2.172567e-02 -2.090548e-02  4.009694e-03
##  [336]  1.017845e-02 -7.684646e-03  1.330094e-02 -6.543530e-04  4.007649e-02
##  [341]  6.989018e-02 -1.635611e-02 -5.379629e-02  2.335791e-02  2.070930e-02
##  [346]  1.708662e-02 -5.440360e-03  3.197402e-02  4.626172e-02  1.753085e-02
##  [351]  2.540317e-02 -5.144048e-02  2.258675e-02  1.481261e-02  1.285726e-03
##  [356] -4.706754e-02  1.708655e-02 -4.733375e-02 -1.505288e-02 -3.377373e-03
##  [361] -4.136190e-03 -7.773138e-05 -3.095303e-02 -1.115989e-01 -1.146235e-01
##  [366]  4.572538e-02 -2.627992e-02 -1.181298e-02 -2.630621e-02  3.880995e-02
##  [371]  3.324692e-02  3.200996e-02 -2.581064e-02  6.887234e-03  2.727638e-03
##  [376]  8.962568e-03  1.926922e-02 -6.446434e-02  3.099631e-03 -4.508699e-03
##  [381] -2.769995e-02 -2.360951e-02  1.506913e-02 -1.465458e-02  1.892227e-03
##  [386] -7.613601e-03 -2.168465e-02 -2.423145e-03  9.421701e-03 -1.018384e-02
##  [391] -5.524691e-03 -1.168766e-02 -8.566029e-03 -2.687462e-02  3.523184e-02
##  [396] -2.552163e-02 -7.448834e-03 -1.066854e-02  1.040518e-02 -1.456546e-02
##  [401]  6.310420e-03 -1.341645e-02 -8.734379e-02 -9.105942e-02  1.535057e-02
##  [406] -1.299461e-02 -4.808983e-03 -2.460231e-02 -2.253215e-02  3.397787e-02
##  [411]  1.100580e-02 -1.056376e-02  2.264764e-03  1.238103e-02 -3.485611e-02
##  [416] -2.005043e-03 -2.482507e-02 -4.069692e-02 -3.317275e-02 -5.150346e-02
##  [421] -1.005051e-01 -1.633197e-03  6.765525e-03  2.237850e-02  2.316922e-02
##  [426]  3.285234e-02 -8.246409e-02  2.869887e-02  3.795975e-02 -2.557228e-03
##  [431]  4.135130e-02  3.836478e-02  4.248932e-02  6.012747e-02 -7.902423e-02
##  [436]  4.067194e-02 -2.994874e-02  6.531777e-03 -5.725978e-03 -4.231052e-02
##  [441]  1.816738e-02 -5.748962e-03  2.086487e-04  1.021677e-03 -7.682002e-03
##  [446]  3.407985e-02  1.399545e-02 -7.018880e-03 -1.235123e-02 -3.066082e-03
##  [451] -3.478595e-03 -1.954181e-02  8.319363e-03 -2.266839e-02  1.290169e-02
##  [456]  6.832334e-03  3.330899e-02  8.725625e-03 -4.442214e-03  1.782845e-02
##  [461]  2.468225e-03 -1.635341e-02  7.069662e-03 -1.368926e-02 -1.033004e-04
##  [466] -1.723011e-02  1.140440e-02  1.808262e-02  4.461081e-03  3.577844e-03
##  [471]  2.478981e-02 -1.521837e-02  1.997622e-02  2.819066e-02  2.565854e-02
##  [476] -6.408629e-03  2.389517e-02 -1.163060e-02  8.491283e-04 -4.313092e-02
##  [481]  2.540657e-03  3.644854e-02  3.743938e-03 -2.790105e-02  5.222433e-03
##  [486] -3.829278e-03 -2.385707e-02  1.888095e-02  1.576714e-02  3.697743e-04
##  [491] -3.775356e-03  1.379250e-02 -3.810966e-03  1.435043e-02 -1.292944e-02
##  [496]  2.241407e-03  1.484332e-02 -5.843349e-03 -6.786830e-03 -2.977666e-02
##  [501]  2.917069e-02  5.114930e-03  9.255601e-03  3.437475e-02  2.489440e-02
##  [506]  3.653136e-02 -5.398017e-03  1.147935e-02  2.380583e-02 -2.995145e-02
##  [511]  1.719831e-02 -1.786381e-02 -2.338810e-02 -1.174946e-02 -1.137160e-02
##  [516] -2.513135e-02  3.702271e-02  3.063532e-02 -1.762834e-02 -1.162973e-02
##  [521]  1.377825e-02  7.238186e-03  4.541840e-03  1.560971e-02 -1.527432e-02
##  [526]  3.045624e-02  1.687247e-02 -3.255861e-02  2.753738e-02  7.654127e-03
##  [531] -5.332492e-02 -5.507481e-02  1.163148e-02 -2.832704e-02  1.071359e-03
##  [536]  6.212223e-03  2.185928e-02 -3.872892e-05 -2.898481e-02 -2.507214e-02
##  [541]  1.712528e-02 -3.734457e-04  1.822651e-02 -5.020898e-03 -2.181901e-02
##  [546] -1.157598e-02 -1.952654e-02 -4.057283e-03 -1.478850e-02 -3.543129e-03
##  [551]  6.735394e-04 -4.839952e-03 -1.414661e-02 -1.385358e-03  4.013420e-02
##  [556]  5.111860e-03  9.478549e-04 -1.249749e-02 -4.106991e-02  1.229687e-02
##  [561]  4.105606e-02  3.130397e-02 -6.439774e-03 -1.143143e-02  2.271212e-02
##  [566]  3.203288e-03  3.777215e-02 -2.453762e-02 -1.314611e-02  1.111200e-02
##  [571] -7.471850e-03  7.939809e-03  8.853295e-03 -2.101677e-02 -5.970225e-03
##  [576]  1.318467e-02  9.257155e-03 -7.587687e-03  3.163868e-03  1.710002e-03
##  [581]  7.306944e-03 -1.201982e-04 -7.889549e-03 -5.334808e-03  3.976724e-03
##  [586]  9.116219e-03 -1.288538e-02  3.231510e-03  1.685431e-02  7.222012e-03
##  [591] -1.540130e-02 -1.238828e-02  8.214066e-03  1.400020e-02  3.558091e-03
##  [596] -8.612802e-04 -2.009221e-02  6.132317e-03 -3.946678e-02  1.203602e-02
##  [601] -4.552458e-02  1.103838e-02 -1.329758e-02  1.161568e-02 -3.045582e-03
##  [606] -1.118184e-02 -9.876811e-03 -7.174957e-03 -2.865579e-02  7.640973e-03
##  [611]  1.638356e-02 -7.677998e-03  1.202258e-02 -6.590447e-03  7.672035e-03
##  [616]  2.002187e-02 -1.286503e-02  7.912721e-03  1.168562e-02 -1.224877e-02
##  [621]  6.312209e-03 -3.743108e-03 -2.976222e-03  2.726696e-03 -6.765866e-03
##  [626]  1.797199e-04  1.063430e-02  2.056781e-03 -8.117758e-03 -3.552125e-03
##  [631]  8.685934e-03 -6.089481e-03 -2.426689e-03  1.059727e-02 -5.404360e-04
##  [636] -4.876811e-03  2.304930e-02  5.036179e-03  1.331043e-02  2.375185e-02
##  [641] -1.063979e-03 -1.092193e-02 -4.766884e-04 -4.331611e-03 -8.442805e-03
##  [646]  1.204651e-03  4.065770e-03  4.710002e-03  3.187081e-03 -2.051390e-03
##  [651]  1.027511e-02  7.661899e-04  1.381104e-02  3.420661e-03  1.053937e-02
##  [656] -3.087842e-03 -5.664843e-03 -1.659851e-02  1.370066e-02  2.630542e-03
##  [661]  3.503173e-03 -3.109422e-03 -1.054891e-02  3.098676e-03  1.293655e-02
##  [666] -6.399481e-03 -2.454799e-03  4.227153e-03  3.078252e-02  1.403336e-03
##  [671]  4.044377e-03  1.361515e-02  1.591444e-02  4.172347e-03 -2.037118e-02
##  [676] -9.844901e-03  7.424410e-03  1.786376e-02 -9.066324e-03 -2.913983e-03
##  [681] -8.610960e-03  3.118353e-03 -4.237942e-03 -1.171075e-02 -1.022364e-03
##  [686] -2.708751e-02 -7.608743e-03 -1.115367e-02  3.390024e-03 -1.269219e-03
##  [691]  1.795666e-02 -1.833824e-02 -2.323749e-03  6.804702e-03 -1.885889e-02
##  [696] -1.677606e-02  1.128017e-02 -7.100850e-03  4.084553e-02 -2.099687e-02
##  [701] -3.604950e-02  1.033635e-02  6.729273e-03  2.712515e-02  1.433791e-02
##  [706] -2.252287e-02 -5.614686e-03  7.234463e-03 -1.351127e-02  1.226142e-03
##  [711] -5.007549e-03  7.869796e-03  1.283692e-02 -9.240258e-04 -6.521419e-03
##  [716]  5.181365e-04 -7.968803e-03  4.640786e-03 -5.759558e-03  1.725243e-03
##  [721] -1.526645e-03  3.878628e-03  1.427690e-04  7.042582e-03  4.802524e-03
##  [726]  2.926798e-02 -6.990417e-03 -2.428517e-03  7.675980e-03 -3.311917e-04
##  [731] -7.408712e-04 -1.142119e-02 -1.562890e-02  1.436348e-02 -1.163462e-02
##  [736] -1.867965e-02  1.069722e-02  3.073806e-03 -1.466622e-02  4.217342e-03
##  [741] -2.831670e-02  5.406599e-02  6.264468e-03  2.797626e-03  5.364263e-02
##  [746] -6.062057e-03 -1.303318e-02 -6.935982e-03  1.349631e-02 -9.731776e-03
##  [751]  1.409808e-02 -7.128297e-03  6.716537e-03 -3.188417e-02  8.936760e-03
##  [756] -1.736992e-02  1.304328e-02 -1.510164e-02  8.867222e-03  7.279573e-03
##  [761] -1.583867e-02  4.674247e-03  1.693402e-02  1.192419e-02 -2.444472e-03
##  [766] -2.957818e-03 -8.362267e-03  1.889049e-02 -3.862056e-03 -3.699443e-03
##  [771]  1.084380e-02  3.142135e-03 -3.026868e-03  1.206623e-02  4.416344e-03
##  [776]  1.007941e-02  6.681791e-03  2.776173e-02  4.437968e-02 -1.301483e-02
##  [781]  8.204764e-04 -1.241682e-03 -1.447481e-02  3.622716e-03 -9.001716e-02
##  [786]  4.488645e-02 -2.931532e-03 -9.586489e-03 -2.839092e-02 -1.386504e-03
##  [791] -2.932193e-02 -6.760236e-03  4.208286e-03 -8.487518e-03 -2.118459e-02
##  [796]  1.138566e-03 -1.671041e-02  6.255802e-03  2.620322e-03  1.201852e-02
##  [801] -3.493460e-03 -8.538964e-03 -3.202211e-03  5.026119e-03  5.084628e-04
##  [806]  1.519720e-03 -1.004557e-02  3.967660e-03  6.504284e-03  4.440033e-03
##  [811] -8.626651e-03 -1.354195e-02  9.805760e-03  5.245943e-03  5.349212e-03
##  [816]  6.560815e-04  1.499278e-03 -4.611528e-03  3.439635e-04 -7.560660e-03
##  [821] -1.888105e-03  4.009392e-04 -6.169369e-03  2.370365e-03  3.789048e-03
##  [826] -7.541679e-03  2.882488e-03  9.322231e-04 -6.750790e-03  5.457383e-03
##  [831] -2.883919e-02  1.358942e-02 -5.433214e-03  3.098274e-03  3.073254e-03
##  [836] -3.593258e-03 -9.521111e-03  8.948768e-04  3.918696e-03  5.333808e-03
##  [841]  1.052442e-02  3.902227e-03 -6.291359e-03  4.984019e-04  3.695977e-03
##  [846]  5.328188e-05  1.495660e-02  7.327791e-03  9.590951e-03  1.071031e-02
##  [851]  1.132451e-02  1.863486e-02  2.733891e-03 -9.555647e-03  5.561981e-03
##  [856] -1.641248e-02 -2.831579e-02 -2.424609e-02  1.519113e-03  1.296051e-02
##  [861] -7.258221e-03 -6.758847e-03 -9.751226e-03  6.591732e-04  2.206175e-03
##  [866]  7.664325e-03 -6.266621e-04 -8.879495e-04  9.140314e-03 -3.497867e-03
##  [871]  5.687272e-03 -1.007416e-02  6.272131e-03  6.013161e-04  1.538565e-02
##  [876] -5.600020e-03 -3.211930e-03  2.229020e-03 -4.270288e-03 -9.883471e-03
##  [881] -5.995690e-03  5.613720e-03  1.760733e-03  6.644885e-03 -1.736995e-02
##  [886]  1.338166e-02  1.843520e-03  6.562840e-05  8.802015e-03  2.553638e-02
##  [891]  4.617134e-03  1.480150e-02 -9.811881e-03 -2.136721e-02  1.933154e-02
##  [896]  7.371120e-03 -5.162895e-03  3.569833e-02  1.046392e-02 -2.108217e-02
##  [901] -2.720770e-02  6.437337e-03 -4.066628e-02  1.392053e-02  3.932364e-03
##  [906] -7.162927e-03 -3.275508e-04  4.502394e-03 -4.002635e-02  8.680056e-03
##  [911]  2.749554e-02 -1.858703e-02  7.146893e-03  3.276843e-02  6.704727e-03
##  [916] -8.192256e-03  6.815533e-03 -9.823377e-03 -2.125526e-02  3.509949e-03
##  [921] -1.465332e-03 -2.075392e-02  7.012975e-03  5.698380e-03 -2.622327e-02
##  [926]  2.160947e-04  6.923539e-03  2.180939e-02 -1.901917e-03  1.033068e-03
##  [931] -1.722824e-02  1.633996e-02 -1.365482e-02 -3.300728e-03  3.892797e-03
##  [936] -4.151437e-03 -1.427770e-02 -1.197541e-02 -6.531367e-02  3.255616e-04
##  [941] -2.807377e-02  3.407953e-03  5.777153e-03  3.991902e-02 -1.573661e-02
##  [946] -6.343121e-05  2.909401e-02  7.813296e-03 -2.394605e-02  5.131387e-03
##  [951]  7.387052e-03 -8.864308e-04 -1.223683e-02  7.354637e-03 -1.588629e-02
##  [956]  1.326286e-02 -6.206512e-03  3.645727e-02 -3.724482e-03 -1.578058e-02
##  [961] -2.559462e-02  2.120355e-02 -1.718713e-02 -2.692591e-02  6.904725e-03
##  [966] -4.316392e-03 -3.175108e-02  1.944838e-02 -1.119920e-02 -1.047582e-02
##  [971]  9.189934e-03 -2.215869e-02 -1.521893e-02  2.758890e-03  5.341784e-03
##  [976] -3.008337e-03  1.393509e-02 -2.495832e-02  1.828767e-02 -1.443916e-03
##  [981]  2.237272e-03  6.733368e-03 -1.093457e-02  7.992658e-03 -3.504956e-03
##  [986] -9.492961e-03 -1.493446e-03  3.928819e-03  5.013397e-03 -1.392686e-02
##  [991]  1.198097e-02 -9.672671e-03  2.338220e-02  3.756258e-02 -1.837437e-03
##  [996] -4.357214e-02 -1.844928e-03  5.939979e-03 -6.376303e-04 -7.868436e-03
## [1001] -1.223840e-02 -8.468320e-03  6.133558e-03  5.736544e-03 -1.472065e-03
## [1006]  1.119838e-02 -9.233175e-04  4.538376e-03 -7.295296e-04  4.349823e-03
## [1011] -9.613765e-04  1.204949e-03 -5.188404e-03  1.807198e-03  7.951248e-03
## [1016]  6.853573e-04 -6.637898e-04 -9.412339e-03  4.634865e-03  3.003592e-04
## [1021] -1.069003e-02 -5.304501e-03 -2.204765e-02  9.553521e-03  1.044933e-02
## [1026]  5.801727e-04  3.703702e-03 -3.155107e-03 -1.095976e-02  9.128599e-03
## [1031] -2.127507e-03  4.276912e-03  3.336339e-03 -8.127122e-03 -5.042374e-03
## [1036]  3.273576e-03  3.378824e-03 -4.644840e-03  2.929446e-03  1.382510e-03
## [1041] -1.152902e-03  5.350506e-03  7.486047e-03 -3.048537e-03  2.130041e-03
## [1046] -2.406497e-02  1.242977e-03 -7.568480e-03  1.816758e-03  6.904259e-03
## [1051] -1.177803e-02 -3.345385e-03  6.620763e-03 -4.956305e-04  3.838683e-03
## [1056]  7.212007e-04 -1.551506e-03  9.904999e-04 -2.218868e-03 -3.374049e-03
## [1061]  2.021669e-03  1.537259e-03 -8.436206e-03  3.983533e-03  8.954554e-04
## [1066]  6.208657e-03 -4.101757e-05  1.378717e-02  3.098572e-03 -7.185210e-03
## [1071]  8.267189e-03 -3.899512e-03 -2.223424e-03  1.219722e-03  1.710611e-02
## [1076] -1.057057e-02 -3.131497e-02  2.145840e-02  3.033749e-03  6.842093e-03
## [1081]  1.035828e-02 -5.130992e-03 -3.702077e-03 -3.085572e-03  1.821697e-02
## [1086]  8.642417e-03 -6.740442e-03  5.359370e-03 -5.909691e-04 -4.361932e-03
## [1091]  8.069584e-06 -1.478949e-02  1.518613e-02  6.002830e-03  1.326427e-03
## [1096]  8.816618e-03  1.913391e-02 -9.797035e-03  1.524609e-02 -2.061045e-02
## [1101] -3.972571e-04  1.787297e-02 -5.829370e-03  2.497869e-03  8.305640e-03
## [1106]  9.866093e-03 -2.072155e-02 -2.838437e-03 -1.385883e-02  8.378635e-03
## [1111]  1.267786e-02 -3.202496e-03  1.269016e-02 -2.394431e-05 -8.509832e-03
## [1116] -2.792976e-02 -3.240359e-03 -1.698618e-02 -4.751765e-03  7.099261e-04
## [1121]  3.576828e-03 -7.128496e-03 -9.511611e-03  3.469382e-03 -3.325855e-03
## [1126]  6.024375e-03 -4.213518e-03 -8.242068e-03 -1.427106e-02 -1.800029e-03
## [1131]  1.789422e-03  1.468956e-02  7.268332e-03  2.578354e-03  7.230492e-03
## [1136]  2.969911e-03 -3.855966e-02  3.577839e-04  2.921401e-03 -6.351176e-03
## [1141] -1.307443e-02  1.581233e-02 -4.546187e-03 -8.376025e-04 -1.948524e-02
## [1146]  2.008411e-03 -3.434901e-03 -1.206823e-02 -3.841960e-02 -6.028187e-03
## [1151] -2.791039e-03 -1.100529e-02  6.445485e-03 -1.070825e-02 -1.022605e-02
## [1156]  1.038779e-02  3.632456e-03 -4.253392e-03 -1.248915e-02  2.897596e-04
## [1161] -1.747608e-02 -1.262324e-02  2.492636e-02  1.438808e-02  1.456166e-02
## [1166] -4.654848e-02 -1.718036e-02 -3.221752e-02  5.374493e-03 -1.009041e-02
## [1171]  2.017487e-03 -2.833276e-03 -1.441133e-02 -1.298755e-02  8.415520e-03
## [1176] -1.825048e-02  9.803540e-03 -5.416648e-03 -2.728821e-02  6.234462e-03
## [1181]  3.072030e-03  6.983354e-03  3.323196e-03 -1.714326e-02  4.828785e-04
## [1186]  9.062619e-03  1.075333e-02  4.995523e-03 -6.510303e-03 -1.354137e-02
## [1191] -6.250581e-03 -2.690891e-02 -4.668323e-02  1.616259e-02  1.410296e-02
## [1196]  1.046399e-02 -6.951395e-03 -4.754755e-03 -2.893997e-03  8.403041e-03
## [1201] -1.706366e-02 -2.411893e-03 -6.251277e-03  4.037617e-03  4.644121e-02
## [1206] -1.930282e-02  2.132654e-02 -2.614890e-02  8.548950e-03  4.632968e-02
## [1211]  1.293406e-02 -3.066385e-02  1.834198e-02  5.017025e-04 -1.952978e-02
## [1216] -1.579928e-02  1.829545e-02  3.789172e-02 -1.456416e-02 -2.776346e-02
## [1221]  4.732858e-02 -1.641816e-02 -3.156067e-02  2.155338e-02  3.482407e-02
## [1226]  4.526643e-02 -1.349464e-02 -4.424233e-02 -3.322589e-03 -7.021418e-03
## [1231]  2.591428e-02  3.802377e-02  3.454710e-03  2.699474e-02 -7.914701e-03
## [1236]  3.167630e-02  6.456585e-03 -1.201139e-02 -2.065819e-02 -1.140604e-02
## [1241]  8.553913e-03  4.724313e-03  6.869571e-03  6.925537e-03  2.831849e-03
## [1246]  1.164416e-02 -2.475375e-02  9.622920e-03 -2.094670e-02 -2.518148e-02
## [1251] -1.090157e-02 -1.242059e-02  5.412808e-03 -4.292343e-03 -1.150403e-02
## [1256] -2.688400e-02 -1.597925e-03  1.177906e-02  8.618637e-03 -1.400524e-03
## [1261] -7.347566e-03  1.331587e-02 -2.316971e-02  9.982464e-03 -8.162769e-03
## [1266] -3.804754e-03  1.026860e-02  8.307754e-03 -5.049339e-03 -1.392883e-02
## [1271]  7.439120e-03 -2.543528e-02  9.884726e-03  1.126904e-02  1.162603e-02
## [1276] -8.778576e-03 -1.248738e-03  4.867622e-03 -2.212541e-02 -1.084379e-02
## [1281]  7.894058e-03  4.262637e-02 -2.146643e-02 -9.835161e-03 -4.087748e-03
## [1286] -1.430152e-02 -4.253609e-03 -1.840256e-02 -2.024485e-03  8.598706e-04
## [1291]  3.729017e-03 -1.162944e-03 -1.192748e-02 -1.179472e-02  2.032670e-02
## [1296] -1.828754e-02 -9.431707e-03  5.083504e-03 -5.061608e-03  1.532094e-02
## [1301]  1.947252e-03  5.532101e-03  8.273387e-03  1.037564e-03 -1.580556e-02
## [1306] -2.738152e-03  2.726379e-03 -8.173036e-03 -1.968070e-02 -2.037009e-02
## [1311]  1.601762e-03 -4.331372e-02 -9.078358e-03 -9.625993e-03  2.556595e-02
## [1316] -2.810212e-02  8.473567e-03  1.722670e-02  4.899049e-03  1.032581e-02
## [1321]  2.096164e-02 -8.666933e-03  1.585730e-02 -5.675773e-03  1.382632e-02
## [1326]  7.081843e-03 -3.504569e-02  1.262016e-02 -4.191982e-03  5.288757e-03
## [1331] -1.867624e-03 -9.628874e-03  3.224294e-03 -2.467977e-02  1.271377e-03
## [1336]  3.365088e-03  2.048262e-02 -4.800705e-03 -7.596977e-03  1.071657e-02
## [1341]  9.941513e-03  1.458502e-02  3.343084e-03 -1.059793e-02  1.418343e-02
## [1346] -1.772319e-03 -1.221228e-02  2.779042e-02  1.865269e-02  4.159297e-03
## [1351]  7.905430e-03 -1.285726e-02 -5.525155e-03  1.112332e-02  6.755465e-04
## [1356]  7.435396e-03  1.516365e-02  7.062485e-04  2.275777e-02 -5.212115e-02
## [1361] -1.828231e-02  1.506659e-02  1.403077e-03  1.304240e-02  2.388712e-02
## [1366] -3.506814e-02 -1.734530e-02  1.436954e-02 -2.690222e-03 -1.738723e-02
## [1371]  8.322244e-03 -1.548817e-03  2.596805e-02  9.312636e-03  4.526574e-03
## [1376]  2.721009e-02  1.998837e-02  1.724577e-02 -1.738659e-02 -2.133220e-02
## [1381]  1.161968e-02 -6.700508e-03  1.296997e-02 -2.382379e-02  1.160206e-02
## [1386]  1.498120e-02  1.152299e-02 -2.028886e-03 -1.053189e-02  7.963886e-03
## [1391]  6.482637e-03  1.820235e-02 -4.261298e-02  2.545853e-03 -1.060942e-02
## [1396] -6.212329e-03 -2.150425e-02  2.653496e-03 -6.997018e-03  1.291167e-02
## [1401]  2.886270e-03 -1.575941e-02  9.405965e-03 -1.847235e-03  1.630426e-02
## [1406]  3.682041e-02 -3.334179e-02  7.695212e-03  1.342387e-02 -7.034224e-03
## [1411]  1.539520e-03  2.688907e-03 -3.389984e-02 -1.056990e-02  3.491888e-02
## [1416]  1.358939e-02 -1.073244e-02 -2.713489e-03  2.357790e-02  1.644147e-02
## [1421]  6.253670e-02  4.158302e-02 -6.194438e-02  2.174083e-02 -1.567112e-02
## [1426] -1.211579e-02  1.252160e-02  9.428657e-03  9.053319e-03 -1.881545e-02
## [1431]  9.147966e-03  1.083337e-02  7.622409e-03  3.002797e-02 -1.369517e-03
## [1436]  5.352320e-02  3.819875e-02 -6.228225e-03 -7.690389e-02 -4.153149e-02
## [1441]  9.328251e-03  1.062502e-01 -2.467139e-02 -4.985676e-02 -4.482582e-03
## [1446] -5.278178e-02 -3.244790e-03  1.247711e-02 -1.894326e-02 -1.660594e-02
## [1451] -1.422167e-02 -2.936857e-02  1.121201e-02 -1.207277e-02 -1.399203e-02
## [1456]  5.321332e-04 -5.891988e-04 -6.671886e-03 -6.819167e-03 -1.890332e-02
## [1461]  1.550137e-02  4.077983e-02 -9.660248e-03 -4.486620e-02 -1.804593e-02
## [1466] -2.763110e-05 -2.625496e-03 -1.259372e-03 -1.281125e-02  1.926753e-03
## [1471] -4.701550e-03 -3.033387e-03  1.862772e-03 -5.406388e-03
T_Total     <- length(Actual_Loss)
T_Total
## [1] 1474
conf_level  <- 0.95
p_expected  <- 1 - conf_level 
p_expected
## [1] 0.05
N_Expected  <- ceiling(T_Total * p_expected)
N_Expected
## [1] 74
# HITUNG STATISTIK UNTUK GEV

# Hitung Failure Rate
Is_Violation_GEV <- ifelse(Actual_Loss > VaR_GEV, 1, 0)
N_Failures_GEV   <- sum(Is_Violation_GEV)
Failure_Rate_GEV <- N_Failures_GEV / T_Total

# Hitung LR Kupiec GEV
term1_gev <- (p_expected ^ N_Failures_GEV) * ((1 - p_expected) ^ (T_Total - N_Failures_GEV))
term2_gev <- (Failure_Rate_GEV ^ N_Failures_GEV) * ((1 - Failure_Rate_GEV) ^ (T_Total - N_Failures_GEV))
LR_POF_GEV <- -2 * log(term1_gev / term2_gev)

# Hitung P-Value GEV
P_Value_GEV <- 1 - pchisq(LR_POF_GEV, df = 1)

# HITUNG STATISTIK UNTUK GPD

# Hitung Failure Rate
Is_Violation_GPD <- ifelse(Actual_Loss > VaR_GPD, 1, 0)
N_Failures_GPD   <- sum(Is_Violation_GPD)
Failure_Rate_GPD <- N_Failures_GPD / T_Total

# Hitung LR Kupiec GPD
term1_gpd <- (p_expected ^ N_Failures_GPD) * ((1 - p_expected) ^ (T_Total - N_Failures_GPD))
term2_gpd <- (Failure_Rate_GPD ^ N_Failures_GPD) * ((1 - Failure_Rate_GPD) ^ (T_Total - N_Failures_GPD))
LR_POF_GPD <- -2 * log(term1_gpd / term2_gpd)

# Hitung P-Value GPD
P_Value_GPD <- 1 - pchisq(LR_POF_GPD, df = 1)

Tabel_Perbandingan <- tibble(
  Indikator = c(
    "Model VaR",
    "Total Data",
    "Target Pelanggaran",
    "Jumlah Pelanggaran",
    "Tingkat Pelanggaran",
    "Selisih dari Target 5%",
    "lLikelihood Ratio",
    "P-Value"
  ),
  `Hasil VAR-GEV` = c(
    "Generalized Extreme Value",
    as.character(T_Total),
    paste0(p_expected * 100, "% (", N_Expected, " hari)"),
    as.character(N_Failures_GEV),
    paste0(sprintf("%.4f", Failure_Rate_GEV * 100), "%"),
    paste0(sprintf("%.4f", abs(Failure_Rate_GEV - p_expected) * 100), "%"), 
    sprintf("%.4f", LR_POF_GEV),
    sprintf("%.4f", P_Value_GEV)
  ),
  `Hasil VAR-GPD` = c(
    "Generalized Pareto Distribution",
    as.character(T_Total),
    paste0(p_expected * 100, "% (", N_Expected, " hari)"),
    as.character(N_Failures_GPD),
    paste0(sprintf("%.4f", Failure_Rate_GPD * 100), "%"),
    paste0(sprintf("%.4f", abs(Failure_Rate_GPD - p_expected) * 100), "%"),
    sprintf("%.4f", LR_POF_GPD),
    sprintf("%.4f", P_Value_GPD)
  )
)

print(Tabel_Perbandingan)
## # A tibble: 8 × 3
##   Indikator              `Hasil VAR-GEV`           `Hasil VAR-GPD`              
##   <chr>                  <chr>                     <chr>                        
## 1 Model VaR              Generalized Extreme Value Generalized Pareto Distribut…
## 2 Total Data             1474                      1474                         
## 3 Target Pelanggaran     5% (74 hari)              5% (74 hari)                 
## 4 Jumlah Pelanggaran     7                         81                           
## 5 Tingkat Pelanggaran    0.4749%                   5.4953%                      
## 6 Selisih dari Target 5% 4.5251%                   0.4953%                      
## 7 lLikelihood Ratio      103.5705                  0.7384                       
## 8 P-Value                0.0000                    0.3902
TabelBacktesting <- data.frame(
  Hari_ke = index(ReturnPortofolio),
  
  # Menampilkan Loss
  DataLoss = as.numeric(ReturnPortofolio$Loss) * 100,
  
  # Menampilkan VaR GEV
  VaRGEV = rep(VaR_GEV * 100, length(ReturnPortofolio$Loss)),
  
  # Status Pelanggaran GEV
  LRGEV = ifelse(ReturnPortofolio$Loss > VaR_GEV, 
                      "PELANGGARAN", 
                      "TIDAK TERJADI PELANGGARAN"),
  
  # Menampilkan VaR GPD
  VaRGPD = rep(VaR_GPD * 100, length(ReturnPortofolio$Loss)),
  
  # Status Pelanggaran GPD
  LRGPD = ifelse(ReturnPortofolio$Loss > VaR_GPD, 
                      "PELANGGARAN", 
                      "TIDAK TERJADI PELANGGARAN")
)

head(TabelBacktesting)
##   Hari_ke   DataLoss   VaRGEV                     LRGEV   VaRGPD
## 1       1  0.0000000 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 2       2  0.7757336 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 3       3  0.6482799 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 4       4  1.5392053 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 5       5 -0.5221693 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 6       6  0.8208329 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
##                       LRGPD
## 1 TIDAK TERJADI PELANGGARAN
## 2 TIDAK TERJADI PELANGGARAN
## 3 TIDAK TERJADI PELANGGARAN
## 4 TIDAK TERJADI PELANGGARAN
## 5 TIDAK TERJADI PELANGGARAN
## 6 TIDAK TERJADI PELANGGARAN
tail(TabelBacktesting)
##      Hari_ke   DataLoss   VaRGEV                     LRGEV   VaRGPD
## 1469    1469 -1.2811253 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 1470    1470  0.1926753 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 1471    1471 -0.4701550 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 1472    1472 -0.3033387 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 1473    1473  0.1862772 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
## 1474    1474 -0.5406388 6.644735 TIDAK TERJADI PELANGGARAN 3.132126
##                          LRGPD
## 1469 TIDAK TERJADI PELANGGARAN
## 1470 TIDAK TERJADI PELANGGARAN
## 1471 TIDAK TERJADI PELANGGARAN
## 1472 TIDAK TERJADI PELANGGARAN
## 1473 TIDAK TERJADI PELANGGARAN
## 1474 TIDAK TERJADI PELANGGARAN
View(TabelBacktesting, title = "Hasil Backtesting Lengkap")