事件研究以计算累积异常CDS变化

时间:2019-02-28 22:14:09

标签: r time-series

我正在尝试进行事件研究,以计算累积的异常CDS变化。但是,我的R代码不起作用。我有3家不同银行的3 CDS点差,每家银行都有一个特定的时间事件,而我的基准指数是itraxx指数。
当我运行eventstudy函数时,我收到一条错误消息:

  

“错误:没有成功的事件
  警告信息:
  1:在merge.zoo(firm.returns = c("-0.043267980", "-0.017153079", "-0.035214906",中:
    索引向量属于不同的类别:整数
  2:在merge.zoo(firm.returns = c("-0.0311983708558614", "-0.0358461317731358",中:
    索引向量属于不同的类别:整数
  3:在merge.zoo(firm.returns = c("0.00421053253634351", "-0.00421053253634351",中:
    索引向量属于不同的类别:整数“

预先感谢您的帮助。

setwd("/Users/mahfoudhammoud/Desktop")

library(urca)
library(tseries)
library(tsDyn)
library(vars)
library(ggplot2)
library(xts)
library(EventStudy)
library(zoo)

StockPriceReturns <- read.table("testdata.csv", header = TRUE , sep = ";")
itrax <- read.table("itraxx.csv", header = TRUE , sep = ";")
date = StockPriceReturns[,1] <- as.Date(StockPriceReturns[,1],"%d/%m/%y")
SG   = ts(StockPriceReturns[, 2])
logSG = log(SG)
DSG = diff(logSG)
BNP   = ts(StockPriceReturns[, 3])
logBNP = log(BNP)
DBNP= diff(logBNP)
UBS   = ts(StockPriceReturns[, 4])
logUBS = log(UBS)
DUBS = diff(logUBS)

date <-StockPriceReturns[-c(1),1]

itraxx = ts(itrax[,2])
logitrax = log(itraxx)
ditrax = diff(logitrax)

Myindexreturn = data.frame("date"= date, "Myindex" = ditrax)
Myindexreturn$date <- as.Date(Myindexreturn$date, "%d/%m/%y")
zoo(Myindexreturn)

CDSchange = data.frame("date" =date ,"SG" = DSG ,"BNP" = DBNP ,"UBS" = DUBS)
CDSchange$SG  <- as.character(CDSchange$SG) 
CDSchange$BNP <- as.character(CDSchange$BNP) 
CDSchange$UBS <- as.character(CDSchange$UBS)

matrix(data = CDSchange, ncol = 4)
CDS111 =matrix(data = CDSchange, ncol = 4)

CDSchange$date<-as.Date(CDSchange$date, "%d/%m/%y")
zoo(CDSchange)
zooCDS = zoo(CDSchange)

eventsDates <- data.frame("name"=c("SG","BNP","UBS"), "when"=c("05/04/2018","16/08/2018","28/11/2018")) 
eventsDates$name<-as.character(eventsDates$name) 
eventsDates$when<-as.Date(eventsDates$when, "%d/%m/%y")

es <- eventstudy(
       firm.returns = zooCDS,
       event.list = eventsDates, 
       event.window = 21, 
       type = "marketModel", 
       to.remap = TRUE, 
       remap = "cumsum",
       inference = TRUE, 
       inference.strategy = "bootstrap", 
       model.args = list(market.returns = Myindexreturn$Myindex)
     )

0 个答案:

没有答案