analyzing-on-chain-data
Analyzing On-Chain Data
Overview
Analyze DeFi protocol metrics, chain-level TVL, fee revenue, DEX volumes, yield opportunities, and stablecoin market caps using DeFiLlama as the primary data source. Designed for DeFi researchers, protocol analysts, and yield farmers who need programmatic access to on-chain analytics without writing custom subgraph queries.
Prerequisites
- Python 3.8+ with
requestslibrary installed - DeFiLlama API access (free, no key required for most endpoints)
- Optional: CoinGecko API key for supplementary token price data
onchain_analytics.pyCLI script available in the plugin directorydata_fetcher.pyandmetrics_calculator.pymodules for programmatic usage
Instructions
- Run
python onchain_analytics.py protocolsto retrieve the top DeFi protocols ranked by total value locked (TVL). - Filter protocol results by category using
--category lending,--category dex, or--category "liquid staking"to narrow the scope. - Filter by chain with
--chain ethereumor--chain arbitrumto isolate chain-specific protocol data. - Sort results by alternative metrics using
--sort market_shareor--sort tvl_to_mcapto surface undervalued protocols. - Run
python onchain_analytics.py chainsto retrieve chain-level TVL rankings across all tracked networks. - Run
python onchain_analytics.py fees --protocol aaveto pull fee and revenue data for a specific protocol. - Run
python onchain_analytics.py dex --chain ethereumto analyze DEX trading volumes filtered by chain. - Run
python onchain_analytics.py yields --min-tvl 5000000 --chain ethereumto identify yield opportunities above a minimum TVL threshold. - Run
python onchain_analytics.py trends --threshold 5to detect protocols with significant TVL changes (threshold is percentage). - Export results in JSON or CSV format using
--format jsonor--format csvand redirect to file for downstream analysis.
See ${CLAUDE_SKILL_DIR}/references/implementation.md for the full four-step implementation workflow.
Output
- Protocol rankings table with name, TVL, market share percentage, and TVL-to-market-cap ratio
- Chain TVL rankings showing aggregate locked value per network
- Fee and revenue reports per protocol with daily/weekly/monthly breakdowns
- DEX volume tables with per-chain and per-DEX breakdowns
- Yield opportunity listings filtered by minimum TVL and chain, including APY and pool details
- Trending protocol alerts showing TVL percentage changes above the configured threshold
- Stablecoin market cap summaries
- JSON (
output.json) or CSV (output.csv) export files for programmatic consumption
Error Handling
| Error | Cause | Solution |
|---|---|---|
Request timeout |
DeFiLlama API slow or unreachable | Wait and retry; check https://status.llama.fi/ for outages; use cached data if available |
Protocol not found: invalid-name |
Protocol slug does not match DeFiLlama database | Run python onchain_analytics.py protocols to find the exact slug; slugs are case-sensitive |
No data returned for query |
Filter too restrictive or data unavailable | Remove filters and retry; verify the category or chain exists; try a broader time range |
TVL data unavailable for some protocols |
New protocols or data collection gaps | Check DeFiLlama directly; data typically appears within 24 hours of listing |
Data may be stale (last updated: X hours ago) |
Local cache not refreshed | Clear cache with rm ~/.onchain_analytics_cache.json; use --verbose to check cache status |
Showing top 50 of 1000+ protocols |
Output truncated for readability | Use --limit to increase count or --format json for full untruncated data |
UnicodeEncodeError |
Terminal encoding mismatch | Use --format json for safe output or set LANG=en_US.UTF-8 |
Examples
Daily DeFi Overview
python onchain_analytics.py protocols --limit 20
python onchain_analytics.py chains
python onchain_analytics.py trends
Produces a snapshot of the top 20 protocols by TVL, all chain rankings, and any protocols trending above the default threshold.
Research a Lending Protocol
python onchain_analytics.py protocols --category lending --sort tvl_to_mcap
python onchain_analytics.py fees --protocol aave
Ranks all lending protocols by TVL-to-market-cap ratio (identifying potentially undervalued protocols), then pulls detailed fee and revenue data for Aave.
Find High-TVL Yield Opportunities on Ethereum
python onchain_analytics.py yields --min-tvl 10000000 --chain ethereum --limit 50 # 10000000 = 10M limit
Returns up to 50 yield pools on Ethereum with at least $10M in TVL, sorted by APY. Export with --format csv > yields.csv for spreadsheet analysis.
Resources
- DeFiLlama API Documentation -- primary data source for TVL, fees, yields, and DEX volumes
- DeFiLlama Status Page -- check API availability and outage reports
- CoinGecko API -- supplementary token price and market cap data
- Dune Analytics -- custom SQL queries against on-chain data for deeper analysis
- The Graph -- decentralized indexing protocol for querying blockchain data via GraphQL