API Reference
Endpoint Explorer
Search the complete live catalog, including exact response fields, typed parameters, Pro tiers, chain coverage, and supported legacy paths.
927ed17c749a5e0cPage 6 of 28sp500-keltner-channelsproS&P 500 price with a 20-session exponential moving average and envelopes placed two Wilder ATR values above and below it. The channels combine trend direction with range-based volatility.
Chart Datasets
sp500-keltner-channelsproS&P 500 price with a 20-session exponential moving average and envelopes placed two Wilder ATR values above and below it. The channels combine trend direction with range-based volatility.
GET /api/v1/charts/sp500-keltner-channelsTry in PlaygroundResponse fields
price: number?keltnerUpper20: number?keltnerMiddle20: number?keltnerLower20: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500KeltnerPeriod | integer | Keltner Channel period. |
sp500KeltnerMultiplier | number | Keltner Channel ATR multiplier. |
sp500-macdproS&P 500 price with the standard 12/26-day MACD, 9-day signal line, and positive/negative histogram. The synchronized lower pane makes momentum acceleration and crossovers readable without compressing the price scale.
Chart Datasets
sp500-macdproS&P 500 price with the standard 12/26-day MACD, 9-day signal line, and positive/negative histogram. The synchronized lower pane makes momentum acceleration and crossovers readable without compressing the price scale.
GET /api/v1/charts/sp500-macdTry in PlaygroundResponse fields
price: number?macd: number?macdSignal: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500MacdFast | integer | MACD fast period. |
sp500MacdSlow | integer | MACD slow period. |
sp500MacdSignal | integer | MACD signal period. |
sp500-returnsproS&P 500 price with rolling returns over 21, 63, 126, and 252 trading sessions, approximating one month, three months, six months, and one year. The shared zero line makes momentum agreement and horizon divergence easy to compare.
Chart Datasets
sp500-returnsproS&P 500 price with rolling returns over 21, 63, 126, and 252 trading sessions, approximating one month, three months, six months, and one year. The shared zero line makes momentum agreement and horizon divergence easy to compare.
GET /api/v1/charts/sp500-returnsTry in PlaygroundResponse fields
price: number?return21: number?return63: number?return126: number?return252: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500ReturnShort | integer | Short return window. |
sp500ReturnMedium | integer | Medium return window. |
sp500ReturnLong | integer | Long return window. |
sp500ReturnYear | integer | Annual return window. |
sp500-rsiproS&P 500 price with Wilder’s 14-day Relative Strength Index in a synchronized lower pane. The fixed 30 and 70 guides identify historically stretched momentum while preserving the price context above.
Chart Datasets
sp500-rsiproS&P 500 price with Wilder’s 14-day Relative Strength Index in a synchronized lower pane. The fixed 30 and 70 guides identify historically stretched momentum while preserving the price context above.
GET /api/v1/charts/sp500-rsiTry in PlaygroundResponse fields
price: number?rsi14: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500RsiPeriod | integer | RSI period. |
sp500RsiUpper | number | RSI upper threshold. |
sp500RsiLower | number | RSI lower threshold. |
sp500-sharpeproS&P 500 price with a rolling 252-session annualized Sharpe ratio calculated from daily simple returns and a zero risk-free rate. It measures average return per unit of total return variability over the preceding trading year.
Chart Datasets
sp500-sharpeproS&P 500 price with a rolling 252-session annualized Sharpe ratio calculated from daily simple returns and a zero risk-free rate. It measures average return per unit of total return variability over the preceding trading year.
GET /api/v1/charts/sp500-sharpeTry in PlaygroundResponse fields
price: number?sharpe252: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500SharpePeriod | integer | Sharpe ratio period. |
sp500-sortinoproS&P 500 price with a rolling 252-session annualized Sortino ratio calculated from daily simple returns and a zero target return. Unlike Sharpe, it penalizes downside deviation while leaving upside variability unpunished.
Chart Datasets
sp500-sortinoproS&P 500 price with a rolling 252-session annualized Sortino ratio calculated from daily simple returns and a zero target return. Unlike Sharpe, it penalizes downside deviation while leaving upside variability unpunished.
GET /api/v1/charts/sp500-sortinoTry in PlaygroundResponse fields
price: number?sortino252: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500SortinoPeriod | integer | Sortino ratio period. |
sp500-stochasticproS&P 500 price with a 14-session stochastic %K and its three-session %D signal line. The synchronized 0–100 pane compares each close with its recent high-low range, with 20 and 80 guides marking stretched positioning.
Chart Datasets
sp500-stochasticproS&P 500 price with a 14-session stochastic %K and its three-session %D signal line. The synchronized 0–100 pane compares each close with its recent high-low range, with 20 and 80 guides marking stretched positioning.
GET /api/v1/charts/sp500-stochasticTry in PlaygroundResponse fields
price: number?stochasticK14: number?stochasticD3: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500StochasticPeriod | integer | Stochastic oscillator period. |
sp500StochasticSignal | integer | Stochastic signal period. |
sp500StochasticUpper | number | Stochastic upper threshold. |
sp500StochasticLower | number | Stochastic lower threshold. |
sp500-supertrendproS&P 500 price with Supertrend calculated from a 10-session Wilder ATR and a three-times ATR multiplier. Separate green and red segments show the active volatility-adjusted trend level without connecting across regime changes.
Chart Datasets
sp500-supertrendproS&P 500 price with Supertrend calculated from a 10-session Wilder ATR and a three-times ATR multiplier. Separate green and red segments show the active volatility-adjusted trend level without connecting across regime changes.
GET /api/v1/charts/sp500-supertrendTry in PlaygroundResponse fields
price: number?supertrendUp: number?supertrendDown: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500SupertrendPeriod | integer | Supertrend ATR period. |
sp500SupertrendMultiplier | number | Supertrend ATR multiplier. |
sp500-trend-regimeproS&P 500 closing price with its 50-day and 200-day simple moving averages. The pair highlights medium- and long-term trend direction, including golden-cross and death-cross regimes, without treating a crossover as a standalone trading signal.
Chart Datasets
sp500-trend-regimeproS&P 500 closing price with its 50-day and 200-day simple moving averages. The pair highlights medium- and long-term trend direction, including golden-cross and death-cross regimes, without treating a crossover as a standalone trading signal.
GET /api/v1/charts/sp500-trend-regimeTry in PlaygroundResponse fields
price: number?sma50: number?sma200: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500TrendFast | integer | Fast trend period. |
sp500TrendSlow | integer | Slow trend period. |
sp500-volatilityproS&P 500 price with 20-trading-day annualized realized volatility calculated from daily logarithmic returns using a sample standard deviation and a 252-session annualization factor.
Chart Datasets
sp500-volatilityproS&P 500 price with 20-trading-day annualized realized volatility calculated from daily logarithmic returns using a sample standard deviation and a 252-session annualization factor.
GET /api/v1/charts/sp500-volatilityTry in PlaygroundResponse fields
price: number?realizedVolatility20: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500VolatilityPeriod | integer | Volatility lookback period. |
sp500-williams-rproS&P 500 price with 14-session Williams %R, a bounded momentum oscillator measuring where the close sits inside its recent high-low range. The pane uses the standard 0 to -100 scale with -20 and -80 guides.
Chart Datasets
sp500-williams-rproS&P 500 price with 14-session Williams %R, a bounded momentum oscillator measuring where the close sits inside its recent high-low range. The pane uses the standard 0 to -100 scale with -20 and -80 guides.
GET /api/v1/charts/sp500-williams-rTry in PlaygroundResponse fields
price: number?williamsR14: 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. |
sp500Range | string | S&P 500 analysis range. |
sp500WilliamsPeriod | integer | Williams %R period. |
sp500WilliamsUpper | number | Williams %R upper threshold. |
sp500WilliamsLower | number | Williams %R lower threshold. |
spending-rainbowproThe cost basis distribution of the coins spent each day, drawn as 19 quantile bands. Where the cost-basis rainbow shows what the whole supply paid, this shows what the day's sellers paid, so you can see whether cheap long-held coins or recently-bought coins are the ones changing hands.
Chart Datasets
spending-rainbowproThe cost basis distribution of the coins spent each day, drawn as 19 quantile bands. Where the cost-basis rainbow shows what the whole supply paid, this shows what the day's sellers paid, so you can see whether cheap long-held coins or recently-bought coins are the ones changing hands.
GET /api/v1/charts/spending-rainbowTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?price: number?q10: number?q10_sth: number?q10_sth_weighted: number?q10_weighted: number?q15: number?q15_sth: number?q15_sth_weighted: number?q15_weighted: number?q20: number?q20_sth: number?q20_sth_weighted: number?q20_weighted: number?q25: number?q25_sth: number?q25_sth_weighted: number?q25_weighted: number?q30: number?q30_sth: number?q30_sth_weighted: number?q30_weighted: number?q35: number?q35_sth: number?q35_sth_weighted: number?q35_weighted: number?q40: number?q40_sth: number?q40_sth_weighted: number?q40_weighted: number?q45: number?q45_sth: number?q45_sth_weighted: number?q45_weighted: number?q5: number?q5_sth: number?q5_sth_weighted: number?q5_weighted: number?q50: number?q50_sth: number?q50_sth_weighted: number?q50_weighted: number?q55: number?q55_sth: number?q55_sth_weighted: number?q55_weighted: number?q60: number?q60_sth: number?q60_sth_weighted: number?q60_weighted: number?q65: number?q65_sth: number?q65_sth_weighted: number?q65_weighted: number?q70: number?q70_sth: number?q70_sth_weighted: number?q70_weighted: number?q75: number?q75_sth: number?q75_sth_weighted: number?q75_weighted: number?q80: number?q80_sth: number?q80_sth_weighted: number?q80_weighted: number?q85: number?q85_sth: number?q85_sth_weighted: number?q85_weighted: number?q90: number?q90_lth_weighted: number?q90_sth: number?q90_sth_weighted: number?q90_weighted: number?q95: number?q95_lth_weighted: number?q95_sth: number?q95_sth_weighted: number?q95_weighted: number?timestamp: integer?ledger_index: 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. |
spot-taker-volumeproAggressive market-order flow on SPOT exchanges: spot taker buy volume (real demand lifting the offer) versus spot taker sell volume (real supply hitting the bid). Unlike futures taker flow, spot buying reflects genuine accumulation rather than leveraged positioning, a cleaner read on conviction.
Chart Datasets
spot-taker-volumeproAggressive market-order flow on SPOT exchanges: spot taker buy volume (real demand lifting the offer) versus spot taker sell volume (real supply hitting the bid). Unlike futures taker flow, spot buying reflects genuine accumulation rather than leveraged positioning, a cleaner read on conviction.
GET /api/v1/charts/spot-taker-volumeTry in PlaygroundResponse fields
net_volume: number?buy_volume: number?sell_volume: 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. |
stablecoin-dominanceproEach major stablecoin's share of total stablecoin supply over time. Tracks the USDT versus USDC market-share battle: USDT (Tether) has historically dominated at ~60-70%, with USDC (Circle) the regulated challenger. Shifts in dominance signal where liquidity is concentrating: offshore/retail (USDT) versus regulated/institutional (USDC). Toggle DAI and FDUSD to see the smaller issuers.
Chart Datasets
stablecoin-dominanceproEach major stablecoin's share of total stablecoin supply over time. Tracks the USDT versus USDC market-share battle: USDT (Tether) has historically dominated at ~60-70%, with USDC (Circle) the regulated challenger. Shifts in dominance signal where liquidity is concentrating: offshore/retail (USDT) versus regulated/institutional (USDC). Toggle DAI and FDUSD to see the smaller issuers.
GET /api/v1/charts/stablecoin-dominanceTry in PlaygroundResponse fields
usdt_dominance: number?usdc_dominance: number?usds_dominance: number?usde_dominance: number?pyusd_dominance: number?dai_dominance: number?fdusd_dominance: number?other_dominance: number?btc_dominance: 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. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
stablecoin-net-changeproThe change in total stablecoin supply over the trailing 30 days (and 7 days), in USD. Positive net change is fresh stablecoin minting, i.e. liquidity / dry powder entering crypto (historically bullish for BTC); negative is net redemptions, i.e. capital leaving (bearish). The 30-day window smooths daily noise into a clean liquidity-momentum signal.
Chart Datasets
stablecoin-net-changeproThe change in total stablecoin supply over the trailing 30 days (and 7 days), in USD. Positive net change is fresh stablecoin minting, i.e. liquidity / dry powder entering crypto (historically bullish for BTC); negative is net redemptions, i.e. capital leaving (bearish). The 30-day window smooths daily noise into a clean liquidity-momentum signal.
GET /api/v1/charts/stablecoin-net-changeTry in PlaygroundResponse fields
net_change_30d: number?net_change_7d: number?total: 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. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
netChangeWindow | integer | Stablecoin net-change window in days. |
stablecoin-ssrproGlassnode's flagship Stablecoin Supply Ratio (SSR): Bitcoin market cap divided by the total supply of USD stablecoins, a measure of stablecoin buying power relative to the BTC market. A LOW SSR means stablecoins are large relative to BTC's market cap, i.e. plenty of dry powder ready to rotate into Bitcoin (historically bullish potential); a HIGH SSR means weaker fiat buying power. Plotted on a log scale against BTC price.
Chart Datasets
stablecoin-ssrproGlassnode's flagship Stablecoin Supply Ratio (SSR): Bitcoin market cap divided by the total supply of USD stablecoins, a measure of stablecoin buying power relative to the BTC market. A LOW SSR means stablecoins are large relative to BTC's market cap, i.e. plenty of dry powder ready to rotate into Bitcoin (historically bullish potential); a HIGH SSR means weaker fiat buying power. Plotted on a log scale against BTC price.
GET /api/v1/charts/stablecoin-ssrTry in PlaygroundResponse fields
ssr: 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. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
stablecoin-ssr-oscillatorproThe Stablecoin Supply Ratio (SSR) Oscillator: the z-score of SSR versus its trailing 200-day mean and standard deviation. It normalizes SSR against its own recent trend so it oscillates around 0 regardless of the absolute level. Strongly negative (below -1.5) means SSR is unusually low, i.e. peak stablecoin buying power on the sidelines (historically bullish for BTC); strongly positive (above +1.5) means weak or exhausted buying power.
Chart Datasets
stablecoin-ssr-oscillatorproThe Stablecoin Supply Ratio (SSR) Oscillator: the z-score of SSR versus its trailing 200-day mean and standard deviation. It normalizes SSR against its own recent trend so it oscillates around 0 regardless of the absolute level. Strongly negative (below -1.5) means SSR is unusually low, i.e. peak stablecoin buying power on the sidelines (historically bullish for BTC); strongly positive (above +1.5) means weak or exhausted buying power.
GET /api/v1/charts/stablecoin-ssr-oscillatorTry in PlaygroundResponse fields
ssr_osc: number?ssr: 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. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
stablecoin-supplyproTotal circulating supply (market cap) of the major USD stablecoins (USDT, USDC, DAI, FDUSD) over time. Because fiat stablecoins peg to ~$1, market cap is a faithful proxy for supply. Total stablecoin supply is the dry powder sitting in crypto: a rising total is fresh liquidity entering the ecosystem (historically bullish), while a shrinking supply signals capital leaving. Toggle individual coins to track USDT versus USDC market share.
Chart Datasets
stablecoin-supplyproTotal circulating supply (market cap) of the major USD stablecoins (USDT, USDC, DAI, FDUSD) over time. Because fiat stablecoins peg to ~$1, market cap is a faithful proxy for supply. Total stablecoin supply is the dry powder sitting in crypto: a rising total is fresh liquidity entering the ecosystem (historically bullish), while a shrinking supply signals capital leaving. Toggle individual coins to track USDT versus USDC market share.
GET /api/v1/charts/stablecoin-supplyTry in PlaygroundResponse fields
total: number?USDT: number?USDC: number?USDS: number?USDe: number?PYUSD: number?DAI: number?FDUSD: 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. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
stablecoin-supply-growthproThe growth rate of total stablecoin supply, as a percentage rather than a dollar figure so it stays comparable across the whole history. The headline series is trailing year-over-year growth, with 90-day and 30-day annualized rates for a faster read. Expanding supply (positive growth) is fresh dry powder entering crypto, historically a risk-on signal; contracting supply marks deleveraging and capital leaving. Watch the year-over-year line crossing zero as a liquidity-regime change.
Chart Datasets
stablecoin-supply-growthproThe growth rate of total stablecoin supply, as a percentage rather than a dollar figure so it stays comparable across the whole history. The headline series is trailing year-over-year growth, with 90-day and 30-day annualized rates for a faster read. Expanding supply (positive growth) is fresh dry powder entering crypto, historically a risk-on signal; contracting supply marks deleveraging and capital leaving. Watch the year-over-year line crossing zero as a liquidity-regime change.
GET /api/v1/charts/stablecoin-supply-growthTry in PlaygroundResponse fields
growth_yoy: number?growth_90d_ann: number?growth_30d_ann: 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. |
cryptocurrency | string | Cryptocurrency symbol or asset identifier. |
timeframe | string | Requested chart timeframe. |
supplyGrowthWindow | integer | Stablecoin supply-growth window in days. |
stack-exchange-cryptoproExact daily Bitcoin and Ethereum Stack Exchange question counts from each site’s first available question, overlaid with Bitcoin price. Historical question rows come from the official Stack Exchange data dump, while the official API replaces the dump boundary day and supplies each later complete UTC day. Active-site dates with no questions are explicit zeroes.
Chart Datasets
stack-exchange-cryptoproExact daily Bitcoin and Ethereum Stack Exchange question counts from each site’s first available question, overlaid with Bitcoin price. Historical question rows come from the official Stack Exchange data dump, while the official API replaces the dump boundary day and supplies each later complete UTC day. Active-site dates with no questions are explicit zeroes.
GET /api/v1/charts/stack-exchange-cryptoTry in PlaygroundResponse fields
stack_combined_questions_per_day: number?stack_bitcoin_questions_per_day: number?stack_ethereum_questions_per_day: 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. |
sth-cost-basisproAnalyze Bitcoin market temperature using Short-Term Holder Cost Basis (STH Cost Basis) - the average acquisition price of short-term holders (< 155 days) with statistical bands to identify local tops, bottoms, and overheated/cooled market conditions
Chart Datasets
sth-cost-basisproAnalyze Bitcoin market temperature using Short-Term Holder Cost Basis (STH Cost Basis) - the average acquisition price of short-term holders (< 155 days) with statistical bands to identify local tops, bottoms, and overheated/cooled market conditions
GET /api/v1/charts/sth-cost-basisTry in PlaygroundResponse fields
block_height: number?btc_price: number?cooled_band: number?cooled_half_band: number?date: string?formattedDate: string?heated_band: number?heated_half_band: number?over_heated_band: number?price: number?rolling_std: number?rolling_std_14d: number?rolling_std_30d: number?sth_cost_basis: number?sth_cost_basis_usd: number?sth_supply_btc: number?timestamp: integer?z_score: number?ledger_index: 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. |
sth-cost-basis-changeproTrack momentum shifts in Short-Term Holder Cost Basis Change (STH Cost Basis Change) across 7d, 30d, and 90d timeframes to identify trend changes, accumulation patterns, and market sentiment shifts with dynamic gradient visualization
Chart Datasets
sth-cost-basis-changeproTrack momentum shifts in Short-Term Holder Cost Basis Change (STH Cost Basis Change) across 7d, 30d, and 90d timeframes to identify trend changes, accumulation patterns, and market sentiment shifts with dynamic gradient visualization
GET /api/v1/charts/sth-cost-basis-changeTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sth_cost_basis: number?sth_cost_basis_change: number?sth_cost_basis_change_30d: number?sth_cost_basis_change_7d: number?sth_cost_basis_change_90d: number?sth_cost_basis_change_negative: number?sth_cost_basis_change_positive: number?sth_cost_basis_usd: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_cost_basis_change_30d_negative: number?sth_cost_basis_change_30d_positive: number?sth_cost_basis_change_7d_negative: number?sth_cost_basis_change_7d_positive: number?sth_cost_basis_change_90d_negative: number?sth_cost_basis_change_90d_positive: 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. |
sth-in-lossproTrack capitulation events through the percentage of Short-Term Holder supply currently at a loss. Spikes above 80% historically mark strong buy zones, while readings below 30% indicate healthy bull market conditions
Chart Datasets
sth-in-lossproTrack capitulation events through the percentage of Short-Term Holder supply currently at a loss. Spikes above 80% historically mark strong buy zones, while readings below 30% indicate healthy bull market conditions
GET /api/v1/charts/sth-in-lossTry in PlaygroundResponse fields
avg_sth_cost_basis: number?block_height: number?btc_price: number?calculated_pct_sth_in_loss: number?calculated_pct_sth_in_profit: number?date: string?formattedDate: string?lth_btc_in_loss: number?lth_btc_in_profit: number?lth_net_position_change: number?lth_percentage: number?lth_sopr: number?lth_supply_btc: number?pct_circulating_lth_in_loss: number?pct_circulating_lth_in_profit: number?pct_circulating_sth_in_loss: number?pct_circulating_sth_in_profit: number?pct_lth_in_loss: number?pct_lth_in_profit: number?pct_sth_in_loss: number?pct_sth_in_profit: number?price: number?sth_btc_in_loss: number?sth_btc_in_profit: number?sth_in_profit_pct: number?sth_net_position_change: number?sth_percentage: number?sth_sopr: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_in_profit: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_supply: 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. |
sth-in-profitproMonitor market sentiment through the percentage of Short-Term Holder supply currently in profit. This metric identifies local tops when >85% are in profit and bottoms when <25% are in profit, providing crucial timing signals for market reversals
Chart Datasets
sth-in-profitproMonitor market sentiment through the percentage of Short-Term Holder supply currently in profit. This metric identifies local tops when >85% are in profit and bottoms when <25% are in profit, providing crucial timing signals for market reversals
GET /api/v1/charts/sth-in-profitTry in PlaygroundResponse fields
avg_sth_cost_basis: number?block_height: number?btc_price: number?calculated_pct_sth_in_loss: number?calculated_pct_sth_in_profit: number?date: string?formattedDate: string?lth_btc_in_loss: number?lth_btc_in_profit: number?lth_net_position_change: number?lth_percentage: number?lth_sopr: number?lth_supply_btc: number?pct_circulating_lth_in_loss: number?pct_circulating_lth_in_profit: number?pct_circulating_sth_in_loss: number?pct_circulating_sth_in_profit: number?pct_lth_in_loss: number?pct_lth_in_profit: number?pct_sth_in_loss: number?pct_sth_in_profit: number?price: number?sth_btc_in_loss: number?sth_btc_in_profit: number?sth_in_profit_pct: number?sth_net_position_change: number?sth_percentage: number?sth_sopr: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_in_profit: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_supply: 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. |
sth-lthproTrack Bitcoin supply distribution between Short-Term Holders vs Long-Term Holders (STH vs LTH Supply) - short-term holders (<155 days), long-term holders (≥155 days), and exchange holdings to identify market cycle phases and accumulation patterns
Chart Datasets
sth-lthproTrack Bitcoin supply distribution between Short-Term Holders vs Long-Term Holders (STH vs LTH Supply) - short-term holders (<155 days), long-term holders (≥155 days), and exchange holdings to identify market cycle phases and accumulation patterns
GET /api/v1/charts/sth-lthTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?lth_btc_in_loss: number?lth_btc_in_profit: number?lth_cost_basis: number?lth_cost_basis_usd: number?lth_mvrv: number?lth_net_position_change: number?lth_percentage: number?lth_realized_cap: number?lth_realized_cap_usd: number?lth_realized_loss_usd: number?lth_realized_profit_usd: number?lth_sopr: number?lth_supply_btc: number?pct_circulating_lth_in_loss: number?pct_circulating_lth_in_profit: number?pct_circulating_sth_in_loss: number?pct_circulating_sth_in_profit: number?pct_lth_in_loss: number?pct_lth_in_profit: number?pct_sth_in_loss: number?pct_sth_in_profit: number?price: number?sth_btc_in_loss: number?sth_btc_in_profit: number?sth_cost_basis: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_net_position_change: number?sth_percentage: number?sth_realized_cap: number?sth_realized_cap_usd: number?sth_realized_loss_usd: number?sth_realized_profit_usd: number?sth_sopr: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_lth: number?block_height: number?lth_supply: number?sth_supply: 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. |
sth-lth-cddproDecomposes Coin Days Destroyed into Short-Term and Long-Term Holder components. LTH CDD spikes signal long-dormant coins moving, historically marking major tops or capitulation events. STH CDD spikes show short-term panic selling.
Chart Datasets
sth-lth-cddproDecomposes Coin Days Destroyed into Short-Term and Long-Term Holder components. LTH CDD spikes signal long-dormant coins moving, historically marking major tops or capitulation events. STH CDD spikes show short-term panic selling.
GET /api/v1/charts/sth-lth-cddTry in PlaygroundResponse fields
block_height: number?btc_price: number?cdd: number?date: string?formattedDate: string?lth_cdd: number?sth_cdd: number?timestamp: integer?total_cdd: number?ledger_index: number?price: number?sth_lth_cdd: 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. |
sth-lth-median-cost-basis-ratioproMedian-based companion to the STH:LTH Realized Price Ratio. Divides STH median cost basis by LTH median cost basis, ratio > 1 means fresh buyers paid more than veterans (bull / distribution regime), < 1 means fresh buyers are getting better prices than long-term holders (accumulation regime). Using medians makes the signal robust to whale and ancient-supply distortion that drags the mean version.
Chart Datasets
sth-lth-median-cost-basis-ratioproMedian-based companion to the STH:LTH Realized Price Ratio. Divides STH median cost basis by LTH median cost basis, ratio > 1 means fresh buyers paid more than veterans (bull / distribution regime), < 1 means fresh buyers are getting better prices than long-term holders (accumulation regime). Using medians makes the signal robust to whale and ancient-supply distortion that drags the mean version.
GET /api/v1/charts/sth-lth-median-cost-basis-ratioTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?lth_cost_basis: number?lth_median_cost_basis: number?price: number?sth_cost_basis: number?sth_lth_median_cost_basis_ratio: number?sth_lth_median_ratio: number?sth_median_cost_basis: number?timestamp: integer?ledger_index: number?one_line: number?ratio: number?sth_lth_ratio: 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. |
sth-lth-pvrproCompares normalized profit levels between Short-Term and Long-Term Holders by dividing unrealized profits by historical volatility. Identifies which cohort is experiencing more extreme conditions relative to their typical behavior, revealing distribution and capitulation phases.
Chart Datasets
sth-lth-pvrproCompares normalized profit levels between Short-Term and Long-Term Holders by dividing unrealized profits by historical volatility. Identifies which cohort is experiencing more extreme conditions relative to their typical behavior, revealing distribution and capitulation phases.
GET /api/v1/charts/sth-lth-pvrTry in PlaygroundResponse fields
btc_price: number?date: string?formattedDate: string?lth_btc_in_loss: number?lth_btc_in_profit: number?lth_cost_basis: number?lth_cost_basis_usd: number?lth_mvrv: number?lth_net_position_change: number?lth_percentage: number?lth_realized_cap: number?lth_realized_cap_usd: number?lth_realized_loss_usd: number?lth_realized_profit_usd: number?lth_sopr: number?lth_supply_btc: number?pct_circulating_lth_in_loss: number?pct_circulating_lth_in_profit: number?pct_circulating_sth_in_loss: number?pct_circulating_sth_in_profit: number?pct_lth_in_loss: number?pct_lth_in_profit: number?pct_sth_in_loss: number?pct_sth_in_profit: number?price: number?sth_btc_in_loss: number?sth_btc_in_profit: number?sth_cost_basis: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_net_position_change: number?sth_percentage: number?sth_realized_cap: number?sth_realized_cap_usd: number?sth_realized_loss_usd: number?sth_realized_profit_usd: number?sth_sopr: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_lth: number?block_height: number?lth_supply: number?sth_supply: 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. |
sth-lth-realized-price-ratioproCompares the average acquisition price of Short-Term Holders to Long-Term Holders, revealing cohort positioning and market dynamics. When STH cost basis exceeds LTH cost basis, it indicates recent buyers paid premium prices, often signaling potential distribution phases.
Chart Datasets
sth-lth-realized-price-ratioproCompares the average acquisition price of Short-Term Holders to Long-Term Holders, revealing cohort positioning and market dynamics. When STH cost basis exceeds LTH cost basis, it indicates recent buyers paid premium prices, often signaling potential distribution phases.
GET /api/v1/charts/sth-lth-realized-price-ratioTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?lth_cost_basis: number?lth_supply_btc: number?price: number?sth_cost_basis: number?sth_lth_ratio: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?lth_supply: number?sth_supply: number?one_line: number?ratio: 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. |
sth-median-mvrvproMVRV ratio using the median STH cost basis instead of the mean. Median is robust to whale-weighted outliers, surfacing the typical fresh-money holder's profitability. Derived client-side from the STH Cost Basis Distribution heatmap buckets.
Chart Datasets
sth-median-mvrvproMVRV ratio using the median STH cost basis instead of the mean. Median is robust to whale-weighted outliers, surfacing the typical fresh-money holder's profitability. Derived client-side from the STH Cost Basis Distribution heatmap buckets.
GET /api/v1/charts/sth-median-mvrvTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sth_median_cost_basis: number?sth_median_mvrv: 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. |
sth-mvrvproMonitor Short-Term Holder MVRV, the market-value-to-realized-value ratio for coins held under 155 days, showing new buyer profit or loss as a direct multiple with color-graded zones.
Chart Datasets
sth-mvrvproMonitor Short-Term Holder MVRV, the market-value-to-realized-value ratio for coins held under 155 days, showing new buyer profit or loss as a direct multiple with color-graded zones.
GET /api/v1/charts/sth-mvrvTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sth_cost_basis: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_mvrv_z_score: number?sth_realized_price: number?sth_supply: number?sth_supply_btc: 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. |
sth-mvrv-z-scoreproMonitor Short-Term Holder MVRV Z-Score - statistical normalized version showing standard deviations from historical mean to identify overvaluation/undervaluation periods and potential market turning points
Chart Datasets
sth-mvrv-z-scoreproMonitor Short-Term Holder MVRV Z-Score - statistical normalized version showing standard deviations from historical mean to identify overvaluation/undervaluation periods and potential market turning points
GET /api/v1/charts/sth-mvrv-z-scoreTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_mvrv_smoothed: number?sth_mvrv_z_score: number?sth_realized_price: number?sth_supply: number?sth_supply_btc: number?timestamp: integer?sth_mvrv_z_score_smoothed: number?ledger_index: number?market_cap_usd: number?realized_cap_usd: number?sth_mvrv_ratio: number?sth_mvrv_zscore: number?z_score: number?zero_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. |
sth-net-positionproMonitor monthly position changes of Short-Term Holders, showing when traders accumulate (positive flows) and distribute (negative flows). Green bars indicate new money entering during rallies, while red bars show profit-taking or panic selling during corrections
Chart Datasets
sth-net-positionproMonitor monthly position changes of Short-Term Holders, showing when traders accumulate (positive flows) and distribute (negative flows). Green bars indicate new money entering during rallies, while red bars show profit-taking or panic selling during corrections
GET /api/v1/charts/sth-net-positionTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sth_accumulation: number?sth_btc_in_loss: number?sth_btc_in_profit: number?sth_distribution: number?sth_net_position_change: number?sth_percentage: number?sth_position_change_negative: number?sth_position_change_positive: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_net_position: 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. |
sth-nuplproShort-Term Holder Net Unrealized Profit/Loss (STH-NUPL) tracks the profit/loss status of coins held for less than 155 days, providing insights into newer market participants sentiment and behavior
Chart Datasets
sth-nuplproShort-Term Holder Net Unrealized Profit/Loss (STH-NUPL) tracks the profit/loss status of coins held for less than 155 days, providing insights into newer market participants sentiment and behavior
GET /api/v1/charts/sth-nuplTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?market_phase: number?price: number?sth_cost_basis_usd: number?sth_market_cap: number?sth_nupl: number?sth_realized_cap: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_nupl_momentum_negative: number?sth_nupl_momentum_positive: number?sth_nupl_sma: 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. |
sth-nupl-momentumproAnalyze Short-Term Holder NUPL momentum by comparing current unrealized profit/loss against moving average, with binary oscillator to identify shifts in short-term holder sentiment and potential trend reversals
Chart Datasets
sth-nupl-momentumproAnalyze Short-Term Holder NUPL momentum by comparing current unrealized profit/loss against moving average, with binary oscillator to identify shifts in short-term holder sentiment and potential trend reversals
GET /api/v1/charts/sth-nupl-momentumTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?market_cap_usd: number?market_phase: number?nupl: number?price: number?realized_cap_usd: number?sth_cost_basis_usd: number?sth_nupl: number?sth_nupl_sma_30: number?sth_nupl_sma_365: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_nupl_momentum: number?momentum: number?sth_nupl_momentum_30d: number?sth_nupl_momentum_90d: number?sth_nupl_momentum_negative: number?sth_nupl_momentum_positive: number?sth_nupl_sma: number?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. |
sth-pl-price-flowproTrack the net flow of short-term holder cumulative P/L price changes denominated in BTC. Visualizes the rate and magnitude of STH cost basis shifts using jet colormap styling with percentile-based thresholds to reveal profit-taking and capitulation patterns.
Chart Datasets
sth-pl-price-flowproTrack the net flow of short-term holder cumulative P/L price changes denominated in BTC. Visualizes the rate and magnitude of STH cost basis shifts using jet colormap styling with percentile-based thresholds to reveal profit-taking and capitulation patterns.
GET /api/v1/charts/sth-pl-price-flowTry in PlaygroundResponse fields
age_bands: number?band_0_loss: number?band_0_loss_btc: number?band_0_loss_usd: number?band_0_net: number?band_0_net_btc: number?band_0_net_usd: number?band_0_profit: number?band_0_profit_btc: number?band_0_profit_usd: number?band_1_loss: number?band_1_loss_btc: number?band_1_loss_usd: number?band_1_net: number?band_1_net_btc: number?band_1_net_usd: number?band_1_profit: number?band_1_profit_btc: number?band_1_profit_usd: number?band_10_loss: number?band_10_loss_btc: number?band_10_loss_usd: number?band_10_net: number?band_10_net_btc: number?band_10_net_usd: number?band_10_profit: number?band_10_profit_btc: number?band_10_profit_usd: number?band_11_loss: number?band_11_loss_btc: number?band_11_loss_usd: number?band_11_net: number?band_11_net_btc: number?band_11_net_usd: number?band_11_profit: number?band_11_profit_btc: number?band_11_profit_usd: number?band_2_loss: number?band_2_loss_btc: number?band_2_loss_usd: number?band_2_net: number?band_2_net_btc: number?band_2_net_usd: number?band_2_profit: number?band_2_profit_btc: number?band_2_profit_usd: number?band_3_loss: number?band_3_loss_btc: number?band_3_loss_usd: number?band_3_net: number?band_3_net_btc: number?band_3_net_usd: number?band_3_profit: number?band_3_profit_btc: number?band_3_profit_usd: number?band_4_loss: number?band_4_loss_btc: number?band_4_loss_usd: number?band_4_net: number?band_4_net_btc: number?band_4_net_usd: number?band_4_profit: number?band_4_profit_btc: number?band_4_profit_usd: number?band_5_loss: number?band_5_loss_btc: number?band_5_loss_usd: number?band_5_net: number?band_5_net_btc: number?band_5_net_usd: number?band_5_profit: number?band_5_profit_btc: number?band_5_profit_usd: number?band_6_loss: number?band_6_loss_btc: number?band_6_loss_usd: number?band_6_net: number?band_6_net_btc: number?band_6_net_usd: number?band_6_profit: number?band_6_profit_btc: number?band_6_profit_usd: number?band_7_loss: number?band_7_loss_btc: number?band_7_loss_usd: number?band_7_net: number?band_7_net_btc: number?band_7_net_usd: number?band_7_profit: number?band_7_profit_btc: number?band_7_profit_usd: number?band_8_loss: number?band_8_loss_btc: number?band_8_loss_usd: number?band_8_net: number?band_8_net_btc: number?band_8_net_usd: number?band_8_profit: number?band_8_profit_btc: number?band_8_profit_usd: number?band_9_loss: number?band_9_loss_btc: number?band_9_loss_usd: number?band_9_net: number?band_9_net_btc: number?band_9_net_usd: number?band_9_profit: number?band_9_profit_btc: number?band_9_profit_usd: number?block_height: number?btc_price: number?date: string?formattedDate: string?rpl_d1_1w: number?rpl_lt_1d: number?rpl_m1_3m: number?rpl_m3_6m: number?rpl_m6_12m: number?rpl_w1_1m: number?rpl_y1_2y: number?rpl_y10_plus: number?rpl_y2_3y: number?rpl_y3_5y: number?rpl_y5_7y: number?rpl_y7_10y: number?timestamp: integer?ledger_index: number?lth_realized_loss_btc: number?lth_realized_loss_usd: number?lth_realized_profit_btc: number?lth_realized_profit_usd: 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?sth_realized_loss_btc: number?sth_realized_loss_usd: number?sth_realized_profit_btc: number?sth_realized_profit_usd: number?rpl_y5_plus: 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. |
sth-profit-volatility-ratioproTrack Short-Term Holder Profit-to-Volatility Ratio - measures STH unrealized profits/losses normalized by market cap volatility to identify speculative extremes and capitulation phases among new market entrants
Chart Datasets
sth-profit-volatility-ratioproTrack Short-Term Holder Profit-to-Volatility Ratio - measures STH unrealized profits/losses normalized by market cap volatility to identify speculative extremes and capitulation phases among new market entrants
GET /api/v1/charts/sth-profit-volatility-ratioTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?profit_volatility_ratio: number?sth_cost_basis: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_profit_volatility_ratio: number?sth_pvr: number?sth_realized_price: number?sth_supply: number?sth_supply_btc: number?timestamp: integer?zero_line: number?daily_realized_loss_btc: number?daily_realized_loss_usd: number?daily_realized_profit_btc: number?daily_realized_profit_usd: number?lth_btc_in_loss: number?lth_btc_in_profit: number?lth_cost_basis: number?lth_cost_basis_usd: number?lth_mvrv: number?lth_net_position_change: number?lth_percentage: number?lth_realized_cap: number?lth_realized_cap_usd: number?lth_realized_loss_usd: number?lth_realized_price: number?lth_realized_profit_usd: number?lth_rpl_ratio: number?lth_sopr: number?lth_supply: number?lth_supply_btc: number?net_rpl: number?pct_circulating_lth_in_loss: number?pct_circulating_lth_in_profit: number?pct_circulating_sth_in_loss: number?pct_circulating_sth_in_profit: number?pct_lth_in_loss: number?pct_lth_in_profit: number?pct_sth_in_loss: number?pct_sth_in_profit: number?sth_btc_in_loss: number?sth_btc_in_profit: number?sth_net_position_change: number?sth_percentage: number?sth_realized_cap: number?sth_realized_cap_usd: number?sth_realized_loss_usd: number?sth_realized_profit_usd: number?sth_rpl_ratio: number?sth_sopr: number?price_volatility_30d: 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. |
sth-pvr-momentumproAnalyze Short-Term Holder PVR momentum by comparing current STH Profit-to-Volatility Ratio against its moving average to identify accelerating profit conditions or deepening capitulation among new market participants
Chart Datasets
sth-pvr-momentumproAnalyze Short-Term Holder PVR momentum by comparing current STH Profit-to-Volatility Ratio against its moving average to identify accelerating profit conditions or deepening capitulation among new market participants
GET /api/v1/charts/sth-pvr-momentumTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?profit_volatility_ratio: number?sth_cost_basis: number?sth_cost_basis_usd: number?sth_mvrv: number?sth_profit_volatility_ratio: number?sth_pvr: number?sth_realized_price: number?sth_supply: number?sth_supply_btc: number?timestamp: integer?zero_line: number?daily_realized_loss_btc: number?daily_realized_loss_usd: number?daily_realized_profit_btc: number?daily_realized_profit_usd: number?lth_btc_in_loss: number?lth_btc_in_profit: number?lth_cost_basis: number?lth_cost_basis_usd: number?lth_mvrv: number?lth_net_position_change: number?lth_percentage: number?lth_realized_cap: number?lth_realized_cap_usd: number?lth_realized_loss_usd: number?lth_realized_price: number?lth_realized_profit_usd: number?lth_rpl_ratio: number?lth_sopr: number?lth_supply: number?lth_supply_btc: number?net_rpl: number?pct_circulating_lth_in_loss: number?pct_circulating_lth_in_profit: number?pct_circulating_sth_in_loss: number?pct_circulating_sth_in_profit: number?pct_lth_in_loss: number?pct_lth_in_profit: number?pct_sth_in_loss: number?pct_sth_in_profit: number?sth_btc_in_loss: number?sth_btc_in_profit: number?sth_net_position_change: number?sth_percentage: number?sth_realized_cap: number?sth_realized_cap_usd: number?sth_realized_loss_usd: number?sth_realized_profit_usd: number?sth_rpl_ratio: number?sth_sopr: number?price_volatility_30d: 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. |
sth-realized-pl-ratioproThe STH Realized P/L Ratio shows the ratio between short-term holder realized profit and loss (0-155 days). More reactive to immediate sentiment shifts and provides insight into short-term market dynamics and trader behavior patterns.
Chart Datasets
sth-realized-pl-ratioproThe STH Realized P/L Ratio shows the ratio between short-term holder realized profit and loss (0-155 days). More reactive to immediate sentiment shifts and provides insight into short-term market dynamics and trader behavior patterns.
GET /api/v1/charts/sth-realized-pl-ratioTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sth_pl_ratio: number?sth_realized_loss: number?sth_realized_loss_usd: number?sth_realized_profit: number?sth_realized_profit_usd: number?timestamp: integer?ledger_index: number?sth_realized_loss_btc: number?sth_realized_pl_ratio: number?sth_realized_profit_btc: number?ratio: number?sth_cost_basis_usd: number?sth_realized_pl_ratio_btc: number?sth_realized_pl_ratio_sma_30: number?sth_realized_pl_ratio_sma_90: number?sth_realized_pl_ratio_usd: number?sth_realized_price: number?sth_supply: number?sth_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. |
sth-realized-pl-ratio-momentumproTrack short-term holder profit/loss ratio momentum by comparing current STH profit-taking behavior against its moving average. Features binary oscillator and momentum bars to identify behavioral shifts and optimal entry/exit points.
Chart Datasets
sth-realized-pl-ratio-momentumproTrack short-term holder profit/loss ratio momentum by comparing current STH profit-taking behavior against its moving average. Features binary oscillator and momentum bars to identify behavioral shifts and optimal entry/exit points.
GET /api/v1/charts/sth-realized-pl-ratio-momentumTry in PlaygroundResponse fields
age_bands: number?band_0_loss_btc: number?band_0_profit_btc: number?band_1_loss_btc: number?band_1_profit_btc: number?band_2_loss_btc: number?band_2_profit_btc: number?band_3_loss_btc: number?band_3_profit_btc: number?band_4_loss_btc: number?band_4_profit_btc: number?block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sth_pl_ratio: number?sth_realized_loss_usd: number?sth_realized_pl: number?sth_realized_pl_ratio: number?sth_realized_pl_ratio_sma_30: number?sth_realized_pl_ratio_sma_90: number?sth_realized_profit_usd: number?sth_rpl_momentum: number?sth_rpl_sma_30: number?sth_rpl_sma_365: number?timestamp: integer?ledger_index: number?sth_realized_pl_ratio_momentum: number?realized_pl_ratio: number?realized_pl_ratio_btc: number?rpl_ratio_momentum: number?rpl_ratio_momentum_btc: number?rpl_ratio_sma_30: number?rpl_ratio_sma_30_btc: number?rpl_ratio_sma_365: number?rpl_ratio_sma_365_btc: number?momentum: number?realized_pl_ratio_usd: number?sth_momentum_negative_area: number?sth_momentum_positive_area: number?sth_pl_ratio_btc: number?sth_pl_ratio_sma: number?sth_realized_pl_ratio_btc: number?sth_realized_pl_ratio_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. |
sth-soprproTrack profit/loss realization behavior of short-term holders (<155 days). Short Term Holder SOPR (STH-SOPR) measures the profit ratio when coins held for less than 155 days are moved, providing insights into new participant behavior and short-term market sentiment.
Chart Datasets
sth-soprproTrack profit/loss realization behavior of short-term holders (<155 days). Short Term Holder SOPR (STH-SOPR) measures the profit ratio when coins held for less than 155 days are moved, providing insights into new participant behavior and short-term market sentiment.
GET /api/v1/charts/sth-soprTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sopr: number?sth_percentage: number?sth_sopr: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?adjusted_sopr: number?spent_outputs: number?sth_sopr_momentum_negative: number?sth_sopr_momentum_positive: number?sth_sopr_sma: number?sth_sopr_sma_90: 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. |
sth-sopr-momentumproAnalyze Bitcoin Short-Term Holder SOPR momentum by comparing current profit/loss ratios against moving average, with binary oscillator to identify shifts in new participant behavior and potential market reversal points
Chart Datasets
sth-sopr-momentumproAnalyze Bitcoin Short-Term Holder SOPR momentum by comparing current profit/loss ratios against moving average, with binary oscillator to identify shifts in new participant behavior and potential market reversal points
GET /api/v1/charts/sth-sopr-momentumTry in PlaygroundResponse fields
adjusted_sopr: number?block_height: number?btc_price: number?date: string?formattedDate: string?price: number?sopr: number?spent_outputs: number?spent_value_usd: number?sth_sopr: number?sth_sopr_sma_30: number?sth_sopr_sma_90: number?sth_supply_btc: number?timestamp: integer?ledger_index: number?sth_sopr_momentum: number?momentum: number?sth_sopr_momentum_30d: number?sth_sopr_momentum_90d: number?sth_sopr_momentum_negative: number?sth_sopr_momentum_positive: number?sth_sopr_sma: number?sth_sopr_sma_365: number?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. |
sth-stressproIdentify Short-Term Holder stress periods by analyzing realized price deviations across STH cohorts (1d-6m). Red vertical bars highlight when the STH composite falls below -1 standard deviation, indicating STH capitulation and potential buying opportunities. Features color-coded dots on price showing stress intensity.
Chart Datasets
sth-stressproIdentify Short-Term Holder stress periods by analyzing realized price deviations across STH cohorts (1d-6m). Red vertical bars highlight when the STH composite falls below -1 standard deviation, indicating STH capitulation and potential buying opportunities. Features color-coded dots on price showing stress intensity.
GET /api/v1/charts/sth-stressTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?realized_price_1d_1w: number?realized_price_1m_3m: number?realized_price_1w_1m: number?realized_price_3m_6m: number?sth_composite: number?sth_composite_zscore: number?sth_cost_basis: number?sth_realized_price: number?timestamp: integer?ledger_index: number?sth_stress: number?sth_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. |
sth-wealth-concentrationproMeasure the percentage of total realized capital held by Short-Term Holders (STH). This metric tracks new participant activity and market structure, with high values (>50%) indicating increased distribution and low values (<25%) suggesting strong LTH dominance
Chart Datasets
sth-wealth-concentrationproMeasure the percentage of total realized capital held by Short-Term Holders (STH). This metric tracks new participant activity and market structure, with high values (>50%) indicating increased distribution and low values (<25%) suggesting strong LTH dominance
GET /api/v1/charts/sth-wealth-concentrationTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?price: number?realized_cap: number?realized_cap_usd: number?sth_concentration_change_negative: number?sth_concentration_change_positive: number?sth_cost_basis_usd: number?sth_supply_btc: number?sth_wealth_concentration: number?sth_wealth_concentration_change: number?sth_wealth_concentration_pct: number?timestamp: integer?ledger_index: number?sth_realized_cap: 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. |
stock-to-flowproPlanB's scarcity model: existing supply divided by annual issuance, regressed against price on a log-log basis. Shows a live data-fitted model line and the famous original 2019 PlanB coefficients, with price dots colored by days until the next halving.
Chart Datasets
stock-to-flowproPlanB's scarcity model: existing supply divided by annual issuance, regressed against price on a log-log basis. Shows a live data-fitted model line and the famous original 2019 PlanB coefficients, with price dots colored by days until the next halving.
GET /api/v1/charts/stock-to-flowTry in PlaygroundResponse fields
btc_price: number?date: string?days_to_halving: number?formattedDate: string?model_price: number?model_price_planb: number?model_ratio: number?price: number?stock_to_flow: 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. |
supply-inflationproAnnualized issuance relative to circulating supply and to economically active supply, showing the halving schedule alongside vaulting behavior.
Chart Datasets
supply-inflationproAnnualized issuance relative to circulating supply and to economically active supply, showing the halving schedule alongside vaulting behavior.
GET /api/v1/charts/supply-inflationTry in PlaygroundResponse fields
cointime_adjusted_inflation_rate: number?date: string?formattedDate: string?inflation_rate: 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. |
supply-last-active-1yr-plusproAnalyze Bitcoin market cycles through the supply of coins last active 1 year or more. During bull markets, this supply depletes as LTHs distribute; during bear markets, it increases as new conviction holders accumulate. The oscillator shows daily net position change - positive indicates accumulation, negative indicates distribution.
Chart Datasets
supply-last-active-1yr-plusproAnalyze Bitcoin market cycles through the supply of coins last active 1 year or more. During bull markets, this supply depletes as LTHs distribute; during bear markets, it increases as new conviction holders accumulate. The oscillator shows daily net position change - positive indicates accumulation, negative indicates distribution.
GET /api/v1/charts/supply-last-active-1yr-plusTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?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?hodl_wave_supply_pct_band_0: number?hodl_wave_supply_pct_band_1: number?hodl_wave_supply_pct_band_10: number?hodl_wave_supply_pct_band_11: number?hodl_wave_supply_pct_band_2: number?hodl_wave_supply_pct_band_3: number?hodl_wave_supply_pct_band_4: number?hodl_wave_supply_pct_band_5: number?hodl_wave_supply_pct_band_6: number?hodl_wave_supply_pct_band_7: number?hodl_wave_supply_pct_band_8: number?hodl_wave_supply_pct_band_9: number?price: number?supply_1yr_plus: number?supply_1yr_plus_btc: number?supply_1yr_plus_change: number?supply_1yr_plus_change_negative: number?supply_1yr_plus_change_positive: number?supply_1yr_plus_pct: number?supply_less_1yr: number?supply_less_1yr_pct: number?timestamp: integer?ledger_index: 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. |
supply-last-active-1yr-plus-pctproThe percentage of circulating supply that has not been moved in over one year. Rising values indicate accumulation by long-term holders; falling values indicate distribution near cycle tops.
Chart Datasets
supply-last-active-1yr-plus-pctproThe percentage of circulating supply that has not been moved in over one year. Rising values indicate accumulation by long-term holders; falling values indicate distribution near cycle tops.
GET /api/v1/charts/supply-last-active-1yr-plus-pctTry in PlaygroundResponse fields
block_height: number?btc_price: number?date: string?formattedDate: string?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?hodl_wave_supply_pct_band_0: number?hodl_wave_supply_pct_band_1: number?hodl_wave_supply_pct_band_10: number?hodl_wave_supply_pct_band_11: number?hodl_wave_supply_pct_band_2: number?hodl_wave_supply_pct_band_3: number?hodl_wave_supply_pct_band_4: number?hodl_wave_supply_pct_band_5: number?hodl_wave_supply_pct_band_6: number?hodl_wave_supply_pct_band_7: number?hodl_wave_supply_pct_band_8: number?hodl_wave_supply_pct_band_9: number?price: number?supply_1yr_plus: number?supply_1yr_plus_btc: number?supply_1yr_plus_change: number?supply_1yr_plus_change_negative: number?supply_1yr_plus_change_positive: number?supply_1yr_plus_pct: number?supply_less_1yr: number?supply_less_1yr_pct: number?timestamp: integer?ledger_index: 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. |
supply-velocityproAnnualized transfer velocity against total supply and the economically active cointime-adjusted supply.
Chart Datasets
supply-velocityproAnnualized transfer velocity against total supply and the economically active cointime-adjusted supply.
GET /api/v1/charts/supply-velocityTry in PlaygroundResponse fields
cointime_adjusted_velocity_btc: number?date: string?formattedDate: string?price: number?timestamp: integer?velocity_btc: 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. |
taker-volumeproAggregated aggressive market-order flow: taker buy volume (urgent buyers lifting the offer) versus taker sell volume (urgent sellers hitting the bid). The net balance reveals whether a price move is backed by real aggressive demand or supply.
Chart Datasets
taker-volumeproAggregated aggressive market-order flow: taker buy volume (urgent buyers lifting the offer) versus taker sell volume (urgent sellers hitting the bid). The net balance reveals whether a price move is backed by real aggressive demand or supply.
GET /api/v1/charts/taker-volumeTry in PlaygroundResponse fields
net_volume: number?buy_volume: number?sell_volume: 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. |