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)
"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.
"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"
).
copula
.
TRUE
or FALSE
. TRUE
means that param
will be estimated.
"t"
-copula.
df
shall be estimated. Has to be either FALSE
or TRUE
, where TRUE
means that it will be estimated.
gofPIOSTn
is part of testset
.
gofKernel
is part of testset
.
gofKernel
is part of testset
.
gofRn
is part of testset
.
gofRn
is part of testset
.
gofRn
is part of testset
.
class
gofCOP with the following components for each copulae
gofCOP with the following components for each copulaecopula
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
.
data(IndexReturns)
gof(IndexReturns[c(1:100),c(1:2)], priority = "tests", copula = "normal",
tests = c("gofRosenblattSnB", "gofRosenblattSnC"), M = 20)
Run the code above in your browser using DataLab