Maximum Drawdown
PortfolioOptimisers.MaximumDrawdown Type
struct MaximumDrawdown{__T_settings} <: RiskMeasureRepresents the Maximum Drawdown risk measure.
MaximumDrawdown computes the largest peak-to-trough decline in the cumulative portfolio returns. It captures the worst-case loss from a previous high.
Mathematical Definition
Define the absolute drawdown series:
The Maximum Drawdown is the most negative value in the drawdown series:
Fields
settings: Risk measure configuration.
Constructors
MaximumDrawdown(;
settings::RiskMeasureSettings = RiskMeasureSettings()
) -> MaximumDrawdownKeywords correspond to the struct's fields.
Functor
(r::MaximumDrawdown)(x::VecNum)Computes the Maximum Drawdown of a portfolio returns vector x.
Arguments
x::VecNum: Portfolio returns vector.
Examples
julia> MaximumDrawdown()
MaximumDrawdown
settings ┼ RiskMeasureSettings
│ scale ┼ Float64: 1.0
│ ub ┼ nothing
│ rke ┴ Bool: trueRelated
sourcePortfolioOptimisers.RelativeMaximumDrawdown Type
struct RelativeMaximumDrawdown{__T_settings} <: HierarchicalRiskMeasureRepresents the Relative Maximum Drawdown risk measure for hierarchical optimisation.
RelativeMaximumDrawdown computes the maximum of the relative (compounded) drawdown series.
Mathematical Definition
Define the relative drawdown series:
The Relative Maximum Drawdown is:
Fields
settings: Hierarchical risk measure configuration.
Constructors
RelativeMaximumDrawdown(;
settings::HierarchicalRiskMeasureSettings = HierarchicalRiskMeasureSettings()
) -> RelativeMaximumDrawdownKeywords correspond to the struct's fields.
Functor
(r::RelativeMaximumDrawdown)(x::VecNum)Computes the Relative Maximum Drawdown of a portfolio returns vector x.
Arguments
x::VecNum: Portfolio returns vector.
Examples
julia> RelativeMaximumDrawdown()
RelativeMaximumDrawdown
settings ┼ HierarchicalRiskMeasureSettings
│ scale ┴ Float64: 1.0Related
source