Learn R Programming

highfrequency (version 1.0.1)

rmOutliersTrades: Remove outliers in trades without using quote data

Description

Delete entries for which the price is outlying with respect to surrounding entries. In comparison to tradesCleanupUsingQuotes, this function doesn't need quote data.

Usage

rmOutliersTrades(pData, maxi = 10, window = 50, type = "advanced", tz = NULL)

Value

xts object or data.table depending on type of input.

Arguments

pData

a data.table or xts object at least containing the column "PRICE".

maxi

an integer, indicating the maximum number of median absolute deviations allowed.

window

an integer, indicating the time window for which the "outlyingness" is considered.

type

should be "standard" or "advanced" (see details).

tz

fallback time zone used in case we we are unable to identify the timezone of the data, by default: tz = NULL. With the non-disk functionality, we attempt to extract the timezone from the DT column (or index) of the data, which may fail. In case of failure we use tz if specified, and if it is not specified, we use "UTC".

Author

Jonathan Cornelissen, Kris Boudt, and Onno Kleen.

Details

  • If type = "standard": Function deletes entries for which the price deviated by more than "maxi" median absolute deviations from a rolling centered median (excluding the observation under consideration) of window observations.

  • If type = "advanced": Function deletes entries for which the price deviates by more than "maxi" median absolute deviations from the value closest to the price of these three options:

    1. Rolling centered median (excluding the observation under consideration)

    2. Rolling median of the following window of observations

    3. Rolling median of the previous window of observations

    The advantage of this procedure compared to the "standard" proposed by Barndorff-Nielsen et al. (2010, footnote 8) is that it will not incorrectly remove large price jumps. Therefore this procedure has been set as the default for removing outliers.

    Note that the median absolute deviation is taken over the entire day. In case it is zero (which can happen if prices don't change much), the median absolute deviation is taken over a subsample without constant prices.

References

Barndorff-Nielsen, O. E., P. R. Hansen, A. Lunde, and N. Shephard (2009). Realized kernels in practice: Trades and quotes. Econometrics Journal, 12, C1-C32.