Time Release Rules¶
Canonical import path: alphaforge.time.release_rules.
alphaforge.pit.release_rules remains as a compatibility shim.
alphaforge.time.release_rules
¶
Release schedule rules for publication and availability semantics.
These rules model expected public release timing for a reference-period observation. They are an expectation layer: realized PIT timestamps always take precedence when available from source data.
CalendarDay
dataclass
¶
CustomRule
dataclass
¶
FixedLagMonths
dataclass
¶
NthBusinessDay
dataclass
¶
NthWeekday
dataclass
¶
QuarterlyRelease
dataclass
¶
ReleaseRule
dataclass
¶
Bases: ABC
Base class for publication schedule rules.
expected_release_date(obs_date: date, release_number: int | None = None) -> date
abstractmethod
¶
Return the expected publication date for an observation date.
from_dict(payload: dict[str, Any]) -> 'ReleaseRule'
staticmethod
¶
Reconstruct a rule from a YAML-style mapping.
to_dict() -> dict[str, Any]
¶
Serialize the rule to a YAML-friendly mapping.