View source: R/apply_market_model.R
returns | R Documentation |
returns
.Constructs an object of S3 class returns
.
returns(
rates,
regressor,
market_model = c("mean_adj", "mrkt_adj", "sim"),
estimation_method = c("ols"),
estimation_start,
estimation_end
)
rates |
an object of class either |
regressor |
an object of the same class as |
market_model |
a character indicating the market model among
|
estimation_method |
a character specifying an estimation method for
|
estimation_start |
an object of |
estimation_end |
an object of |
The constructor is a generic function, dispatched for classes zoo
data.frame
. Parameters rates
and regressor
should be
objects of the same class (zoo
or data.frame
). There are three
market model implemented. mean_adj
stands for mean-adjusted-returns
model, which is the average of returns during the estimation period.
mrkt_adj
represents market-adjusted-returns model: the securities'
rates of returns are simply market index rates of returns (in terms of
parameters - regressor
). Finally, sim
stands for single-index
market model For this model only Ordinary Least Squares
estimation_method
is currently implemented. All models are described
in Brown and Warner (1985).
An object of S3 class returns
, which contains following
fields:
observed: an object of zoo
class containing observed rates of
returns.
predicted: an object of zoo
class containing predicted by a
market model rates of returns.
lower95CI: a lower bound of the 95% Confidence Interval for predicted rates of returns.
upper95CI: an upper bound of the 95% Confidence Interval for predicted rates of returns.
abnormal: an object of zoo
class containing abnormal returns.
regressor: an object of zoo
class containing rates of
regressor (typically market index).
market_model: a code name of the market model.
full_name_market_model: a full name of the market model.
estimation_method: a code name of the estimation method (applied only for SIM).
full_name_estimation_method: a full name of the estimation method (applied only for SIM).
coefficients: coefficients \alpha
and \beta
for SIM market
model (applied only for SIM).
estimation_start: a start date of the estimation period.
estimation_end: an end date of the estimation period.
estimation_length: a length of the estimation period.
Brown S.J., Warner J.B. Using Daily Stock Returns, The Case of Event Studies. Journal of Financial Economics, 14:3-31, 1985.
apply_market_model
library("zoo")
## 1. Mean-adjusted-returns model
## Not run:
library("magrittr")
single_return <- get_prices_from_tickers("AMZN",
start = as.Date("2019-04-01"),
end = as.Date("2020-04-01"),
quote = "Close",
retclass = "zoo") %>%
get_rates_from_prices(quote = "Close",
multi_day = TRUE,
compounding = "continuous") %>%
returns(market_model = "mean_adj",
estimation_start = as.Date("2019-04-01"),
estimation_end = as.Date("2020-03-13"))
## End(Not run)
## The result of the code above is equivalent to:
data(rates)
single_return <- returns(rates[, "AMZN"],
market_model = "mean_adj",
estimation_start = as.Date("2019-04-01"),
estimation_end = as.Date("2020-03-13"))
## 2. Market-adjusted-returns model
## Not run:
library("magrittr")
rates_indx <- get_prices_from_tickers("^GSPC",
start = as.Date("2019-04-01"),
end = as.Date("2020-04-01"),
quote = "Close",
retclass = "zoo") %>%
get_rates_from_prices(quote = "Close",
multi_day = TRUE,
compounding = "continuous")
single_return <- get_prices_from_tickers("AMZN",
start = as.Date("2019-04-01"),
end = as.Date("2020-04-01"),
quote = "Close",
retclass = "zoo") %>%
get_rates_from_prices(quote = "Close",
multi_day = TRUE,
compounding = "continuous") %>%
returns(regressor = rates_indx,
market_model = "mrkt_adj",
estimation_start = as.Date("2019-04-01"),
estimation_end = as.Date("2020-03-13"))
## End(Not run)
## The result of the code above is equivalent to:
data(rates, rates_indx)
single_return <- returns(rates = rates[, "AMZN", drop = FALSE],
regressor = rates_indx,
market_model = "mrkt_adj",
estimation_method = "ols",
estimation_start = as.Date("2019-04-01"),
estimation_end = as.Date("2020-03-13"))
## 3. Single-index market model
## Not run:
library("magrittr")
rates_indx <- get_prices_from_tickers("^GSPC",
start = as.Date("2019-04-01"),
end = as.Date("2020-04-01"),
quote = "Close",
retclass = "zoo") %>%
get_rates_from_prices(quote = "Close",
multi_day = TRUE,
compounding = "continuous")
single_return <- get_prices_from_tickers("AMZN",
start = as.Date("2019-04-01"),
end = as.Date("2020-04-01"),
quote = "Close",
retclass = "zoo") %>%
get_rates_from_prices(quote = "Close",
multi_day = TRUE,
compounding = "continuous") %>%
returns(regressor = rates_indx,
market_model = "sim",
estimation_method = "ols",
estimation_start = as.Date("2019-04-01"),
estimation_end = as.Date("2020-03-13"))
## End(Not run)
## The result of the code above is equivalent to:
data(rates, rates_indx)
single_return <- returns(rates = rates[, "AMZN", drop = FALSE],
regressor = rates_indx,
market_model = "sim",
estimation_method = "ols",
estimation_start = as.Date("2019-04-01"),
estimation_end = as.Date("2020-03-13"))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.