View source: R/nonparametric_tests.R
wilcoxon_test | R Documentation |
Performs Wilcoxon test on the event period for abnormal returns (abnormal returns are considered as differences).
wilcoxon_test(list_of_returns, event_start, event_end)
list_of_returns |
a list of objects of S3 class |
event_start |
an object of |
event_end |
an object of |
The estimation periods can overlap with event windows, because the procedure
takes into account only abnormal returns from the event window. The test has
the same algorithm as built-in R
wilcox.test
. The
critical values are exact values, which are obtained from
qsignrank
. The algorithm is the following: for each day in
event window the cross-sectional abnormal returns treated as sample of
differences. Firstly the absolute value of these differences are computed,
and corresponding ranks of non-zero values are calculated. The test statistic
is the sum of ranks, corresponding to positive abnormal returns. The
significance levels of α are 0.1, 0.05, and 0.01 (marked
respectively by *, **, and ***).
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
wlcx_stat
: a Wilcoxon signed rank test statistic
wlcx_signif
: a significance of the statistic
Wilcoxon F. Individual Comparisons by Ranking Methods. Biometrics Bulletin 1(6):80-83, 1945.
Kolari J.W., Pynnonen S. Event Study Testing with Cross-sectional Correlation of Abnormal Returns. The Review of Financial Studies, 23(11):3996-4025, 2010.
Lehmann E.L, Nonparametrics: Statistical Methods Based on Ranks. San Francisco: Holden-Day, 1975.
Hollander M., Wolfe D.A. Nonparametric Statistical Methods. New York: John Wiley & Sons, 1973.
nonparametric_tests
, sign_test
,
generalized_sign_test
, corrado_sign_test
,
rank_test
, and modified_rank_test
.
## 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")) %>% wilcoxon_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) wilcoxon_test(list_of_returns = securities_returns, event_start = as.Date("2020-03-16"), event_end = as.Date("2020-03-20"))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.