개발자용: 전체 스키마
gradtrades
샘플 데이터의 예시 행
grad
{"type":"grad","t":1791640841373,"bt":1791640840,"slot":455281028,"sig":"45ZhqvZwD3SC18TUZ8wQjR1uWHQn91cqTJyiftnyFnJkeoyqoiRXopZTxhHo1TpopAi6HFSwEzsSEUMPcpTfuJWQ","mint":"9pAbYE6q9t5F8tDdrJWrVyMKEYhZnPLwB6hNEHPSnkkt","pool":"2uNzE8XXwRksCymmGtyPfg7oYBYn5E2Kg1hrgP3GteK4","coinCreator":"CfZELPLk52fdxb5DTwfEnZqepPv8vjWsfJZMnGRXLgJP","poolBase":198060505.73945,"poolQuote":88.783503748,"virtualQuote":17.584505653,"price":5.37048e-7,"capSol":537.05,"curveSol":88.783503748}
trade
{"type":"trade","t":1791640800002,"bt":1791640787,"slot":455280784,"sig":"5QxGRXZWhMUGwHbYMf4rzZYBRKZ3735w5QhfYVX56kTzJPTsXGeGuwYQqLveKdzMmnQZjuUWbQNd9Xy7gLtW4tGG","i":0,"mint":"95ccfn4UAUu3mQSvi7NJSJkHEnoLdW58qcRwwzmepump","side":"buy","user":"Doofp8oxQrc3BL5xCtiSADYM5BdTvgRqRTPX9EunRAPE","baseAmount":3475.693603,"quoteAmount":0.000977776,"price":2.81318e-7,"poolBase":250399895,"poolQuote":53.41453236,"priceAfter":2.81322e-7,"userTokensBefore":1480831.488923,"lpFee":1.96e-7,"protocolFee":0.000009094,"creatorFee":0.000002934,"ix":"buy_exact_quote_in_v2"}
end
{"type":"end","t":1791640817904,"mint":"R22RNSXj4ambV2wNFJJkLEuvUa54CPTCbqkwkBZpump","why":"window","buys":2799,"sells":3186}
down / up
{"type":"down","t":1791640822088}
{"type":"up","t":1791640823203}
이 down / up 행은 실제 연결 중단과 복구를 기록한 것입니다. 14:00:22.088 UTC에 피드 연결이 끊겼고 1.1초 뒤에 복구됐습니다. 그 1초의 거래가 빠졌을 수 있습니다. 공백은 행으로 적고, 메우지 않습니다.
스키마
모든 행에 type과 t가 있습니다 (1970년 1월 1일 00:00:00 UTC부터 경과한 밀리초, 우리 기록기가 받은 시각). SOL 양은 SOL로, 토큰 수량은 소수 자릿수를 반영한 토큰 단위로 표시 (소수 6자리). 출처: Solana 퍼블릭 RPC (PumpSwap 프로그램 로그).
gradtnumber졸업 시각 (ms. 추적을 늦게 시작한 코인은 체인 블록 시간)
gradbtnumber블록 시간 (초)
gradslot, signumber, string졸업(마이그레이션) 트랜잭션의 슬롯과 서명
gradmintstring그 코인의 토큰 민트
gradpoolstring그 코인의 PumpSwap 풀
gradcoinCreatorstring그 코인의 크리에이터 수수료를 받는 지갑
gradpoolBase, poolQuotenumber풀의 초기 토큰 수량 / SOL 잔고
gradvirtualQuotenumberPumpSwap 가격 계산에 더해지는 가상 SOL (~17.6 SOL, 2026년 10월)
gradpricenumber졸업 시점의 토큰당 SOL
gradcapSolnumberprice × 1e9 (SOL 기준 시총, 보통 졸업 코인은 약 496)
gradcurveSolnumber본딩 커브가 모은 SOL
gradlatebool추적 시작 지연. followFrom 이전 거래는 없음
gradfollowFromnumberms. 이 시각부터 거래가 빠짐없이 있음
gradfollowboolfalse = 이 코인은 추적하지 않음 (시총이 300–600 SOL 밖이거나, 너무 늦게 발견)
tradebt, slot, sig, inumber, number, string, number블록 시간(초), 슬롯, 서명, 그 트랜잭션 안에서 이 PumpSwap 거래의 순번. sig가 숫자 1을 64개 나열한 문자열이면 RPC가 서명을 주지 않은 것 (드묾: 백만 행에 몇 행)
trademintstring코인
tradeside"buy" / "sell"방향
tradeuserstring거래한 지갑
tradebaseAmountnumber사거나 판 토큰 수
tradequoteAmountnumber낸 SOL (매수, 수수료 포함) 또는 받은 SOL (매도, 수수료 뺀 뒤)
tradepricenumberquoteAmount / baseAmount (실제 체결가, 수수료 포함)
tradepoolBase, poolQuotenumber거래 후 풀의 토큰 / 실제 SOL
tradepriceAfternumber거래 후 풀 가격: (poolQuote + virtualQuote) / poolBase
tradevirtualQuotenumber풀의 가상 SOL이 바뀔 때만 (드묾)
tradeuserTokensBeforenumber거래 직전, 해당 지갑의 이 코인 보유량
tradelpFee, protocolFee, creatorFeenumber수수료, SOL
tradecreatorbool거래한 사람이 그 코인 생성자이면 true
tradeixstring인스트럭션 종류, 예: buy_exact_quote_in. 보통 매수에는 이 필드가 없음
traderecoveredbool로그가 잘림. 거래는 전체 트랜잭션에서 읽음
endmint, why, buys, sellsstring, string, number, number더 이상 추적하지 않음: window (30분 끝), evicted (코인 30개 한도), budget (데이터 예산). 횟수도 기록
down, uptnumber피드 연결 끊김 / 복구. 그 사이 거래가 빠졌을 수 있음
resumemintstring재시작 뒤 다시 잡은 코인. t 이전 누락 구간의 데이터는 없습니다
pregrad
샘플 데이터의 예시 행
create
{"type":"create","t":1791640827094,"mint":"EYrWRPj4umi4AyUgiG2S6YjKhpu3oz6hc4wFNKPypump","creator":"7mHmNh6BFNWpFp5qh2VXRNzsK63zZ5ZQGQY77khANBQW","sig":"f6etp6K3nBnA6P5fhrupy8CZafaMQ9NQ7UQN1ZZbUwEvwEdi2uMndc3d1aYTz3mBYC5hqXTqg8KFJqynwqEgTx5","name":"beer","sym":"beer","devTokens":2442400.964047,"devSol":0.068442865,"capSol":28.087,"curve":"BwWK17cbHxwWBKZkUYvzxLcNQ1YVyaFezduWbtm2de6s","mayhem":true}
curvex
{"type":"curvex","t":1791640818055,"slot":455280896,"curve":"9UfpfsVkwAi9ynZHq6Wi7WjZEzL2Kp8jEbDdfWfjs5gV","mint":"9pAbYE6q9t5F8tDdrJWrVyMKEYhZnPLwB6hNEHPSnkkt","cap":304.08,"cross":300,"sol":68.935,"sinceFirstS":196.7}
ctrade
{"type":"ctrade","t":1791640836449,"bt":1791640836,"slot":455281007,"sig":"eMR2wKhSwrcTvpdLLxRkTpAJ91PYf8EHNvhJJGVuBQaJtVSqeQQsad4QWQxNHp6VQurGi4KRUToU6tzV7F7FcQJ","i":0,"mint":"9LcWKxyvcWTbzwumh7cHaUakgy4eKW4B7pWo4ZLcVM64","side":"buy","user":"E2ridaSSvdWMDJ2YfiH1X6TYSurf2gTZpDFLJ9qMmQLk","sol":0.048888888,"tokens":244185.00765,"capAfter":200.334,"curveSol":50.304208}
migrate
{"type":"migrate","t":1791640841042,"mint":"9pAbYE6q9t5F8tDdrJWrVyMKEYhZnPLwB6hNEHPSnkkt","sig":"45ZhqvZwD3SC18TUZ8wQjR1uWHQn91cqTJyiftnyFnJkeoyqoiRXopZTxhHo1TpopAi6HFSwEzsSEUMPcpTfuJWQ","pool":"pump-amm"}
grad
{"type":"grad","t":1791640841373,"mint":"9pAbYE6q9t5F8tDdrJWrVyMKEYhZnPLwB6hNEHPSnkkt","slot":455281028,"capSol":537.05,"creator":"CfZELPLk52fdxb5DTwfEnZqepPv8vjWsfJZMnGRXLgJP"}
record
{"type":"record","t":1791640859732,"mint":"4DpjsfKA8uSzscqWsyZqqZJ83wvopfBmmmAsqJpnH7Kd","sym":"Ed","name":"Ed","pool":"22FiEsj8GfHYp7vDC88gFy833mXzqDpKuvPZ574hgLv4","slot0":455281034,"sig0":"3HikNGkRwodBdHgDgsvpcGnTpJqYBTVqNKRpRry3dsxQFk86Mt5EMscKCsT2goZLQFqX48R9nu3B8NACCeqqiJiy","t0":1791640842431,"bt0":1791640842000,"src":{"first":"pumpportal","gradRow":true,"migrate":1791640842431,"curveCompleteS":0.68},"creator":"DPZpMGnuq44KE77yCjS1oq6UdqhNNSAURcB1AzQeQQTf","create":{"t":1791640165488,"sig":"3b4RzKnmb1MsYXJB1AAeFQevWMcioQMm5DSCy15kznu47kD8735q9fVT2vLvoyAuKeHdtKc93E5vhpQ7deTY3EeE","src":"pumpportal","mayhem":false,"capSol":33.957},"ageS":676.9,"instant":false,"cap0":511.65,"curveSol":86.467621472,"devBuyTokens":99366691.529599,"devBuyPct":9.937,"devBuySol":3.061728394,"creatorPctAtGrad":9.937,"creatorInfo":{"txs50":14,"capped":false,"oldestS":331,"nBefore10m":0,"funder":null,"fundSol":0,"fundedBeforeS":331,"fundMemo":false,"priorCoins24h":0,"priorCoins72h":0},"gradSlot":{"pct":0,"sol":0.002,"nWallets":1,"nTx":1,"buys":[{"w":"27HFmP7ccLadGswvQfvea4o3juLw75cPF4V6jWpHM3MX","tokens":46.135,"pct":0,"sol":0.0015,"sig":"tzo2Mdn6uvEN6MMf2pk9bfEFNEnwLMzVBdSKFbxXmXqqfLuZ2DnsJVVb6pUisqDhoUfPdT7JXMWL3CepUkQ8Fo4","bundleSize":1,"payer":"27HFmP7ccLadGswvQfvea4o3juLw75cPF4V6jWpHM3MX","signers":1,"slotOffset":1}],"whale":{"w":"27HFmP7ccLadGswvQfvea4o3juLw75cPF4V6jWpHM3MX","pct":0,"sol":0.0015,"bundleSize":1,"creatorInTx":false,"gainers":[],"txs25":25,"oldestS":399,"lastTxKind":"pamm","funder":null,"fundSol":null,"fundedBeforeS":null,"fundSig":null,"fundMemo":null}},"curve":{"coverage":"partial","holders":[{"w":"9AkbDBmPKNt8SvZRMF7wYDz33WYMnRFfsBnVE18naFpD","pct":0.045,"sol":0.0978,"creator":false},{"w":"Ej6eGdvP1VYJg45FyxpjtXLag1AEG4r2JLNxaq8F3ws7","pct":0.004,"sol":0.0094,"creator":false}],"creationSlot":null,"bundleEst":null,"estimated":false,"top1NcPct":0.045,"top5NcPct":0.049,"nOver3Pct":0,"bundleWallets":0,"bundlePct":0,"creatorPct":9.937,"path":{"firstCap":57.8,"firstS":674.2,"maxCap":410.9,"updates":948,"completeS":0.68,"t100S":668.7,"t200S":316.2,"t300S":65.7,"t400S":3.7},"trades":{"fromCap":216.2,"fromT":1791640569831,"n":5,"buys":2,"sells":3,"wallets":5,"maxCap":216.7,"lastCap":215.9,"completeT":1791640842431,"topBuyers":[{"w":"9AkbDBmPKNt8SvZRMF7wYDz33WYMnRFfsBnVE18naFpD","tokens":451685.64,"pct":0.045,"sol":0.0978},{"w":"Ej6eGdvP1VYJg45FyxpjtXLag1AEG4r2JLNxaq8F3ws7","tokens":43399.248,"pct":0.004,"sol":0.0094}]}}}
outcome
{"type":"outcome","t":1791641308603,"mint":"HXFYuYYfJ7TKMLp8KZ2vcw5jq6DaxWL8Tq7QdhDqCXbX","sym":"Aramco","t0":1791640703550,"recT":1791640712803,"capAt":{"10":3177.45,"45":3218.37,"60":3249.5,"120":3341.85,"180":3442.58,"300":3771.26,"600":5507.02},"maxGain":74,"minDrop":-78.3,"crashed":true,"trades":8684,"dump":{"tS":601.9,"w":"5NpcZzQoiARZjuPPZGRo33YwyWzhAq7R8vx1jXsKbTzo","frac":1.833138,"rule":"big-sell","sol":199.72990449,"capAfter":689.757,"tokensFrom":{"kind":"transfer","tokens":66050028.897,"pct":6.605,"from":"4imgFChpdw6YyjPw6cRxrtJpBHZS8LNrQZgbyVTfirP4","for":"5NpcZzQoiARZjuPPZGRo33YwyWzhAq7R8vx1jXsKbTzo","sig":"Atfch84VwkJckSuXqjRqBqDKuHoibeWzEMPn7nAJKkRZ7ehmM534Byp5hriqaV13JERN9M2S1mphnp87GcvdjCC","bt":1791640717,"account":"Hnzdxe8VcjXvoBmoEPRWf6EMpqsa29RVMivt3g75RpBx","accountTxs":11,"beforeDumpS":588,"afterGradS":13}},"firstBigSell":{"tS":601.9,"w":"5NpcZzQoiARZjuPPZGRo33YwyWzhAq7R8vx1jXsKbTzo","frac":0.3928,"sol":199.72990449,"capAfter":689.757,"tokensFrom":{"kind":"transfer","tokens":66050028.897,"pct":6.605,"from":"4imgFChpdw6YyjPw6cRxrtJpBHZS8LNrQZgbyVTfirP4","for":"5NpcZzQoiARZjuPPZGRo33YwyWzhAq7R8vx1jXsKbTzo","sig":"Atfch84VwkJckSuXqjRqBqDKuHoibeWzEMPn7nAJKkRZ7ehmM534Byp5hriqaV13JERN9M2S1mphnp87GcvdjCC","bt":1791640717,"account":"Hnzdxe8VcjXvoBmoEPRWf6EMpqsa29RVMivt3g75RpBx","accountTxs":11,"beforeDumpS":588,"afterGradS":13}},"bigSells":[{"tS":601.9,"w":"5NpcZzQoiARZjuPPZGRo33YwyWzhAq7R8vx1jXsKbTzo","frac":0.3928,"sol":199.72990449}],"src":"gradtrades"}
record 행은 졸업 코인마다 하나이고, 졸업 후 10–40초에 적습니다. outcome 행은 10분 뒤에 따라옵니다. 이 예는 시총이 +10초에 3,177 SOL이었다가 +10분에 5,507 SOL이 된 코인입니다. 그다음 200 SOL 규모의 단일 매도로 (토큰은 졸업 13초 뒤 전송으로 받음) 시가총액이 690 SOL까지 하락했습니다.
스키마
출처: 퍼블릭 RPC로 읽은 Solana 체인 로그 (생성, 마이그레이션; 2026년 10월 14일부터, 그 전에는 PumpPortal 무료 웹소켓), Solana 퍼블릭 RPC (본딩 커브, 트랜잭션). 금액은 SOL. pct = 공급량 1,000,000,000의 %. 시각은 ms이고, 이름이 S로 끝나면 초입니다.
createt, mint, signumber, string, string코인 생성
createcreatorstring코인 생성자의 지갑
createname, symstring코인 이름 / 티커
createdevTokens, devSolnumber생성 시 생성자가 매수한 토큰 수량과 지불한 SOL
createcapSolnumber만든 직후 곡선 시총
createcurvestring본딩 커브 계정
createmayhemboolpump.fun 메이헴 모드 런치
curvexslot, curve, mintnumber, string, string/null본딩 커브 시가총액이 임계값을 돌파함 (아직 코인에 연결되지 않으면 mint는 null)
curvexcap, cross, sol, sinceFirstSnumber지금 시총 (SOL), 돌파한 임계값 (100/200/300/400 SOL), 본딩 커브의 SOL 잔고, 최초 관측 후 경과 시간(초)
ctradebt, slot, sig, i, mint, side, usergradtrades와 같음졸업이 가까운 코인의 본딩 커브 거래 (시총 200 SOL부터 읽음). i는 그 트랜잭션 안에서 이 코인 거래의 순번이므로 (sig, mint, i)가 고유 키
ctradesol, tokens, capAfter, curveSolnumber그 거래의 SOL과 토큰, 거래 뒤 시총과 곡선 SOL
migratemint, sig, poolstringPumpPortal이 본 마이그레이션 (pool = 마이그레이션 대상 AMM)
gradmint, slot, capSol, creatorstring, number, number, string체인에서 본 졸업
recordmint, sym, name, pool, slot0, sig0, t0, bt0mixed졸업 코인마다 하나, 졸업 후 10–40초에 기록 (t0 = 졸업)
recordsrcobject어느 피드에서 먼저 감지했는지. curveCompleteS = t0보다 몇 초 전에 본딩 커브가 완료됐는지
recordcreator, createstring, object코인 생성자의 지갑. 생성 트랜잭션 (t, sig, mayhem, capSol)
recordageSnumber생성부터 졸업까지, 초
recordinstantbool생성 후 5초 안에 졸업
recordcap0, curveSolnumber졸업 시점 PumpSwap 시총. 모인 SOL
recorddevBuyTokens, devBuyPct, devBuySolnumber생성 시 코인 생성자의 매수
recordcreatorPctAtGradnumber/null졸업 시점 코인 생성자의 보유
recordcreatorInfoobjecttxs50 (트랜잭션 수, 상한 50), capped, oldestS, nBefore10m, funder, fundSol, fundedBeforeS, fundMemo, priorCoins24h, priorCoins72h
recordgradSlotobject/null졸업 슬롯의 PumpSwap 매수: pct, sol, nWallets, nTx, buys[] (w, tokens, pct, sol, sig, bundleSize, payer, signers, slotOffset, creatorInTx), whale = 그중 가장 큰 매수와 해당 지갑의 온체인 정보 (txs25, oldestS, lastTxKind, funder, fundSol, fundedBeforeS, fundSig, fundMemo, gainers[])
recordcurveobjectcoverage (full/partial/none), holders[] (상위 10: w, pct, sol, creator), creationSlot, bundleEst, estimated, top1NcPct, top5NcPct, nOver3Pct, bundleWallets, bundlePct, creatorPct, path (t100S..t400S, maxCap, updates, completeS), trades
outcomemint, sym, t0, recTmixed졸업 후 +10분
outcomecapAtobject+10/45/60/120/180/300/600초의 PumpSwap 시총 (SOL)
outcomemaxGain, minDropnumber/null처음 10분, 졸업 10초 뒤 가격 대비 최대 상승률 / 최대 하락률(%). −80%에 닿음 = minDrop <= -80, 2배에 닿음 = maxGain >= 100. 관측된 거래가 없으면 null. 2026-10-14 03:40 UTC부터는 블록에서 복구한 졸업 슬롯 거래 (큰 졸업 매수 이전 가격) 때문에 일부 코인의 minDrop이 지나치게 낮게 나올 수 있습니다 (10월 14일: 569개 중 349개가 -80% 도달로 보이지만 실제로는 195개). 체인 순서로 계산한 graduates CSV의 low_10m_pct / high_10m_pct를 쓰세요
outcomecrashedbool처음 10분 안에, 그 시점까지의 최고가의 60% 이하로 체결된 거래. 즉 고점에서 40% 이상 하락 (80% 하락이 아님. 그건 minDrop <= -80)
outcometradesnumber집계한 PumpSwap 거래 수
outcomedump, firstBigSell, bigSells[]object정해진 규모 기준을 넘긴 첫 매도와 큰 매도들: tS, w, frac (풀 토큰 수량 대비 매도 물량의 비율), sol, capAfter, rule, tokensFrom
outcomesrcstring거래를 어디서 읽었는지
padfeed
샘플 데이터의 예시 행
grad
{"type":"grad","t":1791642704526,"pad":"ray","platform":"Fo1dp1JYQQWgYgAdiZWfmJpA7KRreCdCEyEEVcE1Q2TN","mint":"BwVPtfz4g8TcmmuVyQWnQEx8X3Zhr3W24McKEvztfEe1","quote":"So11111111111111111111111111111111111111112","pool":"27XKWhuX5rKrJJxr5ebQc3ZKDXSCgZVMR329aGZDXrC9","curveAuth":"6s1xP3hpbAfFoNtUNF8mfHsjr2Bd97JxFJRWLbL6aHuX","baseVault":"B7xSvh15d1aXre2bFKcRpqRG9zdbEECFR6981tiRyn5w","quoteVault":"38VBuRZUGNTGkH8WxkmnsLH7YBiC2n5FseTmBuGZq5Us","b":206900000,"q":85.000000062,"px":4.108264865248912e-7,"supply":1000000000,"decimals":6,"tokenProgram":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb","feeBps":null,"freeze":null,"mintAuth":null,"sig":"2QN2S5rGhVv8sAZcYXT7MGVDvzAEvUYZrewBYSypMcDfksxTS2u413czrYXPiXoYwJEtRjsgoamt32kELbuVNm6p","blockTime":1791642704000,"lagMs":526}
px
{"type":"px","t":1791640800132,"mint":"7E9FWUo2mJK1LT53LPceXK8VHrDM4WhMFpBZYtyHaSC1","b":13932037.454196,"q":17.430408874,"pad":"dbc"}
holders (top20 cut to 2 entries here; the file has all 20)
{"type":"holders","t":1791640987253,"mint":"FJH9L1G1ezgVKymcKnVUARN9YH6oPFAJ19qTQ6mL7EXd","top10":0.7,"top20":[{"acct":"GCegNfWBkzpERkQVwZkBSJBdXxqMFMMdoLuvKgNr7PEF","owner":"FhVo3mqL8PW5pH5U2CN4XE33DokiyZnUwuGpH2hmHLuM","amt":950264550.634002},{"acct":"FukAMJAHBU1rvWSYAB4MTiHzR2QnUwNNZGxm3ZxKyQc3","owner":"HLnpSz9h2S4hiLQ43rnSD9XkcUThA7B8hQMKmDaiTLcC","amt":18537186.696369}],"pad":"dbc"}
qpx
{"type":"qpx","t":1791640829727,"usd":{"98sMhvDwXj1RQi5c5Mndm3vPe9cBqPrbLaufMXFNMh5g":84.3142186577373,"So11111111111111111111111111111111111111112":109.78435044998537}}
위의 px 행: 가격 = q / b = 17.43 / 13,932,037 = 토큰당 1.25e-6 SOL. 시간상 가장 가까운 qpx 행의 SOL 가격 (US$109.78)으로 치면 US$0.000137입니다.
스키마
dbc는 Meteora Dynamic Bonding Curve (Bags, Jupiter Studio, ...)에서 DAMM v2 풀로, ray는 Raydium LaunchLab (bonk.fun 등)에서 Raydium CPMM 풀로 마이그레이션한 경우입니다. 코인마다 20분 (dbc) / 30분 (ray)을 추적합니다. 출처: Solana RPC. US$ 쿼트 가격은 Jupiter 무료 가격 API.
alltnumber기록 시각(ms)
gradpad"dbc" / "ray"런치패드
gradplatformstring플랫폼 설정 / 이름
gradmint, quotestring코인 민트. 기준 토큰의 민트 주소 (SOL, 또는 USD1 같은 토큰 / 토큰화 주식)
gradpool, curveAuth, baseVault, quoteVaultstring/null풀과 볼트 계정. pool은 dbc 행마다 null (마이그레이션을 감지했을 때 DAMM v2 풀을 아직 모름. 볼트 주소로 풀을 식별함). ray 행에는 값이 있음
gradb, qnumber마이그레이션 시점 볼트 잔고 (토큰, 쿼트 단위)
gradpxnumber기준 토큰 단위의 가격 = q / b
gradsupply, decimals, tokenProgramnumber, number, string민트 정보 (Token 또는 Token-2022)
gradfeeBps, freeze, mintAuthmixedToken-2022 전송 수수료, 동결 / 민트 권한 (null = 없음)
gradsig, blockTime, lagMsstring, number, number마이그레이션 서명, 그 블록 시간 (ms. 다른 곳의 bt처럼 초가 아님), 블록 이후 감지까지 걸린 시간 (ms)
pxpad, mint, b, qstring, string, number, number잔고가 바뀔 때의 볼트 잔고 (약 6초마다, 가격 변동이 빠른 코인은 약 2초). 가격 = q / b
holderspad, mint, top10, top20[]string, string, number, array+60초와 +5분: 보유량이 가장 많은 토큰 계정 20개 (acct, owner, amt). top10 = 풀 볼트와 곡선을 뺀 상위 10의 비중
qpxusdobject30초마다: SOL과, 최근 2시간 동안 관측된 SOL이 아닌 기준 토큰 각각의 US$ 가격. 키는 민트
meteora-pools
샘플 데이터의 예시 행
pool
{"type":"pool","t":1791640862793,"pool":"3BCeknAQpHELGfKhUb9mnKuLC3Eg3qjJrZ5B7fqC1xSW","price":0.000006613131,"tvlUsd":59712.37,"vol24hUsd":621060.47,"fees24hUsd":17376.4,"vol24hDeltaUsd":94.68,"feesMinUsd":65.4599}
{"type":"pool","t":1791640862793,"pool":"5EStPSuAZB4TqBSWLpbGwiKFEuspdYjcc3EoRMgeMHGh","price":0.000026998604,"tvlUsd":54300.74,"vol24hUsd":268438.69,"fees24hUsd":14080.84,"vol24hDeltaUsd":-1688.1,"feesMinUsd":0}
같은 1분 구간의 두 풀: 첫 풀은 TVL US$59.7k에서 그 분에 수수료 US$65.46을 벌었습니다. 둘째 풀은 아무것도 못 벌었고, 최근 24시간 거래량이 US$1,688 줄었습니다 (24시간 집계 구간에서 제외된 거래량이 새로 포함된 거래량보다 많음).
스키마
풀마다 분마다 한 행. TVL이 US$50k 이상인 Meteora DLMM 풀, 24시간 수수료/TVL 상위 200개. 출처: Meteora 공개 DLMM API. RPC 없음, 지갑 없음.
curvetape
샘플 데이터의 예시 행
create
{"type":"create","t":1791900004668,"slot":456467223,"sig":"2f23Xpkm97zfNW33TkLj8JPbD6xPapa4UApK59Up5Bou17HJZQWWiuSzNDveStHJNJ7KM77Vj6x2aQyQdDjFRYbT","bt":1791900004,"mint":"6HFExtnceGjHTkURczNMrBXvW9mW9R8H3tTjPUdQRyjY","curve":"BzYvZ5e3PZLeRi1a6Qios3Vx2JG2fUWZsszMuFKRbe5T","user":"bwamJzztZsepfkteWRChggmXuiiCQvpLqPietdNfSXa","creator":"bwamJzztZsepfkteWRChggmXuiiCQvpLqPietdNfSXa","name":"Save The Orangutans","sym":"ORANGUTANS","uri":"https://md.sdfgsdfsdf.uk/metadata/yQ1HKDod","tokenProgram":"TokenzQdBNbLqP5VEhdkAS6EPFLC1PHnBqCXEpPxuEb","mayhem":false,"quote":null,"vt":1073000000000000,"vs":30000000000,"rt":793100000000000,"supply":1000000000000000,"vq":30000000000}
trade
{"type":"trade","t":1791900000073,"slot":456467204,"off":5277,"bt":1791899999,"sig":"3oHhesiuEZy6AEGibP29sLPwz4EE4jqb7ucAETkz4DijVrwyT9TdHdJF6rwcDYEjHUJZz4Lbpa8FLxQY2jYrAiLT","i":0,"mint":"13C3X9CJQd98H6nic3mTGE5a5wvKRQec4VaceMy9pump","side":"buy","wallet":"D4orPtC6p1VveJuVJXZCqDFDvLX5689bg3sPyT6L9L3U","tokens":2328278.127981,"sol":0.272278445,"capAfter":117.4642,"curveSol":31.491252689,"fee":0.002586646,"cfee":0.000816836,"vs":61491252689,"vt":523489102303982,"ix":"buy"}
migrate
{"type":"migrate","t":1791900007570,"slot":456467236,"sig":"2eA524jow1WmjWZtZL9oajTtsab7sLPMAiQh49A3N6jjNKjwbVkdK1oQkx5dbgMdd5vENVgdvBKu8pyvXL1ESrRu","bt":1791900007,"mint":"7HB5bziuo7maGzy24SS2KmEUnHfFkcgQPT8zt9NZpump","pool":"2HVdHvhk78x8yuhFiiLhy5MdH6dZ6wet3C32Euzyzu2N","quote":null,"solAmount":84.990359428,"mintAmount":206900000,"poolMigrationFee":0.015000001,"user":"7LCvF6K1Sp88qt9HJ6FRw4DJfXahJ72gZqqM3X9tDycU"}
end
{"type":"end","t":1791900007568,"mint":"7HB5bziuo7maGzy24SS2KmEUnHfFkcgQPT8zt9NZpump","why":"graduated","src":"create","trades":1074,"buys":903,"sells":171,"vol":172.633076653,"volQ":null,"lastCap":410.8802,"maxCap":410.8802,"firstT":1791899520492,"lastTradeT":1791900007568}
gap
{"type":"gap","t":1791902270272,"from":1791902148965,"to":1791902270272,"why":"boxcap","ms":121307}
위의 trade: 매수자가 곡선에 0.272278 SOL을 넣었고 수수료로 0.002587 + 0.000817 SOL을 냈습니다. 합이 0.275682 SOL. 그 뒤 시총은 117.46 SOL이었습니다. 이 gap은 실제입니다. 14:35:48부터 14:37:50 UTC까지 라이브 피드가 꺼져 있었습니다 (121초, 공유 퍼블릭 RPC 사용 한도를 넘지 않도록 수집을 일시 중단함). 그래서 그 구간의 거래는 이 파일에 없습니다.
스키마
한 줄에 JSON 객체 하나, 행은 t 순서. SOL 양은 SOL로, 토큰 수량은 소수 자릿수를 반영한 토큰 단위로 표시. vs, vt, rt, vq, supply와 Q 필드는 소수 자릿수 조정 전 정수입니다. 출처: Solana 체인 (pump.fun 프로그램 로그).
createslot, sig, btnumber, string, number생성 트랜잭션
createmint, curvestring그 코인과 그 본딩 커브 계정
createuser, creatorstring생성 트랜잭션을 전송한 지갑 / 그 코인 생성자 (크리에이터 수수료를 받음)
createname, sym, uristring이름, 티커, 메타데이터 링크, 체인에 적힌 그대로
createtokenProgramstringToken-2022 또는 기존 SPL Token 프로그램
createmayhemboolpump.fun 메이헴 모드 코인
createquotestring/nullnull = SOL로 가격이 매겨짐. 아니면 곡선 가격의 기준이 되는 민트
createvt, vs, rt, supply, vqnumber시작 가상 토큰, 가상 SOL, 실제 토큰, 공급량, 가상 쿼트 리저브 (소수 자릿수 조정 전)
tradeslot, sig, i, btnumber, string, number, number그 트랜잭션. i = 그 안의 pump.fun 거래 중 이 거래의 순번, 그래서 (sig, i)는 고유
tradeoffnumber/null코인 생성 슬롯 이후 슬롯 수 (생성을 못 봤으면 null)
trademint, side, wallet, tokensstring, "buy"/"sell", string, number누가 토큰을 몇 개 거래했는지
tradesolnumberSOL 곡선: 곡선으로 들어간 (매수) / 곡선에서 나온 (매도) SOL, 수수료 제외 (매수자는 sol + fee + cfee를 냄, 매도자는 sol - fee - cfee를 받음)
tradefee, cfeenumberSOL 곡선: pump.fun 프로토콜 수수료 / 크리에이터 수수료, SOL (2026년 10월 0.95 % / 0.30 %. 메이헴 코인은 다름)
tradecapAfter, curveSolnumberSOL 곡선: 거래 후 SOL 시총 (price x 1e9 공급량). 거래 후 곡선 안의 실제 SOL
tradevs, vtnumber거래 후 가상 SOL (SOL 곡선만) / 가상 토큰 리저브 (소수 자릿수 조정 전)
tradequote, qAmt, vq, rq, feeQ, cfeeQstring, number다른 토큰으로 가격이 매겨진 곡선: 그 민트. 금액, 가상 / 실제 쿼트 리저브, 두 수수료는 최소 단위로 표시. 이 행에는 sol / capAfter / curveSol / fee가 없음 (가짜 0을 넣지 않음). quote가 "?"이면 금액을 읽을 수 없음
tradeixstring인스트럭션: buy, sell, buy_exact_sol_in, buy_exact_quote_in, multi_hop_swap (한 인스트럭션 안에서 곡선 쿼트 토큰을 거쳐 가는 스왑. 거의 모두 다른 토큰을 기준으로 가격이 책정되는 본딩 커브에서 발생)
tradebyCreatorbool거래한 사람이 그 코인 생성자이면 있음 (true)
trademayhembool메이헴 모드 코인이면 있음 (true)
tradetrunc, recbool그 트랜잭션의 로그가 잘림 (그 뒤 거래는 전체 트랜잭션에서 읽은 rec 행으로 오거나, 빠짐)
migratesolAmount, quoteAmount, mintAmount, poolMigrationFee, usernumber, string풀로 옮긴 SOL (또는 원 쿼트)과 토큰, 마이그레이션 수수료 (SOL), 보낸 사람
endmint, why, srcstring더 이상 추적하지 않음: graduated, idle (60분 동안 거래 없음), evicted (추적 대상 코인이 20,000개를 넘음). src는 create / adopt
endtrades, buys, sells, vol, volQ, lastCap, maxCap, firstT, lastTradeTnumber추적하는 동안 본 합계 (SOL 곡선의 vol은 SOL, 아니면 원값 volQ. 시총은 SOL)
txtxFee, prioFee, jitoTipnumber낸 네트워크 수수료, 그중 우선순위 수수료 (수수료에서 서명당 5,000 lamports를 뺀 값), Jito 팁 계정으로 보낸 SOL. 단위는 SOL
txcuPrice, cuLimit, cuUsed, prioCfgnumber컴퓨트 유닛 가격 (마이크로 lamport, v0 트랜잭션), 한도, 실제 사용량. prioCfg = v1 트랜잭션 자체의 priorityFee 설정값
txfailedbool그 트랜잭션은 실패함
gapfrom, to, why, msnumber, number, string, number라이브 피드가 from과 to 사이에 꺼져 있었음. why: socket, yield413 / boxcap / selfcap (공유 퍼블릭 RPC 사용 한도를 넘지 않도록 수집을 일시 중단함), refused, start, stop. 2026-10-14부터 backfill 행이 따라옴. complete: true이면 그 구간에 빠진 것이 없음
create, trade, complete, migratesrc"backfill"2026-10-14부터: 누락 구간에서 복구한 행에만 있음, 블록 전체에서 읽음. 필드와 값은 라이브 행과 같음. 라이브 행에는 src가 없음
backfillfrom, to, whynumber, number, string2026-10-14부터: 체인 데이터로 복구한 누락 구간 하나 (유료 RPC로 블록 전체). 그 구간 (ms)과 이유 (restart = 기록기가 재시작함)
backfillslotFrom, slotTo, blocks, skipped, failed, txs, rowsnumber, object읽은 슬롯, 읽은 블록, 블록이 없는 슬롯, 읽지 못한 슬롯, pump.fun 이벤트가 있는 트랜잭션, 종류별로 쓴 행 수
backfillcomplete, stopbool, stringcomplete: true = 그 구간의 모든 슬롯을 읽음. false이면 stop에 중단 사유가 표시되며 (nocredit, maxblocks, noslot, nohelius) slotTo 이후 슬롯의 데이터는 누락된 상태로 남음
launchmeta
샘플 데이터의 예시 행
meta (phase create)
{"type":"meta","t":1791900032794,"phase":"create","src":"chain","mint":"3SrkocGC2RJRznw2HEyJBrRzoMcRDoJs5L52EWAfpump","tCreate":1791900032355,"createSig":"2vx9i7n4EpodmVcEgvX1VReULVPX3gXuKeZxzJPqr8RsHDexEqnrPz8cx6yrPSjASVskuQFV84XxmBD9NjJ2XUgA","creator":"7FVfSdnR9VPGjMtmBP1Hz9C2DFTpoNX8gVVRmnimnGt9","name":"up","sym":"up","uri":"https://ipfs.io/ipfs/QmZMeuCM42FErtBCZQd57DLcs1mpRNQLSqMVL21MRzQ8VE","uriKind":"ipfs","json":{"name":"up","symbol":"up","description":"grow up","image":"https://ipfs.io/ipfs/bafkreihb7ybjzblgsfzqzc4lv5v5kii5letvrah5xozqwziuqxnnsayl7q","showName":true,"createdOn":"https://pump.fun"},"metaSha":"8ab84aca67c8bbf27fe573ecbec4f0e94a2ec9b8f60ccf47d3493588b372aaa2","metaBytes":189,"imgUrl":"https://ipfs.io/ipfs/bafkreihb7ybjzblgsfzqzc4lv5v5kii5letvrah5xozqwziuqxnnsayl7q","imgSha":"e1fe029c856691730c8b8baf6bd5211d59275880fdbbb30b651485dad9030bfc","imgBytes":13381,"imgType":"image/gif","gwMeta":"ipfs.filebase.io","ms":165,"cachedImg":true}
meta (a failed fetch)
{"type":"meta","t":1791900007185,"phase":"create","src":"chain","mint":"6aFPW6pS1AtxgKWc4yMf6ozePzrSdBBGHmUqEdPUtz5R","tCreate":1791899997001,"createSig":"5tCy8ZwcbzsWWPaEgtMcBpUDmNoBS23A1iiCyyrg5fNwTas2gwVZSSqDWuvhrYegowF132sqgBnxAmwteDdbQciU","creator":"5vurJzLBn6dryVxztHTc5TiRo7idbRQUznCp6S4qPQFL","name":"Pocket Node","sym":"PNOD","uri":"https://paste.rs/0Wpec?meta=json","uriKind":"http","ms":10088,"err":"meta: paste.rs URLError: <urlopen error timed out>"}
같은 그림은 어느 링크에서 제공되든 imgSha가 같습니다. cachedImg: true는 해당 이미지 링크의 해시를 이전에 계산한 적이 있다는 뜻입니다. 두 번째 행은 메타데이터 호스트의 응답 시간 초과를 기록한 것입니다. 이유는 err에 있고, 채웠어야 할 필드는 그냥 없습니다.
스키마
한 줄에 JSON 객체 하나, 행은 t 순서. 출처: 체인에서 본 생성 / 마이그레이션 (우리 curvetape 피드) 또는 pregrad 기록기, 먼저 도착한 쪽. 메타데이터와 그림은 공개 IPFS 게이트웨이로.
metaphase"create" / "grad"생성 때 가져옴, 또는 졸업 때
metasrc"chain" / "pumpportal" / "chainlogs"생성 / 졸업을 먼저 알린 피드: chain = 우리 curvetape 기록기 (체인의 create / migrate 이벤트). pumpportal = PumpPortal 무료 피드 (우리 pregrad 기록기를 통함). chainlogs = pregrad가 체인 로그에서 직접 잡은 것, 2026-10-14부터 pregrad에서 PumpPortal을 대체함. 2026-10-14 이후 일부 행 (약 400행 중 1행)에는 src가 없음. 그때는 피드를 기록하지 않았음
metamint, createSig, creator, name, symstring그 코인, 생성 트랜잭션, 코인 생성자의 지갑, 체인에 적힌 이름과 티커
metatCreate, tGradnumber생성 / 졸업을 본 시각 (ms)
metauri, uriKind, uriFromstring메타데이터 링크. ipfs / http / data / none / other (다른 스킴). grad 행: 링크가 어디서 왔는지 (create, chain = 민트에서 읽음, none)
metajsonobject메타데이터 JSON의 필드, 있을 때만: name, symbol, description (2,000자에서 자름), image, website, showName, createdOn, 그리고 hasTwitter / hasTelegram (JSON에 그런 링크가 있으면 true. 링크 자체는 빼 둠. 소셜 계정은 담지 않음)
metajsonKeysarray그 JSON의 다른 최상위 키 (최대 20개)
metametaSha, metaBytesstring, number메타데이터 JSON 바이트의 sha256과 크기
metaimgUrlstringJSON에 있는 그림 링크
metaimgSha, imgBytes, imgTypestring, number, string그림 바이트의 sha256, 크기, Content-Type (같은 그림 = 같은 imgSha)
metagwMeta, gwImgstring응답한 호스트
metamsnumber가져오는 데 걸린 시간
metacachedImgbool그 그림 링크는 전에 지문을 뜬 적 있음 (imgSha가 같음)
metacached, changedboolgrad 행: 생성 때 결과를 다시 씀 (IPFS 내용은 바뀌지 않음) / JSON이 생성 때와 다름 (http 링크)
metaerrstring가져오기가 실패한 이유 (meta: <host> <reason>, image: <reason>, noUri). 전부 잘되면 이 필드가 없음
skipmint, phase, whystring가져오지 않음: backlog (요청이 몰리는 시간대에 대기열이 가득 참)
gradholders
샘플 데이터의 예시 행
holders (top cut to 3 entries here; the file has up to 20)
{"type":"holders","t":1791950508411,"mint":"GUFGC9E1mtY5PB4qrr5GeyCcBJGBzMqs9bQvNon1pump","mark":10,"src":"chain","tGrad":1791949905766,"lagS":2.6,"slot":456698335,"supply":995031028.780416,"decimals":6,"pool":"AEM5qEJSYyEvqWnaajgxey5yBPXfLj5L1mLnu5Vsn2C9","n":20,"top":[{"acct":"HUVzPYCqGDz7qe46bKa6P5fuEahRaeFhTtEZGPipm6Ve","owner":"9qZvANPkPE6NHoj5W5BzJ4gb4byaVqvg1V4JCJBfiK2m","amt":129437610.107396,"pct":13.0084},{"acct":"49CVwy8EkACVqT9ASKwebaCykK4cLmzYZPbNgENPuZmu","owner":"AEM5qEJSYyEvqWnaajgxey5yBPXfLj5L1mLnu5Vsn2C9","amt":63052232.378713,"pct":6.3367,"role":"pool","pda":true},{"acct":"E3gjGe8o8mhj3hr6UScErijYrnvKS1ijwWcD5c9u41RY","owner":"BTmCme13XXrD3VLxXFChL9VnmicJ5PjkVUpAsjrooEYh","amt":2373829.971933,"pct":0.2386}],"top10Pct":13.6241,"top10PctAll":19.9136,"top20Pct":14.0483,"poolPct":6.3367,"curvePct":0,"tries":1}
졸업 10분 뒤, 최대 보유자는 공급량의 13.0%를, 풀은 6.3%를 보유했습니다. top10Pct (13.6)는 풀과 곡선을 빼고, top10PctAll (19.9)는 그것들을 포함합니다.
스키마
한 줄에 JSON 객체 하나, 행은 t 순서. 토큰 수량은 소수 자릿수를 반영한 토큰 단위로 표시. pct = 공급량의 %. 출처: Solana RPC (getTokenLargestAccounts + getMultipleAccounts).
holdersmint, markstring, number그 코인. 졸업 후 분 (1, 10, 60)
holderssrc, tGradstring, number졸업을 먼저 알린 피드: chain (우리 curvetape 기록기), pumpportal (pregrad를 통한 PumpPortal 무료 피드), 또는 2026-10-14부터 chainlogs (pregrad가 체인 로그에서 직접 잡은 것). 본 시각 (ms)
holderslagSnumber스냅샷 실제 조회 시각이 tGrad + mark보다 지연된 시간(초)
holdersslotnumber읽은 시점의 체인 슬롯
holderssupply, decimalsnumber민트에서 읽은 토큰 공급량 (소수 자릿수가 반영된 토큰 수)과 소수 자릿수
holderspoolstring그 코인의 표준 PumpSwap 풀 (SOL 쿼트 졸업 코인)
holdersnnumber조회 결과로 반환된 계정 수 (최대 20개)
holderstoparray보유량 내림차순: acct (토큰 계정), owner (홀더), amt, pct, role (pool = 그 코인의 PumpSwap 풀, 또는 curve = 예전 본딩 커브일 때만 있음), pda (true일 때만 있음: 주인이 프로그램 주소이고, 일반 지갑이 아님)
holderstop10Pct, top20Pctnumber풀과 곡선을 뺀, 가장 큰 10 / 20개 계정이 가진 공급량 %
holderstop10PctAllnumber가장 큰 10개가 가진 %, 전부 포함
holderspoolPct, curvePctnumber풀 / 곡선이 가진 %
holderstriesnumber읽기 시도 횟수 (0 = 첫 시도 전에 포기)
holderserrstring스냅샷 실패 (429 = 퍼블릭 RPC가 읽기를 거절, late = 목표 시점에 충분히 가까운 시간에 응답을 받지 못함). 그러면 홀더 관련 필드가 없음