FlyingTulipHistoricalReader
Documentation for eth_defi.erc_4626.vault_protocol.flying_tulip.vault.FlyingTulipHistoricalReader Python class.
- class FlyingTulipHistoricalReader
Bases:
eth_defi.vault.base.VaultHistoricalReaderRead replayed FT distribution-adjusted share-price equivalents.
Attributes summary
addressfirst_blockReturn this reader's sparse share-price comparison threshold.
Select the source-event history path rather than static multicalls.
Return whether cash flows must be ignored by the sparse filter.
write_all_samplesRetain every successful static Multicall sample, including unchanged NAVs.
Methods summary
__init__(vault)Return no static calls because the price series is epoch sourced.
Yield stored price-equivalence rows for the common Parquet writer.
process_result(block_number, timestamp, ...)Reject the generic fixed-block history path.
- property uses_contextual_history: bool
Select the source-event history path rather than static multicalls.
- Returns
Always
True.
- construct_multicalls()
Return no static calls because the price series is epoch sourced.
- Returns
Empty iterable.
- Return type
collections.abc.Iterable[eth_defi.event_reader.multicall_batcher.EncodedCall]
- process_result(block_number, timestamp, call_results)
Reject the generic fixed-block history path.
- Parameters
block_number (int) – Unused static-call block.
timestamp (datetime.datetime) – Unused static-call timestamp.
call_results (list[eth_defi.event_reader.multicall_batcher.EncodedCallResult]) – Unused static-call results.
- Returns
Never returns.
- Raises
RuntimeError – Always, because contextual replay owns this history.
- Return type
- fetch_contextual_historical_reads(start_block, end_block, step)
Yield stored price-equivalence rows for the common Parquet writer.
- Parameters
- Returns
Sparse, reward-adjusted historical rows.
- 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
Truewhen the vault carries theshare_price_equivalencefeature.