xxyy-trade

This skill should be used when the user asks to "buy token", "sell token", "swap token", "trade crypto", "check trade status", "query transaction", "scan tokens", "feed", "monitor chain", "query token", "token details", "check token safety", "list wallets", "show wallets", "my wallets", or mentions trading on Solana/ETH/BSC/Base chains via XXYY. Enables on-chain token trading and data queries through the XXYY Open API.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "xxyy-trade" with this command: npx skills add Jimmy-Holiday/xxyy-trade-skill

XXYY Trade

On-chain token trading and data queries on Solana, Ethereum, BSC, and Base via XXYY Open API.

Prerequisites

Set environment variables before use:

  • XXYY_API_KEY (required) -- Your XXYY Open API Key (format: xxyy_ak_xxxx). Get one at https://www.xxyy.io/apikey
  • XXYY_API_BASE_URL (optional) -- API base URL, defaults to https://www.xxyy.io

Authentication

All requests require header: Authorization: Bearer $XXYY_API_KEY

Security Notes

  • ⚠️ API Key = Wallet access -- Your XXYY API Key can execute real on-chain trades using your wallet balance. If it leaks, anyone can buy/sell tokens with your funds. Never share it, never commit it to version control, never expose it in logs or public channels. If you suspect a leak, regenerate the key immediately at https://xxyy.io.
  • Custodial trading model -- XXYY is a custodial trading platform. You only provide your wallet address (public key) and API Key. No private keys or wallet signing are needed -- XXYY executes trades on your behalf through their platform.
  • No read-only mode -- The same API Key is used for both data queries (Feed, Token Query) and trading (Buy, Sell). There is currently no separate read-only key.

API Reference

Buy Token

POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/swap

{
  "chain": "sol",
  "walletAddress": "<user_wallet>",
  "tokenAddress": "<token_contract>",
  "isBuy": true,
  "amount": 0.1,
  "tip": 0.001,
  "slippage": 20
}

Buy Parameters

ParamRequiredTypeValid valuesDescription
chainYESstringsol / eth / bsc / baseOnly these 4 values accepted
walletAddressYESstringSOL: Base58 32-44 chars; EVM: 0x+40hexWallet address on XXYY platform, must match chain
tokenAddressYESstringValid contract addressToken contract address to buy
isBuyYESbooleantrueMust be true for buy
amountYESnumber> 0Amount in native currency (SOL/ETH/BNB)
tipYESnumberSOL: 0.001-0.1 (unit: SOL); EVM: 0.1-100 (unit: Gwei)Priority fee for all chains. If not provided, falls back to priorityFee
slippageNOnumber0-100Slippage tolerance %, default 20
modelNOnumber1 or 21=anti-sandwich (default), 2=fast mode
priorityFeeNOnumber>= 0Solana chain only. Extra priority fee in addition to tip

Sell Token

POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/swap

{
  "chain": "sol",
  "walletAddress": "<user_wallet>",
  "tokenAddress": "<token_contract>",
  "isBuy": false,
  "amount": 50,
  "tip": 0.001
}

Sell Parameters

ParamRequiredTypeValid valuesDescription
chainYESstringsol / eth / bsc / baseOnly these 4 values accepted
walletAddressYESstringSOL: Base58 32-44 chars; EVM: 0x+40hexWallet address on XXYY platform, must match chain
tokenAddressYESstringValid contract addressToken contract address to sell
isBuyYESbooleanfalseMust be false for sell
amountYESnumber1-100Sell percentage. Example: 50 = sell 50% of holdings
tipYESnumberSOL: 0.001-0.1 (unit: SOL); EVM: 0.1-100 (unit: Gwei)Priority fee for all chains. If not provided, falls back to priorityFee
slippageNOnumber0-100Slippage tolerance %, default 20
modelNOnumber1 or 21=anti-sandwich (default), 2=fast mode
priorityFeeNOnumber>= 0Solana chain only. Extra priority fee in addition to tip

