[Eventstudies-commits] r74 - in pkg: R data man

noreply at r-forge.r-project.org noreply at r-forge.r-project.org
Sat Jul 13 17:20:13 CEST 2013


Author: vikram
Date: 2013-07-13 17:20:12 +0200 (Sat, 13 Jul 2013)
New Revision: 74

Added:
   pkg/R/excessReturn.R
   pkg/R/marketResidual.R
   pkg/data/marketmodelData.rda
   pkg/man/excessReturn.Rd
   pkg/man/marketResidual.Rd
Modified:
   pkg/R/AMM.R
   pkg/man/AMM.Rd
   pkg/man/firmExposures.Rd
   pkg/man/makeX.Rd
   pkg/man/onefirmAMM.Rd
Log:
Added function, documentation for market residual, excess return and minor corrections in AMM function; Work in progress

Modified: pkg/R/AMM.R
===================================================================
--- pkg/R/AMM.R	2013-07-13 10:30:57 UTC (rev 73)
+++ pkg/R/AMM.R	2013-07-13 15:20:12 UTC (rev 74)
@@ -5,8 +5,12 @@
   #-----------------------------
   # Getting RHS variables in AMM
   #-----------------------------
-  print("Preparing explanatory variables for computation of Augmented Market Models")
-  print("If any argument is missing then please refer to the documentation for detailed explanation.")
+  #print("Preparing explanatory variables for computation of Augmented Market Models")
+  print("If there is missing argument then please refer to the documentation for detailed explanation")
+  if(amm.type!= "onefirm" & amm.type!="manyfirms" & amm.type!="firmExposures"){
+    stop("Input amm.type is missing")
+  }
+  
   # Checking arguments  
   nlags.check <- testObject(nlags)
   if(nlags.check==FALSE){ nlags <- NA}

Added: pkg/R/excessReturn.R
===================================================================
--- pkg/R/excessReturn.R	                        (rev 0)
+++ pkg/R/excessReturn.R	2013-07-13 15:20:12 UTC (rev 74)
@@ -0,0 +1,13 @@
+###############
+# Excess return
+###############
+# Argument:
+# 1. data.object: This is a time series object with firm return and market return
+# 2. firm.name: It is the firm column name in the data object
+# 3. market.name: It is the market (index) column name in the data object
+# Output:
+# Value: Excess market return
+excessReturn <- function(firm.name,market.name,data.object){
+  ma.ret <- data.object[,firm.name]-data.object[,market.name]
+  return(ma.ret)
+}

Added: pkg/R/marketResidual.R
===================================================================
--- pkg/R/marketResidual.R	                        (rev 0)
+++ pkg/R/marketResidual.R	2013-07-13 15:20:12 UTC (rev 74)
@@ -0,0 +1,27 @@
+#########################
+# Market model adjustment
+#########################
+# Argument:
+# 1. mm.formula: Here the input is the linear model (lm) formula for eg: a ~ b + c
+#                If formula is not given then first column will be dependent and                   rest will be independent
+# 2. data.object: Single time series object with all the variables
+# Output:
+# Value: Market residual after extracting market returns from the firm return
+marketResidual <- function(mm.formula=NULL,data.object){
+  # Storing NA observations
+  na.date <- data.object[which(complete.cases(data.object)==FALSE)]
+  # Extracting market residuals
+  if(is.null(mm.formula)==TRUE){
+    formula <- paste(colnames(data.object)[1],"~",
+                     colnames(data.object)[2:NCOL(data.object)],sep="")
+    reg <- lm(as.formula(formula),data=data.object)
+  }else{
+    
+    reg <- lm(as.formula(mm.formula),data=data.object)
+  }
+  resid <- xts(reg$residuals,as.Date(attr(reg$residuals,"names")))
+  suppressWarnings(tot.resid <- rbind(resid,
+                                      xts(rep(NA,nrow(na.date)),
+                                          index(na.date))))
+  return(tot.resid)
+}

Added: pkg/data/marketmodelData.rda
===================================================================
(Binary files differ)


Property changes on: pkg/data/marketmodelData.rda
___________________________________________________________________
Added: svn:mime-type
   + application/octet-stream

