메인 콘텐츠로 건너뛰기
본 문서에서는 ChainStream을 활용한 포괄적인 토큰 분석 프레임워크를 소개합니다. 기본 데이터, 온체인 지표, 홀더 분석, 리스크 평가를 다룹니다.

프레임워크 개요

기본 정보

이름/심볼, 소수점 자릿수, 컨트랙트 주소, 생성 시간

시장 데이터

가격, 시가총액, 유동성, 거래량

홀더 분석

홀더 수, 상위 10/100 보유 비율, 생성자 보유량

거래 통계

매수/매도 횟수, 거래량, 가격 변동

1. 기본 정보

API 엔드포인트

GET /v2/token/{chain}/{tokenAddress}

핵심 필드

필드타입설명
chainstring블록체인 네트워크 식별자 (예: sol)
namestring토큰 이름
symbolstring토큰 심볼
decimalsinteger토큰 소수점 자릿수
addressstring토큰 민트 주소
imageUrlstring토큰 이미지 URL
tokenCreatedAtinteger토큰 생성 타임스탬프 (밀리초)
descriptionstring토큰 설명
tokenCreatorsarray토큰 생성자 주소 목록

응답 예시

{
  "chain": "sol",
  "name": "USD Coin",
  "symbol": "USDC",
  "decimals": 9,
  "address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
  "imageUrl": "https://raw.githubusercontent.com/.../logo.png",
  "tokenCreatedAt": 1710417600000,
  "description": "USDC is a stablecoin pegged to the US dollar",
  "tokenCreators": [
    {
      "address": "...",
      "share": 100
    }
  ]
}

2. 시장 데이터

시장 데이터는 토큰 상세 엔드포인트의 marketData 필드에 포함되어 있습니다.

가격 및 시가총액

필드타입설명
priceInUsdstring토큰 가격 (USD)
priceInSolstring토큰 가격 (SOL)
marketCapInUsdstring유통 시가총액 (USD)
marketCapInSolstring유통 시가총액 (SOL)
totalSupplystring총 공급량

유동성 지표

필드타입설명건전성 기준
maxPoolTvlInUsdstring최대 풀 TVL (USD)깊이가 클수록 슬리피지가 작음
totalTvlInUsdstring전체 풀 합계 TVL (USD)> 시가총액의 5%
maxPoolTvlInSolstring최대 풀 TVL (SOL)-
totalTvlInSolstring전체 풀 합계 TVL (SOL)-

홀더 개요

필드타입설명건전성 기준
holdersstring전체 토큰 홀더 수많을수록 분산됨
top10HoldingsRatiostring상위 10 홀더 비율< 0.5 (50%)
top10TotalHoldingsstring상위 10 보유 총량-
top100HoldingsRatiostring상위 100 홀더 비율< 0.7 (70%)
top100TotalHoldingsstring상위 100 보유 총량-

응답 예시

{
  "marketData": {
    "priceInUsd": "0.00123456",
    "priceInSol": "0.0000089",
    "marketCapInUsd": "1234567.89",
    "totalSupply": "1000000000",
    "holders": "5432",
    "top10HoldingsRatio": "0.35",
    "top100HoldingsRatio": "0.58",
    "maxPoolTvlInUsd": "50000.00",
    "totalTvlInUsd": "85000.00"
  }
}

3. 거래 통계

거래 통계는 토큰 상세 엔드포인트의 stats 필드에 포함되어 있거나, 전용 엔드포인트에서 가져올 수 있습니다.

API 엔드포인트

GET /v2/token/{chain}/{tokenAddress}/stats

통계 필드 (기간별)

지원 기간: 1m, 5m, 15m, 30m, 1h, 4h, 24h
필드 패턴설명필드 예시
price{period}기간 내 가격price1m, price5m, price1h
buys{period}기간 내 매수 횟수buys1m, buys5m, buys1h
sells{period}기간 내 매도 횟수sells1m, sells5m, sells1h
buyVolumesInUsd{period}매수 거래량 (USD)buyVolumesInUsd1m
sellVolumesInUsd{period}매도 거래량 (USD)sellVolumesInUsd1m
volumesInUsd{period}총 거래량 (USD)volumesInUsd1m
priceChangeRatioInUsd{period}가격 변동률priceChangeRatioInUsd1h

응답 예시

{
  "address": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
  "price1m": "1.234",
  "buys1m": "150",
  "sells1m": "120",
  "buyVolumesInUsd1m": "50000.45",
  "sellVolumesInUsd1m": "45000.32",
  "volumesInUsd1m": "95000.77",
  "buys1h": "2500",
  "sells1h": "2100",
  "volumesInUsd1h": "1500000.00",
  "priceChangeRatioInUsd1h": "0.025"
}

4. 홀더 분석

API 엔드포인트

GET /v2/token/{chain}/{tokenAddress}/holders

쿼리 파라미터

파라미터타입필수설명
cursorstring아니오페이지네이션 커서
limitnumber아니오페이지당 결과 수 (1-100, 기본값 20)
directionstring아니오페이지네이션 방향 (next 또는 prev)

홀더 필드

필드타입설명
walletAddressstring지갑 주소
amountstring보유량
amountInUsdstring보유 가치 (USD)
percentagestring보유 비율

응답 예시

{
  "hasNext": true,
  "hasPrev": false,
  "startCursor": "abc123",
  "endCursor": "xyz789",
  "data": [
    {
      "walletAddress": "HN7cABqLq46Es1jh92dQQisAq662SmxELLLsHHe4YWrH",
      "amount": "1000000000000000000",
      "amountInUsd": "12345.67",
      "percentage": "10.5"
    }
  ]
}