tip / priorityFee Rules

  • tip (required) -- Universal priority fee for ALL chains. EVM chains (eth/bsc/base) use tip as the priority fee. If tip is not provided, the API falls back to priorityFee.
    • SOL chain: unit is SOL (1 = 1 SOL, very expensive). Recommended range: 0.001 - 0.1
    • EVM chains (eth/bsc/base): unit is Gwei. Recommended range: 0.1 - 100
  • priorityFee (optional) -- Only effective on Solana chain. Solana supports both tip and priorityFee simultaneously.

Query Trade

GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/trade?txId=<tx_id>

Response fields: txId, status (pending/success/failed), statusDesc, chain, tokenAddress, walletAddress, isBuy, baseAmount, quoteAmount

Ping

GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/ping

Returns "pong" if API key is valid.

Feed (Scan Tokens)

POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/feed/{type}?chain={chain}

Retrieve Meme token lists: newly launched, almost graduated, or graduated.

Path & Query Parameters

ParamRequiredTypeValid valuesDescription
typeYESpath stringNEW / ALMOST / COMPLETEDNEW = newly launched, ALMOST = almost graduated, COMPLETED = graduated
chainNOquery stringsol / bscOnly these 2 chains supported. Default sol

Body (Filter Parameters)

All filters are optional. Range parameters use comma-separated string format "min,max". Leave one side empty to set only min or max (e.g. "100," = min 100, ",50" = max 50).

ParamTypeDescriptionExample
dexstring[]DEX platform filterSee DEX Values by Chain below
quoteTokensstring[]Quote token filterSee quoteTokens Values by Chain below
linkstring[]Social media link filter["x","tg","web"]
keywordsstring[]Token name/symbol keyword match["pepe","doge"]
ignoreWordsstring[]Ignore keywords["scam"]
mcstringMarket cap range (USD)"10000,500000"
liqstringLiquidity range (USD)"1000,"
volstringTrading volume range (USD)"5000,100000"
holderstringHolder count range"50,"
createTimestringCreation time range (minutes from now)"1,20"
tradeCountstringTrade count range"100,"
buyCountstringBuy count range"50,"
sellCountstringSell count range"10,"
devBuystringDev buy amount range (native token)"0.001,"
devSellstringDev sell amount range (native token)"0.001,"
devHpstringDev holding % range",60"
topHpstringTop10 holding % range",60"
insiderHpstringInsider holding % range",50"
bundleHpstringBundle holding % range",60"
newWalletHpstringNew wallet holding % range",30"
progressstringGraduation progress % range (NEW/ALMOST only)"1,90"
snipersstringSniper count range",5"
xnameCountstringTwitter rename count range",3"
tagHolderstringWatched wallet buy count range"1,2"
kolstringKOL buy count range"1,2"
dexPayintDexScreener paid, 1 = filter paid only1
oneLinkintAt least one social link, 1 = enabled1
liveintCurrently live streaming, 1 = filter live1

DEX Values by Chain

  • SOL: pump, pumpmayhem, bonk, heaven, believe, daosfun, launchlab, mdbc, jupstudio, mdbcbags, trends, moonshotn, boop, moon, time
  • BSC: four, four_agent, bnonly, flap

quoteTokens Values by Chain

  • SOL: sol, usdc, usd1
  • BSC: bnb, usdt, usdc, usd1, aster, u

Feed Response

{
  "code": 200,
  "msg": "success",
  "data": {
    "items": [
      {
        "tokenAddress": "...",
        "symbol": "TOKEN",
        "name": "Token Name",
        "createTime": 1773140232851,
        "dexName": "PUMPFUN",
        "launchPlatform": { "name": "PUMPFUN", "progress": "12.89", "completed": false },
        "holders": 3,
        "priceUSD": 0.000003046,
        "marketCapUSD": 3046.80,
        "devHoldPercent": 12.48,
        "hasLink": false,
        "snipers": 0,
        "quoteToken": "sol"
      }
    ]
  },
  "success": true
}

