Pemanggilan Packages

library(dplyr)
## Warning: package 'dplyr' was built under R version 4.2.3
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(TTR)
## Warning: package 'TTR' was built under R version 4.2.3
library(forecast)
## Warning: package 'forecast' was built under R version 4.2.3
## Registered S3 method overwritten by 'quantmod':
##   method            from
##   as.zoo.data.frame zoo
library(lmtest) #digunakan untuk uji formal pendeteksian autokorelasi
## Loading required package: zoo
## 
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
library(orcutt) #untuk membuat model regresi Cochrane-Orcutt
## Warning: package 'orcutt' was built under R version 4.2.3
library(HoRM) #untuk membuat model regresi Hildreth-Lu
## Warning: package 'HoRM' was built under R version 4.2.3
library(graphics)
library(TSA)
## Warning: package 'TSA' was built under R version 4.2.3
## Registered S3 methods overwritten by 'TSA':
##   method       from    
##   fitted.Arima forecast
##   plot.Arima   forecast
## 
## Attaching package: 'TSA'
## The following objects are masked from 'package:stats':
## 
##     acf, arima
## The following object is masked from 'package:utils':
## 
##     tar
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.3
library(RColorBrewer)
library(scales)

Input Data

Data yang digunakan dalam kesempatan kali ini adalah data per 5 menit dari Bajaj Finance Stock Price periode 29 November - 30 November 2016.

library(rio)
## Warning: package 'rio' was built under R version 4.2.3
databajaj <- import("https://raw.githubusercontent.com/afhkaniase/praktikum-mpdw/main/Data/Data%20Latihan%202.csv")
databajaj
##      close   high    low
## 1   897.45 897.90 883.90
## 2   903.50 905.20 895.65
## 3   906.70 907.90 901.95
## 4   908.00 910.00 906.00
## 5   911.95 912.50 907.35
## 6   914.90 915.60 910.00
## 7   915.90 917.70 914.40
## 8   916.50 917.05 911.15
## 9   915.75 917.50 914.95
## 10  912.35 915.75 912.00
## 11  908.90 913.60 907.00
## 12  909.90 910.00 906.00
## 13  911.00 912.95 909.40
## 14  910.45 912.00 909.10
## 15  908.85 910.00 907.50
## 16  910.60 912.00 908.05
## 17  911.00 912.00 910.00
## 18  910.00 912.00 908.00
## 19  909.50 911.05 909.30
## 20  911.45 912.00 909.50
## 21  911.95 912.45 910.60
## 22  912.20 912.50 910.85
## 23  917.40 917.70 911.05
## 24  915.00 917.40 914.55
## 25  914.00 915.80 913.50
## 26  913.70 915.90 913.60
## 27  915.10 915.65 913.80
## 28  915.55 916.00 914.35
## 29  920.85 921.55 915.45
## 30  924.60 926.15 919.50
## 31  922.00 924.90 921.80
## 32  920.75 923.35 920.50
## 33  919.00 920.75 918.20
## 34  920.00 920.90 919.00
## 35  920.50 921.30 919.70
## 36  917.90 921.10 917.90
## 37  913.80 918.05 912.40
## 38  914.20 915.60 913.00
## 39  918.65 918.80 913.50
## 40  918.00 919.50 918.00
## 41  918.40 919.15 918.00
## 42  918.60 918.90 915.20
## 43  919.00 920.00 917.15
## 44  918.40 919.25 917.85
## 45  918.10 918.90 917.75
## 46  918.60 919.05 918.00
## 47  919.20 919.75 918.00
## 48  919.00 920.50 918.60
## 49  918.65 919.35 918.40
## 50  918.35 919.00 918.00
## 51  919.00 919.50 918.00
## 52  917.30 919.15 917.00
## 53  919.45 919.70 917.00
## 54  921.50 922.00 918.95
## 55  920.05 925.20 919.15
## 56  920.05 922.50 918.05
## 57  916.55 920.20 913.95
## 58  916.80 920.70 916.45
## 59  918.40 919.65 916.50
## 60  918.50 920.00 918.05
## 61  916.20 919.45 916.00
## 62  914.00 917.00 912.45
## 63  915.00 917.50 914.20
## 64  915.35 916.00 914.30
## 65  913.85 916.00 913.75
## 66  911.65 914.50 910.70
## 67  914.55 915.00 911.55
## 68  916.20 917.50 914.35
## 69  913.65 916.90 912.70
## 70  909.15 913.70 908.30
## 71  906.00 909.00 904.50
## 72  905.85 908.20 905.85
## 73  906.65 906.90 904.00
## 74  907.70 907.80 905.45
## 75  909.50 909.50 906.70
## 76  917.45 920.10 909.05
## 77  921.85 925.70 917.05
## 78  923.00 927.85 922.25
## 79  919.75 924.55 918.60
## 80  919.90 920.50 917.50
## 81  917.25 920.55 914.95
## 82  917.90 918.00 916.00
## 83  919.55 920.00 916.35
## 84  918.90 919.80 918.00
## 85  919.00 919.00 918.00
## 86  918.65 919.45 918.40
## 87  918.50 918.95 917.95
## 88  918.90 919.80 918.00
## 89  918.95 919.15 918.55
## 90  919.00 919.00 918.00
## 91  919.00 919.20 918.00
## 92  922.00 922.00 918.65
## 93  921.35 923.65 920.50
## 94  920.80 922.00 920.55
## 95  920.20 921.00 919.35
## 96  920.00 920.75 918.95
## 97  920.50 921.00 920.00
## 98  920.95 921.00 920.00
## 99  920.30 921.00 919.55
## 100 919.70 920.80 919.00
## 101 920.25 920.95 919.00
## 102 918.70 921.00 918.60
## 103 919.40 920.00 917.70
## 104 918.85 921.60 918.50
## 105 918.00 919.30 916.60
## 106 916.30 918.45 916.30
## 107 917.00 918.00 916.00
## 108 917.00 917.10 916.00
summary(databajaj)
##      close            high            low       
##  Min.   :897.5   Min.   :897.9   Min.   :883.9  
##  1st Qu.:913.8   1st Qu.:915.6   1st Qu.:911.1  
##  Median :917.9   Median :919.0   Median :916.1  
##  Mean   :916.1   Mean   :917.6   Mean   :914.3  
##  3rd Qu.:919.0   3rd Qu.:920.6   3rd Qu.:918.0  
##  Max.   :924.6   Max.   :927.9   Max.   :922.2

