R Markdown

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")

Including Plots

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)