Archimax family
Archimax copulas form a hybrid family that combines an Archimedean generator
Bivariate only (for now)
This section and the current implementation address the bivariate case. Multivariate extensions are possible; if you’d like to contribute, we’re happy to provide guidance on how to integrate them.
An Archimax copula [ DocumenterCitations.CitationSiteNode("caperaa2000-cite-1")
]
where
When
Archimax in this package
This package provides the abstract type ArchimaxCopula. Because we expose a wide set of Archimedean generators and extreme-value copulas, many combinations are possible: any Archimedean copula can be paired with any extreme-value copula to produce a valid Archimax copula.
The constructor combines supported components:
Provide a supported Archimedean generator
gen::Generator. SeeGeneratorand available Archimedean generators.Provide a supported extreme-value tail
tail::Tail. SeeExtremeValueCopulaand available extreme-value models.
With these conventions, ArchimaxCopula(d, gen, tail) builds the corresponding copula whenever the two components support the requested dimension.
You can define an archimax copula as follows:
using Copulas, Distributions, Plots
C = ArchimaxCopula(2,
Copulas.FrankGenerator(0.8), # Archimedean generator
Copulas.AsymGalambosTail(0.35, 0.65, 0.3) # Stable Tail Dependence
)
plot(C)
Advanced Concepts
Tail behaviour:
The upper tail is governed by the extreme value structure, while the lower tail is driven by the curvature of the Archimedean generator
For bivariate Archimax copulas,
where
Classical constructions
BB4:
GalambosTail(EV) +ClaytonGenerator(only positive dependence suported yet) gamma LT (LT family includes Clayton as a special case).BB5:
GalambosTail(EV) + positive stable LT (LT family includes Gumbel as a limiting case).
Each has its own docstring and dedicated section in this documentation.
Simulation of Archimax Copulas
The implemented simulation scheme is the “frailty + EV” construction (e.g. [ DocumenterCitations.CitationSiteNode("caperaa2000-cite-2")
] [ DocumenterCitations.CitationSiteNode("mai2012simulating-cite-1")
], which is valid only when the Archimedean generator
has the Archimax copula
Simulate
with stable tail function (i.e., Pickands ). Simulate a frailty
whose Laplace transform is . Set
, . Return .
The sampling recipe uses the supported generator and extreme-value components; its internal representations are not part of the public contract.
See the canonical Public API entry for ArchimaxCopula.
Conditionals and distortions
Let
In the bivariate case (
Using the chain rule and setting
where the factor
P. Capéraà, A.-L. Fougères and C. Genest. Bivariate distributions with given extreme value attractor. Journal of Multivariate Analysis 72, 30–49 (2000).
J.-F. Mai and M. Scherer. Simulating copulas: stochastic models, sampling algorithms, and applications. Vol. 4 (World Scientific, 2012).
Build-your-own Archimax
Use any Archimedean generator G<:Generator and any extreme value tail E<:Tail:
gen = ClaytonGenerator(7.0) # any Archimedean generator
tail = GalambosTail(3.2) # any extreme value tail
C = ArchimaxCopula(gen, tail) # bivariate Archimax copula
samples = rand(C,200) # sampling
cdf(C,samples) # cdf
pdf(C,samples) # pdfBuilding blocks:
Archimedean generators → see [available Archimedean generators](@ref available_archimedean_models).
Extreme-value tails → see [available extreme-value tails](@ref available_extreme_models).
Parameter validity is handled by the underlying types; no extra checks are needed at the Archimax level.
Sampling
The provided sampler for Archimax uses the frailty representation: M ∼ frailty(gen) with Laplace transform ϕ, and EV draws V from tail. It returns U = ϕ.( -log.(V) ./ M ). This requires the generator to be completely monotone (so that a frailty distribution exists). If a generator is only 2-monotone, cdf/pdf work as usual, but rand may not be available.
Available models
Archimax copulas are built by pairing an Archimedean generator with an extreme value tail bahavior. Beyond the named families below, any Archimedean model in this package can be combined with any EV model via the generic constructor ArchimaxCopula(gen, tail).
Bivariate only
The current ArchimaxCopula implementation remains bivariate. The package now provides multivariate extreme-value tails, but extending the Archimax density, conditioning, and sampling machinery beyond dimension two is separate work.
BB4Copula
BB4 combines the Clayton generator with the Galambos stable tail dependence function. For
Its parameters satisfy BB4Copula(θ, δ), BB4Copula{2}(θ, δ), or BB4Copula(2, θ, δ). As
BB5Copula
BB5 combines the Gumbel generator with the Galambos stable tail dependence function. With
Its parameters satisfy BB5Copula(θ, δ), BB5Copula{2}(θ, δ), or BB5Copula(2, θ, δ). The case
See the canonical Public API for complete limiting and validation behavior.
References
P. Capéraà, A.-L. Fougères and C. Genest. Bivariate distributions with given extreme value attractor. Journal of Multivariate Analysis 72, 30–49 (2000).
J.-F. Mai and M. Scherer. Simulating copulas: stochastic models, sampling algorithms, and applications. Vol. 4 (World Scientific, 2012).