grvt.vault
Documentation for eth_defi.grvt.vault Python module.
GRVT vault data extraction and analysis.
This module provides functionality for extracting GRVT vault data via public endpoints:
Vault discovery is done via the public GraphQL API at
https://edge.grvt.io/query, which provides vault metadata including per-vault fee percentages.Vault details (TVL, share price, performance, risk metrics, share price history) come from the public market data API at
https://market-data.grvt.io.
No authentication is required for these endpoints.
For more information about GRVT strategies see:
https://help.grvt.io/en/articles/11424324-what-is-grvt-strategies
https://help.grvt.io/en/articles/11424466-grvt-strategies-core-concepts
Functions
|
Build a merged markdown description from all GRVT vault description fields. |
|
Fetch vault detail data (TVL, share price) from the market data API. |
|
Fetch GRVT vault listing via the public GraphQL API. |
|
Fetch vault performance metrics from the market data API. |
|
Fetch vault risk metrics from the market data API. |
|
Fetch share price history for a vault from the market data API. |
Classes
Performance metrics for a GRVT vault from the market data API. |
|
Risk metrics for a GRVT vault from the market data API. |
|
Summary information for a GRVT vault. |
- class GRVTVaultPerformance
Bases:
objectPerformance metrics for a GRVT vault from the market data API.
- __init__(chain_vault_id, apr, return_30d, return_90d, return_ytd, return_since_inception, trading_volume, cumulative_pnl)
- class GRVTVaultSummary
Bases:
objectSummary information for a GRVT vault.
Combines data from the GRVT GraphQL API with live data from the market data API.
- __init__(vault_id, chain_vault_id, name, description, manager_bio, investment_philosophy, risk_management_process, vault_type, discoverable, status, manager_name, categories, manager_profile_image_url=None, cover_image_url=None, raw_metadata=None, create_time=None, tvl=None, share_price=None, management_fee=None, performance_fee=None)
- Parameters
- Return type
None
- build_vault_description(summary)
Build a merged markdown description from all GRVT vault description fields.
Combines the short description, manager bio, investment philosophy, risk management process, and extended metadata (strategy categories, manager profile image, cover image) into a single markdown string with headings matching the GRVT strategies page layout.
Only includes sections where the text or field is non-empty.
- Parameters
summary (eth_defi.grvt.vault.GRVTVaultSummary) – Vault summary with description fields populated from the GraphQL API.
- Returns
Merged markdown description, or empty string if all fields are empty.
- Return type
- fetch_vault_details(session, chain_vault_ids, market_data_url='https://market-data.grvt.io', timeout=30.0)
Fetch vault detail data (TVL, share price) from the market data API.
Uses
/full/v1/vault_detail. No authentication required.- Parameters
- Returns
Dict mapping chain_vault_id to detail dict with keys:
share_price,total_equity,valuation_cap,total_supply_lp_tokens.- Return type
- fetch_vault_listing_graphql(session, graphql_url='https://edge.grvt.io/query', only_discoverable=True, timeout=30.0)
Fetch GRVT vault listing via the public GraphQL API.
Returns per-vault fee data (
managementFee,performanceFee) alongside vault metadata.The GraphQL endpoint at
https://edge.grvt.io/queryis public and requires no authentication.Example:
from eth_defi.grvt.session import create_grvt_session from eth_defi.grvt.vault import fetch_vault_listing_graphql session = create_grvt_session() vaults = fetch_vault_listing_graphql(session) for v in vaults: print(f"{v.name}: mgmt={v.management_fee}, perf={v.performance_fee}")- Parameters
- Returns
List of
GRVTVaultSummaryobjects with fee data populated.- Return type
- fetch_vault_performance(session, chain_vault_ids, market_data_url='https://market-data.grvt.io', timeout=30.0)
Fetch vault performance metrics from the market data API.
Uses
/full/v1/vault_performance. No authentication required.- Parameters
- Returns
Dict mapping chain_vault_id to
GRVTVaultPerformance.- Return type
- fetch_vault_risk_metrics(session, chain_vault_ids, market_data_url='https://market-data.grvt.io', timeout=30.0)
Fetch vault risk metrics from the market data API.
Uses
/full/v1/vault_risk_metric. No authentication required.- Parameters
- Returns
Dict mapping chain_vault_id to
GRVTVaultRiskMetric.- Return type
- fetch_vault_summary_history(session, chain_vault_id, market_data_url='https://market-data.grvt.io', timeout=30.0)
Fetch share price history for a vault from the market data API.
Uses
/full/v1/vault_summary_history. No authentication required.Returns a DataFrame with daily share prices, resampled from the ~8-hourly intervals provided by the API.
- Parameters
- Returns
DataFrame indexed by date with
share_priceanddaily_returncolumns. Empty if no data.- Return type