bayesline.api.equity.AsyncTypedReportAccessorApi#

class bayesline.api.equity.AsyncTypedReportAccessorApi(accessor: AsyncReportAccessorApi)#

A base interface for typed report accessor APIs.

It is meant to be extended by concrete report implementations, e.g. a FactorCovarianceReportAccessorApi which adds concrete functions that operate on the underyling low level report accessor and slice report data to specific representations, e.g. def fcov which returns the correct dataframe representation of the factor covariance matrix instead the raw report dataframe.

abstract __init__(accessor: AsyncReportAccessorApi)#

Methods

__init__(accessor)

with_scenario(scenario_settings)

Return a new accessor with the given scenario settings applied.

Attributes

accessor

The underlying report accessor API.

scenario_types

scenario_types: ClassVar[list[type[Annotated[Union[PortfolioHoldingsScenario, BasketFactorScenario]]]]] = []#
abstract __init__(accessor: AsyncReportAccessorApi)#
abstract property accessor: AsyncReportAccessorApi#

The underlying report accessor API.

Returns#

AsyncReportAccessorApi

The underlying report accessor API.

async with_scenario(scenario_settings: Annotated[PortfolioHoldingsScenario | BasketFactorScenario, FieldInfo(annotation=NoneType, required=True, discriminator='type')] | Sequence[Annotated[PortfolioHoldingsScenario | BasketFactorScenario, FieldInfo(annotation=NoneType, required=True, discriminator='type')]]) Self#

Return a new accessor with the given scenario settings applied.

Parameters#

scenario_settingsAnyScenarioSettings | Sequence[AnyScenarioSettings]

The scenario settings to apply.

Returns#

Self

A new accessor with the scenario settings applied.

Raises#

NotImplementedError

If this accessor does not support scenarios.