xca문서
가이드

신규 페어 모니터링

신규 풀을 폴링해 홀더 구성이 건전한 풀만 골라내요.

간단한 스크리너예요. /new-pairs 엔드포인트를 1분에 한 번 폴링해서, 아직 점수가 없는 페어는 건너뛰고, 이미 본 페어는 기억해 두고, 유동성이 충분한 저위험 페어만 남겨요.

  • 점수가 없는 페어는 이후 폴링에서 점수와 함께 다시 나오므로, 본 것으로 표시하지 마세요.
  • 위험 등급, 유동성, 직접 정한 Holder Score 기준값 등 필터를 조정해 보세요.
  • 1분에 한 번 폴링하면 충분하며, 한 달에 약 43,000건의 요청을 쓰게 돼요.

코드#

const BASE = "https://app.xca.fun/api/v1";
const headers = { Authorization: `Bearer ${process.env.XCA_API_KEY}` };
const seen = new Set();

async function poll() {
  const res = await fetch(`${BASE}/new-pairs?limit=50`, { headers });
  if (!res.ok) return console.error(res.status, (await res.json()).error.message);

  const { items } = await res.json();
  for (const pair of items.reverse()) {
    // Unscored pairs come back with a score on a later poll.
    if (pair.holderScore === null || seen.has(pair.pairAddress)) continue;
    seen.add(pair.pairAddress);
    if (pair.riskLevel === "low" && (pair.liquidityUsd ?? 0) >= 25_000) {
      console.log(`${pair.symbol}: score ${pair.holderScore}, liquidity $${Math.round(pair.liquidityUsd)}`);
    }
  }
}

await poll();
setInterval(poll, 60_000);