Skip to content
18

Custom value expected returns

PortfolioOptimisers.CustomValueExpectedReturns Type
julia
struct CustomValueExpectedReturns{__T_val} <: AbstractExpectedReturnsEstimator

Expected returns estimator that returns custom values for each asset.

Fields

  • val: Custom value.
    • If a scalar, all assets are assigned this value.
      • If a vector, each element corresponds to an asset.

      • If a function, it is called with the full X matrix and dims, with additional keyword arguments passed through.

Constructors

julia
CustomValueExpectedReturns(;
    val::Func_Num_VecNum = 0.0
) -> CustomValueExpectedReturns

Keywords correspond to the struct's fields.

Examples

julia
julia> CustomValueExpectedReturns()
CustomValueExpectedReturns
  val ┴ Float64: 0.0

Related

source
Statistics.mean Method
julia
Statistics.mean(me::CustomValueExpectedReturns, X::MatNum;
                dims::Int = 1, kwargs...)

Compute expected returns as custom values.

Mathematical definition

Returns a user-supplied constant, vector, or function result as the expected returns:

μ^j=vj,j=1,,N.

Where:

  • μ^j: Expected return of asset j.

  • vj: j-th element of the custom value me.val (broadcast from a scalar, taken directly from a vector, or evaluated from a callable).

  • N: Number of assets.

Arguments

  • me: Custom value expected returns estimator.

  • X: Data matrix of asset returns (observations × assets).

  • dims: Dimension along which to perform the computation.

  • kwargs...: Additional keyword arguments.

Returns

  • mu::Matrix{<:Number}: Expected returns matrix, shaped as (1, N) if dims == 1 or (N, 1) if dims == 2.

Related

source
Statistics.mean Method
julia
mean(
    me::CustomValueExpectedReturns{<:AbstractVector{<:Union{var"#s29", var"#s28"} where {var"#s29"<:Number, var"#s28"<:AbstractJuMPScalar}}},
    X::AbstractMatrix{<:Union{var"#s29", var"#s28"} where {var"#s29"<:Number, var"#s28"<:AbstractJuMPScalar}};
    dims,
    kwargs...
) -> Any

Vector overload of mean(me::CustomValueExpectedReturns, X::MatNum; dims::Int = 1, kwargs...). Returns the stored vector me.val reshaped to match dims.

source
Statistics.mean Method
julia
mean(
    me::CustomValueExpectedReturns{<:Function},
    X::AbstractMatrix{<:Union{var"#s29", var"#s28"} where {var"#s29"<:Number, var"#s28"<:AbstractJuMPScalar}};
    dims,
    kwargs...
) -> Any

Function overload of mean(me::CustomValueExpectedReturns, X::MatNum; dims::Int = 1, kwargs...). Delegates to the callable me.val with the same arguments.

source