Eksplorasi Data

Sebelum melakukan regresi, akan diperlihatkan plot time-series dari IPM Provinsi Gorontalo Periode 2010-2021

#Membentuk objek time series
databajaj.ts <- ts(databajaj$close)

#Membuat plot time series
ts.plot(databajaj.ts, xlab = "Time Period",
        ylab = "Harga Penutupan Saham", 
        main = "Time Series Plot of Day's close price")
points(databajaj.ts)

# Membuat matriks korelasi
library(corrplot)
## Warning: package 'corrplot' was built under R version 4.2.3
## corrplot 0.92 loaded
b <- cor(databajaj) 

colors <- alpha(colorRampPalette(c("green", #Warna Bawah
                                   "#dbdbdb", #Warna Tengah
                                   "blue"))(10), #Warna Atas
                                   alpha = 0.80) #Transparan

corrplot(b, method = 'ellipse', type='lower', order='original', col=colors)
corrplot(b, add=TRUE, method = 'number', type='upper', order='original',
         tl.pos = "lt", 
         tl.col = "black", col=colors)

Regresi

#Pembuatan Model Regresi
#model regresi
modelbajaj<- lm(databajaj$close ~ databajaj$high + databajaj$low , data = databajaj)
summary(modelbajaj)
## 
## Call:
## lm(formula = databajaj$close ~ databajaj$high + databajaj$low, 
##     data = databajaj)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.7604 -0.7557  0.2466  0.6708  2.5032 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    74.72386   20.70487   3.609 0.000473 ***
## databajaj$high  0.63191    0.05899  10.712  < 2e-16 ***
## databajaj$low   0.28604    0.04973   5.752 8.79e-08 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.096 on 105 degrees of freedom
## Multiple R-squared:  0.9474, Adjusted R-squared:  0.9464 
## F-statistic: 946.2 on 2 and 105 DF,  p-value: < 2.2e-16

