OpenTrade DEX Market Data CLI
14 commands for on-chain prices, trades, candlesticks, index prices, smart money signals, and meme pump token scanning.
Pre-flight Checks
Every time before running any opentrade command, always follow these steps in order. Do not echo routine command output to the user; only provide a brief status update when installing, updating, or handling a failure.
Confirm installed: Run which opentrade . If not found, install it:
curl -sSL https://raw.githubusercontent.com/6551Team/openskills/main/skills/opentrade/install.sh | sh
If the install script fails, ask the user to install manually following the instructions at: https://github.com/6551Team/openskills
Check for updates: Read ~/.opentrade/last_check and compare it with the current timestamp:
cached_ts=$(cat ~/.opentrade/last_check 2>/dev/null || true) now=$(date +%s)
-
If cached_ts is non-empty and (now - cached_ts) < 43200 (12 hours), skip the update and proceed.
-
Otherwise (file missing or older than 12 hours), run the installer to check for updates: curl -sSL https://raw.githubusercontent.com/6551Team/openskills/main/skills/opentrade/install.sh | sh
If a newer version is installed, tell the user and suggest updating their opentrade skills from https://github.com/6551Team/openskills to get the latest features.
If any opentrade command fails with an unexpected error during this session, try reinstalling before giving up:
curl -sSL https://raw.githubusercontent.com/6551Team/openskills/main/skills/opentrade/install.sh | sh
Find or create a .env file in the project root to override the default API credentials, Load it before performing opentrade operations.
OPEN_TOKEN=your_token_here
Get your API token at: https://6551.io/mcp
Security warning: Never commit .env to git (add it to .gitignore) and never expose credentials in logs, screenshots, or chat messages.
Router Discovery
IMPORTANT: If the user has not specified a trading router, you MUST first discover available routers:
opentrade trade routers
Response format:
{ "data": [ { "name": "okx test", "router": "okx", "version": "v1", "quota_reward": 0, "is_active": true, "created_at": "2026-03-03 21:24:34", "updated_at": "2026-03-03 21:24:34" } ], "success": true }
Usage:
-
Extract router and version from the response
-
MANDATORY: ALL subsequent opentrade commands in this session MUST include --trader <router> and --api <version> flags
-
Example: opentrade market price 0x... --chain ethereum --trader okx --api v1
-
Default fallback: If the API returns no data or is empty, use --trader okx --api v1
Skill Routing
-
For token search / metadata / rankings / holder analysis → use opentrade-token
-
For swap execution → use opentrade-dex-swap
-
For transaction broadcasting → use opentrade-transaction
-
For wallet balances / portfolio → use opentrade-portfolio
-
Signal data (smart money / whale / KOL buy signals, signal-supported chains) → use opentrade-market
-
Meme pump scanning (token lists, dev info, bundle detection, aped wallets) → use opentrade-market
-
Meme token safety (rug pull check, dev reputation, bundler/sniper analysis, similar tokens by same dev) → use opentrade-market
Quickstart
Get real-time price of OKB on XLayer
opentrade market price 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee --chain xlayer
Get hourly candles
opentrade market kline 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee --chain xlayer --bar 1H --limit 24
Solana SOL candles (use wSOL SPL token address for candles/trades)
opentrade market kline So11111111111111111111111111111111111111112 --chain solana --bar 1H --limit 24
Get batch prices for multiple tokens
opentrade market prices "1:0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee,501:So11111111111111111111111111111111111111112"
Get smart money signals on Solana
opentrade market signal-list solana --wallet-type "1,2,3" --min-amount-usd 1000
Get supported chains and protocols for meme pump
opentrade market memepump-chains
List new meme pump tokens on Solana
opentrade market memepump-tokens solana --stage NEW
Get meme pump token details
opentrade market memepump-token-details <address> --chain solana
Check developer reputation for a meme token
opentrade market memepump-token-dev-info <address> --chain solana
Chain Name Support
The CLI accepts human-readable chain names (e.g., ethereum , solana , xlayer ) and resolves them automatically. You can also use --chain with numeric chain indices (e.g., 1 , 501 , 196 ).
Chain Name chainIndex
XLayer xlayer
196
Solana solana
501
Ethereum ethereum
1
Base base
8453
BSC bsc
56
Arbitrum arbitrum
42161
Command Index
Market Price Commands
Command Description
1 opentrade market price <address>
Get single token price
2 opentrade market prices <tokens>
Batch price query
3 opentrade market trades <address>
Get recent trades
4 opentrade market kline <address>
Get K-line / candlestick data
Index Price Commands
Command Description
5 opentrade market index <address>
Get index price (aggregated from multiple sources)
Signal Commands
Command Description
6 opentrade market signal-chains
Get supported chains for market signals
7 opentrade market signal-list <chain>
Get latest signal list (smart money / KOL / whale activity)
Meme Pump Commands
Command Description
8 opentrade market memepump-chains
Get supported chains and protocols for meme pump
9 opentrade market memepump-tokens <chain>
List meme pump tokens with advanced filtering
10 opentrade market memepump-token-details <address>
Get detailed info for a single meme pump token
11 opentrade market memepump-token-dev-info <address>
Get developer analysis and holding info
12 opentrade market memepump-similar-tokens <address>
Find similar tokens by same creator
13 opentrade market memepump-token-bundle-info <address>
Get bundle/sniper analysis
14 opentrade market memepump-aped-wallet <address>
Get aped (same-car) wallet list
Boundary: market vs token skill
Need Use this skill (opentrade-market ) Use opentrade-token instead
Real-time price (single value) opentrade market price
Price + market cap + liquidity + 24h change
opentrade token price-info
K-line / candlestick chart opentrade market kline
Trade history (buy/sell log) opentrade market trades
Index price (multi-source aggregate) opentrade market index
Token search by name/symbol
opentrade token search
Token metadata (decimals, logo)
opentrade token info
Token ranking (toplist)
opentrade token toplist
Holder distribution
opentrade token holders
Smart money / whale / KOL signals opentrade market signal-list
Signal-supported chains opentrade market signal-chains
Browse meme pump tokens by stage opentrade market memepump-tokens
Meme token audit (top10, dev, insiders) opentrade market memepump-token-details
Developer reputation / rug pull history opentrade market memepump-token-dev-info
Similar tokens by same creator opentrade market memepump-similar-tokens
Bundle/sniper detection opentrade market memepump-token-bundle-info
Aped (same-car) wallet analysis opentrade market memepump-aped-wallet
Rule of thumb: opentrade-market = raw price feeds, charts, smart money signals & meme pump scanning (including dev reputation, rug pull checks, bundler analysis). opentrade-token = token discovery & enriched analytics (search, toplist, holders, market cap).
Cross-Skill Workflows
Workflow A: Research Token Before Buying
User: "Tell me about BONK, show me the chart, then buy if it looks good"
- opentrade-token opentrade token search BONK --chains solana → get tokenContractAddress + chain
- opentrade-token opentrade token price-info <address> --chain solana → market cap, liquidity, 24h volume
- opentrade-token opentrade token holders <address> --chain solana → check holder distribution
- opentrade-market opentrade market kline <address> --chain solana → K-line chart for visual trend ↓ user decides to buy
- opentrade-dex-swap opentrade swap quote --from ... --to ... --amount ... --chain solana
- opentrade-dex-swap opentrade swap swap --from ... --to ... --amount ... --chain solana --wallet <addr>
Data handoff: tokenContractAddress from step 1 is reused as <address> in steps 2-6.
Workflow B: Price Monitoring / Alerts
- opentrade-token opentrade token toplist --chains solana --sort-by 5 → find trending tokens by volume ↓ select tokens of interest
- opentrade-market opentrade market price <address> --chain solana → get current price for each
- opentrade-market opentrade market kline <address> --chain solana --bar 1H → hourly chart
- opentrade-market opentrade market index <address> --chain solana → compare on-chain vs index price
Workflow C: Signal-Driven Token Research & Buy
User: "Show me what smart money is buying on Solana and buy if it looks good"
- opentrade-market opentrade market signal-chains → confirm Solana supports signals
- opentrade-market opentrade market signal-list solana --wallet-type "1,2,3" → get latest smart money / whale / KOL buy signals → extracts token address, price, walletType, triggerWalletCount ↓ user picks a token from signal list
- opentrade-token opentrade token price-info <address> --chain solana → enrich: market cap, liquidity, 24h volume
- opentrade-token opentrade token holders <address> --chain solana → check holder concentration risk
- opentrade-market opentrade market kline <address> --chain solana → K-line chart to confirm momentum ↓ user decides to buy
- opentrade-dex-swap opentrade swap quote --from ... --to <address> --amount ... --chain solana
- opentrade-dex-swap opentrade swap swap --from ... --to <address> --amount ... --chain solana --wallet <addr>
Data handoff: token.tokenAddress from step 2 feeds directly into steps 3–7.
Workflow D: Meme Token Discovery & Analysis
User: "Show me new meme tokens on Solana and check if any look safe"
- opentrade-market opentrade market memepump-chains → discover supported chains & protocols
- opentrade-market opentrade market memepump-tokens solana --stage NEW → browse new tokens ↓ pick an interesting token
- opentrade-market opentrade market memepump-token-details <address> --chain solana → full token detail + audit tags
- opentrade-market opentrade market memepump-token-dev-info <address> --chain solana → check dev reputation (rug pulls, migrations)
- opentrade-market opentrade market memepump-token-bundle-info <address> --chain solana → check for bundlers/snipers
- opentrade-market opentrade market kline <address> --chain solana → view price chart ↓ user decides to buy
- opentrade-dex-swap opentrade swap quote --from ... --to <address> --amount ... --chain solana
- opentrade-dex-swap opentrade swap swap --from ... --to <address> --amount ... --chain solana --wallet <addr>
Data handoff: tokenAddress from step 2 is reused as <address> in steps 3–8.
Workflow E: Meme Token Due Diligence
User: "Check if this meme token is safe before I buy"
- opentrade-market opentrade market memepump-token-details <address> --chain solana → basic info + audit tags
- opentrade-market opentrade market memepump-token-dev-info <address> --chain solana → dev history + holding
- opentrade-market opentrade market memepump-similar-tokens <address> --chain solana → other tokens by same dev
- opentrade-market opentrade market memepump-token-bundle-info <address> --chain solana → bundler analysis
- opentrade-market opentrade market memepump-aped-wallet <address> --chain solana → who else is holding
User: "Filter signals to only show whale buys above $10k"
- opentrade-market opentrade market signal-list ethereum --wallet-type 3 --min-amount-usd 10000 → whale-only signals on Ethereum, min $10k
- opentrade-market opentrade market kline <address> --chain ethereum → chart for chosen token
Operation Flow
Step 1: Identify Intent
-
Real-time price (single token) → opentrade market price
-
Trade history → opentrade market trades
-
K-line chart → opentrade market kline
-
Index price (current) → opentrade market index
-
Smart money / whale / KOL buy signals → opentrade market signal-list
-
Chains supporting signals → opentrade market signal-chains
-
Discover meme pump supported chains/protocols → opentrade market memepump-chains
-
Browse/filter meme tokens by stage → opentrade market memepump-tokens
-
Deep-dive into a specific meme token → opentrade market memepump-token-details
-
Check meme token developer reputation → opentrade market memepump-token-dev-info
-
Find similar tokens by same creator → opentrade market memepump-similar-tokens
-
Analyze bundler/sniper activity → opentrade market memepump-token-bundle-info
-
View aped (same-car) wallet holdings → opentrade market memepump-aped-wallet
Step 2: Collect Parameters
-
Missing chain → recommend XLayer (--chain xlayer , low gas, fast confirmation) as the default, then ask which chain the user prefers; for signal queries, first call opentrade market signal-chains to confirm the chain is supported; for meme pump queries, default to Solana (--chain solana )
-
Missing token address → use opentrade-token opentrade token search first to resolve; for signal queries, --token-address is optional (omit to get all signals on the chain); for meme pump, use opentrade market memepump-tokens first to discover tokens
-
Missing --stage for memepump-tokens → ask user which stage (NEW / MIGRATING / MIGRATED)
-
K-line requests → confirm bar size and time range with user
-
Signal filter params (--wallet-type , --min-amount-usd , etc.) → ask user for preferences if not specified; default to no filter (returns all signal types)
Step 3: Call and Display
-
Call directly, return formatted results
-
Use appropriate precision: 2 decimals for high-value tokens, significant digits for low-value
-
Show USD value alongside
Step 4: Suggest Next Steps
After displaying results, suggest 2-3 relevant follow-up actions based on the command just executed:
Just called Suggest
market price
- View K-line chart → opentrade market kline (this skill) 2. Deeper analytics (market cap, liquidity, 24h volume) → opentrade-token
- Buy/swap this token → opentrade-dex-swap
market kline
- Check recent trades → opentrade market trades (this skill) 2. Buy/swap based on the chart → opentrade-dex-swap
market trades
- View price chart for context → opentrade market kline (this skill) 2. Execute a trade → opentrade-dex-swap
market index
- Compare with on-chain DEX price → opentrade market price (this skill) 2. View full price chart → opentrade market kline (this skill)
market signal-list
- View price chart for a signal token → opentrade market kline (this skill) 2. Deep token analytics (market cap, liquidity) → opentrade-token
- Buy the token → opentrade-dex-swap
market signal-chains
- Fetch signals on a supported chain → opentrade market signal-list (this skill)
market memepump-chains
- Browse tokens → opentrade market memepump-tokens (this skill)
market memepump-tokens
- Pick a token for details → opentrade market memepump-token-details (this skill) 2. Check dev → opentrade market memepump-token-dev-info (this skill)
market memepump-token-details
- Dev analysis → opentrade market memepump-token-dev-info (this skill) 2. Similar tokens → opentrade market memepump-similar-tokens (this skill) 3. Bundle check → opentrade market memepump-token-bundle-info (this skill)
market memepump-token-dev-info
- Check bundle activity → opentrade market memepump-token-bundle-info (this skill) 2. View price chart → opentrade market kline (this skill)
market memepump-similar-tokens
- Compare with details → opentrade market memepump-token-details (this skill)
market memepump-token-bundle-info
- Check aped wallets → opentrade market memepump-aped-wallet (this skill)
market memepump-aped-wallet
- View price chart → opentrade market kline (this skill) 2. Buy the token → opentrade-dex-swap
Present conversationally, e.g.: "Would you like to see the K-line chart, or buy this token?" — never expose skill names or endpoint paths to the user.
CLI Command Reference
- opentrade market price
Get single token price.
opentrade market price <address> [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address (positional)
--chain
No ethereum
Chain name (e.g., ethereum , solana , xlayer )
Return fields:
Field Type Description
chainIndex
String Chain identifier
tokenContractAddress
String Token contract address
time
String Timestamp (Unix milliseconds)
price
String Current price in USD
- opentrade market prices
Batch price query for multiple tokens.
opentrade market prices <tokens> [--chain <chain>]
Param Required Default Description
<tokens>
Yes
Comma-separated tokens. Format: chainIndex:address pairs (e.g., "1:0xeee...,501:So111..." ) or plain addresses with --chain
--chain
No ethereum
Default chain for tokens without explicit chainIndex prefix
Return fields (per token):
Field Type Description
chainIndex
String Chain identifier
tokenContractAddress
String Token contract address
time
String Timestamp (Unix milliseconds)
price
String Current price in USD
- opentrade market kline
Get K-line / candlestick data.
opentrade market kline <address> [--bar <bar>] [--limit <n>] [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address
--bar
No 1H
Bar size: 1s , 1m , 5m , 15m , 30m , 1H , 4H , 1D , 1W , etc.
--limit
No 100
Number of data points (max 299)
--chain
No ethereum
Chain name
Return fields: Each data point is an array with the following elements:
Index Field Type Description
0 ts
String Timestamp (Unix milliseconds)
1 open
String Opening price
2 high
String Highest price
3 low
String Lowest price
4 close
String Closing price
5 vol
String Trading volume (token units)
6 volUsd
String Trading volume (USD)
7 confirm
String "0" = uncompleted candle, "1" = completed candle
- opentrade market trades
Get recent trades.
opentrade market trades <address> [--chain <chain>] [--limit <n>]
Param Required Default Description
<address>
Yes
Token contract address
--chain
No ethereum
Chain name
--limit
No 100
Number of trades (max 500)
Return fields:
Field Type Description
id
String Trade ID
type
String Trade direction: buy or sell
price
String Trade price in USD
volume
String Trade volume in USD
time
String Trade timestamp (Unix milliseconds)
dexName
String DEX name where trade occurred
txHashUrl
String Transaction hash explorer URL
userAddress
String Wallet address of the trader
changedTokenInfo[]
Array Token change details for the trade
changedTokenInfo[].tokenSymbol
String Token symbol
changedTokenInfo[].tokenContractAddress
String Token contract address
changedTokenInfo[].tokenAmount
String Token amount changed
- opentrade market index
Get index price (aggregated from multiple sources).
opentrade market index <address> [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address (empty string "" for native token)
--chain
No ethereum
Chain name
Return fields:
Field Type Description
chainIndex
String Chain identifier
tokenContractAddress
String Token contract address
price
String Index price (aggregated from multiple sources)
time
String Timestamp (Unix milliseconds)
- opentrade market signal-chains
Get supported chains for market signals. No parameters required.
opentrade market signal-chains
Return fields:
Field Type Description
chainIndex
String Chain identifier (e.g., "1" , "501" )
chainName
String Human-readable chain name (e.g., "Ethereum" , "Solana" )
chainLogo
String Chain logo image URL
Call this first when a user wants signal data and you need to confirm chain support before calling opentrade market signal-list .
- opentrade market signal-list
Get latest buy-direction token signals sorted descending by time.
opentrade market signal-list <chain> [options]
Param Required Default Description
<chain>
Yes
Chain name (e.g., ethereum , solana , base ) (positional)
--wallet-type
No all types Wallet classification, comma-separated: 1 =Smart Money, 2 =KOL/Influencer, 3 =Whale (e.g., "1,2" )
--min-amount-usd
No
Minimum transaction amount in USD
--max-amount-usd
No
Maximum transaction amount in USD
--min-address-count
No
Minimum triggering wallet address count
--max-address-count
No
Maximum triggering wallet address count
--token-address
No
Token contract address (filter signals for a specific token)
--min-market-cap-usd
No
Minimum token market cap in USD
--max-market-cap-usd
No
Maximum token market cap in USD
--min-liquidity-usd
No
Minimum token liquidity in USD
--max-liquidity-usd
No
Maximum token liquidity in USD
Return fields:
Field Type Description
timestamp
String Signal timestamp (Unix milliseconds)
chainIndex
String Chain identifier
price
String Token price at signal time (USD)
walletType
String Wallet classification: SMART_MONEY , WHALE , or INFLUENCER
triggerWalletCount
String Number of wallets that triggered this signal
triggerWalletAddress
String Comma-separated wallet addresses that triggered the signal
amountUsd
String Total transaction amount in USD
soldRatioPercent
String Percentage of tokens sold (lower = still holding)
token.tokenAddress
String Token contract address
token.symbol
String Token symbol
token.name
String Token name
token.logo
String Token logo URL
token.marketCapUsd
String Token market cap in USD
token.holders
String Number of token holders
token.top10HolderPercent
String Percentage of supply held by top 10 holders
- opentrade market memepump-chains
Get supported chains and protocols for meme pump. No parameters required.
opentrade market memepump-chains
Return fields:
Field Type Description
data[].chainIndex
String Chain identifier (e.g., "501" for Solana, "56" for BSC)
data[].chainName
String Human-readable chain name
data[].protocolList[].protocolId
String Protocol unique ID
data[].protocolList[].protocolName
String Protocol display name (e.g., pumpfun , fourmeme )
Currently supports: Solana (501), BSC (56), X Layer (196), TRON (195).
- opentrade market memepump-tokens
List meme pump tokens with advanced filtering. Returns up to 30 tokens per request.
opentrade market memepump-tokens <chain> --stage <stage> [options]
Param Required Default Description
<chain>
Yes
Chain name (e.g., solana , bsc ) (positional)
--stage
Yes
Token stage: NEW , MIGRATING , or MIGRATED
--protocol-id
No
Filter by protocol ID (get IDs from memepump-chains )
--sort-by
No
Sort field: marketCap , volume1h , txCount1h , createdTimestamp , bondingPercent
--sort-order
No
Sort direction: asc or desc
--min-age
No
Minimum token age in minutes
--max-age
No
Maximum token age in minutes
--min-market-cap
No
Minimum market cap in USD
--max-market-cap
No
Maximum market cap in USD
--min-volume
No
Minimum 1h volume in USD
--max-volume
No
Maximum 1h volume in USD
--min-tx-count
No
Minimum 1h transaction count
--max-tx-count
No
Maximum 1h transaction count
Return fields: Array of token objects (same structure as memepump-token-details response).
- opentrade market memepump-token-details
Get detailed information for a specific meme pump token.
opentrade market memepump-token-details <address> [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address (positional)
--chain
No solana
Chain name
Return fields:
Field Type Description
chainIndex
String Chain identifier
protocolId
String Protocol numeric ID (e.g., "120596" for pumpfun)
quoteTokenAddress
String Quote token contract address
tokenAddress
String Token contract address
symbol
String Token symbol
name
String Token name
logoUrl
String Token logo URL
creatorAddress
String Token creator wallet address
createdTimestamp
String Creation timestamp (Unix ms)
migratedBeginTimestamp
String Migration start timestamp (Unix ms, empty if not migrating)
migratedEndTimestamp
String Migration end timestamp (Unix ms, empty if not migrated)
market.marketCapUsd
String Market cap in USD
market.volumeUsd1h
String 1-hour volume in USD
market.txCount1h
String 1-hour transaction count
market.buyTxCount1h
String 1-hour buy transaction count
market.sellTxCount1h
String 1-hour sell transaction count
bondingPercent
String Bonding curve progress (0-100)
tags.top10HoldingsPercent
String Top 10 holders percentage (0-100)
tags.devHoldingsPercent
String Dev holdings percentage (0-100)
tags.insidersPercent
String Insiders percentage (0-100)
tags.bundlersPercent
String Bundlers percentage (0-100)
tags.snipersPercent
String Snipers percentage (0-100)
tags.freshWalletsPercent
String Fresh wallets percentage (0-100)
tags.suspectedPhishingWalletPercent
String Phishing wallet percentage (0-100)
tags.totalHolders
String Total holder count
social.x
String X (Twitter) URL
social.telegram
String Telegram URL
social.website
String Website URL
social.dexScreenerPaid
Boolean Paid on DexScreener
social.communityTakeover
Boolean Community takeover flag
social.liveOnPumpFun
Boolean Currently live on Pump.fun
bagsFeeClaimed
Boolean Bags fee claimed
aped
String Same-car wallet count
- opentrade market memepump-token-dev-info
Get developer analysis including rug pull history, migration stats, and holding info.
opentrade market memepump-token-dev-info <address> [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address (positional)
--chain
No solana
Chain name
Return fields:
Field Type Description
devLaunchedInfo.totalTokens
String Total tokens created by this dev
devLaunchedInfo.rugPullCount
String Number of rug pulls
devLaunchedInfo.migratedCount
String Number of successfully migrated tokens
devLaunchedInfo.goldenGemCount
String Number of golden gem tokens
devHoldingInfo.devHoldingPercent
String Dev holding percentage (0-100)
devHoldingInfo.devAddress
String Developer wallet address
devHoldingInfo.fundingAddress
String Funding source address
devHoldingInfo.devBalance
String Dev's current balance
devHoldingInfo.lastFundedTimestamp
String Last funded timestamp (Unix ms)
Note: devHoldingInfo may be null if the creator address is unavailable.
- opentrade market memepump-similar-tokens
Find similar tokens created by the same developer. Returns at most 2 results.
opentrade market memepump-similar-tokens <address> [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address (positional)
--chain
No solana
Chain name
Return fields:
Field Type Description
data[].tokenAddress
String Similar token contract address
data[].tokenSymbol
String Token symbol
data[].tokenLogo
String Token logo URL
data[].marketCapUsd
String Market cap in USD
data[].lastTxTimestamp
String Last transaction timestamp (Unix ms)
data[].createdTimestamp
String Creation timestamp (Unix ms)
- opentrade market memepump-token-bundle-info
Get bundle/sniper analysis for a token.
opentrade market memepump-token-bundle-info <address> [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address (positional)
--chain
No solana
Chain name
Return fields:
Field Type Description
bundlerAthPercent
String Bundler all-time-high percentage (0-100)
totalBundlers
String Total number of bundlers
bundledValueNative
String Total bundled value in native token
bundledTokenAmount
String Total bundled token amount
- opentrade market memepump-aped-wallet
Get the aped (same-car) wallet list for a token.
opentrade market memepump-aped-wallet <address> [--chain <chain>]
Param Required Default Description
<address>
Yes
Token contract address (positional)
--chain
No solana
Chain name
Return fields:
Field Type Description
data[].walletAddress
String Wallet address
data[].walletType
String Wallet type label (e.g., Smart Money, KOL, Whale)
data[].holdingUsd
String Holding value in USD
data[].holdingPercent
String Holding percentage (0-100)
data[].totalPnl
String Total PnL in USD
data[].pnlPercent
String PnL percentage
Input / Output Examples
User says: "Check the current price of OKB on XLayer"
opentrade market price 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee --chain xlayer
→ Display: OKB current price $XX.XX
User says: "Show me hourly candles for USDC on XLayer"
opentrade market kline 0x74b7f16337b8972027f6196a17a631ac6de26d22 --chain xlayer --bar 1H
→ Display candlestick data (open/high/low/close/volume)
User says: "What are smart money wallets buying on Solana?"
opentrade market signal-list solana --wallet-type 1
→ Display smart money buy signals with token info
User says: "Show me whale buys above $10k on Ethereum"
opentrade market signal-list ethereum --wallet-type 3 --min-amount-usd 10000
→ Display whale-only signals, min $10k
User says: "Show me new meme tokens on Solana"
opentrade market memepump-tokens solana --stage NEW
→ Display list of new meme pump tokens with market data and audit tags
User says: "Is this meme token safe? Check the developer"
opentrade market memepump-token-dev-info <address> --chain solana
→ Display dev rug pull count, migration count, golden gems, dev holding info
User says: "Check if this token has bundler activity"
opentrade market memepump-token-bundle-info <address> --chain solana
→ Display bundler count, bundled value, bundled token amount
Region Restrictions (IP Blocking)
Some services are geo-restricted. When a command fails with error code 50125 or 80001 , return a friendly message without exposing the raw error code:
Service Restricted Regions Blocking Method
DEX United Kingdom API key auth
DeFi Hong Kong API key auth + backend
Wallet None None
Global Sanctioned countries Gateway (403)
Error handling: When the CLI returns error 50125 or 80001 , display:
{service_name} is not available in your region. Please switch to a supported region and try again.
Examples:
-
"DEX is not available in your region. Please switch to a supported region and try again."
-
"DeFi is not available in your region. Please switch to a supported region and try again."
Do not expose raw error codes or internal error messages to the user.
Edge Cases
-
Invalid token address: returns empty data or error — prompt user to verify, or use opentrade token search to resolve
-
Unsupported chain: the CLI will report an error — try a different chain name
-
No candle data: may be a new token or low liquidity — inform user
-
Unsupported chain for signals: not all chains support signals — always verify with opentrade market signal-chains first
-
Empty signal list: no signals on this chain for the given filters — suggest relaxing --wallet-type , --min-amount-usd , or --min-address-count , or try a different chain
-
Unsupported chain for meme pump: only Solana (501), BSC (56), X Layer (196), TRON (195) are supported — verify with opentrade market memepump-chains first
-
Invalid stage: must be exactly NEW , MIGRATING , or MIGRATED
-
Token not found in meme pump: memepump-token-details returns null data if the token doesn't exist in meme pump ranking data — it may be on a standard DEX
-
No dev holding info: memepump-token-dev-info returns devHoldingInfo as null if the creator address is unavailable
-
Empty similar tokens: memepump-similar-tokens may return empty array if no similar tokens are found
-
Empty aped wallets: memepump-aped-wallet returns empty array if no co-holders found
-
Network error: retry once, then prompt user to try again later
-
Region restriction (error code 50125 or 80001): do NOT show the raw error code to the user. Instead, display a friendly message: ⚠️ Service is not available in your region. Please switch to a supported region and try again.
Amount Display Rules
-
Always display in UI units (1.5 ETH ), never base units
-
Show USD value alongside (1.5 ETH ≈ $4,500 )
-
Prices are strings — handle precision carefully
Global Notes
-
EVM contract addresses must be all lowercase
-
The CLI resolves chain names automatically (e.g., ethereum → 1 , solana → 501 )
-
The CLI handles authentication internally via environment variables — see Prerequisites step 4 for default values