gof
computes for a given dataset and based on the choices of the user either all tests for a given amount of copulae, performs for a given testset every test with all available copulae or computes for given copulae and tests all possible combinations.
gof(x, priority = "tests", copula = NULL, tests = NULL, margins = "ranks",
dispstr = "ex", M = 50, MJ = 50, param = 0.5, param.est = T, df = 4,
df.est = T, m = 1, delta.J = 0.5, nodes.Integration = 12, m_b = 0.5,
zeta.m = 0, b_Rn = 0.05, processes = 1)
A matrix containing the residuals of the data.
A character string which is either "tests"
or "copula"
. "tests"
indicates that all implemented tests are performed for all copulae which the tests share. This are e.g. "normal"
and "clayton"
. If "copula"
is chosen, the tests which are able to test for "normal"
, "t"
, "frank"
, "gumbel"
and "clayton"
are performed. If one of the arguments tests
or copula
is not NULL
, then priority
doesn't affect the choice of the copulae and tests.
A character vector which indicates the copula to test for.
A character vector which indicates the tests to use.
Specifies which estimation method shall be used in case that the input data are not in the range [0,1]. The default is "ranks"
, which is the standard approach to convert data in such a case. Alternatively can the following distributions be specified: "beta"
, "cauchy"
, Chi-squared ("chisq"
), "f"
, "gamma"
, Log normal ("lnorm"
), Normal ("norm"
), "t"
, "weibull"
, Exponential ("exp"
).
A character string specifying the type of the symmetric positive definite matrix characterizing the elliptical copula. Implemented structures are "ex" for exchangeable and "un" for unstructured, see package copula
.
The amount of bootstrap rounds to be performed by each test. Default is 1000.
Just for the test gofKernel. Size of bootstrapping sample.
The copulae parameters to use for each test, if it shall not be estimated.
Shall be either TRUE
or FALSE
. TRUE
means that param
will be estimated.
The degrees of freedom, if not meant to be estimated. Only necessary if tested for "t"
-copula.
Indicates if df
shall be estimated. Has to be either FALSE
or TRUE
, where TRUE
means that it will be estimated.
Length of blocks. Only necessary if the test gofPIOSTn
is part of testset
.
Scaling parameter for the matrix of smoothing parameters. Only necessary if the test gofKernel
is part of testset
.
Number of knots of the bivariate Gauss-Legendre quadrature. Only necessary if the test gofKernel
is part of testset
.
The power of the statistic. Only necessary if the test gofRn
is part of testset
.
The adjustment parameter. Only necessary if the test gofRn
is part of testset
.
The bandwidth for the estimation of the first-order partial derivatives based on the empirical copula. Only necessary if the test gofRn
is part of testset
.
The number of parallel processes which are performed to speed up the bootstrapping. Shouldn't be higher than the number of logical processors. Please see the details.
A list containing several objects of class
gofCOP with the following components for each copulae
a character which informs about the performed analysis
a matrix with the p-values and test statistics of the individual tests including the hybrid test
If a character vector is given for the argument copula
and nothing for tests
, then all tests are performed for which the given copulae are implemented. If tests
contains a character vector of tests and copula = NULL
, then this tests will be performed for all implemented copulae. If character vectors are given for copula
and tests
, then the tests are performed with the given copulae. If tests = NULL
and copula = NULL
, then the argument priority
catches in and defines the procedure.
The time to compute the entire procedure is always estimated in case that M
or MJ
are 100 or higher.
For small values of M
, initializing the parallization via processes
does not make sense. The registration of the parallel processes increases the computation time. Please consider to enable parallelization just for high values of M
.
# NOT RUN {
data(IndexReturns)
gof(IndexReturns[c(1:100),c(1:2)], priority = "tests", copula = "normal",
tests = c("gofRosenblattSnB", "gofRosenblattSnC"), M = 10)
# }
Run the code above in your browser using DataLab