Equilibrium expected returns
PortfolioOptimisers.EquilibriumExpectedReturns Type
struct EquilibriumExpectedReturns{T1, T2, T3} <: AbstractShrunkExpectedReturnsEstimator
ce::T1
w::T2
l::T3
endContainer type for equilibrium expected returns estimators.
EquilibriumExpectedReturns encapsulates the covariance estimator, equilibrium weights, and risk aversion parameter for computing equilibrium expected returns (e.g., as in Black-Litterman). This enables modular workflows for reverse optimization and equilibrium-based return estimation.
Fields
ce: Covariance estimator.w: Equilibrium portfolio weights. Ifnothing, uses equal weights.l: Risk aversion parameter.
Constructor
EquilibriumExpectedReturns(;
ce::StatsBase.CovarianceEstimator = PortfolioOptimisersCovariance(),
w::Union{Nothing, <:AbstractVector} = nothing, l::Real = 1)Keyword arguments correspond to the fields above.
Validation
- If
wis provided,!isempty(w).
Examples
julia> EquilibriumExpectedReturns()
EquilibriumExpectedReturns
ce ┼ PortfolioOptimisersCovariance
│ ce ┼ Covariance
│ │ me ┼ SimpleExpectedReturns
│ │ │ w ┴ nothing
│ │ ce ┼ GeneralCovariance
│ │ │ ce ┼ StatsBase.SimpleCovariance: StatsBase.SimpleCovariance(true)
│ │ │ w ┴ nothing
│ │ alg ┴ Full()
│ mp ┼ DefaultMatrixProcessing
│ │ pdm ┼ Posdef
│ │ │ alg ┴ UnionAll: NearestCorrelationMatrix.Newton
│ │ denoise ┼ nothing
│ │ detone ┼ nothing
│ │ alg ┴ nothing
w ┼ nothing
l ┴ Int64: 1Related
sourceStatistics.mean Method
mean(me::EquilibriumExpectedReturns, X::AbstractMatrix; dims::Int = 1, kwargs...)Compute equilibrium expected returns from a covariance estimator, weights, and risk aversion.
This method computes equilibrium expected returns as λ * Σ * w, where λ is the risk aversion parameter, Σ is the covariance matrix, and w are the equilibrium weights. If w is not provided in the estimator, equal weights are used.
Arguments
me: Equilibrium expected returns estimator.X: Data matrix (observations × assets).dims: Dimension along which to compute the covariance.kwargs...: Additional keyword arguments passed to the covariance estimator.
Returns
mu::AbstractArray: Equilibrium expected returns vector.
Related
source