bayesline.api.equity.OptimizerSettings

bayesline.api.equity.OptimizerSettings#

model OptimizerSettings#

Optimizer settings to build an optimization problem.

Every enabled objective and constraint must have the inputs it requires, e.g. a factor exposure constraint needs a risk model; under-specified combinations are rejected at validation.

field constraints: list[FactorExposureConstraint] [Optional]#

Hard restrictions on the feasible set

field factor_cov_settings: FactorCovarianceSettings | None [Optional]#

Settings for the factor covariance matrix forecasts. None unless an enabled objective or constraint is evaluated against covariance forecasts.

field factor_model_settings: str | int | FactorRiskModelSettings | None [Optional]#

The factor risk model supplying exposures and risk: either inline settings or a reference (name or id) to saved factor risk model settings. None for problems that need no risk model, e.g. a mechanical rebalance back inside position limits.

field idio_vol_settings: IdioVolSettings | None [Optional]#

Settings for the idiosyncratic volatility forecasts. None unless an enabled objective or constraint is evaluated against idiosyncratic volatility forecasts.

field objectives: list[MinimizeTradeVolumeObjective] [Required]#

Objectives combined into the weighted sum the optimizer minimizes

Constraints:
  • min_length = 1

field portfolio_hierarchy: str | int | PortfolioHierarchySettings [Required]#

The hierarchy of portfolios (with optional per-portfolio benchmarks) to optimize, each optimized independently against the same objectives and constraints: either inline settings or a reference (name or id) to saved settings.