sf_quant.optimizer.ZeroBeta#

class sf_quant.optimizer.ZeroBeta(*args, **kwargs)#

Enforces a zero-beta constraint.

This constraint requires the portfolio’s exposure to a given beta vector to equal 0, creating a market-neutral position. A betas array must be provided as a keyword argument.

Returns#

cp.Constraint

A CVXPY constraint enforcing zero beta exposure.

Raises#

ValueError

If betas is not provided in the keyword arguments.

Examples#

>>> import cvxpy as cp
>>> import numpy as np
>>> from sf_quant.optimizer.constraints import ZeroBeta
>>> weights = cp.Variable(3)
>>> betas = np.array([0.5, 1.2, 0.8])
>>> constraint = ZeroBeta()(weights, betas=betas)
__init__(*args, **kwargs)#

Methods

__init__(*args, **kwargs)