Lower Tail Dependence Covariance

PortfolioOptimisers.LowerTailDependenceCovarianceType
struct LowerTailDependenceCovariance{__T_ve, __T_alpha, __T_ex} <: AbstractCovarianceEstimator

Measures co-movement in the lower tail: the share of an asset's worst returns that fall on the same dates as another's.

The statistic is the empirical lower tail dependence coefficient at level alpha. It captures the dependence that matters for joint drawdowns and for stress scenarios, which a full-sample correlation averages away.

Fields

  • ve: Variance estimator.
  • alpha: Quantile level for the lower tail.
  • ex: Parallel execution strategy.

Constructors

LowerTailDependenceCovariance(;    ve::AbstractVarianceEstimator = SimpleVariance(),    alpha::Number = 0.05,    ex::FLoops.Transducers.Executor = ThreadedEx()) -> LowerTailDependenceCovariance

Keywords correspond to the struct's fields.

Validation

  • 0 < alpha < 1.

Propagated parameters

When factory is called on this type, the following @fprop-tagged fields are automatically propagated:

  • ve: Recursively updated via factory.

View parameters

When port_opt_view is called on this type, the following @vprop-tagged fields are automatically subset to the selected indices:

Examples

julia> LowerTailDependenceCovariance()LowerTailDependenceCovariance     ve ┼ SimpleVariance        │          me ┼ SimpleExpectedReturns        │             │   w ┴ nothing        │           w ┼ nothing        │   corrected ┴ Bool: true  alpha ┼ Float64: 0.05     ex ┴ Transducers.ThreadedEx{@NamedTuple{}}: Transducers.ThreadedEx()

Related

References

  • [17] M. Sibuya. Bivariate extreme statistics, I. Annals of the Institute of Statistical Mathematics 11, 195–210 (1960).
  • [18] G. De Luca and P. Zuccolotto. A tail dependence-based dissimilarity measure for financial time series clustering. Advances in Data Analysis and Classification 5, 323–340 (2011).
  • [5] D. Cajas. Advanced Portfolio Optimization: A Cutting-edge Quantitative Approach (Springer Nature Switzerland, 2025). Section 6.1.7, equation 6.20.
source
Statistics.corMethod
Statistics.cor(ce::LowerTailDependenceCovariance, X::MatNum; dims::Int = 1, kwargs...)

Compute the lower tail dependence correlation matrix using a LowerTailDependenceCovariance estimator.

This method computes the lower tail dependence (LTD) correlation matrix for the input data matrix X using the quantile level and parallel execution strategy specified in ce. The LTD correlation quantifies the probability that pairs of assets experience joint drawdowns or adverse events, as measured by their co-movement in the lower tail. The estimator's ve field is read by the generic covariance fallback and not by this method.

Algorithm

  1. Orient X with dims_oriented, which transposes it when dims is 2 and refuses any other value.
  2. Return lower_tail_dependence of the oriented matrix, called with the estimator's alpha and its executor ex.

Arguments

  • ce: Lower tail dependence covariance estimator.
  • X: Data matrix of asset returns (observations × assets).
  • dims: Dimension along which to perform the computation.
  • kwargs...: Additional keyword arguments.

Validation

  • dims is either 1 or 2.

Returns

  • rho::Matrix{<:Number}: Symmetric matrix of lower tail dependence correlation coefficients.

Examples

julia> ce = LowerTailDependenceCovariance();julia> X = [0.01 0.02; 0.03 0.04; 0.02 0.03];julia> cor(ce, X)2×2 Matrix{Float64}: 1.0  1.0 1.0  1.0

Related

source

References

[5]
D. Cajas. Advanced Portfolio Optimization: A Cutting-edge Quantitative Approach (Springer Nature Switzerland, 2025).
[17]
M. Sibuya. Bivariate extreme statistics, I. Annals of the Institute of Statistical Mathematics 11, 195–210 (1960).
[18]
G. De Luca and P. Zuccolotto. A tail dependence-based dissimilarity measure for financial time series clustering. Advances in Data Analysis and Classification 5, 323–340 (2011).