sign_test: An event study simple binomial sign test.

View source: R/nonparametric_tests.R

sign_testR Documentation

An event study simple binomial sign test.

Description

A binomial sign test which determines whether the frequency of positive abnormal returns in the event period is significantly different from one-half.

Usage

sign_test(list_of_returns, event_start, event_end)

Arguments

list_of_returns

a list of objects of S3 class returns, each element of which is treated as a security.

event_start

an object of Date class giving the first date of the event period.

event_end

an object of Date class giving the last date of the event period.

Details

This test is application of the simple binomial test to the event study, which indicates whether the cross-sectional frequency of positive abnormal returns is significantly different from 0.5. This test is stable to outliers, in other words allows for checking if the result is driven by few companies with extremely large abnormal performance. For this test the estimation period and the event period must not overlap, otherwise an error will be thrown. The test statistic is assumed to have a normal distribution in approximation under a null hypothesis, if the number of securities is large. Typically the test is used together with parametric tests. The test is well-specified for the case, when cross-sectional abnormal returns are not symmetric. Also this procedure is less sensitive to extreme returns than the rank test. The significance levels of α are 0.1, 0.05, and 0.01 (marked respectively by *, **, and ***).

Value

A data frame of the following columns:

  • date: a calendar date

  • weekday: a day of the week

  • percentage: a share of non-missing observations for a given day

  • sign_stat: a sign test statistic

  • sign_signif: a significance of the statistic

References

Boehmer E., Musumeci J., Poulsen A.B. Event-study methodology under conditions of event-induced variance. Journal of Financial Economics, 30(2):253-272, 1991.

See Also

nonparametric_tests, generalized_sign_test, corrado_sign_test, rank_test, modified_rank_test, and wilcoxon_test.

Examples

## 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")
tickers <- c("AMZN", "ZM", "UBER", "NFLX", "SHOP", "FB", "UPWK")
get_prices_from_tickers(tickers,
                        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") %>%
    apply_market_model(regressor = rates_indx,
                       same_regressor_for_all = TRUE,
                       market_model = "sim",
                       estimation_method = "ols",
                       estimation_start = as.Date("2019-04-01"),
                       estimation_end = as.Date("2020-03-13")) %>%
    sign_test(event_start = as.Date("2020-03-16"),
              event_end = as.Date("2020-03-20"))

## End(Not run)
## The result of the code above is equivalent to:
data(securities_returns)
sign_test(list_of_returns = securities_returns,
          event_start =  as.Date("2020-03-16"),
          event_end = as.Date("2020-03-20"))


irudnyts/estudy2 documentation built on April 21, 2022, 10:50 p.m.