Modified: pkg/man/AMM.Rd
===================================================================
--- pkg/man/AMM.Rd	2013-07-13 10:30:57 UTC (rev 73)
+++ pkg/man/AMM.Rd	2013-07-13 15:20:12 UTC (rev 74)
@@ -37,7 +37,7 @@
 
 \examples{ 
 # Create RHS before running AMM()
-data("ammData",package="amm")
+data("ammData")
 NIFTY_INDEX <- y3c3$NIFTY_INDEX
 INRUSD <- y3c3$INRUSD
 Company_A <- y3c3$Company_A
@@ -46,7 +46,7 @@
 regressand <- cbind(Company_A,Company_B,Company_C)
 
 # One firm
-of <- amm(amm.type="onefirm",rj=Company_A,
+of <- AMM(amm.type="onefirm",rj=Company_A,
             nlags=NA,
             verbose=TRUE,
             dates= as.Date(c("2005-01-15","2006-01-07","2007-01-06",
@@ -55,7 +55,7 @@
            switch.to.innov=TRUE, rM1purge=TRUE, nlags=1)
 
 # Many firm
-mf<- amm(amm.type="manyfirm",regressand,
+mf<- AMM(amm.type="manyfirm",regressand,
             lags=NA, nlags=NA,
             verbose=TRUE,
             dates= as.Date(c("2005-01-15","2006-01-07","2007-01-06",

Added: pkg/man/excessReturn.Rd
===================================================================
--- pkg/man/excessReturn.Rd	                        (rev 0)
+++ pkg/man/excessReturn.Rd	2013-07-13 15:20:12 UTC (rev 74)
@@ -0,0 +1,29 @@
+\name{excessReturn}
+\alias{excessReturn}
+
+\title{A function that estimates excess return}
+
+\description{ This function estimates excess return. If the the firm return is rj and market return is rM then output will be rj less rM.
+}
+
+\usage{excessReturn(firm.name, market.name, data.object)
+}
+
+\arguments{
+  \item{data.object}{This is a time series object with firm return and market return}
+  \item{firm.name}{It is the firm column name in the data object}
+  \item{market.name}{It is the market (index) column name in the data object}
+
+}
+\value{ Excess market return}
+
+\author{Vikram Bahure}
+
+\examples{ 
+data(marketmodelData)
+er.result <- excessReturn(firm.name="ranbaxyacp",market.name="nifty",
+                          data.object=mmData)
+
+}
+
+\keyword{excessReturn}
\ No newline at end of file

Modified: pkg/man/firmExposures.Rd
===================================================================
--- pkg/man/firmExposures.Rd	2013-07-13 10:30:57 UTC (rev 73)
+++ pkg/man/firmExposures.Rd	2013-07-13 15:20:12 UTC (rev 74)
@@ -58,7 +58,7 @@
 
 \examples{
 # firmExposures
-data("firmExposuresData",package="amm")
+data("firmExposuresData")
 rj  <- test$Company_A
 rM1 <- test$NIFTY_INDEX
 rM2 <- test$usdinr

Modified: pkg/man/makeX.Rd
===================================================================
--- pkg/man/makeX.Rd	2013-07-13 10:30:57 UTC (rev 73)
+++ pkg/man/makeX.Rd	2013-07-13 15:20:12 UTC (rev 74)
@@ -65,7 +65,7 @@
 
 \examples{
 # makeX
-data("test",package="amm")
+data("firmExposuresData")
 rj  <- test$Company_A
 rM1 <- test$NIFTY_INDEX
 rM2 <- test$usdinr

Added: pkg/man/marketResidual.Rd
===================================================================
--- pkg/man/marketResidual.Rd	                        (rev 0)
+++ pkg/man/marketResidual.Rd	2013-07-13 15:20:12 UTC (rev 74)
@@ -0,0 +1,33 @@
+\name{marketResidual}
+\alias{marketResidual}
+
+\title{This function extracts market return from the firm return }
+
+\description{ This function extracts market return using regression from the firm return to get the residual return
+}
+
+\usage{marketResidual(mm.formula=NULL, data.object)
+}
+
+\arguments{
+  \item{data.object}{Single time series object with all the variables}
+  \item{mm.formula}{Here the input is the linear model (lm) formula for eg: a ~ b + c
+                    If formula is not given then first column will be treated as 
+                    dependent and rest will be independent}
+
+}
+\value{ Market residual after extracting market returns from the firm return
+}
+
+\author{Vikram Bahure}
+
+\examples{ 
+data(marketmodelData)
+# Forumla for market model
+mm.formula <- paste("ranbaxyacp","~","nifty","+","drug",sep="")
+# Extracting market residual
+mm.result <- marketResidual(mm.formula=mm.formula,data.object=mmData)
+
+}
+
+\keyword{marketResidual}
\ No newline at end of file

Modified: pkg/man/onefirmAMM.Rd
===================================================================
--- pkg/man/onefirmAMM.Rd	2013-07-13 10:30:57 UTC (rev 73)
+++ pkg/man/onefirmAMM.Rd	2013-07-13 15:20:12 UTC (rev 74)
@@ -42,7 +42,7 @@
 
 \examples{ 
 # Create RHS before running onefirmAMM()
-data("ammData",package="amm")
+data("ammData")
 NIFTY_INDEX <- y3c3$NIFTY_INDEX
 INRUSD <- y3c3$INRUSD
 Company_A <- y3c3$Company_A



More information about the Eventstudies-commits mailing list