Model yang dihasilkan adalah \[y_i = 74.72386 + 0.63191X_1 + 0.28604X_2\]. Berdasarkan ringkasan model dapat diketahui bahwa hasil uji F memiliki p-value < \(\alpha\) (5%). Artinya, minimal terdapat satu variabel yang berpengaruh nyata terhadap model. Hasil uji-t parsial kedua parameter regresi, yaitu intersep dan koefisien regresi juga menunjukkan hal yang sama, yaitu memiliki p-value < \(\alpha\) (5%) sehingga nyata dalam taraf 5%. Selanjutnya dapat dilihat juga nilai \(R^2=0.9474\). Artinya, sebesar 94.74% keragaman data penutupan harga saham dari Bajaj Finance’s dapat dijelaskan oleh harga tinggi dan harga rendah saham Bajaj Finance’s. Hasil ini menunjukkan hasil yang bagus, seolah mendapatkan hasil terbaik. Namun, kita perlu melakukan uji terhadap sisaannya seperti berikut ini.

#sisaan dan fitted value
sisaan_bajaj<- residuals(modelbajaj)
fitValue_bajaj<- predict(modelbajaj)

#Diagnostik dengan eksploratif
library(ggplot2)
par(mfrow = c(2,2))
qqnorm(sisaan_bajaj)

#Normal Q-Q plot
qqline(sisaan_bajaj, col = "steelblue", lwd = 2)
plot(fitValue_bajaj, sisaan_bajaj, col = "steelblue", pch = 20, xlab = "Sisaan", ylab = "Fitted Values", main = "Sisaan vs Fitted Values")
abline(a = 0, b = 0, lwd = 2)

#Histogram Sisaan
hist(sisaan_bajaj, col = "steelblue")
plot(seq(1,108,1), sisaan_bajaj, col = "steelblue", pch = 20, xlab = "Sisaan", ylab = "Order", main = "Sisaan vs Order")
lines(seq(1,108,1), sisaan_bajaj, col = "red")
abline(a = 0, b = 0, lwd = 2)

Dua plot di samping kiri digunakan untuk melihat apakah sisaan menyebar normal. Normal Q-Q Plot di atas menunjukkan bahwa sisaan cenderung menyebar normal, tetapi histogram dari sisaan tidak menunjukkan demikian. Selanjutnya, dua plot di samping kanan digunakan untuk melihat autokorelasi. Plot Sisaan vs Fitted Value dan Plot Sisaan vs Order menunjukkan adanya pola pada sisaan. Untuk lebih lanjut akan digunakan uji formal melihat normalitas sisaan dan plot ACF dan PACF untuk melihat apakah ada autokorelasi atau tidak.

#Melihat Sisaan Menyebar Normal/Tidak
#H0: sisaan mengikuti sebaran normal
#H1: sisaan tidak mengikuti sebaran normal
ks.test(sisaan_bajaj, "pnorm", mean=mean(sisaan_bajaj), sd=sd(sisaan_bajaj))
## Warning in ks.test.default(sisaan_bajaj, "pnorm", mean = mean(sisaan_bajaj), :
## ties should not be present for the Kolmogorov-Smirnov test
## 
##  Asymptotic one-sample Kolmogorov-Smirnov test
## 
## data:  sisaan_bajaj
## D = 0.12566, p-value = 0.06602
## alternative hypothesis: two-sided

Berdasarkan uji formal Kolmogorov-Smirnov didapatkan nilai p-value > \(\alpha\) (5%). Artinya, cukup bukti untuk menyatakan sisaan berdistribusi normal.

#ACF dan PACF identifikasi autokorelasi
par(mfrow = c(1,2))
acf(sisaan_bajaj)
pacf(sisaan_bajaj)

Baik dari plot ACF maupun plot PACF, terdapat garis vertikal di lag tertentu yang melebihi tinggi garis biru horizontal. Artinya, menurut kedua plot ini, terdapat autokorelasi pada model. Namun, untuk lebih memastikan akan dilakukan uji formal dengan uji Durbin Watson.

Durbin Watson

#Deteksi autokorelasi dengan uji-Durbin Watson
#H0: tidak ada autokorelasi
#H1: ada autokorelasi
dwtest(modelbajaj)
## 
##  Durbin-Watson test
## 
## data:  modelbajaj
## DW = 1.4326, p-value = 0.0009011
## alternative hypothesis: true autocorrelation is greater than 0

Berdasarkan hasil DW Test, didapatkan nilai \(DW = 1.4326\) dan p-value = \(0.0009011\). Berdasarkan tabel Durbin-Watson diperoleh dengan \(n = 108\) dan \(k = 2\) sehingga nilai \(DL = 1.6488\) dan \(DU = 1.7241\). Nilai DW tidak berada di antara nilai DL dan DU. Artinya, berada di daerah di daerah autokorelasi positif. Namun, dengan nilai p-value < 0.05 dapat disimpulkan bahwa tolak H0, cukup bukti mengatakan adanya autokorelasi pada galat menurut uji Durbin-Watson.

