xcaDocs
Guías

Exportar smart money

Recorre página por página los holders de smart money de un token y guárdalos en un CSV.

Se considera smart money a las billeteras con un historial rentable en los últimos 30 días. Filtra los holders por la clase SMART_MONEY, recorre las páginas y escribe las filas en un archivo.

  • total cuenta solo los holders que tu plan puede ver.
  • pageSize 100 implica menos solicitudes.
  • Importa el CSV en un bot de copy trading o en una hoja de cálculo.

Código#

import csv
import os
import requests

BASE = "https://app.xca.fun/api/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['XCA_API_KEY']}"}
MINT = "DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263"

rows, page = [], 1
while True:
    res = requests.get(
        f"{BASE}/tokens/solana/{MINT}/holders",
        params={"class": "SMART_MONEY", "page": page, "pageSize": 100},
        headers=HEADERS,
        timeout=30,
    )
    res.raise_for_status()
    data = res.json()
    rows += data["rows"]
    if page * data["pageSize"] >= data["total"]:
        break
    page += 1

with open("smart-money.csv", "w", newline="") as fh:
    writer = csv.writer(fh)
    writer.writerow(["rank", "address", "sharePct", "pnl30dUsd", "winRate"])
    for r in rows:
        writer.writerow([r["rank"], r["address"], r["sharePct"], r["pnl30dUsd"], r["winRate"]])

print(f"saved {len(rows)} wallets")