This is an R Markdown document. Markdown is a simple formatting syntax for authoring HTML, PDF, and MS Word documents. For more details on using R Markdown see http://rmarkdown.rstudio.com.
When you click the Knit button a document will be generated that includes both content as well as the output of any embedded R code chunks within the document. You can embed an R code chunk like this:
setwd("C:/Users/Gyanesh Jain/Documents")
df<- read_csv("Event Study Data.csv")
##
## -- Column specification --------------------------------------------------------
## cols(
## BankName = col_character(),
## Date = col_character(),
## Merger = col_double(),
## StockReturn = col_double(),
## MarketReturn = col_double(),
## Reurn = col_character(),
## Market = col_character(),
## PreMerger = col_double(),
## PostMerger = col_double(),
## Day = col_double()
## )
df=na.omit(df)
df$Reurn=as.numeric(df$Reurn)
## Warning: NAs introduced by coercion
df$Market=as.numeric(df$Market)
## Warning: NAs introduced by coercion
df$Reurn2=(df$Reurn)^2
df$Market2=df$Market^2
df=na.omit(df)
df=as_tibble(df)
idfc=filter(df,BankName=="IDFC")
hdfc=filter(df,BankName=="HDFC")
icici=filter(df,BankName=="ICICI")
kotak=filter(df,BankName=="Kotak")
You can also embed plots, for example:
dfbm=filter(df,Merger==0)
dfam=filter(df,Merger==1)
idfcbm=filter(dfbm,BankName=="IDFC")
hdfcbm=filter(dfbm,BankName=="HDFC")
icicibm=filter(dfbm,BankName=="ICICI")
kotakbm=filter(dfbm,BankName=="Kotak")
idfcam=filter(dfam,BankName=="IDFC")
hdfcam=filter(dfam,BankName=="HDFC")
iciciam=filter(dfam,BankName=="ICICI")
kotakam=filter(dfam,BankName=="Kotak")
library(plm)
##
## Attaching package: 'plm'
## The following objects are masked from 'package:dplyr':
##
## between, lag, lead
library(knitr)
plm_model= plm(Reurn ~ Market+Merger, data= df, model= "pooling")
pvcm_model= pvcm(Reurn ~ Market+Merger, data= df, model= "within")
summary((plm_model))
## Pooling Model
##
## Call:
## plm(formula = Reurn ~ Market + Merger, data = df, model = "pooling")
##
## Unbalanced Panel: n = 4, T = 470-499, N = 1933
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -0.14326591 -0.01118834 -0.00085601 0.01080307 0.16497231
##
## Coefficients:
## Estimate Std. Error t-value Pr(>|t|)
## (Intercept) -0.00031674 0.00081931 -0.3866 0.6991
## Market 1.08170567 0.03752712 28.8246 <2e-16 ***
## Merger 0.00080659 0.00115750 0.6968 0.4860
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Total Sum of Squares: 1.7862
## Residual Sum of Squares: 1.2486
## R-Squared: 0.30095
## Adj. R-Squared: 0.30022
## F-statistic: 415.435 on 2 and 1930 DF, p-value: < 2.22e-16
summary((pvcm_model))
## Oneway (individual) effect No-pooling model
##
## Call:
## pvcm(formula = Reurn ~ Market + Merger, data = df, model = "within")
##
## Unbalanced Panel: n = 4, T = 470-499, N = 1933
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -0.14706428 -0.01129020 -0.00110076 0.01091521 0.16943107
##
## Coefficients:
## (Intercept) Market Merger
## Min. :-0.0014422 Min. :0.9777 Min. :4.709e-05
## 1st Qu.:-0.0006581 1st Qu.:1.0216 1st Qu.:6.276e-04
## Median :-0.0001646 Median :1.1758 Median :9.100e-04
## Mean :-0.0003654 Mean :1.1892 Mean :7.751e-04
## 3rd Qu.: 0.0001281 3rd Qu.:1.3433 3rd Qu.:1.057e-03
## Max. : 0.0003097 Max. :1.4274 Max. :1.233e-03
##
## Total Sum of Squares: 808.15
## Residual Sum of Squares: 1.2339
## Multiple R-Squared: 0.99847
pooltest(plm_model, pvcm_model)
##
## F statistic
##
## data: Reurn ~ Market + Merger
## F = 2.5478, df1 = 9, df2 = 1921, p-value = 0.006575
## alternative hypothesis: unstability
# P value is less than 0.05 suggesting that all slopes are same indicating no effect of banks on companies, which shows poolability of return Series
plm_model1= plm(Reurn2 ~ Market2+Merger, data= df, model= "pooling")
pvcm_model1= pvcm(Reurn2 ~ Market2+Merger, data= df, model= "within")
summary((plm_model1))
## Pooling Model
##
## Call:
## plm(formula = Reurn2 ~ Market2 + Merger, data = df, model = "pooling")
##
## Unbalanced Panel: n = 4, T = 470-499, N = 1933
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -0.02855759 -0.00079549 -0.00049404 -0.00010187 0.04170599
##
## Coefficients:
## Estimate Std. Error t-value Pr(>|t|)
## (Intercept) 5.0460e-04 7.7279e-05 6.5296 8.405e-11 ***
## Market2 9.8678e-01 5.2345e-02 18.8516 < 2.2e-16 ***
## Merger 3.6910e-04 1.0819e-04 3.4116 0.0006591 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Total Sum of Squares: 0.013005
## Residual Sum of Squares: 0.010906
## R-Squared: 0.16137
## Adj. R-Squared: 0.1605
## F-statistic: 185.686 on 2 and 1930 DF, p-value: < 2.22e-16
summary((pvcm_model1))
## Oneway (individual) effect No-pooling model
##
## Call:
## pvcm(formula = Reurn2 ~ Market2 + Merger, data = df, model = "within")
##
## Unbalanced Panel: n = 4, T = 470-499, N = 1933
##
## Residuals:
## Min. 1st Qu. Median 3rd Qu. Max.
## -2.315920e-02 -4.904417e-04 -2.092975e-04 6.557495e-05 4.023417e-02
##
## Coefficients:
## (Intercept) Market2 Merger
## Min. :0.0001765 Min. :0.7951 Min. :-3.222e-05
## 1st Qu.:0.0001953 1st Qu.:0.8170 1st Qu.: 5.807e-06
## Median :0.0003418 Median :0.9635 Median : 3.996e-05
## Mean :0.0004623 Mean :1.2776 Mean : 4.339e-04
## 3rd Qu.:0.0006088 3rd Qu.:1.4242 3rd Qu.: 4.680e-04
## Max. :0.0009892 Max. :2.3884 Max. : 1.688e-03
##
## Total Sum of Squares: 805.68
## Residual Sum of Squares: 0.0098533
## Multiple R-Squared: 0.99999
pooltest(plm_model1, pvcm_model1)
##
## F statistic
##
## data: Reurn2 ~ Market2 + Merger
## F = 22.814, df1 = 9, df2 = 1921, p-value < 2.2e-16
## alternative hypothesis: unstability
# P value is less than 0.05, depicting poolability of volatility which at the moment is taken as square of returns. Hence a valid generalisation of the volatility pre and post merger could be seen
m1=lm(Reurn2~Market2,data=df)
m2=lm(Reurn2~Market2+Merger,data=df)
summary(m1)
##
## Call:
## lm(formula = Reurn2 ~ Market2, data = df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.028911 -0.000690 -0.000576 -0.000153 0.041882
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 6.881e-04 5.564e-05 12.37 <2e-16 ***
## Market2 9.923e-01 5.246e-02 18.91 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.002384 on 1931 degrees of freedom
## Multiple R-squared: 0.1563, Adjusted R-squared: 0.1559
## F-statistic: 357.8 on 1 and 1931 DF, p-value: < 2.2e-16
summary(m2)
##
## Call:
## lm(formula = Reurn2 ~ Market2 + Merger, data = df)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.028558 -0.000795 -0.000494 -0.000102 0.041706
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 5.046e-04 7.728e-05 6.530 8.41e-11 ***
## Market2 9.868e-01 5.234e-02 18.852 < 2e-16 ***
## Merger 3.691e-04 1.082e-04 3.412 0.000659 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.002377 on 1930 degrees of freedom
## Multiple R-squared: 0.1614, Adjusted R-squared: 0.1605
## F-statistic: 185.7 on 2 and 1930 DF, p-value: < 2.2e-16
#Sharp increase in Adj-R2 signifying Merger has a significant impact on Volatility which will be modelled in the later half
library(zoo)
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
library(FinTS)
library(e1071)
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(kotakam$Reurn,kotakam$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 247
## Log-Likelihood : 1462.986
## Av.Log-Likelihood : 5.92
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [kotakam.Reurn].mu 0.000843 0.001262 0.667880 0.504210
## [kotakam.Reurn].omega 0.000001 0.000000 4.741600 0.000002
## [kotakam.Reurn].alpha1 0.000030 0.000534 0.056077 0.955280
## [kotakam.Reurn].beta1 0.996856 0.000395 2522.939164 0.000000
## [kotakam.Market].mu -0.000043 0.000633 -0.067847 0.945907
## [kotakam.Market].omega 0.000018 0.000008 2.234736 0.025435
## [kotakam.Market].alpha1 0.048950 0.043925 1.114407 0.265105
## [kotakam.Market].beta1 0.788112 0.069600 11.323492 0.000000
## [Joint]dcca1 0.024361 0.015450 1.576785 0.114845
## [Joint]dccb1 0.951146 0.029302 32.460130 0.000000
##
## Information Criteria
## ---------------------
##
## Akaike -11.757
## Bayes -11.601
## Shibata -11.761
## Hannan-Quinn -11.694
##
##
## Elapsed time : 0.6042349
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="Kotak After Merger")
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(kotakbm$Reurn,kotakbm$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 241
## Log-Likelihood : 1502.752
## Av.Log-Likelihood : 6.24
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [kotakbm.Reurn].mu 0.001631 0.001073 1.5194e+00 0.128655
## [kotakbm.Reurn].omega 0.000000 0.000003 6.5815e-02 0.947525
## [kotakbm.Reurn].alpha1 0.000000 0.001258 0.0000e+00 1.000000
## [kotakbm.Reurn].beta1 0.999000 0.002212 4.5168e+02 0.000000
## [kotakbm.Market].mu 0.001497 0.000549 2.7277e+00 0.006377
## [kotakbm.Market].omega 0.000000 0.000000 9.9865e-01 0.317966
## [kotakbm.Market].alpha1 0.000228 0.000363 6.2649e-01 0.530991
## [kotakbm.Market].beta1 0.997443 0.000451 2.2138e+03 0.000000
## [Joint]dcca1 0.022592 0.015273 1.4792e+00 0.139094
## [Joint]dccb1 0.947814 0.022169 4.2754e+01 0.000000
##
## Information Criteria
## ---------------------
##
## Akaike -12.380
## Bayes -12.221
## Shibata -12.384
## Hannan-Quinn -12.316
##
##
## Elapsed time : 0.2901099
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="Kotak Before Merger")
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(hdfcam$Reurn,hdfcam$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 234
## Log-Likelihood : 898.6661
## Av.Log-Likelihood : 3.84
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [hdfcam.Reurn].mu -0.000071 0.003459 -0.020616 0.983552
## [hdfcam.Reurn].omega 0.000181 0.000084 2.139377 0.032405
## [hdfcam.Reurn].alpha1 0.064367 0.026849 2.397397 0.016512
## [hdfcam.Reurn].beta1 0.883867 0.028766 30.726106 0.000000
## [hdfcam.Market].mu -0.000469 0.001694 -0.276888 0.781866
## [hdfcam.Market].omega 0.000072 0.000028 2.533253 0.011301
## [hdfcam.Market].alpha1 0.051050 0.036636 1.393428 0.163490
## [hdfcam.Market].beta1 0.862357 0.029763 28.974193 0.000000
## [Joint]dcca1 0.041500 0.034743 1.194488 0.232287
## [Joint]dccb1 0.628796 0.093354 6.735583 0.000000
##
## Information Criteria
## ---------------------
##
## Akaike -7.5869
## Bayes -7.4245
## Shibata -7.5911
## Hannan-Quinn -7.5214
##
##
## Elapsed time : 0.297421
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="HDFC After Merger")
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(hdfcbm$Reurn,hdfcbm$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 242
## Log-Likelihood : 1104.213
## Av.Log-Likelihood : 4.56
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [hdfcbm.Reurn].mu 0.001645 0.002018 0.81515 0.414988
## [hdfcbm.Reurn].omega 0.000099 0.000090 1.09558 0.273261
## [hdfcbm.Reurn].alpha1 0.172669 0.088818 1.94407 0.051887
## [hdfcbm.Reurn].beta1 0.764990 0.126785 6.03376 0.000000
## [hdfcbm.Market].mu 0.003545 0.001439 2.46333 0.013765
## [hdfcbm.Market].omega 0.000047 0.000029 1.61963 0.105311
## [hdfcbm.Market].alpha1 0.430134 0.265998 1.61706 0.105866
## [hdfcbm.Market].beta1 0.568866 0.128498 4.42703 0.000010
## [Joint]dcca1 0.044346 0.047503 0.93353 0.350547
## [Joint]dccb1 0.647034 0.200720 3.22356 0.001266
##
## Information Criteria
## ---------------------
##
## Akaike -9.0348
## Bayes -8.8762
## Shibata -9.0387
## Hannan-Quinn -8.9709
##
##
## Elapsed time : 0.3028831
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="HDFC Before Merger")
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(iciciam$Reurn,iciciam$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 253
## Log-Likelihood : 1545.009
## Av.Log-Likelihood : 6.11
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [iciciam.Reurn].mu 0.000765 0.001268 6.0362e-01 0.546097
## [iciciam.Reurn].omega 0.000001 0.000000 3.9123e+00 0.000091
## [iciciam.Reurn].alpha1 0.000000 0.001017 2.0000e-06 0.999999
## [iciciam.Reurn].beta1 0.998987 0.000242 4.1251e+03 0.000000
## [iciciam.Market].mu 0.000923 0.000662 1.3942e+00 0.163242
## [iciciam.Market].omega 0.000002 0.000005 4.8302e-01 0.629084
## [iciciam.Market].alpha1 0.099587 0.072566 1.3724e+00 0.169951
## [iciciam.Market].beta1 0.879956 0.082832 1.0623e+01 0.000000
## [Joint]dcca1 0.038734 0.011421 3.3915e+00 0.000695
## [Joint]dccb1 0.961266 0.014372 6.6884e+01 0.000000
##
## Information Criteria
## ---------------------
##
## Akaike -12.127
## Bayes -11.973
## Shibata -12.130
## Hannan-Quinn -12.065
##
##
## Elapsed time : 0.3261421
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="ICICI After Merger")
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(icicibm$Reurn,icicibm$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 246
## Log-Likelihood : 1408.961
## Av.Log-Likelihood : 5.73
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [icicibm.Reurn].mu 0.000916 0.001647 0.55595 0.57824
## [icicibm.Reurn].omega 0.000019 0.000023 0.82559 0.40903
## [icicibm.Reurn].alpha1 0.051909 0.042244 1.22877 0.21916
## [icicibm.Reurn].beta1 0.916083 0.065653 13.95336 0.00000
## [icicibm.Market].mu 0.000835 0.000772 1.08244 0.27905
## [icicibm.Market].omega 0.000006 0.000028 0.21021 0.83350
## [icicibm.Market].alpha1 0.119902 0.136274 0.87987 0.37893
## [icicibm.Market].beta1 0.848512 0.070552 12.02684 0.00000
## [Joint]dcca1 0.205730 0.125879 1.63435 0.10219
## [Joint]dccb1 0.000000 0.375872 0.00000 1.00000
##
## Information Criteria
## ---------------------
##
## Akaike -11.366
## Bayes -11.209
## Shibata -11.369
## Hannan-Quinn -11.302
##
##
## Elapsed time : 0.4867871
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="ICICI Before Merger")
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(idfcam$Reurn,idfcam$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 234
## Log-Likelihood : 1349.154
## Av.Log-Likelihood : 5.77
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [idfcam.Reurn].mu 0.000393 0.001624 0.241979 0.80880
## [idfcam.Reurn].omega 0.000000 0.000004 0.109316 0.91295
## [idfcam.Reurn].alpha1 0.000000 0.000722 0.000002 1.00000
## [idfcam.Reurn].beta1 0.999000 0.002435 410.209085 0.00000
## [idfcam.Market].mu 0.000695 0.000730 0.951149 0.34153
## [idfcam.Market].omega 0.000040 0.000026 1.540549 0.12343
## [idfcam.Market].alpha1 0.330237 0.347694 0.949791 0.34222
## [idfcam.Market].beta1 0.205446 0.422932 0.485767 0.62713
## [Joint]dcca1 0.061684 0.048564 1.270147 0.20403
## [Joint]dccb1 0.000000 0.284579 0.000000 1.00000
##
## Information Criteria
## ---------------------
##
## Akaike -11.437
## Bayes -11.275
## Shibata -11.441
## Hannan-Quinn -11.372
##
##
## Elapsed time : 0.314944
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="IDFC After Merger")
uspec=ugarchspec(mean.model=list(armaOrder=c(0,0)),variance.model = list(garchOrder=c(1,1),model="sGARCH"),distribution.model = "norm")
spec1=dccspec(uspec=multispec(replicate(2,uspec)),dccOrder=c(1,1),distribution = "mvnorm")
fit1=dccfit(spec1,data=data.frame(idfcbm$Reurn,idfcbm$Market))
fit1
##
## *---------------------------------*
## * DCC GARCH Fit *
## *---------------------------------*
##
## Distribution : mvnorm
## Model : DCC(1,1)
## No. Parameters : 11
## [VAR GARCH DCC UncQ] : [0+8+2+1]
## No. Series : 2
## No. Obs. : 236
## Log-Likelihood : 1404.188
## Av.Log-Likelihood : 5.95
##
## Optimal Parameters
## -----------------------------------
## Estimate Std. Error t value Pr(>|t|)
## [idfcbm.Reurn].mu -0.001338 0.001384 -0.96651 0.333790
## [idfcbm.Reurn].omega 0.000163 0.000080 2.03817 0.041532
## [idfcbm.Reurn].alpha1 0.174169 0.110460 1.57676 0.114851
## [idfcbm.Reurn].beta1 0.537654 0.177499 3.02905 0.002453
## [idfcbm.Market].mu 0.000887 0.000455 1.94965 0.051217
## [idfcbm.Market].omega 0.000006 0.000002 3.11450 0.001843
## [idfcbm.Market].alpha1 0.191297 0.028901 6.61900 0.000000
## [idfcbm.Market].beta1 0.725459 0.061554 11.78575 0.000000
## [Joint]dcca1 0.077530 0.037274 2.08004 0.037522
## [Joint]dccb1 0.779061 0.078908 9.87304 0.000000
##
## Information Criteria
## ---------------------
##
## Akaike -11.807
## Bayes -11.645
## Shibata -11.811
## Hannan-Quinn -11.742
##
##
## Elapsed time : 0.282057
cor1=rcor(fit1)
cor_return=cor1[1,2,]
plot.ts(cor_return,main="IDFC Before Merger")
library(estimatr)
garch=function(residuals)
{
e1=residuals^2
alpha=0.01
beta=0.01
gamma=0.01
omega=0.01
p=c(alpha,beta,gamma,omega)
p=c(0,0,0,0)
v=rep(0,length(residuals))
l=rep(0,length(residuals))
v[1]<-(omega)/(1-alpha-beta)
f=function(p){
for(i in 2:length(v))
{
v[i]=p[4]+p[1]*e1[i+1]+p[2]*v[i-1]+p[3]*df$Merger[i]
}
for(i in 1:length(v))
{
l[i]=log((1/(v[i]*pi*2)^0.5)*exp(-e1[i]/(2*v[i])))
if(is.nan(l[i]))
{l[i]=-100000}
}
l=na.omit(l)
som=sum(l)*-1
return(som)
}
res1=optim(p,f,control = list(maxit=c(100000)))
return(res1)
}
micici=lm(Reurn~Market+Merger,data=icici)
midfc=lm(Reurn~Market+Merger,data=idfc)
mhdfc=lm(Reurn~Market+Merger,data=hdfc)
mkotak=lm(Reurn~Market+Merger,data=kotak)
idfcg=garch(midfc$residuals)
icicig=garch(micici$residuals)
hdfcg=garch(mhdfc$residuals)
kotakg=garch(mkotak$residuals)
ch=function(residuals,par)
{
e1=residuals^2
alpha=0.01
beta=0.01
gamma=0.01
omega=0.01
p=c(alpha,beta,gamma,omega)
p=c(par[1],par[2],par[3],par[4])
v=rep(0,length(residuals))
l=rep(0,length(residuals))
v[1]<-(omega)/(1-alpha-beta)
for(i in 2:length(v))
{
v[i]=p[4]+p[1]*e1[i+1]+p[2]*v[i-1]+p[3]*df$Merger[i]
}
return(v)
}
hicici=ch(micici$residuals,icicig$par)
hidfc=ch(midfc$residuals,idfcg$par)
hhdfc=ch(mhdfc$residuals,hdfcg$par)
hkotak=ch(mkotak$residuals,kotakg$par)
#1 Cross Sectional
delta_bar=mean(idfcg$par[1],kotakg$par[1],hdfcg$par[1],icicig$par[1])
n=1/(4*(4-1))
gamma_bar=mean(idfcg$par[3],kotakg$par[3],hdfcg$par[3],icicig$par[3])
ave1=(idfcg$par[3]-gamma_bar)
ave2=(kotakg$par[3]-gamma_bar)
ave3=(hdfcg$par[3]-gamma_bar)
ave4=(icicig$par[3]-gamma_bar)
ave=sum(ave1,ave2,ave3,ave4)
t1=delta_bar/(n*ave)^0.5
#Since t3 value is greater than 4 easily volatility effect can be seen (Balaban Paper)
print(t1)
## [1] -4.253248
# Corrected Cross Sectional Test
idfcs=idfcg$par[3]/na.omit(hidfc)
hdfcs=hdfcg$par[3]/na.omit(hhdfc)
icicis=icicig$par[3]/na.omit(hicici)
kotaks=kotakg$par[3]/na.omit(hkotak)
s_bar=mean(sum(idfcs),sum(hdfcs),sum(icicis),sum(kotaks))
t2=s_bar/(n*(sum(var(kotaks)*length(kotaks),var(icicis)*length(icicis),var(hdfcs)*length(hdfcs),var(idfcs)*length(idfcs))))^0.5
print(t2)
## [1] 33.80772
#T4 value greater than 4 signifying volatility shifts (Balaban Paper)