Breusch-Godfrey Test

bgtest(databajaj$close ~ databajaj$high + databajaj$low, data=databajaj, order=1)
## 
##  Breusch-Godfrey test for serial correlation of order up to 1
## 
## data:  databajaj$close ~ databajaj$high + databajaj$low
## LM test = 7.808, df = 1, p-value = 0.005202

Dari hasil uji di atas, dapat terlihat bahwa nilai p-value < 0.05, sehingga tolak H0. Artinya, ada autokorelasi pada galat menurut uji Breusch-Godfrey.

Runs Test

lawstat::runs.test(resid(modelbajaj), alternative = 'two.sided')
## 
##  Runs Test - Two sided
## 
## data:  resid(modelbajaj)
## Standardized Runs Statistic = -1.5468, p-value = 0.1219

Dari hasil uji di atas, dapat terlihat bahwa nilai p-value > 0.05, sehingga terima H0. Artinya, tidak ada autokorelasi pada galat menurut uji Runs.

Dari ketiga uji di atas, masih terdapat dua uji yaitu uji Durbin-Watson dan Breusch-Godfrey Test yang menolak H0 atau menyatakan bahwa ada autokorelasi pada galat. Oleh karena itu, diperlukan penangan autokorelasi. Penanganan yang akan digunakan menggunakan dua metode, yaitu Cochrane-Orcutt dan Hildret-Lu.

Penanganan Autokorelasi

Metode Cochrane-Orcutt

#Penanganan Autokorelasi Cochrane-Orcutt
modelbajajCO<-cochrane.orcutt(modelbajaj)
modelbajajCO
## Cochrane-orcutt estimation for first order autocorrelation 
##  
## Call:
## lm(formula = databajaj$close ~ databajaj$high + databajaj$low, 
##     data = databajaj)
## 
##  number of interaction: 7
##  rho 0.226793
## 
## Durbin-Watson statistic 
## (original):    1.43255 , p-value: 9.011e-04
## (transformed): 1.99129 , p-value: 4.367e-01
##  
##  coefficients: 
##    (Intercept) databajaj$high  databajaj$low 
##      56.087043       0.602942       0.335450

Hasil keluaran model setelah dilakukan penanganan adalah sebagai berikut. \[y_i = 56.087043 + 0.602942X_t + 0.335450X_(t-1)\]. Hasil juga menunjukkan bahwa nilai DW dan p-value meningkat menjadi \(1.99129\) dan \(0.4367\). Nilai DW berada pada rentang DU < DW < 4-DU atau \(1.7241 < DW < 2.2759\). Hal tersebut juga didukung dengan nilai p-value > 0.05, artinya belum cukup bukti menyatakan bahwa sisaan terdapat autokorelasi pada taraf nyata 5%. Untuk nilai \(ρ ̂\) optimum yang digunakan adalah \(0.226793\). Nilai tersebut dapat diketahui dengan syntax berikut.

#Rho optimum
rho<- modelbajajCO$rho
rho
## [1] 0.2267926

Selanjutnya akan dilakukan transformasi secara manual dengan syntax berikut ini.

#Transformasi Manual
X1.trans<- databajaj$high[-1]-databajaj$high[-108]*rho
X2.trans<- databajaj$low[-1]-databajaj$low[-108]*rho
Y.trans <- databajaj$close[-1]-databajaj$close[-108]*rho
modelbajajCOmanual<- lm(Y.trans~X1.trans + X2.trans)
summary(modelbajajCOmanual)
## 
## Call:
## lm(formula = Y.trans ~ X1.trans + X2.trans)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.4887 -0.8355  0.1902  0.5846  2.2944 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 43.36692   20.23731   2.143   0.0345 *  
## X1.trans     0.60294    0.06380   9.450 1.14e-15 ***
## X2.trans     0.33545    0.05921   5.665 1.32e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.03 on 104 degrees of freedom
## Multiple R-squared:  0.9131, Adjusted R-squared:  0.9114 
## F-statistic: 546.2 on 2 and 104 DF,  p-value: < 2.2e-16

Hasil model transformasi bukan merupakan model sesungguhnya. Koefisien regresi masih perlu dicari kembali mengikuti \(β_0^*=β_0+ρ ̂β_0\) dan \(β_1^*=β_1\).

