Skip to content
13

Relativistic X at Risk

PortfolioOptimisers.RelativisticValueatRisk Type
julia
struct RelativisticValueatRisk{__T_settings, __T_slv, __T_alpha, __T_kappa, __T_w} <: RiskMeasure

Represents the Relativistic Value-at-Risk (RVaR) risk measure.

RelativisticValueatRisk is a coherent risk measure generalising EVaR via the Tsallis (κ-deformed) entropy. It is parametrised by a deformation parameter κ(0,1) and reduces to EVaR in the limit κ0. It is solved via a conic programme.

Mathematical Definition

Define the κ-logarithm κ(u)=uκuκ2κ. The RVaR is:

RVaRα,κ(x)=mint,z0{t+κ(αT)z+i=1T(ψi+θi)}

subject to the power-cone constraints:

(z(1+κ)2κ,ψi(1+κ)κ,ϵi)Kpow(11+κ)i,(ωi1κ,θiκ,z2κ)Kpow(1κ)i,ϵi+ωixi+ti,

where Kpow(p)={(a,b,c):apb1p|c|,a0,b0} is the power cone.

Fields

  • settings: Risk measure configuration.

  • slv: Solver or vector of solvers for the conic optimisation.

  • alpha: Significance level for the lower tail.

  • kappa: Deformation parameter κ(0,1).

  • w: Optional observation weights.

Constructors

julia
RelativisticValueatRisk(;
    settings::RiskMeasureSettings = RiskMeasureSettings(),
    slv::Option{<:Slv_VecSlv} = nothing,
    alpha::Number = 0.05,
    kappa::Number = 0.3,
    w::Option{<:ObsWeights} = nothing
) -> RelativisticValueatRisk

Keywords correspond to the struct's fields.

Validation

  • 0 < alpha < 1.

  • 0 < kappa < 1.

  • If slv is a VecSlv: !isempty(slv).

  • If w is not nothing: !isempty(w).

Functor

julia
(r::RelativisticValueatRisk)(x::VecNum)

Computes the RVaR of a portfolio returns vector x.

Arguments

  • x::VecNum: Portfolio returns vector.

Examples

julia
julia> RelativisticValueatRisk()
RelativisticValueatRisk
  settings ┼ RiskMeasureSettings
           │   scale ┼ Float64: 1.0
           │      ub ┼ nothing
           │     rke ┴ Bool: true
       slv ┼ nothing
     alpha ┼ Float64: 0.05
     kappa ┼ Float64: 0.3
         w ┴ nothing

Related

source
PortfolioOptimisers.RelativisticValueatRiskRange Type
julia
struct RelativisticValueatRiskRange{__T_settings, __T_slv, __T_alpha, __T_kappa_a, __T_beta, __T_kappa_b, __T_w} <: RiskMeasure

Represents the Relativistic Value-at-Risk Range (RVaR Range) risk measure.

RelativisticValueatRiskRange computes the sum of the lower-tail RVaR (at level alpha with deformation kappa_a) and the upper-tail RVaR (at level beta with deformation kappa_b).

Mathematical Definition

RVaRRangeα,κa,β,κb(x)=RVaRα,κa(x)+RVaRβ,κb(x).

Fields

  • settings: Risk measure configuration.

  • slv: Solver or vector of solvers for the conic optimisation.

  • alpha: Significance level for the lower tail.

  • kappa_a: Deformation parameter for the lower-tail RVaR.

  • beta: Significance level for the upper tail.

  • kappa_b: Deformation parameter for the upper-tail RVaR.

  • w: Optional observation weights.

Constructors

julia
RelativisticValueatRiskRange(;
    settings::RiskMeasureSettings = RiskMeasureSettings(),
    slv::Option{<:Slv_VecSlv} = nothing,
    alpha::Number = 0.05,
    kappa_a::Number = 0.3,
    beta::Number = 0.05,
    kappa_b::Number = 0.3,
    w::Option{<:ObsWeights} = nothing
) -> RelativisticValueatRiskRange

Keywords correspond to the struct's fields.

Validation

  • 0 < alpha < 1, 0 < kappa_a < 1.

  • 0 < beta < 1, 0 < kappa_b < 1.

  • If slv is a VecSlv: !isempty(slv).

  • If w is not nothing: !isempty(w).

Functor

julia
(r::RelativisticValueatRiskRange)(x::VecNum)

Computes the RVaR Range of a portfolio returns vector x.

Arguments

  • x::VecNum: Portfolio returns vector.

Examples

julia
julia> RelativisticValueatRiskRange()
RelativisticValueatRiskRange
  settings ┼ RiskMeasureSettings
           │   scale ┼ Float64: 1.0
           │      ub ┼ nothing
           │     rke ┴ Bool: true
       slv ┼ nothing
     alpha ┼ Float64: 0.05
   kappa_a ┼ Float64: 0.3
      beta ┼ Float64: 0.05
   kappa_b ┼ Float64: 0.3
         w ┴ nothing

