R/seq_date.R

#' Create Date sequence without weekends and holidays
#'
#' @param Date1 date object 1
#' @param Date2 date object 2
#'
#' @return date vector
#' @export
#'
#' @rawNamespace import(timeDate, except = c(skewness, kurtosis))
#' @importFrom magrittr %>%
#'
#' @examples alignReturnsWeights(returns, weights)
#'
seq_date <- function (date1, date2) {

  date1 <- as.Date(date1)
  date2 <- as.Date(date2)
  seq(date1, date2, by="days") %>%
    .[!(weekdays(.) %in% c("Saturday", "Sunday"))] %>%
    .[!(. %in% (c(holiday(2010:2025, "NewYearsDay"),
                  holiday(2010:2025, "GoodFriday"),
                  holiday(2010:2025, "EasterMonday"),
                  holiday(2010:2025, "LaborDay"),
                  holiday(2010:2025, "DEAscension"),
                  holiday(2010:2025, "PentecostMonday"),
                  holiday(2010:2025, "DECorpusChristi"),
                  holiday(2010:2025, "DEGermanUnity"),
                  holiday(2010:2025, "ChristmasEve"),
                  holiday(2010:2025, "ChristmasDay"),
                  holiday(2010:2025, "BoxingDay"),
                  holiday(2010:2025, "DENewYearsEve")) %>%
                  as.Date()))]

}
rengelke/quantTraiding_trato documentation built on Oct. 13, 2020, 12:01 p.m.