Skip to content

PIT Vintage Views

alphaforge.pit.views

Vintage view declarations for point-in-time data projection.

A :class:VintageView is a pure value object that declares what vintage resolution strategy should be applied — it carries no behavior. Pass it to a :class:~alphaforge.pit.resolvers.VintageResolver to get resolution logic.

VintageView dataclass

Declares how the vintage dimension should be projected.

This is a pure declaration with no behavior — it describes what view is requested, not how to resolve it. Pass it to a VintageResolver to get resolution behavior.

Attributes:

Name Type Description
mode Literal['realtime', 'latest', 'frozen']

The vintage projection mode.

n_releases int

Only used when mode="frozen". Which release to freeze to (1-indexed). Defaults to 3, matching the common BEA advance → second → third GDP release sequence.

frozen(n: int = 3) -> VintageView classmethod

Freeze each observation to its n-th release vintage.

Parameters:

Name Type Description Default
n int

Release ordinal (1-indexed). Defaults to 3.

3

latest() -> VintageView classmethod

Collapse all vintages to the most recent available.

realtime() -> VintageView classmethod

Identity view — return values as-of the requested date.