RyskPremiumHistoricalReader

Documentation for eth_defi.erc_4626.vault_protocol.rysk.historical.RyskPremiumHistoricalReader Python class.

class RyskPremiumHistoricalReader

Bases: eth_defi.vault.base.VaultHistoricalReader

Read final Rysk Premium epoch withdrawal prices from local context.

The reader adapts sparse, finalised onchain epoch events to the common historical interface without issuing block-by-block multicalls.

Attributes summary

address

first_block

share_price_change_threshold

Return this reader's sparse share-price comparison threshold.

uses_contextual_history

Select the Rysk event-backed contextual scanner branch.

uses_share_price_equivalence

Return whether cash flows must be ignored by the sparse filter.

write_all_samples

Retain every successful static Multicall sample, including unchanged NAVs.

Methods summary

__init__(vault)

construct_multicalls()

Return no calls because Rysk prices are event-contextual.

fetch_contextual_historical_reads(...)

Yield final epoch withdrawal PPS observations.

process_result(block_number, timestamp, ...)

Reject the ordinary static multicall route.

property uses_contextual_history: bool

Select the Rysk event-backed contextual scanner branch.

Rysk valuation is supplied by final epoch records, so the common scanner must invoke fetch_contextual_historical_reads().

Returns

Always True.

construct_multicalls()

Return no calls because Rysk prices are event-contextual.

The method satisfies the shared reader interface but deliberately contributes no static EVM calls to a historical batch.

Returns

Empty iterator.

Return type

collections.abc.Iterable[eth_defi.event_reader.multicall_batcher.EncodedCall]

process_result(block_number, timestamp, call_results)

Reject the ordinary static multicall route.

Reaching this method would mean the common scanner routed a contextual Rysk reader through the wrong execution branch.

Parameters
Returns

Never returns.

Raises

RuntimeError – Always, because prefilled context owns this history.

Return type

eth_defi.vault.base.VaultHistoricalRead

fetch_contextual_historical_reads(start_block, end_block, step)

Yield final epoch withdrawal PPS observations.

Prices are scaled with the collateral token’s native decimals and emitted without fabricated NAV, asset or share-supply values.

Parameters
  • start_block (int) – Inclusive source block boundary.

  • end_block (int) – Exclusive source block boundary.

  • step (int) – Retained common-reader compatibility parameter; Rysk epochs are sparse.

Returns

Rysk share-price-equivalent records.

Return type

collections.abc.Iterable[eth_defi.vault.base.VaultHistoricalRead]

__init__(vault)
Parameters

vault (eth_defi.vault.base.VaultBase) –

property share_price_change_threshold: float

Return this reader’s sparse share-price comparison threshold.

Event-only readers may require every exact price change; ordinary readers retain the existing ten-basis-point suppression threshold.

Returns

Non-negative relative suppression threshold.

property uses_share_price_equivalence: bool

Return whether cash flows must be ignored by the sparse filter.

Vault-like products without a standard share-price method can still expose a supply-normalised price equivalent. Their TVL and supply changes must not create false performance observations.

Returns

True when the vault carries the share_price_equivalence feature.