Key response fields: tokenAddress, symbol, name, createTime, dexName, launchPlatform (name/progress/completed), holders, priceUSD, marketCapUSD, devHoldPercent, hasLink, snipers, volume, tradeCount, buyCount, sellCount, topHolderPercent, insiderHp, bundleHp

Token Query

GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/query?ca={contract_address}&chain={chain}

Query token details: price, security checks, tax rates, holder distribution, etc.

Token Query Parameters

ParamRequiredTypeValid valuesDescription
caYESstringContract addressToken contract address
chainNOstringsol / eth / bsc / baseDefault sol. All 4 chains supported

Token Query Response

{
  "code": 200,
  "msg": "success",
  "data": {
    "chainId": "bsc",
    "tokenAddress": "0x...",
    "baseSymbol": "TOKEN",
    "tradeInfo": {
      "marketCapUsd": 15464629.87,
      "price": 0.01546,
      "holder": 7596,
      "hourTradeNum": 20611,
      "hourTradeVolume": 2564705.05
    },
    "pairInfo": {
      "pairAddress": "0x...",
      "pair": "TOKEN - WBNB",
      "liquidateUsd": 581750.57,
      "createTime": 1772182240000
    },
    "securityInfo": {
      "honeyPot": false,
      "openSource": true,
      "noOwner": true,
      "locked": true
    },
    "taxInfo": { "buy": "0", "sell": "0" },
    "linkInfo": { "tg": "", "x": "", "web": "" },
    "dev": { "address": "0x...", "pct": 0.0 },
    "topHolderPct": 25.14,
    "topHolderList": [
      { "address": "0x...", "balance": 98665702.34, "pct": 9.86 }
    ]
  },
  "success": true
}

Response groups:

  • tradeInfo: marketCapUsd, price, holder, hourTradeNum, hourTradeVolume
  • pairInfo: pairAddress, pair, liquidateUsd, createTime
  • securityInfo: honeyPot, openSource, noOwner, locked
  • taxInfo: buy, sell (percentage strings)
  • dev: address, pct
  • topHolderPct and topHolderList: top 10 holder distribution

List Wallets

GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/wallets

Query the current user's wallet list (with balances) for a specific chain.

Wallets Parameters

ParamRequiredTypeValid valuesDescription
chainNOstringsol / eth / bsc / baseDefault sol
pageNumNOint>= 1Page number, default 1
pageSizeNOint1-20Items per page, default 20
tokenAddressNOstringContract addressReturns token holdings per wallet

Wallets Response

{
  "code": 200,
  "msg": "success",
  "data": {
    "totalCount": 3,
    "pageSize": 20,
    "totalPage": 1,
    "currPage": 1,
    "list": [
      {
        "userId": 12345,
        "chain": 1,
        "name": "Wallet-1",
        "address": "5xYz...abc",
        "balance": 1.523456789,
        "topUp": 1,
        "tokenBalance": null,
        "createTime": "2025-01-01 00:00:00",
        "updateTime": "2025-06-01 12:00:00",
        "isImport": false
      }
    ]
  },
  "success": true
}

Response fields:

  • totalCount: Total wallet count
  • list[].chain: Chain code (1=SOL, 2=BSC, 3=ETH, 6=BASE)
  • list[].name: Wallet display name
  • list[].address: Wallet address
  • list[].balance: Native token balance
  • list[].topUp: 1=pinned, 0=normal
  • list[].tokenBalance: Token holdings (only present when tokenAddress is provided). Contains amount, decimals, uiAmount, uiAmountString
  • list[].isImport: Whether the wallet was imported

Chain Codes

CodeChain
1SOL
2BSC
3ETH
6BASE

Wallet Info

GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/wallet/info

Query a single wallet's details (native balance + optional token balance).

Wallet Info Parameters

ParamRequiredTypeValid valuesDescription
walletAddressYESstringWallet addressEVM chains are case-insensitive
chainNOstringsol / eth / bsc / baseDefault sol
tokenAddressNOstringContract addressReturns token holdings for this token

Wallet Info Response

