用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/shreed27/DAIN --skill whale-tracking命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | whale-tracking |
| description | Monitor whale trades on Polymarket and crypto chains (Solana, ETH, Polygon, ARB, Base, OP) |
| emoji | 🐋 |
| gates | {"envs":{"anyOf":["POLY_API_KEY","BIRDEYE_API_KEY","ALCHEMY_API_KEY"]}} |
Monitor large trades and positions on Polymarket and crypto chains to identify market-moving activity.
| Chain | Provider | Features |
|---|---|---|
| Solana | Birdeye WebSocket | Token transfers, swaps, NFTs |
| Ethereum | Alchemy WebSocket | ERC-20, ETH transfers |
| Polygon | Alchemy WebSocket | MATIC, tokens |
| Arbitrum | Alchemy WebSocket | L2 activity |
| Base | Alchemy WebSocket | Coinbase L2 |
| Optimism | Alchemy WebSocket | OP ecosystem |
/whale start # Start whale monitoring
/whale stop # Stop monitoring
/whale track <address> # Follow specific wallet
/whale untrack <address> # Stop following wallet
/whale top 10 # Top 10 traders by volume
/whale top 10 --period 7d # Top 10 in last 7 days
/whale activity <market> # Whale activity for market
/whale activity "trump" # Search by keyword
/whale recent 20 # Last 20 whale trades
/whale recent 20 --min-size 10000 # Min $10k trades
/crypto-whale start # Start crypto whale tracking
/crypto-whale stop # Stop tracking
/crypto-whale watch solana <address> # Watch Solana wallet
/crypto-whale watch eth <address> # Watch Ethereum wallet
/crypto-whale unwatch <address> # Stop watching
/crypto-whale top solana 10 # Top 10 Solana whales
/crypto-whale top eth 10 # Top 10 ETH whales
/crypto-whale recent solana 20 # Recent Solana whale txs
/crypto-whale recent eth 20 # Recent ETH whale txs
/crypto-whale thresholds # View current thresholds
/crypto-whale threshold solana 50000 # Set Solana threshold to $50k
import { createWhaleTracker, isWhaleAddress, getMarketWhaleActivity } from 'clodds/feeds/polymarket/whale-tracker';
// Create tracker
const tracker = createWhaleTracker({
minTradeSize: 10000, // $10k+ trades
minPositionSize: 50000, // $50k+ positions
enableRealtime: true, // WebSocket streaming
});
// Event handlers
tracker.on('trade', (trade) => {
console.log(`🐋 Whale ${trade.side} $${trade.usdValue.toLocaleString()}`);
console.log(` Market: ${trade.marketQuestion}`);
console.log(` Address: ${trade.address}`);
console.log(` Price: ${trade.price}`);
});
tracker.on('positionOpened', (position) => {
console.log(`📈 New whale position`);
console.log(` Address: ${position.address}`);
console.();
.();
});
tracker.(, {
.();
.();
});
tracker.();
tracker.();
tracker.();
tracked = tracker.();
tracker.();
// Check if address is a whale
const isWhale = await isWhaleAddress('0x1234...', 100000); // $100k min volume
// Get whale activity for a market
const activity = await getMarketWhaleActivity('market-slug');
console.log(`Total whale volume: $${activity.totalVolume.toLocaleString()}`);
console.log(`Whale trades: ${activity.tradeCount}`);
console.log(`Net whale sentiment: ${activity.sentiment}`); // 'bullish' | 'bearish' | 'neutral'
console.log(`Top whales:`);
for (const whale of activity.topWhales) {
console.log(` ${whale.address}: $${whale.volume.toLocaleString()}`);
}
// Get top traders
const topTraders = await tracker.getTopTraders({
period: '7d', // 24h, 7d, 30d, all
limit: 10,
minVolume: 50000,
minWinRate: 0.5,
});
for (const trader of topTraders) {
console.log(`${trader.rank}. ${trader.address}`);
console.log(` Volume: $${trader.volume.toLocaleString()}`);
console.log(` Win rate: ${(trader.winRate * 100).toFixed(1)}%`);
console.log(` P&L: $${trader.pnl.toLocaleString()}`);
}
import { createCryptoWhaleTracker } from 'clodds/feeds/crypto/whale-tracker';
// Create multi-chain tracker
const cryptoTracker = createCryptoWhaleTracker({
chains: ['solana', 'ethereum', 'polygon', 'arbitrum', 'base', 'optimism'],
thresholds: {
solana: 10000, // $10k+ on Solana
ethereum: 50000, // $50k+ on ETH
polygon: 5000, // $5k+ on Polygon
arbitrum: 10000, // $10k+ on Arbitrum
base: 10000, // $10k+ on Base
optimism: 10000, // $10k+ on Optimism
},
// API keys
birdeyeApiKey: process.env.BIRDEYE_API_KEY,
alchemyApiKey: process.env.ALCHEMY_API_KEY,
});
// Event handlers
cryptoTracker.on('transaction', (tx) => {
console.log(`🐋 ${tx.chain.toUpperCase()}`);
console.log();
.();
.();
.();
.();
.();
});
cryptoTracker.(, {
.();
});
cryptoTracker.();
cryptoTracker.(, );
cryptoTracker.(, );
cryptoTracker.(, );
recent = cryptoTracker.(, {
: ,
: ,
});
topSolana = cryptoTracker.(, );
topEth = cryptoTracker.(, );
cryptoTracker.();
// Configure alerts
tracker.setAlertConfig({
minTradeSize: 25000, // Alert on $25k+ trades
alertChannels: ['telegram', 'discord'],
soundEnabled: true,
markets: ['politics', 'crypto'], // Filter by category
});
// Configure per-chain alerts
cryptoTracker.setAlertConfig({
solana: {
minValue: 50000,
tokens: ['SOL', 'JUP', 'BONK'],
},
ethereum: {
minValue: 100000,
tokens: ['ETH', 'USDC', 'PEPE'],
},
});
// Export whale data to CSV
await tracker.exportTrades({
format: 'csv',
path: './whale-trades.csv',
period: '30d',
});
// Export top traders
await tracker.exportTopTraders({
format: 'json',
path: './top-traders.json',
limit: 100,
});