Learn R Programming

ExtremeRisks (version 0.0.4-1)

rbtimeseries: Simulation of Two-Dimensional Temporally Dependent Observations

Description

Simulates samples from parametric families of bivariate time series models.

Usage

rbtimeseries(ndata, dist="studentT", type="AR", copula="Gumbel", par, burnin=1e+03)

Value

A vector of \((2 \times n)\) observations simulated from a specified bivariate time series model.

Arguments

ndata

A positive interger specifying the number of observations to simulate.

dist

A string specifying the parametric family of the innovations distribution. By default dist="studentT" specifies a Student-t family of distributions. See Details.

type

A string specifying the type of time series. By default type="AR" specifies a linear Auto-Regressive time series. See Details.

copula

A string specifying the type copula to be used. By default copula="Gumbel" specifies the Gumbel copula. See Details.

par

A list of \(p\) parameters to be specified for the bivariate time series parametric family. See Details.

burnin

A positive interger specifying the number of initial observations to discard from the simulated sample.

Details

For a time series class (type), with a parametric family (dist) for the innovations, a sample of size ndata is simulated. See for example Brockwell and Davis (2016).

  • The available categories of bivariate time series models are: Auto-Regressive (type="AR"), Auto-Regressive and Moving-Average (type="ARMA"), Generalized-Autoregressive-Conditional-Heteroskedasticity (type="GARCH") and Auto-Regressive.

  • With AR(1) times series the available families of distributions for the innovations and the dependence structure (copula) are:

    • Student-t (dist="studentT" and copula="studentT") with marginal parameters (equal for both distributions): \(\phi\in(-1,1)\) (autoregressive coefficient), \(\nu>0\) (degrees of freedom) and dependence parameter \(dep\in(-1,1)\). The parameters are specified as par <- list(corr, df, dep);

    • Asymmetric Student-t (dist="AStudentT" and copula="studentT") with marginal parameters (equal for both distributions): \(\phi\in(-1,1)\) (autoregressive coefficient), \(\nu>0\) (degrees of freedom) and dependence parameter \(dep\in(-1,1)\). The paraters are specified as par <- list(corr, df, dep). Note that in this case the tail index of the lower and upper tail of the first marginal are different, see Padoan and Stupfler (2020) for details;

  • With ARMA(1,1) times series the available families of distributions for the innovations and the dependence structure (copula) are:

    • symmetric Pareto (dist="double-Pareto" and copula="Gumbel" or copula="Gaussian") with marginal parameters (equal for both distributions): \(\phi\in(-1,1)\) (autoregressive coefficient), \(\sigma>0\) (scale), \(\alpha>0\) (shape), \(\theta\) (movingaverage coefficient), and dependence parameter \(dep\) (\(dep>0\) if copula="Gumbel" or \(dep\in(-1,1)\) if copula="Gaussian"). The parameters are specified as par <- list(corr, scale, shape, smooth, dep).

    • symmetric Pareto (dist="double-Pareto" and copula="Gumbel" or copula="Gaussian") with marginal parameters (equal for both distributions): \(\phi\in(-1,1)\) (autoregressive coefficient), \(\sigma>0\) (scale), \(\alpha>0\) (shape), \(\theta\) (movingaverage coefficient), and dependence parameter \(dep\) (\(dep>0\) if copula="Gumbel" or \(dep\in(-1,1)\) if copula="Gaussian"). The parameters are specified as par <- list(corr, scale, shape, smooth, dep). Note that in this case the tail index of the lower and upper tail of the first marginal are different, see Padoan and Stupfler (2020) for details;

  • With ARCH(1)/GARCH(1,1) time series the distribution of the innovations are symmetric Gaussian (dist="Gaussian") or asymmetric Gaussian dist="AGaussian". In both cases the marginal parameters (equal for both distributions) are: \(\alpha_0\), \(\alpha_1\), \(\beta\). In the asymmetric Gaussian case the tail index of the lower and upper tail of the first marginal are different, see Padoan and Stupfler (2020) for details. The available copulas are: Gaussian (copula="Gaussian") with dependence parameter \(dep\in(-1,1)\), Student-t (copula="studentT") with dependence parameters \(dep\in(-1,1)\) and \(\nu>0\) (degrees of freedom), Gumbel (copula="Gumbel") with dependence parameter \(dep>0\). The parameters are specified as par <- list(alpha0, alpha1, beta, dep) or par <- list(alpha0, alpha1, beta, dep, df).

References

Brockwell, Peter J., and Richard A. Davis. (2016). Introduction to time series and forecasting. Springer.

Anthony C. Davison, Simone A. Padoan and Gilles Stupfler (2023). Tail Risk Inference via Expectiles in Heavy-Tailed Time Series, Journal of Business & Economic Statistics, 41(3) 876-889.

See Also

rtimeseries, expectiles

Examples

Run this code
# Data simulation from a 2-dimensional AR(1) with bivariate Student-t distributed
# innovations, with one marginal distribution whose lower and upper tail indices
# that are different

tsDist <- "AStudentT"
tsType <- "AR"
tsCopula <- "studentT"

# parameter setting
corr <- 0.8
dep <- 0.8
df <- 3
par <- list(corr=corr, dep=dep, df=df)

# sample size
ndata <- 2500

# Simulates a sample from an AR(1) model with Student-t innovations
data <- rbtimeseries(ndata, tsDist, tsType, tsCopula, par)

# Extreme expectile estimation
plot(data, pch=21)
plot(data[,1], type="l")
plot(data[,2], type="l")

Run the code above in your browser using DataLab