#Mencari Penduga Koefisien Regresi setelah Transformasi ke Persamaan Awal
b0bajaj_bintang <- modelbajajCOmanual$coefficients[1]

b0bajaj <- b0bajaj_bintang/(1-rho)
b0bajaj
## (Intercept) 
##    56.08704
b1bajaj <- modelbajajCOmanual$coefficients[2]
b1bajaj
##  X1.trans 
## 0.6029419
b2bajaj <- modelbajajCOmanual$coefficients[3]
b2bajaj
##  X2.trans 
## 0.3354501

Hasil perhitungan koefisien regresi tersebut akan menghasilkan hasil yang sama dengan model yang dihasilkan menggunakan packages.

Metode Hildreth-Lu

Penanganan kedua adalah menggunakan metode Hildreth-Lu. Metode ini akan mencari nilai SSE terkecil dan dapat dicari secara manual maupun menggunakan packages. Jika menggunakan packages, gunakan library packages HORM.

#Penanganan Autokorelasi Hildreth lu
# Hildreth-Lu
hildreth.lu.func<- function(r, model){
  x1 <- model.matrix(modelbajaj)[,2]
  x2 <- model.matrix(modelbajaj)[,3]

  y <- model.response(model.frame(modelbajaj))
  n <- length(y)
  t <- 2:n
  
  y <- y[t]-r*y[t-1]
  x1 <- x1[t]-r*x1[t-1]
  x2 <- x2[t]-r*x2[t-1]
  
  return(lm(y~x1+x2))
}

#Pencariab rho yang meminimumkan SSE
r <- c(seq(0.1,0.9, by= 0.1))
tab <- data.frame("rho" = r, "SSE" = sapply(r, function(i){deviance(hildreth.lu.func(i, modelbajaj))}))
round(tab, 4)
##   rho      SSE
## 1 0.1 112.3500
## 2 0.2 110.4337
## 3 0.3 110.9912
## 4 0.4 113.8547
## 5 0.5 118.7091
## 6 0.6 125.0600
## 7 0.7 132.4460
## 8 0.8 141.1234
## 9 0.9 152.3890

Pertama-tama akan dicari di mana kira-kira \(ρ\) yang menghasilkan SSE minimum. Pada hasil di atas terlihat \(ρ\) minimum ketika 0.2. Namun, hasil tersebut masih kurang teliti sehingga akan dicari kembali \(ρ\) yang lebih optimum dengan ketelitian yang lebih. Jika sebelumnya jarak antar \(ρ\) yang dicari adalah 0.1, kali ini jarak antar \(ρ\) adalah 0.001 dan dilakukan pada selang 0.2 sampai dengan 0.5.

#Rho optimal di sekitar 0.4
rOpt <- seq(0.2,0.5, by= 0.001)
tabOpt <- data.frame("rho" = rOpt, "SSE" = sapply(rOpt, function(i){deviance(hildreth.lu.func(i, modelbajaj))}))
head(tabOpt[order(tabOpt$SSE),])
##      rho      SSE
## 28 0.227 110.3454
## 27 0.226 110.3455
## 29 0.228 110.3456
## 26 0.225 110.3458
## 30 0.229 110.3460
## 25 0.224 110.3464
#Grafik SSE optimum
par(mfrow = c(1,1))
plot(tab$SSE ~ tab$rho , type = "l", xlab = "Rho", ylab = "SSE")
abline(v = tabOpt[tabOpt$SSE==min(tabOpt$SSE),"rho"], lty = 2, col="red",lwd=2)
text(x=0.227, y=110.3454, labels = "rho=0.227", cex = 0.8)

Perhitungan yang dilakukan aplikasi R menunjukkan bahwa nilai \(ρ\) optimum, yaitu saat SSE terkecil terdapat pada nilai \(ρ=0.227\). Hal tersebut juga ditunjukkan pada plot. Selanjutnya, model dapat didapatkan dengan mengevaluasi nilai \(ρ\) ke dalam fungsi hildreth.lu.func, serta dilanjutkan dengan pengujian autokorelasi dengan uji Durbin-Watson. Namun, setelah pengecekan tersebut tidak lupa koefisien regresi tersebut digunakan untuk transformasi balik. Persamaan hasil transformasi itulah yang menjadi persamaan sesungguhnya.

