API Reference
Endpoint Explorer
Search the complete live catalog, including exact response fields, typed parameters, Pro tiers, chain coverage, and supported legacy paths.
927ed17c749a5e0cPage 4 of 28lth-stressproIdentify Long-Term Holder stress periods by analyzing realized price deviations across LTH cohorts (6m-5y). Red vertical bars highlight when the LTH composite rises above +1 standard deviation ratio, indicating LTH capitulation - a rare event that often coincides with generational buying opportunities at major market bottoms.
Chart Datasets
lth-stressproIdentify Long-Term Holder stress periods by analyzing realized price deviations across LTH cohorts (6m-5y). Red vertical bars highlight when the LTH composite rises above +1 standard deviation ratio, indicating LTH capitulation - a rare event that often coincides with generational buying opportunities at major market bottoms.
GET /api/v1/charts/lth-stressTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?lth_composite: number?lth_composite_zscore: number?lth_cost_basis: number?lth_realized_price: number?price: number?realized_price_1y_2y: number?realized_price_2y_3y: number?realized_price_3y_5y: number?realized_price_6m_1y: number?timestamp: integer?ledger_index: number?lth_stress: number?lth_stress_normalized: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
lth-wealth-attributionproDecomposes Long-Term Holder wealth concentration into 5 exact attribution factors: cohort aging, STH capitulation, LTH spending, LTH P/L, and issuance. Shows why LTH concentration rises in bear markets and falls in bull markets. Toggle between Wealth (realized cap) and Supply (BTC) modes.
Chart Datasets
lth-wealth-attributionproDecomposes Long-Term Holder wealth concentration into 5 exact attribution factors: cohort aging, STH capitulation, LTH spending, LTH P/L, and issuance. Shows why LTH concentration rises in bear markets and falls in bull markets. Toggle between Wealth (realized cap) and Supply (BTC) modes.
GET /api/v1/charts/lth-wealth-attributionTry in PlaygroundResponse fields
adjusted_concentration: number?aging_rcap: number?aging_supply_btc: number?block_height: number?btc_price: number?coinbase_btc: number?coinbase_usd: number?cum_f1_aging: number?cum_f2_lth_spending: number?cum_f3_lth_pnl: number?cum_f4_sth_pnl: number?cum_f5_issuance: number?date: string?delta_concentration: number?delta_supply_pct: number?f1_aging: number?f2_lth_spending: number?f3_lth_pnl: number?f4_sth_pnl: number?f5_issuance: number?formattedDate: string?lth_concentration: number?lth_concentration_change_negative: number?lth_concentration_change_positive: number?lth_cost_basis_usd: number?lth_pnl: number?lth_realized_cap: number?lth_spent_btc: number?lth_spent_rcap: number?lth_supply_btc: number?lth_supply_pct: number?lth_wealth_concentration_change: number?lth_wealth_concentration_pct: number?price: number?realized_cap: number?realized_cap_usd: number?residual: number?sf1_aging: number?sf2_lth_spending: number?sf3_issuance: number?sth_concentration: number?sth_pnl: number?sth_supply_pct: number?timestamp: integer?total_supply_btc: number?lth_wealth_concentration: number?ledger_index: number?top10_pct_share: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
lth-wealth-concentrationproMeasure the percentage of total realized capital held by Long-Term Holders (LTH). This metric tracks wealth distribution and holder conviction, with high values (>75%) indicating strong holder accumulation and low values (<50%) suggesting distribution phases
Chart Datasets
lth-wealth-concentrationproMeasure the percentage of total realized capital held by Long-Term Holders (LTH). This metric tracks wealth distribution and holder conviction, with high values (>75%) indicating strong holder accumulation and low values (<50%) suggesting distribution phases
GET /api/v1/charts/lth-wealth-concentrationTry in PlaygroundResponse fields
adjusted_concentration: number?aging_rcap: number?aging_supply_btc: number?block_height: number?btc_price: number?coinbase_btc: number?coinbase_usd: number?cum_f1_aging: number?cum_f2_lth_spending: number?cum_f3_lth_pnl: number?cum_f4_sth_pnl: number?cum_f5_issuance: number?date: string?delta_concentration: number?delta_supply_pct: number?f1_aging: number?f2_lth_spending: number?f3_lth_pnl: number?f4_sth_pnl: number?f5_issuance: number?formattedDate: string?lth_concentration: number?lth_concentration_change_negative: number?lth_concentration_change_positive: number?lth_cost_basis_usd: number?lth_pnl: number?lth_realized_cap: number?lth_spent_btc: number?lth_spent_rcap: number?lth_supply_btc: number?lth_supply_pct: number?lth_wealth_concentration_change: number?lth_wealth_concentration_pct: number?price: number?realized_cap: number?realized_cap_usd: number?residual: number?sf1_aging: number?sf2_lth_spending: number?sf3_issuance: number?sth_concentration: number?sth_pnl: number?sth_supply_pct: number?timestamp: integer?total_supply_btc: number?lth_wealth_concentration: number?ledger_index: number?top10_pct_share: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
m2-crypto-correlationproAnalyze the rolling correlation between M2 money supply (global liquidity) and cryptocurrency prices. Choose Global (our aggregate of the US, Eurozone, China, Japan and UK, in USD) or any individual country, and combine multiple countries into a custom aggregate. Track liquidity-driven market cycles and capital flow dynamics.
Chart Datasets
m2-crypto-correlationproAnalyze the rolling correlation between M2 money supply (global liquidity) and cryptocurrency prices. Choose Global (our aggregate of the US, Eurozone, China, Japan and UK, in USD) or any individual country, and combine multiple countries into a custom aggregate. Track liquidity-driven market cycles and capital flow dynamics.
GET /api/v1/charts/m2-crypto-correlationTry in PlaygroundResponse fields
crypto_price: number?m2_value: number?correlation: number?correlation_display: number?indicator_display: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
m2CorrelationWindow | integer | Global M2 correlation window in observations. |
major-exchange-balancesproA legacy-continuity exchange balance series. After the historical feed ends, CoinGlass per-venue daily changes are applied to the prior levels with fixed seam offsets, so the chart preserves continuity but is not a raw CoinGlass absolute-balance oracle. It is independent from ChartInspect's evidence-backed entity tracker and the two charts can differ when wallet coverage or venue classification differs.
Chart Datasets
major-exchange-balancesproA legacy-continuity exchange balance series. After the historical feed ends, CoinGlass per-venue daily changes are applied to the prior levels with fixed seam offsets, so the chart preserves continuity but is not a raw CoinGlass absolute-balance oracle. It is independent from ChartInspect's evidence-backed entity tracker and the two charts can differ when wallet coverage or venue classification differs.
GET /api/v1/charts/major-exchange-balancesTry in PlaygroundResponse fields
coinbase: number?binance: number?bitfinex: number?upbit: number?robinhood: number?kraken: number?okx: number?bybit: number?gemini: number?bitflyer: number?bitstamp: number?crypto_com: number?bitmex: number?bithumb: number?coincheck: number?mt_gox: number?deribit: number?bitget: number?revolut: number?river: number?bitvavo: number?bitgo: number?bitbank: number?gate_io: number?sbi_vc_trade: number?htx: number?maskex: number?kucoin: number?hashkey_exchange: number?binance_us: number?btc_price: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
timeframe | string | Requested chart timeframe. |
market-cap-by-ageproTotal market capitalization broken down by UTXO age band as a stacked area chart. Shows the absolute USD market value of coins in each age cohort (supply in band x current price). Unlike HODL Waves which show supply percentages, this reveals the dollar magnitude of each age group.
Chart Datasets
market-cap-by-ageproTotal market capitalization broken down by UTXO age band as a stacked area chart. Shows the absolute USD market value of coins in each age cohort (supply in band x current price). Unlike HODL Waves which show supply percentages, this reveals the dollar magnitude of each age group.
GET /api/v1/charts/market-cap-by-ageTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?mcap_10y_plus: number?mcap_1d_1w: number?mcap_1m_3m: number?mcap_1w_1m: number?mcap_1y_2y: number?mcap_24h: number?mcap_2y_3y: number?mcap_3m_6m: number?mcap_3y_5y: number?mcap_5y_7y: number?mcap_6m_12m: number?mcap_7y_10y: number?rcap_10y_plus: number?rcap_1d_1w: number?rcap_1m_3m: number?rcap_1w_1m: number?rcap_1y_2y: number?rcap_24h: number?rcap_2y_3y: number?rcap_3m_6m: number?rcap_3y_5y: number?rcap_5y_7y: number?rcap_6m_12m: number?rcap_7y_10y: number?supply_10y_plus: number?supply_1d_1w: number?supply_1m_3m: number?supply_1w_1m: number?supply_1y_2y: number?supply_24h: number?supply_2y_3y: number?supply_3m_6m: number?supply_3y_5y: number?supply_5y_7y: number?supply_6m_12m: number?supply_7y_10y: number?timestamp: integer?total_mcap: number?total_rcap: number?ledger_index: number?price: number?supply_6m_1y: number?mcap_10y_plus_usd: number?mcap_1d_1w_usd: number?mcap_1m_3m_usd: number?mcap_1w_1m_usd: number?mcap_1y_2y_usd: number?mcap_24h_usd: number?mcap_2y_3y_usd: number?mcap_3m_6m_usd: number?mcap_3y_5y_usd: number?mcap_5y_7y_usd: number?mcap_5y_plus: number?mcap_5y_plus_usd: number?mcap_6m_12m_usd: number?mcap_7y_10y_usd: number?mcap_lt_1d: number?mcap_lt_1d_usd: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
market-dominanceproStacked market-cap shares for Bitcoin, Ether, stablecoins, and other crypto assets over time.
Chart Datasets
market-dominanceproStacked market-cap shares for Bitcoin, Ether, stablecoins, and other crypto assets over time.
GET /api/v1/charts/market-dominanceTry in PlaygroundResponse fields
others_dominance: number?btc_dominance: number?eth_dominance: number?stablecoin_dominance: number?total: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
mctc-ratioproCompare Bitcoin's market valuation to the total cumulative security budget invested by miners. MCTC helps identify market cycles, with high ratios indicating potential overvaluation and low ratios suggesting accumulation opportunities.
Chart Datasets
mctc-ratioproCompare Bitcoin's market valuation to the total cumulative security budget invested by miners. MCTC helps identify market cycles, with high ratios indicating potential overvaluation and low ratios suggesting accumulation opportunities.
GET /api/v1/charts/mctc-ratioTry in PlaygroundResponse fields
active_mvrv: number?active_realized_price: number?active_supply_btc: number?aviv_nupl: number?aviv_ratio: number?block_height: number?btc_price: number?circulating_supply_btc: number?cointime_price: number?date: string?formattedDate: string?investor_cap: number?liveliness: number?market_cap: number?mctc: number?mctc_ratio: number?mvrv_ratio: number?nupl: number?price: number?realized_cap: number?supply_in_loss_btc: number?supply_in_profit_btc: number?thermocap: number?thermoprice: number?thermoprice_16x: number?thermoprice_2x: number?thermoprice_32x: number?thermoprice_4x: number?thermoprice_64x: number?thermoprice_6x: number?thermoprice_8x: number?timestamp: integer?true_market_mean_price: number?vaulted_price: number?vaulted_supply_btc: number?vaultedness: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
median-cost-basis-by-ageproMedian cost basis (50th-percentile acquisition price) of each HODL-wave age cohort over time, overlaid on BTC price. Tracks cohort-level fair value, STH medians hug current price while LTH medians anchor to their cohort's acquisition era, revealing divergence and convergence across cycles.
Chart Datasets
median-cost-basis-by-ageproMedian cost basis (50th-percentile acquisition price) of each HODL-wave age cohort over time, overlaid on BTC price. Tracks cohort-level fair value, STH medians hug current price while LTH medians anchor to their cohort's acquisition era, revealing divergence and convergence across cycles.
GET /api/v1/charts/median-cost-basis-by-ageTry in PlaygroundResponse fields
block_height: number?btc_price: number?by_age: number?date: string?formattedDate: string?median_band_0: number?median_band_1: number?median_band_10: number?median_band_11: number?median_band_2: number?median_band_3: number?median_band_4: number?median_band_5: number?median_band_6: number?median_band_7: number?median_band_8: number?median_band_9: number?price: number?timestamp: integer?ledger_index: number?median_cost_basis_1d_1w: number?median_cost_basis_1m_3m: number?median_cost_basis_1w_1m: number?median_cost_basis_1y_2y: number?median_cost_basis_2y_3y: number?median_cost_basis_3m_6m: number?median_cost_basis_3y_5y: number?median_cost_basis_5y_plus: number?median_cost_basis_6m_12m: number?median_cost_basis_lt_1d: number?median_cost_basis_usd: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
median-mvrvproMVRV using the median cost basis instead of the mean. Resistant to whale skew, below 1 means the majority of supply is underwater, regardless of how large holders are positioned.
Chart Datasets
median-mvrvproMVRV using the median cost basis instead of the mean. Resistant to whale skew, below 1 means the majority of supply is underwater, regardless of how large holders are positioned.
GET /api/v1/charts/median-mvrvTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?market_cap_usd: number?median_cost_basis: number?median_mvrv: number?median_realized_price: number?mvrv: number?mvrv_ratio: number?price: number?realized_cap_usd: number?realized_price: number?timestamp: integer?ledger_index: number?breakeven_line: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
median-soprproThe median profit ratio across every spent output, rather than the value-weighted average that standard SOPR reports. Standard SOPR is a ratio of sums, so a handful of very large spends dominate it. The median instead shows what the typical coin movement did, and the 25th/75th percentile band shows the spread of the whole distribution.
Chart Datasets
median-soprproThe median profit ratio across every spent output, rather than the value-weighted average that standard SOPR reports. Standard SOPR is a ratio of sums, so a handful of very large spends dominate it. The median instead shows what the typical coin movement did, and the 25th/75th percentile band shows the spread of the whole distribution.
GET /api/v1/charts/median-soprTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?median_sopr: number?median_sopr_p05: number?median_sopr_p10: number?median_sopr_p25: number?median_sopr_p75: number?median_sopr_p90: number?median_sopr_p95: number?median_sopr_pct_in_profit: number?median_sopr_value_weighted: number?price: number?spent_outputs: number?timestamp: integer?ledger_index: number?block_height: number?adjusted_sopr: number?sopr_sma7: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
miner-revenueproTrack total daily Bitcoin miner revenue in USD, combining block subsidies and transaction fees. Visualize how miner income correlates with BTC price across market cycles, halving events, and fee market dynamics.
Chart Datasets
miner-revenueproTrack total daily Bitcoin miner revenue in USD, combining block subsidies and transaction fees. Visualize how miner income correlates with BTC price across market cycles, halving events, and fee market dynamics.
GET /api/v1/charts/miner-revenueTry in PlaygroundResponse fields
365d_ma_issuance_usd: number?block_height: number?blocks: number?btc_price: number?coinbase_rewards_btc: number?daily_issuance_usd: number?date: string?formattedDate: string?ma365_revenue: number?mining_revenue_btc: number?mining_revenue_usd: number?price: number?puell_multiple: number?timestamp: integer?total_fees_btc: number?fee_revenue_usd: number?reserve_revenue_usd: number?active_mvrv: number?active_realized_price: number?active_supply_btc: number?aviv_nupl: number?aviv_ratio: number?circulating_supply_btc: number?cointime_price: number?investor_cap: number?liveliness: number?market_cap: number?mvrv_ratio: number?nupl: number?realized_cap: number?supply_in_loss_btc: number?supply_in_profit_btc: number?thermocap: number?true_market_mean_price: number?vaulted_price: number?vaulted_supply_btc: number?vaultedness: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
mining-difficultyproMonitor Bitcoin mining difficulty adjustments that maintain 10-minute block times. Rising difficulty reflects increased hash rate and miner competition, indicating network strength.
Chart Datasets
mining-difficultyproMonitor Bitcoin mining difficulty adjustments that maintain 10-minute block times. Rising difficulty reflects increased hash rate and miner competition, indicating network strength.
GET /api/v1/charts/mining-difficultyTry in PlaygroundResponse fields
avg_fees_per_block: number?block_height: number?blocks: number?btc_price: number?coinbase_rewards_btc: number?daily_issuance_btc: number?date: string?difficulty: number?formattedDate: string?hash_rate: number?last_height: number?price: number?timestamp: integer?total_fees_btc: number?utxos_created: number?utxos_spent: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
monthly-exchange-flowsproView monthly net Bitcoin flows for individual exchanges or all exchanges combined. Analyze inflow/outflow patterns to identify accumulation and distribution trends over time.
Chart Datasets
monthly-exchange-flowsproView monthly net Bitcoin flows for individual exchanges or all exchanges combined. Analyze inflow/outflow patterns to identify accumulation and distribution trends over time.
GET /api/v1/charts/monthly-exchange-flowsTry in PlaygroundResponse fields
year: number?Jan: number?Feb: number?Mar: number?Apr: number?May: number?Jun: number?Jul: number?Aug: number?Sep: number?Oct: number?Nov: number?Dec: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
timeframe | string | Requested chart timeframe. |
exchangeKey | string | Exchange identifier. |
monthly-returns-tableproBitcoin monthly returns arranged by year and month
Chart Datasets
monthly-returns-tableproBitcoin monthly returns arranged by year and month
GET /api/v1/charts/monthly-returns-tableTry in PlaygroundResponse fields
period: number?year: number?month: number?open: number?close: number?returnPct: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
mstr-vwapr-mvrvproAnalyze MicroStrategy (MSTR) stock using Volume Weighted Average Price Ratio (VWAPR) and Market Value to Realized Value (MVRV) metrics to identify market cycles and valuation extremes
Chart Datasets
mstr-vwapr-mvrvproAnalyze MicroStrategy (MSTR) stock using Volume Weighted Average Price Ratio (VWAPR) and Market Value to Realized Value (MVRV) metrics to identify market cycles and valuation extremes
GET /api/v1/charts/mstr-vwapr-mvrvTry in PlaygroundResponse fields
close: number?vwap155: number?vwapr20: number?mvrv155: number?vwapMvrvZScore155: number?plus13STD: number?minus6STD: number?minus12STD: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
timeframe | string | Requested chart timeframe. |
mvrvproMonitor Bitcoin Market Value to Realized Value (MVRV) ratio alongside realized price and bitcoin price. Statistical bands reveal historical overvaluation and undervaluation zones for market timing
Chart Datasets
mvrvproMonitor Bitcoin Market Value to Realized Value (MVRV) ratio alongside realized price and bitcoin price. Statistical bands reveal historical overvaluation and undervaluation zones for market timing
GET /api/v1/charts/mvrvTry in PlaygroundResponse fields
4year_average: number?4year_minus_1_sigma: number?4year_minus_2_sigma: number?4year_plus_1_sigma: number?4year_plus_2_sigma: number?alltime_average: number?alltime_minus_1_sigma: number?alltime_minus_2_sigma: number?alltime_plus_1_sigma: number?alltime_plus_2_sigma: number?btc_price: number?date: string?formattedDate: string?lth_mvrv: number?market_cap_usd: number?mvrv: number?mvrv_0sigma_price: number?mvrv_minus_1sigma_price: number?mvrv_plus_1sigma_price: number?mvrv_ratio: number?price: number?realized_cap_usd: number?realized_price: number?sth_mvrv: number?timestamp: integer?z_score: number?mvrv_4year_average: number?mvrv_4year_minus_sigma: number?mvrv_4year_plus_sigma: number?mvrv_alltime_average: number?mvrv_alltime_minus_sigma: number?mvrv_alltime_plus_sigma: number?ledger_index: number?block_height: number?mvrv_mean: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
mvrv-bandsproVisualize Bitcoin price overlaid with statistical bands derived from the MVRV (Market Value to Realized Value) ratio to identify extreme market conditions and potential reversal zones based on historical MVRV deviations
Chart Datasets
mvrv-bandsproVisualize Bitcoin price overlaid with statistical bands derived from the MVRV (Market Value to Realized Value) ratio to identify extreme market conditions and potential reversal zones based on historical MVRV deviations
GET /api/v1/charts/mvrv-bandsTry in PlaygroundResponse fields
block_height: number?btc_price: number?circulating_supply: number?date: string?formattedDate: string?market_cap: number?market_cap_usd: number?mvrv: number?mvrv_4year_average: number?mvrv_4year_minus_1_sigma: number?mvrv_4year_minus_2_sigma: number?mvrv_4year_plus_1_sigma: number?mvrv_4year_plus_2_sigma: number?mvrv_4year_plus_3_sigma: number?mvrv_lower_1sd: number?mvrv_lower_2sd: number?mvrv_mean: number?mvrv_minus_0_5_sigma: number?mvrv_minus_1_5_sigma: number?mvrv_minus_1_sigma: number?mvrv_minus_2_sigma: number?mvrv_plus_0_5_sigma: number?mvrv_plus_1_5_sigma: number?mvrv_plus_1_sigma: number?mvrv_plus_2_sigma: number?mvrv_ratio: number?mvrv_upper_1sd: number?mvrv_upper_2sd: number?price: number?price_at_mean: number?price_at_minus_1_sigma: number?price_at_minus_2_sigma: number?price_at_plus_1_sigma: number?price_at_plus_2_sigma: number?price_mean: number?price_minus_0_5_sigma: number?price_minus_1_5_sigma: number?price_minus_1_sigma: number?price_minus_2_sigma: number?price_plus_0_5_sigma: number?price_plus_1_5_sigma: number?price_plus_1_sigma: number?price_plus_2_sigma: number?realized_cap: number?realized_cap_usd: number?realized_price: number?timestamp: integer?z_score: number?mvrv_minus_half_sigma: number?mvrv_plus_half_sigma: number?ledger_index: number?mvrv_bands: number?mvrv_minus_1sigma: number?mvrv_plus_1sigma: number?mvrv_plus_2sigma: number?price_at_mvrv_mean: number?price_at_mvrv_minus_1sd: number?price_at_mvrv_minus_1sigma: number?price_at_mvrv_minus_2sd: number?price_at_mvrv_minus_half_sigma: number?price_at_mvrv_plus_1sd: number?price_at_mvrv_plus_1sigma: number?price_at_mvrv_plus_2sd: number?price_at_mvrv_plus_2sigma: number?price_at_mvrv_plus_half_sigma: number?price_lower_1sd: number?price_lower_2sd: number?price_mean_band: number?price_upper_1sd: number?price_upper_2sd: number?alltime_average: number?alltime_minus_1_sigma: number?alltime_minus_2_sigma: number?alltime_plus_1_sigma: number?alltime_plus_2_sigma: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
mvrv-momentumproAnalyze Bitcoin MVRV ratio momentum by comparing current values against 1-year moving average, with positive/negative momentum indicators to identify major shifts in unrealized profit and optimal entry/exit points
Chart Datasets
mvrv-momentumproAnalyze Bitcoin MVRV ratio momentum by comparing current values against 1-year moving average, with positive/negative momentum indicators to identify major shifts in unrealized profit and optimal entry/exit points
GET /api/v1/charts/mvrv-momentumTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?market_cap_usd: number?mvrv: number?mvrv_momentum: number?mvrv_momentum_30d: number?mvrv_momentum_90d: number?mvrv_ratio: number?mvrv_sma_30: number?mvrv_sma_365: number?price: number?realized_cap_usd: number?timestamp: integer?z_score: number?ledger_index: number?momentum: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
mvrv-z-scoreproMonitor Bitcoin Market Value to Realized Value (MVRV) ratio with Z-score normalization to identify extreme overvaluation and undervaluation periods, historically marking major market tops and bottoms
Chart Datasets
mvrv-z-scoreproMonitor Bitcoin Market Value to Realized Value (MVRV) ratio with Z-score normalization to identify extreme overvaluation and undervaluation periods, historically marking major market tops and bottoms
GET /api/v1/charts/mvrv-z-scoreTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?market_cap_usd: number?mvrv: number?mvrv_ratio: number?mvrv_zscore: number?price: number?realized_cap_usd: number?timestamp: integer?z_score: number?mvrv_zscore_rolling: number?mvrv_zscore_smoothed: number?ledger_index: number?mvrv_z_score: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
net-flow-momentumproMeasure the acceleration of Bitcoin exchange flows by tracking rate of change in net flow. Reveals whether inflow/outflow activity is accelerating or decelerating, helping identify shifts in market sentiment.
Chart Datasets
net-flow-momentumproMeasure the acceleration of Bitcoin exchange flows by tracking rate of change in net flow. Reveals whether inflow/outflow activity is accelerating or decelerating, helping identify shifts in market sentiment.
GET /api/v1/charts/net-flow-momentumTry in PlaygroundResponse fields
price: number?net_flow: number?net_flow_roc: number?net_flow_momentum_positive: number?net_flow_momentum_negative: number?total_balance: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
timeframe | string | Requested chart timeframe. |
rateOfChange | string | Rate-of-change display mode. |
unit | string | Requested output unit. |
smoothingConfig | json | JSON smoothing configuration used by the chart projection. |
net-realized-profit-lossproNet Realized Profit and Loss (NRPL) measures realized profits minus realized losses on Bitcoin transfers, using on-chain cost-basis estimates. The single line shows whether profit or loss dominates in value, with USD and BTC denominations available.
Chart Datasets
net-realized-profit-lossproNet Realized Profit and Loss (NRPL) measures realized profits minus realized losses on Bitcoin transfers, using on-chain cost-basis estimates. The single line shows whether profit or loss dominates in value, with USD and BTC denominations available.
GET /api/v1/charts/net-realized-profit-lossTry in PlaygroundResponse fields
block_height: number?btc_price: number?daily_realized_loss_btc: number?daily_realized_loss_usd: number?daily_realized_profit_btc: number?daily_realized_profit_usd: number?date: string?formattedDate: string?net_realized_pl: number?net_realized_pl_usd: number?net_rpl: number?net_rpl_sma30: number?price: number?realized_loss_usd: number?realized_profit_usd: number?timestamp: integer?ledger_index: number?net_realized_pl_btc: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
new-addressesproAddresses observed on-chain for the first time during each rolling 24-hour interval, sampled daily.
Chart Datasets
new-addressesproAddresses observed on-chain for the first time during each rolling 24-hour interval, sampled daily.
GET /api/v1/charts/new-addressesTry in PlaygroundResponse fields
date: string?formattedDate: string?new_addresses: number?price: number?timestamp: integer?block_height: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
new-addresses-by-typeproDaily new P2PKH, P2SH, P2WPKH, P2WSH, and P2TR addresses, separating network growth from migration between legacy, SegWit, and Taproot formats.
Chart Datasets
new-addresses-by-typeproDaily new P2PKH, P2SH, P2WPKH, P2WSH, and P2TR addresses, separating network growth from migration between legacy, SegWit, and Taproot formats.
GET /api/v1/charts/new-addresses-by-typeTry in PlaygroundResponse fields
date: string?formattedDate: string?p2pkh_new_addresses: number?p2sh_new_addresses: number?p2tr_new_addresses: number?p2wpkh_new_addresses: number?p2wsh_new_addresses: number?price: number?timestamp: integer?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
non-zero-balance-addressesproBitcoin addresses holding a positive balance at the end of each daily observation.
Chart Datasets
non-zero-balance-addressesproBitcoin addresses holding a positive balance at the end of each daily observation.
GET /api/v1/charts/non-zero-balance-addressesTry in PlaygroundResponse fields
date: string?formattedDate: string?non_zero_addresses: number?price: number?timestamp: integer?block_height: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
nuplproMonitor Bitcoin Net Unrealized Profit and Loss (NUPL), measuring market profit or loss as a percentage of market cap to identify market cycles from capitulation through accumulation to euphoria, with historical accuracy in marking major tops and bottoms
Chart Datasets
nuplproMonitor Bitcoin Net Unrealized Profit and Loss (NUPL), measuring market profit or loss as a percentage of market cap to identify market cycles from capitulation through accumulation to euphoria, with historical accuracy in marking major tops and bottoms
GET /api/v1/charts/nuplTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?lth_nupl: number?market_cap: number?market_cap_btc: number?market_cap_usd: number?market_phase: number?mvrv_ratio: number?nupl: number?price: number?realized_cap: number?realized_cap_btc: number?realized_cap_created: number?realized_cap_created_btc: number?realized_cap_destroyed: number?realized_cap_destroyed_btc: number?realized_cap_net: number?realized_cap_net_btc: number?realized_cap_usd: number?sth_nupl: number?supply_in_loss_btc: number?supply_in_profit_btc: number?timestamp: integer?unrealized_loss_usd: number?unrealized_profit_usd: number?ledger_index: number?block_height: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
nupl-cohort-riskproWeighted score built from holder-cohort NUPL series and the LTH Profit-to-Volatility Ratio. The chart shows the score with risk phases and color-coded price markers.
Chart Datasets
nupl-cohort-riskproWeighted score built from holder-cohort NUPL series and the LTH Profit-to-Volatility Ratio. The chart shows the score with risk phases and color-coded price markers.
GET /api/v1/charts/nupl-cohort-riskTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?lth_nupl: number?market_cap: number?market_cap_btc: number?market_cap_usd: number?market_phase: number?mvrv_ratio: number?nupl: number?price: number?realized_cap: number?realized_cap_btc: number?realized_cap_created: number?realized_cap_created_btc: number?realized_cap_destroyed: number?realized_cap_destroyed_btc: number?realized_cap_net: number?realized_cap_net_btc: number?realized_cap_usd: number?sth_nupl: number?supply_in_loss_btc: number?supply_in_profit_btc: number?timestamp: integer?unrealized_loss_usd: number?unrealized_profit_usd: number?ledger_index: number?block_height: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
nupl-z-scoreproStandardized NUPL metric that identifies extreme market conditions by measuring how many standard deviations the current NUPL is from its historical mean. Includes both traditional cumulative and 1-year rolling window methods for enhanced cycle timing.
Chart Datasets
nupl-z-scoreproStandardized NUPL metric that identifies extreme market conditions by measuring how many standard deviations the current NUPL is from its historical mean. Includes both traditional cumulative and 1-year rolling window methods for enhanced cycle timing.
GET /api/v1/charts/nupl-z-scoreTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?lth_nupl: number?market_cap: number?market_cap_btc: number?market_cap_usd: number?market_phase: number?mvrv_ratio: number?nupl: number?price: number?realized_cap: number?realized_cap_btc: number?realized_cap_created: number?realized_cap_created_btc: number?realized_cap_destroyed: number?realized_cap_destroyed_btc: number?realized_cap_net: number?realized_cap_net_btc: number?realized_cap_usd: number?sth_nupl: number?supply_in_loss_btc: number?supply_in_profit_btc: number?timestamp: integer?unrealized_loss_usd: number?unrealized_profit_usd: number?ledger_index: number?block_height: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
og-whale-spendingproTrack when ancient Bitcoin (7+ years old) moves in large quantities. Denominate in USD or BTC with customizable thresholds. Yellow markers flag major spending days, red markers flag extreme events, often signaling moves by the earliest Bitcoin holders.
Chart Datasets
og-whale-spendingproTrack when ancient Bitcoin (7+ years old) moves in large quantities. Denominate in USD or BTC with customizable thresholds. Yellow markers flag major spending days, red markers flag extreme events, often signaling moves by the earliest Bitcoin holders.
GET /api/v1/charts/og-whale-spendingTry in PlaygroundResponse fields
price: number?og_whale_spent: number?og_whale_spent_btc: number?is_100m_event: number?is_500m_event: number?_unit: number?_minAge: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
unit | string | Requested output unit. |
btcMajorThreshold | number | Major Bitcoin-denominated whale-spend threshold. |
btcExtremeThreshold | number | Extreme Bitcoin-denominated whale-spend threshold. |
usdMajorThreshold | number | Major USD-denominated whale-spend threshold. |
usdExtremeThreshold | number | Extreme USD-denominated whale-spend threshold. |
ogWhaleMinAge | integer | Minimum coin age for the OG whale cohort. |
onchain-price-levelsproDisplay Bitcoin price alongside fundamental onchain price levels including Realized Price, Investor Price, Cointime Price, True Market Mean, and Vaulted Price. Compare current market price to various onchain-derived fair value estimates.
Chart Datasets
onchain-price-levelsproDisplay Bitcoin price alongside fundamental onchain price levels including Realized Price, Investor Price, Cointime Price, True Market Mean, and Vaulted Price. Compare current market price to various onchain-derived fair value estimates.
GET /api/v1/charts/onchain-price-levelsTry in PlaygroundResponse fields
active_realized_price: number?balanced_price: number?block_height: number?btc_price: number?cvdd: number?date: string?formattedDate: string?investor_price: number?lth_cost_basis: number?lth_upd_plus_2sigma_price: number?mvrv_avg_price: number?mvrv_ratio: number?nupl: number?price: number?realized_price: number?sth_3m_6m_realized_price: number?sth_cost_basis: number?thermoprice_32x: number?timestamp: integer?transferred_price: number?true_market_mean_price: number?vaulted_price: number?ledger_index: number?realized_price_usd: number?spot_price_usd: number?true_market_mean: number?true_market_mean_usd: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
onchain-riskproCombines 8 on-chain metrics (NUPL, LTH PVR, Supply P/L, MVRV, MVRV Z-Score, Realized P/L Ratio, MCTC Ratio, Active MVRV) into a single 0 to 1 risk score using percentile ranking. Readings above 0.85 have historically marked cycle tops, while readings below 0.15 have signaled generational buying opportunities. Fully customizable weights let you tune how each metric contributes.
Chart Datasets
onchain-riskproCombines 8 on-chain metrics (NUPL, LTH PVR, Supply P/L, MVRV, MVRV Z-Score, Realized P/L Ratio, MCTC Ratio, Active MVRV) into a single 0 to 1 risk score using percentile ranking. Readings above 0.85 have historically marked cycle tops, while readings below 0.15 have signaled generational buying opportunities. Fully customizable weights let you tune how each metric contributes.
GET /api/v1/charts/onchain-riskTry in PlaygroundResponse fields
active_mvrv_pct: number?block_height: number?btc_price: number?date: string?formattedDate: string?mctc_pct: number?mvrv_pct: number?mvrv_zscore_pct: number?nupl_pct: number?pl_ratio_pct: number?price: number?puell_pct: number?pvr_pct: number?risk: number?rpl_ratio_pct: number?supply_pl_pct: number?timestamp: integer?ledger_index: number?onchain_risk_composite: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
op-returnproOP_RETURN usage on Bitcoin, including fees paid over rolling windows and cumulatively. Protocol-level charts separately classify activity including Runes, Omni, Stacks, and OpenTimestamps.
Chart Datasets
op-returnproOP_RETURN usage on Bitcoin, including fees paid over rolling windows and cumulatively. Protocol-level charts separately classify activity including Runes, Omni, Stacks, and OpenTimestamps.
GET /api/v1/charts/op-returnTry in PlaygroundResponse fields
date: string?formattedDate: string?op_return_fees_24h: number?op_return_fees_cumulative: number?price: number?timestamp: integer?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
op-return-data-volumeproDaily OP_RETURN bytes in total and attributed to Runes, text, Omni, and unknown payloads, complementing protocol transaction counts with their actual data footprint.
Chart Datasets
op-return-data-volumeproDaily OP_RETURN bytes in total and attributed to Runes, text, Omni, and unknown payloads, complementing protocol transaction counts with their actual data footprint.
GET /api/v1/charts/op-return-data-volumeTry in PlaygroundResponse fields
date: string?formattedDate: string?omni_bytes: number?price: number?runes_bytes: number?text_bytes: number?timestamp: integer?total_bytes: number?unknown_bytes: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
op-return-protocolsproDaily OP_RETURN transaction counts classified as Runes, Stacks, text, Omni, and unclassified payloads.
Chart Datasets
op-return-protocolsproDaily OP_RETURN transaction counts classified as Runes, Stacks, text, Omni, and unclassified payloads.
GET /api/v1/charts/op-return-protocolsTry in PlaygroundResponse fields
date: string?formattedDate: string?omni_tx_count_24h: number?price: number?runes_tx_count_24h: number?stacks_tx_count_24h: number?text_tx_count_24h: number?timestamp: integer?unknown_tx_count_24h: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
options-futures-oi-ratioproOpen interest in options as a percentage of open interest in futures, for BTC and ETH. A rising ratio means options positioning is growing relative to directional futures, a structural shift toward hedging and optionality that often accompanies a maturing, more institutional market. BTC runs a much higher options share than ETH.
Chart Datasets
options-futures-oi-ratioproOpen interest in options as a percentage of open interest in futures, for BTC and ETH. A rising ratio means options positioning is growing relative to directional futures, a structural shift toward hedging and optionality that often accompanies a maturing, more institutional market. BTC runs a much higher options share than ETH.
GET /api/v1/charts/options-futures-oi-ratioTry in PlaygroundResponse fields
btc_ratio: number?eth_ratio: number?btc_price: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
timeframe | string | Requested chart timeframe. |
options-open-interestproTotal outstanding Bitcoin options contracts (in BTC) across exchanges, with Deribit the dominant venue. Rising options OI signals growing hedging and speculative positioning around future price. Large OI clustered near an expiry can pin spot toward the max-pain strike. Toggle individual venues in the legend.
Chart Datasets
options-open-interestproTotal outstanding Bitcoin options contracts (in BTC) across exchanges, with Deribit the dominant venue. Rising options OI signals growing hedging and speculative positioning around future price. Large OI clustered near an expiry can pin spot toward the max-pain strike. Toggle individual venues in the legend.
GET /api/v1/charts/options-open-interestTry in PlaygroundResponse fields
total: number?total_usd: number?Deribit: number?CME: number?OKX: number?Binance: number?Bybit: number?btc_price: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
timeframe | string | Requested chart timeframe. |
options-summaryproOptions positioning from Deribit, the dominant crypto options venue: the put/call ratio (put open interest divided by call open interest, a defensive-vs-bullish gauge) and max pain (the strike at which the most options expire worthless, which price often gravitates toward into large expiries) overlaid against spot. Switch between BTC and ETH. Sampled daily; expired options cannot be backfilled, so history builds forward.
Chart Datasets
options-summaryproOptions positioning from Deribit, the dominant crypto options venue: the put/call ratio (put open interest divided by call open interest, a defensive-vs-bullish gauge) and max pain (the strike at which the most options expire worthless, which price often gravitates toward into large expiries) overlaid against spot. Switch between BTC and ETH. Sampled daily; expired options cannot be backfilled, so history builds forward.
GET /api/v1/charts/options-summaryTry in PlaygroundResponse fields
btc_pc_ratio: number?btc_pc_ratio_volume: number?btc_max_pain: number?btc_total_oi: number?btc_price: number?eth_pc_ratio: number?eth_pc_ratio_volume: number?eth_max_pain: number?eth_total_oi: number?eth_price: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
optionsAsset | string | Options underlying asset. |
options-volumeproDaily Bitcoin options trading volume (in USD) across exchanges, Deribit led. Volume spikes mark bursts of hedging and directional speculation, often around macro events, large expiries, or sharp spot moves. Compared against open interest, high volume with rising OI is fresh positioning while high volume with flat OI is churn.
Chart Datasets
options-volumeproDaily Bitcoin options trading volume (in USD) across exchanges, Deribit led. Volume spikes mark bursts of hedging and directional speculation, often around macro events, large expiries, or sharp spot moves. Compared against open interest, high volume with rising OI is fresh positioning while high volume with flat OI is churn.
GET /api/v1/charts/options-volumeTry in PlaygroundResponse fields
total: number?Deribit: number?CME: number?OKX: number?Binance: number?Bybit: number?btc_price: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
timeframe | string | Requested chart timeframe. |
output-type-activityproThe rolling 24-hour share of newly created outputs using P2PKH, P2SH, native SegWit, and Taproot locking scripts.
Chart Datasets
output-type-activityproThe rolling 24-hour share of newly created outputs using P2PKH, P2SH, native SegWit, and Taproot locking scripts.
GET /api/v1/charts/output-type-activityTry in PlaygroundResponse fields
date: string?formattedDate: string?p2pkh_output_share_24h: number?p2sh_output_share_24h: number?p2tr_output_share_24h: number?p2wpkh_output_share_24h: number?p2wsh_output_share_24h: number?price: number?timestamp: integer?block_height: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
output-type-adoptionproThe percentage of funded Bitcoin supply held in each locking-script family, normalized from the native V6 UTXO inventory. Tracks the shift from legacy scripts into native SegWit and Taproot while keeping P2SH separate because it can wrap several script types.
Chart Datasets
output-type-adoptionproThe percentage of funded Bitcoin supply held in each locking-script family, normalized from the native V6 UTXO inventory. Tracks the shift from legacy scripts into native SegWit and Taproot while keeping P2SH separate because it can wrap several script types.
GET /api/v1/charts/output-type-adoptionTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?op_return_rcap_usd: number?op_return_supply_btc: number?p2a_rcap_usd: number?p2a_supply_btc: number?p2ms_rcap_usd: number?p2ms_supply_btc: number?p2pk33_rcap_usd: number?p2pk33_supply_btc: number?p2pk65_supply_btc: number?p2pkh_rcap_usd: number?p2pkh_supply_btc: number?p2sh_rcap_usd: number?p2sh_supply_btc: number?p2tr_rcap_usd: number?p2tr_supply_btc: number?p2wpkh_rcap_usd: number?p2wpkh_supply_btc: number?p2wsh_rcap_usd: number?p2wsh_supply_btc: number?timestamp: integer?unknown_rcap_usd: number?unknown_supply_btc: number?empty_rcap_usd: number?empty_supply_btc: number?p2pk65_rcap_usd: number?block_height: number?price: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
pi-cycle-topproTrack the Pi Cycle Top indicator, which has historically pinpointed Bitcoin cycle peaks. Due to diminishing returns across cycles, the traditional x2 multiplier crossover may not fire in future cycles. Use the adjustable multiplier to tune sensitivity.
Chart Datasets
pi-cycle-topproTrack the Pi Cycle Top indicator, which has historically pinpointed Bitcoin cycle peaks. Due to diminishing returns across cycles, the traditional x2 multiplier crossover may not fire in future cycles. Use the adjustable multiplier to tune sensitivity.
GET /api/v1/charts/pi-cycle-topTry in PlaygroundResponse fields
price: number?ma111: number?ma350x2: number?maSpread: number?isCrossover: number?isPotentialTop: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
piCycleMultiplier | number | Multiplier applied to the Pi Cycle long moving average. |
piCycleMultiplierCustom | number | Custom Pi Cycle multiplier. |
price-horizonsproDisplays price across four time horizons (Days, Months, Years, Decades), illustrating how short-term volatility transforms into long-term exponential growth. A visual representation of Bitcoin's consistent upward trajectory across different temporal scales.
Chart Datasets
price-horizonsproDisplays price across four time horizons (Days, Months, Years, Decades), illustrating how short-term volatility transforms into long-term exponential growth. A visual representation of Bitcoin's consistent upward trajectory across different temporal scales.
GET /api/v1/charts/price-horizonsTry in PlaygroundResponse fields
crypto_price: number?indicator_value: number?correlation: number?correlation_display: number?indicator_display: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
correlationWindow | integer | Rolling correlation window in observations. |
production-costproThe estimated cost to mine one bitcoin, a widely-watched proxy for miner break-even and a historical price floor, since price rarely holds below the electricity cost for long. Compares four models: the energy-based electricity cost and total production cost (Capriole / Cambridge CBECI), a difficulty regression (Glassnode-style), and the Energy Value fair-value model (Charles Edwards).
Chart Datasets
production-costproThe estimated cost to mine one bitcoin, a widely-watched proxy for miner break-even and a historical price floor, since price rarely holds below the electricity cost for long. Compares four models: the energy-based electricity cost and total production cost (Capriole / Cambridge CBECI), a difficulty regression (Glassnode-style), and the Energy Value fair-value model (Charles Edwards).
GET /api/v1/charts/production-costTry in PlaygroundResponse fields
btc_price: number?date: string?efficiency_jth: number?electricity_cost: number?energy_per_btc_kwh: number?energy_value: number?formattedDate: string?marginal_cost: number?price: number?ratio_electricity: number?ratio_energy_value: number?ratio_marginal: number?ratio_regression: number?ratio_thermocap: number?ratio_total: number?regression_price: number?thermocap_price: number?timestamp: integer?total_cost: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
profit-lossproTrack the percentage of Bitcoin supply currently in profit or loss. A key on-chain indicator that measures market sentiment, identifies cycle tops and bottoms, and signals potential trend reversals based on unrealized gains across the network
Chart Datasets
profit-lossproTrack the percentage of Bitcoin supply currently in profit or loss. A key on-chain indicator that measures market sentiment, identifies cycle tops and bottoms, and signals potential trend reversals based on unrealized gains across the network
GET /api/v1/charts/profit-lossTry in PlaygroundResponse fields
block_height: number?btc_in_loss: number?btc_in_profit: number?btc_price: number?current_supply: number?date: string?formattedDate: string?percent_btc_in_loss: number?percent_btc_in_profit: number?price: number?supply_in_loss_btc: number?supply_in_loss_pct: number?supply_in_loss_percent: number?supply_in_profit_btc: number?supply_in_profit_pct: number?supply_in_profit_percent: number?timestamp: integer?circulating_supply_btc: number?ledger_index: number?profit_loss: number?abs_loss: number?abs_profit: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
puell-multipleproMonitor Bitcoin miner profitability and market cycles through the Puell Multiple. This indicator compares daily mining revenue to its 365-day moving average, helping identify market tops and bottoms based on mining economics.
Chart Datasets
puell-multipleproMonitor Bitcoin miner profitability and market cycles through the Puell Multiple. This indicator compares daily mining revenue to its 365-day moving average, helping identify market tops and bottoms based on mining economics.
GET /api/v1/charts/puell-multipleTry in PlaygroundResponse fields
365d_ma_issuance_usd: number?block_height: number?blocks: number?btc_price: number?coinbase_rewards_btc: number?daily_issuance_usd: number?date: string?formattedDate: string?ma365_revenue: number?mining_revenue_btc: number?mining_revenue_usd: number?price: number?puell_multiple: number?timestamp: integer?total_fees_btc: number?fee_revenue_usd: number?reserve_revenue_usd: number?active_mvrv: number?active_realized_price: number?active_supply_btc: number?aviv_nupl: number?aviv_ratio: number?circulating_supply_btc: number?cointime_price: number?investor_cap: number?liveliness: number?market_cap: number?mvrv_ratio: number?nupl: number?realized_cap: number?supply_in_loss_btc: number?supply_in_profit_btc: number?thermocap: number?true_market_mean_price: number?vaulted_price: number?vaulted_supply_btc: number?vaultedness: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
rcap-hodl-profit-lossproHODL waves decomposed by profitability, weighted by realized cap (USD value) instead of coin supply. Shows the dollar magnitude at risk in each holder age cohort, revealing whether the capital trapped underwater is from large old positions or small recent ones. Supports USD, native coin, and percentage denomination modes with STH/LTH filtering. A novel metric not available on any other analytics platform.
Chart Datasets
rcap-hodl-profit-lossproHODL waves decomposed by profitability, weighted by realized cap (USD value) instead of coin supply. Shows the dollar magnitude at risk in each holder age cohort, revealing whether the capital trapped underwater is from large old positions or small recent ones. Supports USD, native coin, and percentage denomination modes with STH/LTH filtering. A novel metric not available on any other analytics platform.
GET /api/v1/charts/rcap-hodl-profit-lossTry in PlaygroundResponse fields
block_height: number?btc_in_loss: number?btc_in_profit: number?btc_price: number?date: string?formattedDate: string?percent_btc_in_loss: number?percent_btc_in_profit: number?rcap_band_0: number?rcap_band_1: number?rcap_band_10: number?rcap_band_11: number?rcap_band_2: number?rcap_band_3: number?rcap_band_4: number?rcap_band_5: number?rcap_band_6: number?rcap_band_7: number?rcap_band_8: number?rcap_band_9: number?rcap_loss_<1d: number?rcap_loss_10y+: number?rcap_loss_1d-1w: number?rcap_loss_1m-3m: number?rcap_loss_1w-1m: number?rcap_loss_1y-2y: number?rcap_loss_2y-3y: number?rcap_loss_3m-6m: number?rcap_loss_3y-5y: number?rcap_loss_5y-7y: number?rcap_loss_6m-1y: number?rcap_loss_7y-10y: number?rcap_profit_<1d: number?rcap_profit_10y+: number?rcap_profit_1d-1w: number?rcap_profit_1m-3m: number?rcap_profit_1w-1m: number?rcap_profit_1y-2y: number?rcap_profit_2y-3y: number?rcap_profit_3m-6m: number?rcap_profit_3y-5y: number?rcap_profit_5y-7y: number?rcap_profit_6m-1y: number?rcap_profit_7y-10y: number?supply_in_loss_btc: number?supply_in_loss_percent: number?supply_in_profit_btc: number?supply_in_profit_percent: number?timestamp: integer?total_realized_cap: number?rcap_loss_1d_1w: number?rcap_loss_1m_3m: number?rcap_loss_1w_1m: number?rcap_loss_1y_2y: number?rcap_loss_2y_3y: number?rcap_loss_3m_6m: number?rcap_loss_3y_5y: number?rcap_loss_5y_plus: number?rcap_loss_6m_12m: number?rcap_loss_lt_1d: number?rcap_profit_1d_1w: number?rcap_profit_1m_3m: number?rcap_profit_1w_1m: number?rcap_profit_1y_2y: number?rcap_profit_2y_3y: number?rcap_profit_3m_6m: number?rcap_profit_3y_5y: number?rcap_profit_5y_plus: number?rcap_profit_6m_12m: number?rcap_profit_lt_1d: number?ledger_index: number?price: number?rcap_loss_10y_plus: number?rcap_loss_24h: number?rcap_loss_5y_7y: number?rcap_loss_7y_10y: number?rcap_profit_10y_plus: number?rcap_profit_24h: number?rcap_profit_5y_7y: number?rcap_profit_7y_10y: number?rcap_loss_6m-12m: number?rcap_loss_< 1d: number?rcap_loss_> 10y: number?rcap_profit_6m-12m: number?rcap_profit_< 1d: number?rcap_profit_> 10y: number?rcap_loss_5y+: number?rcap_profit_5y+: number?rcap_loss_less_than_1d: number?rcap_profit_less_than_1d: number?_hodl_total: number?hodl_wave_realized_cap_pct_band_0: number?hodl_wave_realized_cap_pct_band_1: number?hodl_wave_realized_cap_pct_band_10: number?hodl_wave_realized_cap_pct_band_11: number?hodl_wave_realized_cap_pct_band_2: number?hodl_wave_realized_cap_pct_band_3: number?hodl_wave_realized_cap_pct_band_4: number?hodl_wave_realized_cap_pct_band_5: number?hodl_wave_realized_cap_pct_band_6: number?hodl_wave_realized_cap_pct_band_7: number?hodl_wave_realized_cap_pct_band_8: number?hodl_wave_realized_cap_pct_band_9: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
realized-capproCompare Bitcoin's realized capitalization with market cap, showing the aggregate value of all coins at their last movement vs current market value. Includes 7-day change analysis to identify capital flows and market momentum shifts.
Chart Datasets
realized-capproCompare Bitcoin's realized capitalization with market cap, showing the aggregate value of all coins at their last movement vs current market value. Includes 7-day change analysis to identify capital flows and market momentum shifts.
GET /api/v1/charts/realized-capTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?lth_cost_basis_usd: number?lth_realized_cap_usd: number?market_cap: number?market_cap_btc: number?market_cap_usd: number?mvrv_ratio: number?price: number?realized_cap: number?realized_cap_btc: number?realized_cap_change_7d: number?realized_cap_change_7d_abs: number?realized_cap_change_7d_abs_btc: number?realized_cap_change_7d_pct: number?realized_cap_created: number?realized_cap_created_btc: number?realized_cap_destroyed: number?realized_cap_destroyed_btc: number?realized_cap_net: number?realized_cap_net_btc: number?realized_cap_usd: number?realized_price_usd: number?realizedCapUsd: number?sth_cost_basis_usd: number?sth_realized_cap_usd: number?timestamp: integer?ledger_index: number?block_height: number?mvrv: number?nupl: number?sopr: number?supply_btc: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
realized-cap-drawdownproMeasures the percentage decline of Bitcoin's Realized Capitalization from its all-time high. Unlike market cap drawdowns (80-90%), realized cap drawdowns are muted (-14% to -23% at bear bottoms) because it represents actual capital invested in the network.
Chart Datasets
realized-cap-drawdownproMeasures the percentage decline of Bitcoin's Realized Capitalization from its all-time high. Unlike market cap drawdowns (80-90%), realized cap drawdowns are muted (-14% to -23% at bear bottoms) because it represents actual capital invested in the network.
GET /api/v1/charts/realized-cap-drawdownTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?market_cap_btc: number?market_cap_usd: number?mvrv_ratio: number?price: number?realized_cap: number?realized_cap_ath: number?realized_cap_btc: number?realized_cap_created: number?realized_cap_created_btc: number?realized_cap_destroyed: number?realized_cap_destroyed_btc: number?realized_cap_drawdown_pct: number?realized_cap_net: number?realized_cap_net_btc: number?realized_cap_usd: number?timestamp: integer?ledger_index: number?realized_cap_drawdown: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
realized-pl-accelerationproTracks changes in realized loss acceleration (RLA) and realized profit acceleration (RPA). The two series show when realized gains or losses are changing rapidly.
Chart Datasets
realized-pl-accelerationproTracks changes in realized loss acceleration (RLA) and realized profit acceleration (RPA). The two series show when realized gains or losses are changing rapidly.
GET /api/v1/charts/realized-pl-accelerationTry in PlaygroundResponse fields
block_height: number?btc_price: number?daily_realized_loss_btc: number?daily_realized_loss_usd: number?daily_realized_profit_btc: number?daily_realized_profit_usd: number?date: string?formattedDate: string?price: number?raw_rla: number?raw_rpa: number?realized_loss_btc_7d: number?realized_loss_velocity: number?realized_pl_acceleration: number?realized_pl_ratio: number?rla: number?rla_zscore: number?rpa: number?rpa_zscore: number?timestamp: integer?ledger_index: number?acceleration: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |
realized-pl-by-bandproBreaks down daily realized profit and loss into seven bands based on the seller's P&L percentage: from deep loss (>50% loss) through extreme profit (>100% gain). When the deep loss band shows high volume, that signals true capitulation, holders surrendering at massive losses, which historically marks bottoms. When extreme profit spikes, early holders are distributing after 2x+ gains, often preceding cycle tops.
Chart Datasets
realized-pl-by-bandproBreaks down daily realized profit and loss into seven bands based on the seller's P&L percentage: from deep loss (>50% loss) through extreme profit (>100% gain). When the deep loss band shows high volume, that signals true capitulation, holders surrendering at massive losses, which historically marks bottoms. When extreme profit spikes, early holders are distributing after 2x+ gains, often preceding cycle tops.
GET /api/v1/charts/realized-pl-by-bandTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?rpl_deep_loss: number?rpl_deep_loss_btc: number?rpl_extreme_profit: number?rpl_extreme_profit_btc: number?rpl_mild_loss: number?rpl_mild_loss_btc: number?rpl_mild_profit: number?rpl_mild_profit_btc: number?rpl_moderate_loss: number?rpl_moderate_loss_btc: number?rpl_moderate_profit: number?rpl_moderate_profit_btc: number?rpl_strong_profit: number?rpl_strong_profit_btc: number?timestamp: integer?band_0_net_usd: number?band_10_net_usd: number?band_11_net_usd: number?band_1_net_usd: number?band_2_net_usd: number?band_3_net_usd: number?band_4_net_usd: number?band_5_net_usd: number?band_6_net_usd: number?band_7_net_usd: number?band_8_net_usd: number?band_9_net_usd: number?ledger_index: number?price: number?realized_pl_10y_plus: number?realized_pl_1d_1w: number?realized_pl_1m_3m: number?realized_pl_1w_1m: number?realized_pl_1y_2y: number?realized_pl_24h: number?realized_pl_2y_3y: number?realized_pl_3m_6m: number?realized_pl_3y_5y: number?realized_pl_5y_7y: number?realized_pl_6m_12m: number?realized_pl_7y_10y: number?block_height: number?Query parameters
| Name | Type | Description |
|---|---|---|
days | integer | Number of recent calendar days to return. |
limit | integer | Maximum number of rows to return. |
startDate | date | Inclusive start date in YYYY-MM-DD format. |
endDate | date | Inclusive end date in YYYY-MM-DD format. |
format | string | Response serialization format. |
chain | string | Chain or asset identifier. |
dataResolution | string | Requested on-chain data resolution, when the metric advertises it in /api/onchain/manifest. Daily (1d) is the default; block and sub-day resolutions are served from the same metric endpoint. |
timeframe | string | Requested chart timeframe. |