Ratio Risk Measure
PortfolioOptimisers.RiskRatioRiskMeasure Type
struct RiskRatioRiskMeasure{__T_r1, __T_r2} <: HierarchicalRiskMeasureRepresents a risk ratio risk measure for hierarchical portfolio optimisation.
RiskRatioRiskMeasure computes the ratio of two risk measures, enabling the construction of risk-adjusted performance metrics for use in hierarchical optimisation routines.
Mathematical definition
Where:
: Risk ratio of the portfolio. : Portfolio returns vector . : First (numerator) optimisation risk measure. : Second (denominator) optimisation risk measure.
Fields
r1: First risk measure.r2: Second risk measure.
Constructors
RiskRatioRiskMeasure(;
r1::OptimisationRiskMeasure = Variance(),
r2::OptimisationRiskMeasure = ConditionalValueatRisk()
) -> RiskRatioRiskMeasureKeywords correspond to the struct's fields.
Examples
julia> RiskRatioRiskMeasure()
RiskRatioRiskMeasure
r1 ┼ Variance
│ settings ┼ RiskMeasureSettings
│ │ scale ┼ Float64: 1.0
│ │ ub ┼ nothing
│ │ rke ┴ Bool: true
│ sigma ┼ nothing
│ chol ┼ nothing
│ rc ┼ nothing
│ alg ┴ SquaredSOCRiskExpr()
r2 ┼ ConditionalValueatRisk
│ settings ┼ RiskMeasureSettings
│ │ scale ┼ Float64: 1.0
│ │ ub ┼ nothing
│ │ rke ┴ Bool: true
│ alpha ┼ Float64: 0.05
│ w ┴ nothingRelated
sourcePortfolioOptimisers.factory Method
factory(
r::RiskRatioRiskMeasure,
args...;
kwargs...
) -> RiskRatioRiskMeasure{<:OptimisationRiskMeasure, <:OptimisationRiskMeasure}Create an instance of RiskRatioRiskMeasure by updating both constituent risk measures from the optimisation context.
Forwards all arguments to factory on r1 and r2.
Related
sourcePortfolioOptimisers.factory Method
factory(
r::RiskRatioRiskMeasure,
w::AbstractVector{<:Union{var"#s20", var"#s19"} where {var"#s20"<:Number, var"#s19"<:AbstractJuMPScalar}}
) -> RiskRatioRiskMeasure{<:OptimisationRiskMeasure, <:OptimisationRiskMeasure}Create an instance of RiskRatioRiskMeasure updating both constituent risk measures from new portfolio weights w.
Related
sourcePortfolioOptimisers.NonOptimisationRiskRatioRiskMeasure Type
struct NonOptimisationRiskRatioRiskMeasure{__T_r1, __T_r2} <: NonOptimisationRiskMeasureRepresents a non-optimisation risk ratio measure.
NonOptimisationRiskRatioRiskMeasure computes the ratio of two risk measures for analysis or reporting purposes. Unlike RiskRatioRiskMeasure, it is not intended for use as an objective or constraint in optimisation routines.
Mathematical definition
Where:
: Risk ratio of the portfolio. : Portfolio returns vector . : First (numerator) base risk measure. : Second (denominator) base risk measure.
Fields
r1: First risk measure.r2: Second risk measure.
Constructors
NonOptimisationRiskRatioRiskMeasure(;
r1::AbstractBaseRiskMeasure = Variance(),
r2::AbstractBaseRiskMeasure = ConditionalValueatRisk()
) -> NonOptimisationRiskRatioRiskMeasureKeywords correspond to the struct's fields.
Related
sourcePortfolioOptimisers.factory Method
factory(
r::NonOptimisationRiskRatioRiskMeasure,
args...;
kwargs...
) -> NonOptimisationRiskRatioRiskMeasure{<:AbstractBaseRiskMeasure, <:AbstractBaseRiskMeasure}Create an instance of NonOptimisationRiskRatioRiskMeasure by updating both constituent risk measures from the optimisation context.
Forwards all arguments to factory on r1 and r2.
Related
source