#Model terbaik
modelbajajHL <- hildreth.lu.func(0.227, modelbajaj)
summary(modelbajajHL)
## 
## Call:
## lm(formula = y ~ x1 + x2)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -2.4890 -0.8357  0.1901  0.5847  2.2942 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 43.35995   20.23672   2.143   0.0345 *  
## x1           0.60296    0.06381   9.450 1.14e-15 ***
## x2           0.33542    0.05922   5.664 1.32e-07 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1.03 on 104 degrees of freedom
## Multiple R-squared:  0.913,  Adjusted R-squared:  0.9114 
## F-statistic: 545.9 on 2 and 104 DF,  p-value: < 2.2e-16
#Transformasi Balik
cat("y = ", coef(modelbajajHL)[1]/(1-0.227), "+", coef(modelbajajHL)[2],"x1","+", coef(modelbajajHL)[3],"x2", sep = "")
## y = 56.09308+0.6029621x1+0.3354232x2

Setelah dilakukan tranformasi balik, didapatkan model dengan metode Hildreth-Lu sebagai berikut. \[y_i = 56.09308 + 0.6029621X_t + 0.3354232X_(t-1)\]

#Deteksi autokorelasi
dwtest(modelbajajHL)
## 
##  Durbin-Watson test
## 
## data:  modelbajajHL
## DW = 1.9917, p-value = 0.4375
## alternative hypothesis: true autocorrelation is greater than 0

Hasil uji Durbin-Watson juga menunjukkan bawah nilai DW sebesar \(1.9917\) berada pada selang daerah tidak ada autokorelasi, yaitu pada rentang DU < DW < 4-DU atau \(1.7241 < DW < 2.2759\). Hal tersebut juga didukung oleh p-value sebesar \(0.4375\), di mana p-value > \(\alpha\)=5%. Artinya tak tolak \(H_0\) atau belum cukup bukti menyatakan bahwa ada autokorelasi dalam data nilai harga saham Bajaj Finance’s dengan metode Hildreth-Lu pada taraf nyata 5%.

Terakhir, akan dibandingkan nilai SSE dari ketiga metode (metode awal, metode Cochrane-Orcutt, dan Hildreth-Lu).

#Perbandingan
sseModelbajajawal <- anova(modelbajaj)$`Sum Sq`[-c(1,2)]
sseModelbajajCO <- anova(modelbajajCOmanual)$`Sum Sq`[-c(1,2)]
sseModelbajajHL <- anova(modelbajajHL)$`Sum Sq`[-c(1,2)]
mseModelbajajawal <- sseModelbajajawal/length(databajaj$close)
mseModelbajajCO <- sseModelbajajCO/length(databajaj$close)
mseModelbajajHL <- sseModelbajajHL/length(databajaj$close)
akurasibajaj <- matrix(c(sseModelbajajawal,sseModelbajajCO,sseModelbajajHL,
                    mseModelbajajawal,mseModelbajajCO,mseModelbajajHL),nrow=2,ncol=3,byrow = TRUE)
colnames(akurasibajaj) <- c("Model Awal", "Model Cochrane-Orcutt", "Model Hildreth-Lu")
row.names(akurasibajaj) <- c("SSE","MSE")
akurasibajaj
##     Model Awal Model Cochrane-Orcutt Model Hildreth-Lu
## SSE 126.082954            110.345436        110.345441
## MSE   1.167435              1.021717          1.021717

Berdasarkan hasil tersebut dapat diketahui bahwa hasil penanganan autokorelasi dengan metode Cochrane-Orcutt dan Hildreth-Lu memiliki SSE yang sama, sebesar \(110.3454\) dan lebih baik dibandingkan model awal ketika autokorelasi masih terjadi, yaitu sebesar \(126.082954\).

Simpulan

Autokorelasi yang terdapat pada data nilai harga saham Bajaj Finance’s terjadi akibat adanya korelasi di antara unsur penyusunnya. Adanya autokorelasi menyebabkan model regresi kurang baik karena akan meingkatkan galatnya. Autokorelasi dapat dideteksi secara eksploratif melalui plot sisaan, ACF, dan PACF, serta dengan uji formal Durbin-Watson. Namun, autokorelasi tersebut dapat ditangani dengan metode Cochrane-Orcutt dan Hildreth-Lu. Kedua metode menghasilkan nilai SSE yang sama, artinya keduanya baik untuk digunakan. <<<<<<< HEAD =======

6efc3c42ffa4624ebbbdeb0245913da3fc5e2db1