我正试图进行一项金融事件研究,在阅读了几篇文章和软件包之后,我仍然不知道如何处理我的问题。
我有三个数据:
df看起来像这样(节选)
df1 <- data.frame(date = c("2021-10-25", "2017-09-08", "2018-07-03", "2016-05-23"),
key = c("1", "1", "2", "3"),
country = c("ITA", "ITA", "LTU", "NLD" ))
df1$date <- as.Date(df1$date)
df2 <- data.frame(date = c("2021-10-24","2021-10-25","2021-10-26","2017-09-08","2017-09-09", "2017-09-10", "2018-07-01", "2018-07-02", "2018-07-03", "2016-05-23"),
key = c("1","1","1","1","1","1", "2", "2", "2", "3"),
price = as.numeric(c("40.86", "41.22", "44.41", "35.36", "36.84", "36.71", "20.05", "14.87", "16.80", "12.83")),
country = c("ITA", "ITA", "ITA", "ITA", "ITA", "ITA", "LTU", "LTU", "LTU", "NLD")
)
df2$date <- as.Date(df2$date)
df3 <- data.frame(date = c("2021-10-24","2021-10-25","2021-10-26","2021-10-26"))
df3$ITA <- as.numeric(c("1202.31","1208.73", "1221.14", "1218.46"))
df3$LTU <- as.numeric(c("187.43","188.01", "186.98", "187.41"))
df3$NLD <- as.numeric(c("1884.43","1880.00", "1860.98", "1876.74"))我希望找到一种方法来计算I公司的收益(id是关键),使用单个公司的股票数据,以及使用市场模型来计算公司(国家)的市场指数。
事件日期应该是t0,事件窗口在该事件日期(t-10,t15)附近,估计值应该在事件窗口之前计算(t-210,t-10)。
由于我有很多观察,所以我无法找到一种正确的方法来使用estudy2包,使我能够编写一个代码来进行事件研究,而不需要额外的“手工计算R”。
我试图解决这个问题的另一种方法是构造一个虚拟变量"t",该变量对每个公司的每个事件日期设置为0,然后我计算的虚拟日期从-250到15。然而,这并不能解决我的问题,因为我每个公司有多个事件日期,然后我不知道如何合并市场回报。
我还在这里看到了这篇文章:使用erer包的多个企业的事件研究和多个日期的for循环,但是在我的例子中,我有多个索引,而不是一个索引。
任何帮助都将不胜感激。
如果我的问题不清楚,请让我现在,我试着更新它,因为我知道。
发布于 2022-09-21 18:29:05
您可以使用EventStudy包(我是包作者)来解决如此广泛的财务事件研究。您所需要的只是定义请求文件(包含您的公司事件和事件窗口参数)并提供数据。所有其他的东西都由包裹来处理。关于输入文件的教程可以在其中一个小片段开始中找到。
https://stackoverflow.com/questions/71766119
复制相似问题