wallet-profiling
Solanaウォレットの利用状況を分析し、行動パターンや取引スタイルを特定することで、パフォーマンス向上やリスク管理に役立つ情報を提供するSkill。
📜 元の英語説明(参考)
Behavioral classification, performance analysis, and trading style detection for Solana wallets
🇯🇵 日本人クリエイター向け解説
Solanaウォレットの利用状況を分析し、行動パターンや取引スタイルを特定することで、パフォーマンス向上やリスク管理に役立つ情報を提供するSkill。
※ jpskill.com 編集部が日本のビジネス現場向けに補足した解説です。Skill本体の挙動とは独立した参考情報です。
下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o wallet-profiling.zip https://jpskill.com/download/10453.zip && unzip -o wallet-profiling.zip && rm wallet-profiling.zip
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/10453.zip -OutFile "$d\wallet-profiling.zip"; Expand-Archive "$d\wallet-profiling.zip" -DestinationPath $d -Force; ri "$d\wallet-profiling.zip"
完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。
💾 手動でダウンロードしたい(コマンドが難しい人向け)
- 1. 下の青いボタンを押して
wallet-profiling.zipをダウンロード - 2. ZIPファイルをダブルクリックで解凍 →
wallet-profilingフォルダができる - 3. そのフォルダを
C:\Users\あなたの名前\.claude\skills\(Win)または~/.claude/skills/(Mac)へ移動 - 4. Claude Code を再起動
⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。
🎯 このSkillでできること
下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。
📦 インストール方法 (3ステップ)
- 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
- 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
- 3. 展開してできたフォルダを、ホームフォルダの
.claude/skills/に置く- · macOS / Linux:
~/.claude/skills/ - · Windows:
%USERPROFILE%\.claude\skills\
- · macOS / Linux:
Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。
詳しい使い方ガイドを見る →- 最終更新
- 2026-05-18
- 取得日時
- 2026-05-18
- 同梱ファイル
- 1
📖 Skill本文(日本語訳)
※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。
ウォレットプロファイリング
Solanaウォレットの行動分類、パフォーマンス分析、および取引スタイルの検出を行います。任意のウォレットをプロファイリングして、その取引方法、パフォーマンス、およびフォローする価値があるかどうかを理解します。
ウォレットプロファイリングが重要な理由
コピー取引の評価
別のウォレットの取引をミラーリングする前に、その過去のパフォーマンスが本物であり、一貫性があり、単なる幸運なヒットの結果ではないという証拠が必要です。プロファイリングは、勝率、利益率、保有時間、および一貫性を定量化し、どのウォレットに注意を払うべきかについて情報に基づいた決定を下せるようにします。
スマートマネーの特定
トークンを早期に購入し、利益を上げて退出するウォレットは、シグナルソースです。プロファイリングは、真に熟練したトレーダーを、幸運なギャンブラーやウォッシュトレーディングボットから分離します。主な差別化要因:2.0を超える持続的な利益率、100回以上の取引で45%を超える勝率、および多様なトークン選択。
取引相手の分析
大規模なウォレットがあなたが保有するポジションに入った場合、その過去の行動(スナイパー対ホルダー、ボット対人間)を理解することは、次に何が起こるかを予測するのに役立ちます。スナイパーウォレットの購入は、すぐにダンプが来ることを示唆しています。スイングトレーダーの購入は、数日間の確信を示唆しています。
リスク評価
トークンホルダーの分析は、トップホルダーがボット、スナイパー、または本物の投資家であるかどうかを知ることでメリットが得られます。ホルダーの60%がスナイパーとして分類されているトークンは、主にスイングトレーダーが保有するトークンとは非常に異なるリスク特性を持っています。
ウォレットの分類
取引スタイル別
分類は、すべての決済された取引における保有時間の中央値に基づいています。
| スタイル | 保有時間の中央値 | 特徴 |
|---|---|---|
| スナイパー | 5分未満 | 最初のブロックの購入者、MEV隣接、非常に迅速な退出 |
| スキャルパー | 5分〜1時間 | クイックモメンタム取引、高頻度 |
| デイトレーダー | 1〜24時間 | 日中のポジション、適度な頻度 |
| スイングトレーダー | 1〜7日 | 数日間の確信的な保有 |
| ポジションホルダー | 7日超 | 長期的な蓄積、低頻度 |
完全な分類アルゴリズムについては、references/classification_methods.mdを参照してください。
取引サイズ別
SOLでの取引サイズの中央値に基づいています。
| 階層 | 取引サイズの中央値 | 典型的な行動 |
|---|---|---|
| ホエール | 100 SOL超 | 市場を動かすエントリー、しばしばフロントランされる |
| ラージ | 10〜100 SOL | 重要だが支配的ではない |
| ミディアム | 1〜10 SOL | アクティブなリテールトレーダー |
| スモール | 1 SOL未満 | マイクロキャップギャンブラー、新しいウォレット |
行動タイプ別
| タイプ | 検出方法 |
|---|---|
| ボット | 取引間タイミングの分散が低い(CV < 0.3)、均一なサイジング |
| 人間 | 可変タイミング、可変サイジング、セッションベースのアクティビティ |
| MEV | サンドイッチパターン、一貫した小規模な利益、高頻度 |
注力分野別
| フォーカス | 検出基準 |
|---|---|
| PumpFunスペシャリスト | PumpFunでローンチされたトークンの取引の70%超 |
| DEXトレーダー | 主にRaydium/Orca/Meteoraでのスワップ |
| DeFiファーマー | 頻繁なLPの追加/削除、ステーキング操作 |
| NFTトレーダー | 重要なNFTマーケットプレイスとのインタラクション |
| マルチ戦略 | 単一のカテゴリが50%を超えない |
パフォーマンス指標
コア指標
勝率 — 利益が出ている取引の割合。
win_rate = count(pnl > 0) / count(all_closed_trades)
統計的有意性のためには、最低30回の取引が必要です。200回の取引で60%の勝率は、10回の取引で80%の勝率よりもはるかに意味があります。
1回あたりの取引の平均ROI — すべての決済されたポジションにおける平均リターン。
avg_roi = mean((exit_value - entry_value) / entry_value)
プラットフォーム手数料、優先手数料、および推定スリッページを含むすべての手数料を含めます。
利益率 — 総利益と総損失の比率。
profit_factor = sum(winning_pnl) / abs(sum(losing_pnl))
解釈:> 2.0 非常に優れている、1.5〜2.0 良好、1.0〜1.5 限界、< 1.0 損失。
合計PnL — SOLでの累積損益。
total_pnl = sum(all_trade_pnl)
最大ドローダウン — 累積PnL曲線における最大のピークからトラフへの減少。
drawdown = (peak_equity - trough_equity) / peak_equity
シャープレシオのような比率 — リスク調整後のリターン指標。
sharpe = mean(trade_returns) / std(trade_returns) * sqrt(trades_per_year)
詳細な数式、エッジケース、および解釈のガイドラインについては、references/performance_metrics.mdを参照してください。
アクティビティ指標
| 指標 | 計算 | 明らかにするもの |
|---|---|---|
| 1日あたりの取引数 | total_trades / active_days | アクティビティレベルとキャパシティ |
| 平均保有時間 | mean(exit_time - entry_time) | 取引スタイルの確認 |
| トークンの多様性 | unique_tokens / total_trades | 専門化と多様化 |
| ピーク時間 | mode(hour_of_trade) | セッションパターン、タイムゾーンのヒント |
| アクティビティストリーク | consecutive active days | 献身と一貫性 |
データソース
SolanaTracker PnL API(プライマリ)
SolanaTracker APIは、ウォレットごと、トークンごとに事前計算されたPnLデータを提供します。
import httpx
url = f"https://data.solanatracker.io/pnl/{wallet_address}"
headers = {"x-api-key": os.getenv("ST_API_KEY")}
resp = httpx.get(url, headers=headers)
pnl_data = resp.json()
レスポンスには、トークンごとのrealized、unrealized、total_invested、total_sold、num_buys、num_sells、last_trade_timeが含まれます。
Helius解析済みトランザクション(詳細)
詳細なトランザクションレベルの分析には、helius-apiスキルを使用して、解析されたトランザクション履歴を取得します。これにより、正確なタイムスタンプ、金額、およびプログラムのインタラクションが提供されます。
Birdeyeトレーダーデータ
Birdeyeのトレーダーエンドポイントは、ウォレットレベルの分析を提供します。エンドポイントの詳細については、birdeye-apiスキルを参照してください。
DexScreener(無料フォールバック)
DexScreenerはウォレットレベルのPnLを提供しませんが、取引タイムスタンプでのトークン価格を検証するために使用できます。
コピー取引評価フレームワーク
ウォレットの取引をフォローする前に、次の基準を確認してください。
最小要件
- 取引履歴: 少なくとも50回の決済された取引(100回以上が推奨)
-
(原文がここで切り詰められています)
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開
Wallet Profiling
Behavioral classification, performance analysis, and trading style detection for Solana wallets. Profile any wallet to understand how it trades, how well it performs, and whether it is worth following.
Why Wallet Profiling Matters
Copy-Trade Evaluation
Before mirroring another wallet's trades, you need evidence that its historical performance is genuine, consistent, and not the result of a single lucky hit. Profiling quantifies win rate, profit factor, hold time, and consistency so you can make informed decisions about which wallets merit attention.
Smart Money Identification
Wallets that consistently buy tokens early and exit profitably are signal sources. Profiling separates genuinely skilled traders from lucky gamblers and wash-trading bots. Key differentiators: sustained profit factor above 2.0, win rates above 45% across 100+ trades, and diversified token selection.
Counterparty Analysis
When a large wallet enters a position you hold, understanding its historical behavior (sniper vs. holder, bot vs. human) helps you anticipate what will happen next. A sniper wallet buying suggests a quick dump is coming; a swing trader buying suggests multi-day conviction.
Risk Assessment
Token holder analysis benefits from knowing whether top holders are bots, snipers, or genuine investors. A token where 60% of holders are classified as snipers has very different risk characteristics than one held primarily by swing traders.
Wallet Classification
By Trading Style
Classification is based on the median hold time across all closed trades:
| Style | Median Hold Time | Characteristics |
|---|---|---|
| Sniper | < 5 minutes | First-block buyers, MEV-adjacent, extremely fast exits |
| Scalper | 5 min – 1 hour | Quick momentum trades, high frequency |
| Day Trader | 1 – 24 hours | Intraday positions, moderate frequency |
| Swing Trader | 1 – 7 days | Multi-day conviction holds |
| Position Holder | > 7 days | Long-term accumulation, low frequency |
See references/classification_methods.md for the full classification algorithm.
By Trade Size
Based on median trade size in SOL:
| Tier | Median Trade Size | Typical Behavior |
|---|---|---|
| Whale | > 100 SOL | Market-moving entries, often front-run |
| Large | 10 – 100 SOL | Significant but not dominant |
| Medium | 1 – 10 SOL | Active retail traders |
| Small | < 1 SOL | Micro-cap gamblers, new wallets |
By Behavior Type
| Type | Detection Method |
|---|---|
| Bot | Low inter-trade timing variance (CV < 0.3), uniform sizing |
| Human | Variable timing, variable sizing, session-based activity |
| MEV | Sandwich patterns, consistent small profits, high frequency |
By Focus Area
| Focus | Detection Criteria |
|---|---|
| PumpFun Specialist | > 70% of trades on PumpFun-launched tokens |
| DEX Trader | Primarily swaps on Raydium/Orca/Meteora |
| DeFi Farmer | Frequent LP add/remove, staking operations |
| NFT Trader | Significant NFT marketplace interactions |
| Multi-Strategy | No single category exceeds 50% |
Performance Metrics
Core Metrics
Win Rate — Percentage of trades that are profitable.
win_rate = count(pnl > 0) / count(all_closed_trades)
Minimum 30 trades for statistical significance. A 60% win rate across 200 trades is far more meaningful than 80% across 10 trades.
Average ROI Per Trade — Mean return across all closed positions.
avg_roi = mean((exit_value - entry_value) / entry_value)
Include all fees: platform fees, priority fees, and estimated slippage.
Profit Factor — Ratio of gross profits to gross losses.
profit_factor = sum(winning_pnl) / abs(sum(losing_pnl))
Interpretation: > 2.0 excellent, 1.5–2.0 good, 1.0–1.5 marginal, < 1.0 losing.
Total PnL — Cumulative profit/loss in SOL.
total_pnl = sum(all_trade_pnl)
Maximum Drawdown — Largest peak-to-trough decline in cumulative PnL curve.
drawdown = (peak_equity - trough_equity) / peak_equity
Sharpe-Like Ratio — Risk-adjusted return metric.
sharpe = mean(trade_returns) / std(trade_returns) * sqrt(trades_per_year)
See references/performance_metrics.md for detailed formulas, edge cases, and interpretation guidelines.
Activity Metrics
| Metric | Calculation | What It Reveals |
|---|---|---|
| Trades per day | total_trades / active_days | Activity level and capacity |
| Average hold time | mean(exit_time - entry_time) | Trading style confirmation |
| Token diversity | unique_tokens / total_trades | Specialization vs. diversification |
| Peak hours | mode(hour_of_trade) | Session patterns, timezone hints |
| Activity streaks | consecutive active days | Dedication and consistency |
Data Sources
SolanaTracker PnL API (Primary)
The SolanaTracker API provides pre-computed PnL data per wallet per token.
import httpx
url = f"https://data.solanatracker.io/pnl/{wallet_address}"
headers = {"x-api-key": os.getenv("ST_API_KEY")}
resp = httpx.get(url, headers=headers)
pnl_data = resp.json()
Response includes per-token: realized, unrealized, total_invested, total_sold, num_buys, num_sells, last_trade_time.
Helius Parsed Transactions (Detailed)
For granular transaction-level analysis, use the helius-api skill to fetch parsed transaction history. This provides exact timestamps, amounts, and program interactions.
Birdeye Trader Data
Birdeye's trader endpoints provide wallet-level analytics. See the birdeye-api skill for endpoint details.
DexScreener (Free Fallback)
DexScreener does not provide wallet-level PnL but can be used to validate token prices at trade timestamps.
Copy-Trade Evaluation Framework
Before following a wallet's trades, verify these criteria:
Minimum Requirements
- Trade history: At least 50 closed trades (100+ preferred)
- Time span: Active for at least 30 days
- Consistent performance: Rolling 7-day win rate standard deviation < 15%
- Reasonable sizing: No single trade > 20% of observed portfolio
- Diverse tokens: At least 10 unique tokens traded
Green Flags
- Profit factor > 1.8 sustained over 60+ days
- Win rate 45–65% (unrealistically high rates suggest wash trading)
- Moderate trade frequency (2–20 trades/day)
- Mixed hold times indicating adaptive strategy
- Gradual equity curve growth (not step-function jumps)
Red Flags
- New wallet (< 14 days old): Possible sybil or one-hit-wonder
- Single big win: One trade accounts for > 50% of total PnL
- Declining performance: Last-30-day metrics significantly below all-time
- Bot-like patterns: Uniform timing/sizing without proportional edge
- Extreme win rate: > 80% often indicates small wins with catastrophic losses
- Concentration: > 50% of PnL from a single token
- Wash trading signals: Repeated buy/sell of same token with minimal price movement
Risk Score Calculation
risk_score = 0 # 0 = low risk, 100 = high risk
if wallet_age_days < 14:
risk_score += 25
if top_trade_pnl_pct > 0.5:
risk_score += 20
if recent_pf < historical_pf * 0.7:
risk_score += 15
if bot_probability > 0.7:
risk_score += 15
if win_rate > 0.8:
risk_score += 10
if unique_tokens < 5:
risk_score += 15
Integration with Other Skills
whale-tracking: Identify large wallets, then profile them here for behavioral contexttoken-holder-analysis: Profile top holders of a token to assess holder qualitysolana-onchain: Fetch raw transaction data for deep-dive analysishelius-api: Parsed transaction history for granular trade reconstructionbirdeye-api: Token price data for PnL validation
Quick Start
Profile a Single Wallet
# Set environment variables
# export WALLET_ADDRESS=YourTargetWallet...
# export ST_API_KEY=your_solanatracker_key (optional)
python scripts/profile_wallet.py
# Or use demo mode:
python scripts/profile_wallet.py --demo
Compare Multiple Wallets
# export WALLET_ADDRESSES=Wallet1...,Wallet2...,Wallet3...
# export ST_API_KEY=your_solanatracker_key (optional)
python scripts/compare_wallets.py
# Or use demo mode:
python scripts/compare_wallets.py --demo
Files
| File | Description |
|---|---|
references/classification_methods.md |
Hold time, size, bot detection, and focus classification algorithms |
references/performance_metrics.md |
Detailed metric formulas, interpretation, edge cases, and decay detection |
scripts/profile_wallet.py |
Profile a single wallet: fetch data, compute metrics, classify, report |
scripts/compare_wallets.py |
Compare multiple wallets side-by-side with ranking |
Dependencies
uv pip install httpx
Environment Variables
| Variable | Required | Description |
|---|---|---|
WALLET_ADDRESS |
For profile_wallet.py | Solana wallet address to profile |
WALLET_ADDRESSES |
For compare_wallets.py | Comma-separated wallet addresses |
ST_API_KEY |
No | SolanaTracker API key for PnL data |