Related

source
PortfolioOptimisers.RelativisticDrawdownatRisk Type
julia
struct RelativisticDrawdownatRisk{__T_settings, __T_slv, __T_alpha, __T_kappa, __T_w} <: RiskMeasure

Represents the Relativistic Drawdown-at-Risk (RDDaR) risk measure.

RelativisticDrawdownatRisk applies the Relativistic Value-at-Risk framework to the absolute drawdown series of portfolio returns.

Mathematical Definition

Define the absolute drawdown series:

ct=s=1txs,dt=ctmax0stcs0.

The Relativistic Drawdown-at-Risk is the RVaR of the drawdown series:

RDDaRα,κ(x)=RVaRα,κ(d(x)).

Fields

  • settings: Risk measure configuration.

  • slv: Solver or vector of solvers for the conic optimisation.

  • alpha: Significance level for the lower tail.

  • kappa: Deformation parameter κ(0,1).

  • w: Optional observation weights.

Constructors

julia
RelativisticDrawdownatRisk(;
    settings::RiskMeasureSettings = RiskMeasureSettings(),
    slv::Option{<:Slv_VecSlv} = nothing,
    alpha::Number = 0.05,
    kappa::Number = 0.3,
    w::Option{<:ObsWeights} = nothing
) -> RelativisticDrawdownatRisk

Keywords correspond to the struct's fields.

Validation

  • 0 < alpha < 1.

  • 0 < kappa < 1.

  • If slv is a VecSlv: !isempty(slv).

  • If w is not nothing: !isempty(w).

Functor

julia
(r::RelativisticDrawdownatRisk)(x::VecNum)

Computes the Relativistic Drawdown-at-Risk of a portfolio returns vector x.

Arguments

  • x::VecNum: Portfolio returns vector.

Examples

julia
julia> RelativisticDrawdownatRisk()
RelativisticDrawdownatRisk
  settings ┼ RiskMeasureSettings
           │   scale ┼ Float64: 1.0
           │      ub ┼ nothing
           │     rke ┴ Bool: true
       slv ┼ nothing
     alpha ┼ Float64: 0.05
     kappa ┼ Float64: 0.3
         w ┴ nothing

Related

source
PortfolioOptimisers.RelativeRelativisticDrawdownatRisk Type
julia
struct RelativeRelativisticDrawdownatRisk{__T_settings, __T_slv, __T_alpha, __T_kappa, __T_w} <: HierarchicalRiskMeasure

Represents the Relative Relativistic Drawdown-at-Risk (Relative RDDaR) risk measure for hierarchical optimisation.

RelativeRelativisticDrawdownatRisk applies the Relativistic Value-at-Risk framework to the relative (compounded) drawdown series of portfolio returns.

Mathematical Definition

Define the compounded wealth process and relative drawdown series:

Ct=s=1t(1+xs),rdt=Ctmax0stCs10.

The Relative Relativistic Drawdown-at-Risk is the RVaR of the relative drawdown series:

RRDDaRα,κ(x)=RVaRα,κ(rd(x)).

Fields

  • settings: Hierarchical risk measure configuration.

  • slv: Solver or vector of solvers for the conic optimisation.

  • alpha: Significance level for the lower tail.

  • kappa: Deformation parameter κ(0,1).

  • w: Optional observation weights.

Constructors

julia
RelativeRelativisticDrawdownatRisk(;
    settings::HierarchicalRiskMeasureSettings = HierarchicalRiskMeasureSettings(),
    slv::Option{<:Slv_VecSlv} = nothing,
    alpha::Number = 0.05,
    kappa::Number = 0.3,
    w::Option{<:ObsWeights} = nothing
) -> RelativeRelativisticDrawdownatRisk

Keywords correspond to the struct's fields.

Validation

  • 0 < alpha < 1.

  • 0 < kappa < 1.

  • If slv is a VecSlv: !isempty(slv).

  • If w is not nothing: !isempty(w).

Functor

julia
(r::RelativeRelativisticDrawdownatRisk)(x::VecNum)

Computes the Relative Relativistic Drawdown-at-Risk of a portfolio returns vector x.

Arguments

  • x::VecNum: Portfolio returns vector.

Examples

julia
julia> RelativeRelativisticDrawdownatRisk()
RelativeRelativisticDrawdownatRisk
  settings ┼ HierarchicalRiskMeasureSettings
           │   scale ┴ Float64: 1.0
       slv ┼ nothing
     alpha ┼ Float64: 0.05
     kappa ┼ Float64: 0.3
         w ┴ nothing

Related

source