{
  "code": 200,
  "msg": "success",
  "data": {
    "address": "5xY...abc",
    "name": "MyWallet",
    "chain": 1,
    "isImport": false,
    "topUp": 0,
    "balance": 1.234567,
    "tokenBalance": {
      "amount": "1000000",
      "uiAmount": 1.0,
      "decimals": 6
    }
  },
  "success": true
}

Response fields:

  • address: Wallet address
  • name: Wallet display name
  • chain: Chain code (1=SOL, 2=BSC, 3=ETH, 6=BASE)
  • balance: Native token balance
  • topUp: 1=pinned, 0=normal
  • isImport: Whether the wallet was imported
  • tokenBalance: Only present when tokenAddress is provided. Contains amount, uiAmount, decimals

Execution Rules

  1. Always confirm before trading -- Ask user to confirm: chain, token address, amount/percentage, buy or sell
  2. Auto-query wallet -- If the user does not provide a wallet address: a. If there is a remembered default wallet for that chain, use it directly and show its current balance via Wallet Info API before confirming. b. Otherwise, call List Wallets API. If only 1 wallet exists, auto-select it. If multiple, ask user to choose. If none, guide to create at https://www.xxyy.io/wallet/manager?chainId={chain}. c. Remember the selected wallet as default for that chain. d. If the user provides a wallet address, call Wallet Info API to verify it exists and show its balance before confirming the trade.
  3. Use Bash with curl to call the API
  4. Poll trade result -- After swap submission, query trade status up to 3 times with 5s intervals
  5. Show transaction link -- Always display the block explorer URL with the txId
  6. Never retry failed swap requests -- show the error to user instead
  7. Chain-wallet validation -- walletAddress must match the selected chain. A Solana wallet cannot be used for BSC/ETH/Base trades and vice versa. If the user provides a mismatched wallet/chain combination, warn them and ask to correct before proceeding.
  8. Strict parameter validation -- Before calling the API, validate EVERY field:
    • All required parameters must be present and have legal values
    • chain must be one of sol/eth/bsc/base
    • isBuy must be boolean true or false
    • amount for buy: must be > 0; for sell: must be 1-100
    • tip must be provided; SOL chain: 0.001-0.1 (unit: SOL); EVM chains: 0.1-100 (unit: Gwei). If tip is outside the recommended range, must warn the user about potentially high cost and require explicit confirmation before proceeding
    • model if provided must be 1 or 2
    • priorityFee if provided only applies to Solana chain
    • Do NOT send any field names outside the parameter tables above
    • If any validation fails, refuse to send the request and ask the user to correct

Feed Rules

  1. type validation -- Only accept NEW, ALMOST, COMPLETED (uppercase). Reject any other value.
  2. chain validation -- Feed only supports sol and bsc. If user specifies eth or base, reject and inform them that Feed scanning is only available on Solana and BSC chains.
  3. Single query mode (default) -- Call the Feed API once, format and display key info for each token: symbol, priceUSD, marketCapUSD, holders, devHoldPercent, launchPlatform (name + progress).
  4. Continuous monitor mode -- Activate only when user explicitly says "持续监控", "monitor", or "watch":
    • Use a Bash polling loop, calling Feed API every 5 seconds
    • Deduplicate by tokenAddress — only display newly appeared tokens
    • Loop limit: 480 seconds (8 minutes). Set Bash timeout to 540000ms
    • After loop ends, use AskUserQuestion to ask: continue monitoring / view token details / buy a token / stop
    • When continuing, preserve the seen tokenAddress set to avoid repeats
  5. Filter guidance -- Before querying, optionally ask user about filter preferences (market cap range, liquidity, holder count, etc.). If not asked, use no filters (return all).
  6. No auto-trading -- Feed scanning is for observation only. NEVER automatically buy or sell based on scan results.
  7. Error handling -- See Error Codes table. For data query APIs: code == 200 with success == true means success; code == 300 is server error (inform user to retry later); code == 8060/8061 means stop immediately; code == 8062 means wait 2 seconds and retry.