홀더 분포 평가

특징:
  • 상위 10 비율 < 50%
  • 상위 100 비율 < 70%
  • 홀더 수가 많음
  • 고르게 분산, 탈중앙화됨
리스크 레벨: 🟢 저위험

홀더 유형 식별

유형식별 방법중요성
팀/프로젝트컨트랙트 배포자, tokenCreators의 주소언락 리스크
고래보유량 > 1%시장 영향력
스마트 머니높은 승률의 트레이더 (지갑 분석 필요)정보 우위
CEX거래소 핫월렛유동성 공급원

5. 리스크 평가

리스크 평가 차원

차원가중치지표
집중 리스크30%top10HoldingsRatio, top100HoldingsRatio
유동성 리스크25%totalTvlInUsd, TVL/시가총액 비율
신규 토큰 리스크20%tokenCreatedAt (생성 시간)
거래 활성도15%holders, 거래량, 매수/매도 횟수
생성자 보유량10%생성자 주소 보유 비율

리스크 지표

지표레벨트리거 조건
🔴 고위험위험top10HoldingsRatio > 0.8, TVL < 시가총액의 1%, 생성 후 24시간 미만
🟡 중위험경고top10HoldingsRatio > 0.5, 생성 후 7일 미만
🟢 저위험안전모든 지표가 건전

분석 워크플로우

1

기본 정보 조회

GET /v2/token/{chain}/{tokenAddress}를 호출하여 완전한 토큰 정보 조회
  • 컨트랙트 주소 확인
  • 생성 시간 tokenCreatedAt 확인
2

시장 데이터 분석

marketData 필드 확인
  • 현재 가격 priceInUsd
  • 시가총액 marketCapInUsd
  • 유동성 totalTvlInUsd
3

홀더 분포 평가

marketData 내 홀더 데이터 확인
  • 홀더 수 holders
  • 상위 10 비율 top10HoldingsRatio
  • 상위 100 비율 top100HoldingsRatio
4

거래 활성도 확인

stats 필드 확인
  • 거래량 volumesInUsd1h, volumesInUsd24h
  • 매수/매도 비율 buys1h vs sells1h
5

종합 리스크 평가

위 데이터를 기반으로 리스크 레벨 산출
  • 높은 집중도 + 낮은 유동성 = 🔴 고위험
  • 건전한 분포 + 충분한 유동성 = 🟢 저위험

실전 예시

예시: 신규 상장 토큰 분석

import { ChainStreamClient } from '@chainstream-io/sdk';

const client = new ChainStreamClient('YOUR_ACCESS_TOKEN');

async function analyzeToken(chain: string, tokenAddress: string) {
  // 1. 완전한 토큰 정보 조회
  const token = await client.token.getToken(chain, tokenAddress);
  
  // 2. 생성 시간 확인
  const ageInDays = (Date.now() - token.tokenCreatedAt) / (1000 * 60 * 60 * 24);
  if (ageInDays < 7) {
    console.warn('⚠️ 신규 토큰 리스크: 생성 후 7일 미만');
  }
  
  // 3. 홀더 분포 분석
  const top10Ratio = parseFloat(token.marketData.top10HoldingsRatio);
  if (top10Ratio > 0.5) {
    console.warn('⚠️ 집중 리스크: 상위 10이 50% 이상 보유');
  }
  
  // 4. 유동성 확인
  const tvl = parseFloat(token.marketData.totalTvlInUsd);
  const marketCap = parseFloat(token.marketData.marketCapInUsd);
  if (tvl < marketCap * 0.05) {
    console.warn('⚠️ 유동성 리스크: TVL이 시가총액의 5% 미만');
  }
  
  // 5. 종합 평가
  const riskLevel = calculateRiskLevel(token);
  console.log(`리스크 레벨: ${riskLevel}`);
  
  return {
    token,
    ageInDays,
    top10Ratio,
    tvlRatio: tvl / marketCap,
    riskLevel
  };
}

function calculateRiskLevel(token: any): string {
  const top10Ratio = parseFloat(token.marketData.top10HoldingsRatio);
  const tvl = parseFloat(token.marketData.totalTvlInUsd);
  const marketCap = parseFloat(token.marketData.marketCapInUsd);
  
  if (top10Ratio > 0.8 || tvl < marketCap * 0.01) {
    return '🔴 고위험';
  } else if (top10Ratio > 0.5) {
    return '🟡 중위험';
  }
  return '🟢 저위험';
}

API 엔드포인트 요약

분석 요구사항API 엔드포인트
토큰 상세 (시장 데이터, 통계 포함)GET /v2/token/{chain}/{tokenAddress}
토큰 메타데이터GET /v2/token/{chain}/{tokenAddress}/metadata
토큰 통계GET /v2/token/{chain}/{tokenAddress}/stats
홀더 목록GET /v2/token/{chain}/{tokenAddress}/holders
상위 홀더GET /v2/token/{chain}/{tokenAddress}/topholders
토큰 풀GET /v2/token/{chain}/{tokenAddress}/pools
토큰 시장 데이터GET /v2/token/{chain}/{tokenAddress}/marketdata

관련 문서

스마트 머니 분석 방법론

스마트 머니 분석에 대해 알아보기

MCP 도구 카탈로그

MCP 도구 전체 목록 확인