Average Drawdown
PortfolioOptimisers.AverageDrawdown Type
struct AverageDrawdown{__T_settings, __T_w} <: RiskMeasureRepresents the Average Drawdown risk measure.
AverageDrawdown computes the mean of the absolute drawdown series of the portfolio returns. It provides a measure of the average magnitude of drawdowns over the sample period.
Mathematical Definition
Define the absolute drawdown series:
The Average Drawdown is:
For observation-weighted samples, the weighted mean is used instead.
Fields
settings: Risk measure configuration.w: Optional observation weights.
Constructors
AverageDrawdown(;
settings::RiskMeasureSettings = RiskMeasureSettings(),
w::Option{<:ObsWeights} = nothing
) -> AverageDrawdownKeywords correspond to the struct's fields.
Validation
- If
wis notnothing:!isempty(w).
Functor
(r::AverageDrawdown)(x::VecNum)Computes the Average Drawdown of a portfolio returns vector x.
Arguments
x::VecNum: Portfolio returns vector.
Examples
julia> AverageDrawdown()
AverageDrawdown
settings ┼ RiskMeasureSettings
│ scale ┼ Float64: 1.0
│ ub ┼ nothing
│ rke ┴ Bool: true
w ┴ nothingRelated
PortfolioOptimisers.RelativeAverageDrawdown Type
struct RelativeAverageDrawdown{__T_settings, __T_w} <: HierarchicalRiskMeasureRepresents the Relative Average Drawdown risk measure for hierarchical optimisation.
RelativeAverageDrawdown computes the mean of the relative (compounded) drawdown series of the portfolio returns.
Mathematical Definition
Define the compounded wealth process and relative drawdown series:
The Relative Average Drawdown is:
Fields
settings: Hierarchical risk measure configuration.w: Optional observation weights.
Constructors
RelativeAverageDrawdown(;
settings::HierarchicalRiskMeasureSettings = HierarchicalRiskMeasureSettings(),
w::Option{<:ObsWeights} = nothing
) -> RelativeAverageDrawdownKeywords correspond to the struct's fields.
Validation
- If
wis notnothing:!isempty(w).
Functor
(r::RelativeAverageDrawdown)(x::VecNum)Computes the Relative Average Drawdown of a portfolio returns vector x.
Arguments
x::VecNum: Portfolio returns vector.
Examples
julia> RelativeAverageDrawdown()
RelativeAverageDrawdown
settings ┼ HierarchicalRiskMeasureSettings
│ scale ┴ Float64: 1.0
w ┴ nothingRelated
source