Learn R Programming

meboot (version 1.0-2)

meboot.default: Generate Maximum Entropy Bootstrapped Time Series Ensemble

Description

This function generates maximum entropy bootstrap replicates for dependent data. (See details.)

Usage

meboot.default (x, reps=999, trim=0.10, reachbnd=TRUE,
  expand.sd=TRUE, force.clt=TRUE, elaps=FALSE, ...)

Arguments

Value

xoriginal data provided as input.ensemblemaximum entropy bootstrap replicates.xxsorted order stats (x[1] is minimum value).zclass intervals limits.dvdeviations of consecutive data values.dvtrimtrimmed mean of dv.xmindata minimum for ensemble=x[1]-dvtrim.xmaxdata x maximum for ensemble=x[n]+dvtrim.desintxbdesired inteval means.ordxxordered x values.elapselapsed time.

Details

Seven-steps algorithm:
  1. Sort the original data in increasing order and store the ordering index vector.
  2. Compute intermediate points on the sorted series.
  3. Compute lower limit for left tail (xmin) and upper limit for right tail (xmax). This is done by computing thetrim(e.g. 10%) trimmed mean of deviations among all consecutive observations. Thus the tails are uniformly distributed.
  4. Compute the mean of the maximum entropy density within each interval in such a way that themean preserving constraintis satisfied. (Denoted as$m_t$in the reference paper.) The first and last interval means have distinct formulas. See Theil and Laitinen (1980) for details.
  5. Generate random numbers from the [0,1] uniform interval and compute sample quantiles at those points.
  6. Apply to the sample quantiles the correct order to keep the dependence relationships of the observed data.
  7. Repeat the previous steps several times (e.g. 999).

References

Vinod, H.D. (2006), Maximum Entropy Ensembles for Time Series Inference in Economics, Journal of Asian Economics, 17(6), pp. 955-978

Vinod, H.D. (2004), Ranking mutual funds using unconventional utility theory and stochastic dominance, Journal of Empirical Finance, 11(3), 353-377.

See Also

slider.mts.

Examples

Run this code
## Ensemble for the AirPassenger time series data
    set.seed(345)
    out <- meboot(x=AirPassengers, reps=100, trim=0.10, elaps=TRUE)

    ## Ensemble for T=5 toy time series used in Vinod (2004)
    set.seed(345)
    out <- meboot(x=c(4, 12, 36, 20, 8), reps=999, trim=0.25, elaps=TRUE)
    mean(out$ens)  # ensemble mean should be close to sample mean 16

Run the code above in your browser using DataLab