시장 대시보드를 JSON으로 읽으려면 어떻게 합니까: 원시 거래량과 유기적 거래량, 발행, 경로

레지스트리, 검색, 시장 데이터 · 기간별로 배치 빌드되는 문서 하나로 된 대시보드, 그리고 네트워크 하나의 실시간 원시 대 유기적 분할

  • API 가이드
  • 8분
  • 중급
  • 개발자
  • GET /v1/stats/home
  • GET /v1/stats/overview

ACHIVX Academy 원문 (영어) ↗

GET /v1/stats/home?window=24h|7d|30d&chain=은 첫 화면을 문서 하나로 담은 것입니다. headline(정산 volume_usd6, organic_volume_usd6, inorganic_fraction_pct, 왕복 거래), 30일 series[], chains[]와 tokens[] 표, 체인 × 토큰 matrix, issuance(발행, 소각, 순발행), top_routes와 top_addresses가 있습니다. 배치로 만들어지므로, 날짜는 built_at이 아니라 window_start/window_end에서 읽으십시오. GET /v1/stats/overview?chain=&window=는 네트워크 하나의 원시 대 유기적 거래량 분할을 실시간으로 보여 주며, per_token 행과 hot_window_start가 있습니다. 2026-10-24에 전체 시장은 하루에 1,259억 달러를 정산했으며, 그중 34 %가 유기적 거래량이었습니다.

대시보드

curl -s 'https://stablescan.achivx.com/v1/stats/home?window=24h'

모든 네트워크, 마지막으로 완결된 UTC 날짜이며, 뼈대만 남기고 잘랐습니다.

{
  "window": "24h", "window_start": "2026-10-23", "window_end": "2026-10-23",
  "basis": "unadjusted", "basis_blocks": ["headline", "series", "chains", "tokens", "matrix"],
  "chain_id": 0,
  "built_at": "2026-10-24T10:40:05Z", "build_ms": 3184,
  "headline": {
    "transfer_count": 26141643, "volume_usd6": 125902741903406144,
    "organic_transfer_count": 12925761, "organic_volume_usd6": 42055317977056358, "organic_basis_usd6": 122401849680316553,
    "inorganic_fraction_pct": 65.64,
    "organic_excluded_chains": [{"chain_id": -1, "reason": "not_measured_on_chain"}],
    "organic_basis_days": 1, "organic_computed_at": "2026-10-24T10:30:03Z",
    "round_trip_tx_count": 283, "round_trip_transfer_count": 1241, "round_trip_volume_usd6": 690292751684788
  },
  "series": [{"day": "2026-09-24", "transfer_count": 28509194, "volume_usd6": 133987021630835739, "organic_volume_usd6": 49304436824412658, "organic_basis_usd6": 125555805387622775, "round_trip_volume_usd6": 0}, "… 30 days"],
  "chains": [{"key": "ethereum", "label": "Ethereum", "chain_id": 1, "volume_usd6": 68012749860030611, "transfer_count": 1363922, "prev_usd6": 59710153040926074, "delta_pct": 13.9, "share_pct": 54.02, "avg_transfer_usd6": 49865571389, "active_senders_per_day": null, "active_receivers_per_day": null}, "…"],
  "tokens": [{"key": "USDC", "volume_usd6": 67480977342142666, "transfer_count": 7903357, "delta_pct": 12.92, "share_pct": 53.6, "active_senders_per_day": 16688, "active_receivers_per_day": 17663}, "…"],
  "matrix": {"chains": ["…"], "tokens": ["USDC", "USDT", "…"], "cells": [{"chain_id": 1, "token": "USDC", "volume_usd6": 47261260733210824, "transfer_count": 603266, "share_pct": 37.54}, "…"]},
  "issuance": {"mint_usd6": 2656139441308817, "burn_usd6": 3032722503578610, "net_usd6": -376583062269793, "per_token": [{"token": "USDC", "mint_usd6": 979854662445629, "burn_usd6": 1315289251456458, "net_usd6": -335434589010829}, "…"], "legacy_included": false},
  "top_routes": {"items": [{"chain_slug": "ethereum", "payer": "0xd1c6…c7eb", "recipient": "0xbbbb…ffcb", "recipient_name": "Morpho", "recipient_category": "contract", "volume_usd6": 13360942192227765, "tx_count": 137}, "…"]},
  "top_addresses": {"items": ["…"]}
}

첫 요청의 세 가지 헬퍼로 같은 호출을 하면 다음과 같습니다.

Python

home = scan("/v1/stats/home", window="7d", chain=1)
h = home["headline"]
print(home["window_start"], "to", home["window_end"], f'settled ${h["volume_usd6"]/1e12:,.1f}T, organic ${(h["organic_volume_usd6"] or 0)/1e12:,.1f}T',
      "| inorganic", h["inorganic_fraction_pct"], "%")
for row in home["chains"]:
    print(f' {row["label"]:10} ${row["volume_usd6"]/1e9:8,.1f}B  {row["share_pct"]:5.1f}%  {row["delta_pct"]:+.1f}% vs previous window')

Go

var home struct {
	WindowStart string `json:"window_start"`
	WindowEnd   string `json:"window_end"`
	Headline    struct {
		VolumeUSD6            int64   `json:"volume_usd6"`
		OrganicVolumeUSD6     *int64  `json:"organic_volume_usd6"` // nil: not measured for this window
		InorganicFractionPct  float64 `json:"inorganic_fraction_pct"`
	} `json:"headline"`
	Chains []struct {
		Label      string  `json:"label"`
		VolumeUSD6 int64   `json:"volume_usd6"`
		SharePct   float64 `json:"share_pct"`
		DeltaPct   float64 `json:"delta_pct"`
	} `json:"chains"`
}
if err := get("/v1/stats/home", url.Values{"window": {"7d"}, "chain": {"1"}}, &home); err != nil {
	return err
}

