$npx -y skills add SKE-Labs/agent-trading-skills --skill on-chain-analysisAnalyze on-chain metrics with provider, entity-adjustment, revision, and normalization controls. Use when evaluating holder behavior, exchange flows, valuation ratios, or network activity as contextual trading features.
| 1 | # On-Chain Analysis |
| 2 | |
| 3 | Interpret blockchain data to understand market participant behavior and identify macro accumulation/distribution phases. |
| 4 | |
| 5 | > **Note:** Agent does not have direct on-chain API access. Use this framework to interpret on-chain data found via `get_financial_news`. |
| 6 | |
| 7 | ## Exchange Flows |
| 8 | |
| 9 | | Metric | Accumulation hypothesis | Distribution hypothesis | |
| 10 | | ----------------- | ------------------- | -------------- | |
| 11 | | Exchange net flow | Persistent outflow | Persistent inflow | |
| 12 | | Exchange reserves | Decreasing | Increasing | |
| 13 | | Stablecoin flows | Dry-powder hypothesis | Redemption or risk-off hypothesis | |
| 14 | |
| 15 | ## Wallet Activity |
| 16 | |
| 17 | | Metric | Growth hypothesis | Weakness hypothesis | |
| 18 | | ----------------------- | ---------- | ---------- | |
| 19 | | Whale accumulation | High | Low | |
| 20 | | Long-term holder supply | Increasing | Decreasing | |
| 21 | | Active addresses | Growing | Declining | |
| 22 | |
| 23 | ## Normalization |
| 24 | |
| 25 | Do not reuse absolute BTC thresholds across eras or networks. For every metric, record provider, definition, unit, entity-adjustment status, timestamp, revision policy, and a trailing percentile or robust z-score. Multiple metrics derived from the same transaction graph are correlated and do not count as independent votes. |
| 26 | |
| 27 | ## MVRV Ratio |
| 28 | |
| 29 | | MVRV Range | Interpretation | Action | |
| 30 | | ---------- | ------------------------------------- | ---------------------- | |
| 31 | | High relative to its own history | Large aggregate unrealized profit | Distribution risk, not an automatic sale | |
| 32 | | Near 1 | Market value near realized value | Cost-basis context, not fair value | |
| 33 | | Below 1 | Aggregate unrealized loss | Stress context, not an automatic buy | |
| 34 | |
| 35 | For NVT and activity metrics, match the numerator and denominator frequency and account for batching, L2 migration, exchange-internal transfers, spam, and changes in address clustering. “Active address” is not the same as a user. |
| 36 | |
| 37 | ## Workflow |
| 38 | |
| 39 | 1. **Gather on-chain intelligence** from news sources: |
| 40 | ``` |
| 41 | get_financial_news(topic="BTC on-chain exchange outflow whale accumulation") |
| 42 | get_financial_news(topic="BTC MVRV NVT realized cap ratio") |
| 43 | ``` |
| 44 | |
| 45 | 2. **Check current price and momentum** for technical confirmation: |
| 46 | ``` |
| 47 | get_candles(symbol="BTC/USD", exchange="binance", interval="1d", count=1) |
| 48 | get_indicators(indicator_code="rsi", symbol="BTC/USD", exchange="binance", interval="1d") |
| 49 | get_indicators(indicator_code="macd", symbol="BTC/USD", exchange="binance", interval="1d") |
| 50 | ``` |
| 51 | |
| 52 | 3. **Classify evidence**: separate observed metric changes from provider interpretation and from the trading hypothesis. Reconcile contradictory metrics instead of counting votes. |
| 53 | |
| 54 | 4. **Report macro thesis**: on-chain regime, metric alignment count, technical confirmation status, key levels, and confidence level. |
| 55 | |
| 56 | ## Evidence and Validation |
| 57 | |
| 58 | - Treat the setup as a testable hypothesis, not a prediction. Define thresholds, entry, invalidation, and exit before evaluating outcomes. |
| 59 | - Calibrate on the same instrument, venue, session, and timeframe. Use closed candles and a held-out or walk-forward sample; record every variant tried. |
| 60 | - Include spread, fees, slippage, borrow or funding, partial fills, and latency. Reject the setup when net expectancy is not positive or depends on one narrow parameter. |
| 61 | - Return observed inputs, missing data, cost assumptions, entry, invalidation, exit, and a valid, watch, or no-trade status. |
| 62 | - Research basis: [Glassnode's MVRV methodology](https://docs.glassnode.com/guides-and-tutorials/metric-guides/mvrv/mvrv-ratio) defines the metric, while [entity-adjustment notes](https://docs.glassnode.com/guides-and-tutorials/on-chain-concepts/entity-adjusted-metrics) explain clustering and revision risk; neither supports universal cutoffs. |
| 63 | |
| 64 | ## Key Rules |
| 65 | |
| 66 | - Match each on-chain metric's timestamp, revision latency, and tested forecast horizon; do not assume one universal horizon. |
| 67 | - NEVER convert a count of correlated metrics into “high confidence” without testing incremental information |
| 68 | - Large transfers may be internal exchange movements -- context matters |
| 69 | - On-chain data is lagging; it confirms trends rather than predicting them |
| 70 | - LTH selling = distribution phase warning; LTH accumulating = bullish macro signal |
| 71 | |
| 72 | ## Related Skills |
| 73 | |
| 74 | - **altcoin-rotation** -- on-chain metrics confirm cycle phases driving rotation decisions |
| 75 | - **dca-strategy** -- MVRV and realized cap identify macro accumulation zones for enhanced DCA |