skfolio.prior.LoadingMatrixRegression#

class skfolio.prior.LoadingMatrixRegression(linear_regressor=None, n_jobs=None)[source]#

Loading Matrix Regression estimator.

Estimate the loading matrix by fitting one linear regressor per asset.

Parameters:
linear_regressorBaseEstimator, optional

Linear regressor used to fit the factors on each asset separately. The default (None) is to use LassoCV(fit_intercept=False).

n_jobsint, optional

The number of jobs to run in parallel.

When individual estimators are fast to train or predict, using n_jobs > 1 can result in slower performance due to the parallelism overhead.

The value -1 means using all processors. The default (None) means 1 unless in a joblib.parallel_backend context.

Attributes:
loading_matrix_ndarray of shape (n_assets, n_factors)

The loading matrix.

intercepts_: ndarray of shape (n_assets,)

The intercepts.

multi_output_regressor_: MultiOutputRegressor

Fitted sklearn.multioutput.MultiOutputRegressor

Methods

fit(X, y, **fit_params)

Fit the Loading Matrix Regression Estimator.

get_metadata_routing()

Get metadata routing of this object.

get_params([deep])

Get parameters for this estimator.

set_params(**params)

Set the parameters of this estimator.

fit(X, y, **fit_params)[source]#

Fit the Loading Matrix Regression Estimator.

Parameters:
Xarray-like of shape (n_observations, n_assets)

Price returns of the assets.

yarray-like of shape (n_observations, n_factors)

Price returns of the factors.

**fit_paramsdict

Parameters to pass to the underlying estimators. Only available if enable_metadata_routing=True, which can be set by using sklearn.set_config(enable_metadata_routing=True). See Metadata Routing User Guide for more details.

Returns:
selfLoadingMatrixRegression

Fitted estimator.

get_metadata_routing()[source]#

Get metadata routing of this object.

Please check User Guide on how the routing mechanism works.

Returns:
routingMetadataRequest

A MetadataRequest encapsulating routing information.

get_params(deep=True)#

Get parameters for this estimator.

Parameters:
deepbool, default=True

If True, will return the parameters for this estimator and contained subobjects that are estimators.

Returns:
paramsdict

Parameter names mapped to their values.

set_params(**params)#

Set the parameters of this estimator.

The method works on simple estimators as well as on nested objects (such as Pipeline). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.

Parameters:
**paramsdict

Estimator parameters.

Returns:
selfestimator instance

Estimator instance.