TypeScript

type Home = {
  window: "24h" | "7d" | "30d"; window_start: string; window_end: string; built_at: string;
  headline: { transfer_count: number; volume_usd6: number; organic_volume_usd6: number | null; organic_unavailable_reason?: string; inorganic_fraction_pct: number | null; round_trip_volume_usd6: number };
  series: { day: string; volume_usd6: number; organic_volume_usd6: number | null }[];
  chains: { key: string; label: string; chain_id: number; volume_usd6: number; share_pct: number; delta_pct: number }[];
  tokens: { key: string; volume_usd6: number; share_pct: number; delta_pct: number }[];
  issuance: { mint_usd6: number; burn_usd6: number; net_usd6: number; per_token: { token: string; mint_usd6: number; burn_usd6: number; net_usd6: number }[] };
};
const home = await scan<Home>("/v1/stats/home", { window: "7d", chain: 1 });

필드별 설명

window, window_start, window_end — 수치가 다루는 UTC 날짜입니다. 24h는 마지막으로 완결된 하루(24일 아침 기준 2026-10-23)이고, 7d와 30d는 그날로 끝나는 7일과 30일입니다. 날짜는 이것들에서 읽고, 배치가 실행된 시각인 built_at에서는 절대 읽지 마십시오.

headline — transfer_count건의 전송에 걸친 정산 volume_usd6와 유기적 수치입니다. organic_volume_usd6는 배관(plumbing)을 벗어난 부분(왕복 거래도, 서비스 간(service-to-service) 이동도 아님)이고, organic_basis_usd6는 측정 기준이 된 금액, inorganic_fraction_pct는 그 나머지 비율입니다. 그날 거래량의 65.64 %는 배관을 벗어나지 않았습니다. organic_excluded_chains[]는 측정하지 않는 곳(솔라나(Solana), not_measured_on_chain)을 밝힙니다. 그곳에서 유기적 수치는 나머지에 대한 하한입니다. 유기적 수치는 organic_unavailable_reason과 함께 null일 수 있습니다. 이것은 배치의 상태이며, 다시 요청해도 채워지지 않습니다.

series[] — 30일 동안 하루에 한 행이며, 대시보드의 차트입니다. chains[], tokens[] — 기간 중 share_pct, 이전 기간(prev_usd6) 대비 delta_pct, avg_transfer_usd6가 있는 두 표입니다. active_senders_per_day는 솔라나만의 수치이며 다른 곳에서는 null입니다. matrix.cells[] — 체인 × 토큰입니다. issuance — 발행사 자체 컨트랙트에서 나온 발행과 소각이며, legacy_included: false(폐기된 컨트랙트 제외)입니다. top_routes, top_addresses — 토큰 순위와 같은 순위를 모든 토큰에 걸쳐 보여 줍니다.

chain은 모든 블록을 네트워크 하나로 좁힙니다(chain_id: 1; 없으면 0, 모든 네트워크). 세 가지 외의 window는 400 invalid_window입니다. 배치에 보기가 없는 네트워크는 Retry-After: 60과 함께 503 snapshot_pending을 답합니다. max-age=60.

실시간 개요

curl -s 'https://stablescan.achivx.com/v1/stats/overview?chain=1&window=24h'
{
  "window": "24h", "window_start": "2026-10-23", "window_end": "2026-10-23", "basis": "unadjusted",
  "transfer_count": 1363922, "volume_usd6": 68012749860030611,
  "organic_transfer_count": 793852, "organic_volume_usd6": 13047901130897940, "inorganic_fraction_pct": 80.8155,
  "organic_excluded_chains": [],
  "per_token": [{"chain_id": 1, "token": "USDC", "transfer_count": 603266, "volume_usd6": 47261260733210824}, {"chain_id": 1, "token": "USDT", "transfer_count": 729991, "volume_usd6": 17195868577330212}, "…"],
  "generated_at": "2026-10-24T10:48:38Z",
  "round_trip_tx_count": 269, "round_trip_transfer_count": 598, "round_trip_volume_usd6": 58387796128454,
  "hot_window_start": "2026-10-22T00:00:00Z"
}

네트워크 하나에 대해 실시간으로 계산되며(chain을 전달하십시오, 기본값은 베이스(Base)), 방법론이 단일 수치 대신 읽으라고 요구하는 per_token 분할이 함께 옵니다 — the gross figure may include unrelated token movements. 이더리움(Ethereum)의 그날 거래량은 80.8 %가 비유기적이었습니다. max-age=60.

이 숫자들은 무엇인가

정산 거래량은 페그 1로 달러 환산한 일별 엣지 집계입니다. 확정된 행만 포함하며, 발행과 소각, 자기 자신에게 보낸 전송과 1달러 하한 미만의 일별 쌍을 제외합니다 — not the sum of every Transfer log. 유기적 거래량은 왕복 거래와 서비스 간 이동을 제거한 것입니다. /v1/methodology가 스캐너 자체의 표현으로 둘을 정의하며, 대시보드 가이드가 화면에서 보여 줍니다.

Stablecoin scanner ACHIVX에서

출처

더 알아보기

레지스트리, 검색, 시장 데이터 · GET /v1/stats/home · GET /v1/stats/overview · 2026-10-24 작성, openapi.json, agents.md 및 당일 실제 호출 기준. 응답 형태는 인용이며, 수치는 날짜 기준이고 인덱스에 따라 달라집니다.

이 페이지는 ACHIVX Academy 영어 원문을 한국어로 옮긴 것입니다. 번역과 원문이 다르면 영어 원문이 기준입니다.