Token Query Rules

  1. ca required -- Contract address (ca) must be provided. If missing, ask user for it.
  2. chain validation -- Supports all 4 chains: sol, eth, bsc, base. Default sol.
  3. HoneyPot warning -- If securityInfo.honeyPot == true, display a prominent warning that this token is a honeypot and trading it is extremely risky.
  4. High tax alert -- If taxInfo.buy or taxInfo.sell > 5%, warn user about high tax rates.
  5. Display format -- Present results in groups: Trade Info → Security Check → Tax Rates → Holder Distribution → Social Links.
  6. Trade follow-up -- After displaying query results, optionally ask user if they want to buy this token, linking to the Buy Token flow.
  7. Error handling -- Same as Feed Rules (see Error Codes table).

Wallets Rules

  1. chain validation -- Supports all 4 chains. Default sol.
  2. Display format -- Show wallet name, address, native balance. Mark pinned wallets with ⭐.
  3. Token holdings -- If user asks about specific token holdings, pass tokenAddress to show per-wallet balance.
  4. No wallets -- If response returns empty list, guide user to create at: https://www.xxyy.io/wallet/manager?chainId={chain}
  5. Default wallet memory -- After user selects a wallet, remember it as the default for that chain in the current session. Use this default for subsequent trades on the same chain without asking again.
  6. Single wallet query -- When the user provides a specific wallet address and asks for its balance, use Wallet Info API instead of List Wallets. Also use Wallet Info to show balance before trade confirmation.
  7. Error handling -- Same as other data query APIs (see Error Codes table).

Wallet Address Formats

ChainFormatExample pattern
SOLBase58, 32-44 characters7xKX...
ETH / BSC / Base0x + 40 hex characters0x1a2B...

Block Explorer URLs

  • SOL: https://solscan.io/tx/{txId}
  • ETH: https://etherscan.io/tx/{txId}
  • BSC: https://bscscan.com/tx/{txId}
  • BASE: https://basescan.org/tx/{txId}

Error Codes

CodeMeaningScope
200SuccessData query APIs (Feed, Token Query)
300Server error — inform user to retry laterData query APIs (Feed, Token Query)
8060API Key invalidAll APIs
8061API Key disabledAll APIs
8062Rate limitedAll APIs — data query: retry after 2s; trade: retry after 1s (except swap, see Execution Rules #5)

Example curl

# Buy
curl -s -X POST "${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/swap" \
  -H "Authorization: Bearer $XXYY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"chain":"sol","walletAddress":"...","tokenAddress":"...","isBuy":true,"amount":0.1,"tip":0.001}'

# Query Trade
curl -s "${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/trade?txId=..." \
  -H "Authorization: Bearer $XXYY_API_KEY"

# Feed - Scan newly launched tokens on SOL (with filters)
curl -s -X POST "${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/feed/NEW?chain=sol" \
  -H "Authorization: Bearer $XXYY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"mc":"10000,500000","holder":"50,","insiderHp":",50"}'

# Token Query
curl -s "${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/query?ca=TOKEN_ADDRESS&chain=sol" \
  -H "Authorization: Bearer $XXYY_API_KEY"

# List Wallets
curl -s "${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/wallets?chain=sol" \
  -H "Authorization: Bearer $XXYY_API_KEY"

# Wallet Info
curl -s "${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/wallet/info?walletAddress=YOUR_WALLET&chain=sol" \
  -H "Authorization: Bearer $XXYY_API_KEY"

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Web3

Binance Coach

AI-powered crypto trading behavior coach for Binance users. Analyzes live portfolio health, detects emotional trading patterns (FOMO, panic selling, overtrad...

Registry SourceRecently Updated
Web3

zHive

Register as a trading agent on zHive, post predictions on recurring megathread rounds for top 100 crypto tokens, and compete for accuracy rewards. Rounds res...

Registry SourceRecently Updated
5320kerlos
Web3

Edge.Trade

Use when user asks about crypto tokens, trading, portfolios, or price alerts.

Registry SourceRecently Updated
Web3

Hive Marketplace

Connect your AI agent to the Hive platform to find, accept, and complete real-world work requests including development, analysis, and research projects.

Registry SourceRecently Updated