SD Median NUPL-Z🧠 Overview
SD Median NUPL-Z is a trend-following indicator that leverages a normalized version of Bitcoin’s Net Unrealized Profit/Loss (NUPL) metric, filtered through a median-based volatility band. Unlike traditional NUPL which is often used to spot extremes, this indicator is designed to identify sustained directional trends — entering only when both on-chain momentum and price structure align.
🧩 Key Features
Z-Scored NUPL Trend Engine: Normalizes NUPL using rolling mean and standard deviation to create a smoothed trend signal.
Price Structure Filter: Implements a median-based price band to avoid false entries during short-term volatility.
Custom Thresholds: User-defined thresholds determine when the trend signal is strong enough to justify a long or short directional bias.
Directional Candle Coloring: Reinforces current trend regime visually with aqua (bullish) and red (bearish) plots and candles.
Optimized for BTC: Uses Bitcoin’s Market Cap and Realized Cap to construct the NUPL input.
🔍 How It Works
On-Chain Core: NUPL is calculated as the percentage of unrealized profit in the market: (Market Cap - Realized Cap) / Market Cap * 100.
Z-Score Transformation: The raw NUPL value is normalized using a rolling average and standard deviation over a set window (default 134 days), producing the NUPL-Z series.
Median-Based Price Filter: A rolling 50th percentile (median) of price is used alongside its own standard deviation to create upper and lower bounds.
These bounds define a "volatility corridor" around price; the trend signal is only acted upon if price confirms by staying outside these bands.
Signal Logic:
A Long signal is triggered when NUPL-Z rises above the long threshold and price is not below the lower band.
A Short signal is triggered when NUPL-Z falls below the short threshold.
State Variable (CD): Tracks the current market regime, used to control plotting and color changes.
🔁 Use Cases & Applications
Momentum-Based Trend Following: Helps traders align with directional moves backed by both on-chain sentiment and supportive price structure.
Filtered Entry Timing: Reduces premature or noise-based entries by requiring price confirmation before committing to NUPL-based signals.
Best Suited for BTC: This tool is designed specifically around Bitcoin’s on-chain metrics and is not intended for altcoins or low-volume assets.
✅ Conclusion
SD Median NUPL-Z repurposes a traditionally cyclical valuation tool into a modern trend-following signal by combining statistical normalization with dynamic price structure filtering. It offers a more robust way to participate in high-conviction directional trends, reducing the likelihood of entering during short-lived counter moves.
⚠️ Disclaimer
The content provided by this indicator is for educational and informational purposes only. Nothing herein constitutes financial or investment advice. Trading and investing involve risk, including the potential loss of capital. Always backtest and apply risk management suited to your strategy.
Nupl
NUPL Z-Score | Vistula LabsWhat is NUPL?
NUPL (Net Unrealized Profit/Loss) is a fundamental on-chain metric used to evaluate the profit or loss state of a cryptocurrency's market participants, such as Bitcoin (BTC) and Ethereum (ETH). It compares the current market capitalization—the total value of all coins at their current price—to the realized capitalization, which represents the average price at which all coins were last transacted on-chain.
Market Capitalization: Current price × circulating supply.
Realized Capitalization: The sum of the value of all coins based on the price at their last on-chain movement.
For Bitcoin (BTC):
NUPL = (Market Cap - Realized Cap) / Market Cap * 100
For Ethereum (ETH):
NUPL = (Market Cap - Realized Cap) / Market Cap
A positive NUPL indicates that the market holds unrealized profits, meaning the current value exceeds the price at which coins were last moved. A negative NUPL signals unrealized losses. Extreme NUPL values—high positives or low negatives—can suggest overvaluation (potential market tops) or undervaluation (potential market bottoms), respectively.
How NUPL is Calculated for BTC & ETH
This indicator calculates NUPL using data sourced from Glassnode and CoinMetrics:
For Bitcoin:
Market Cap: GLASSNODE:BTC_MARKETCAP
Realized Cap: COINMETRICS:BTC_MARKETCAPREAL
Formula: ((btc_market_cap - btc_market_cap_real) / btc_market_cap) * 100
For Ethereum:
Market Cap: GLASSNODE:ETH_MARKETCAP
Realized Cap: COINMETRICS:ETH_MARKETCAPREAL
Formula: ((eth_market_cap - eth_market_cap_real) / eth_market_cap) * 100
The indicator then transforms these NUPL values into a Z-Score, which measures how many standard deviations the current NUPL deviates from its historical average. The Z-Score calculation incorporates:
A customizable moving average of NUPL (options: SMA, EMA, DEMA, RMA, WMA, VWMA) over a user-defined length (default: 220 periods).
The standard deviation of NUPL over a specified lookback period (default: 200 periods).
Z-Score Formula:
Z-Score = (Current NUPL - Moving Average of NUPL) / Standard Deviation of NUPL
This normalization allows the indicator to highlight extreme market conditions regardless of the raw NUPL scale.
How This Indicator Can Be Used
Trend Following
The NUPL Z-Score indicator employs a trend-following system with adjustable thresholds to generate trading signals:
Long Signals: Triggered when the Z-Score crosses above the Long Threshold (default: 0.26).
Short Signals: Triggered when the Z-Score crosses below the Short Threshold (default: -0.62).
Visual Representations:
Green up-triangles: Indicate long entry points (plotted below the bar).
Red down-triangles: Indicate short entry points (plotted above the bar).
Color-coded elements:
Candles and Z-Score plot turn teal (#00ffdd) for long positions.
Candles and Z-Score plot turn magenta (#ff00bf) for short positions.
These signals leverage historical NUPL trends to identify potential momentum shifts, aiding traders in timing entries and exits.
Overbought/Oversold Conditions
The indicator flags extreme market states using additional thresholds:
Overbought Threshold (default: 3.0): When the Z-Score exceeds this level, the market may be significantly overvalued, hinting at potential selling pressure. Highlighted with a light magenta background (#ff00bf with 75% transparency).
Oversold Threshold (default: -2.0): When the Z-Score drops below this level, the market may be significantly undervalued, suggesting buying opportunities. Highlighted with a light teal background (#00ffdd with 75% transparency).
These extreme Z-Score levels have historically aligned with major market peaks and troughs, making them useful for medium- to long-term position management.
Customization Options
Traders can tailor the indicator to their preferences:
Cryptocurrency Source: Choose between BTC or ETH.
Moving Average Type: Select from SMA, EMA, DEMA, RMA, WMA, or VWMA.
Moving Average Length: Adjust the period for the NUPL moving average (default: 220).
Z-Score Lookback Period: Set the historical window for Z-Score calculation (default: 200).
Thresholds: Fine-tune values for: Long Threshold (default: 0.26), Short Threshold (default: -0.62), Overbought Threshold (default: 3.0), Oversold Threshold (default: -2.0)
These options enable users to adapt the indicator to various trading strategies and risk profiles.
Alerts
The indicator supports four alert conditions to keep traders informed:
NUPL Long Opportunity: Alerts when a long signal is triggered.
NUPL Short Opportunity: Alerts when a short signal is triggered.
NUPL Overbought Condition: Alerts when the Z-Score exceeds the overbought threshold.
NUPL Oversold Condition: Alerts when the Z-Score falls below the oversold threshold.
These alerts allow traders to monitor key opportunities without constantly watching the chart.
Net Unrealized Profit Loss | JeffreyTimmermansNet Unrealized Profit Loss (NUPL)
The "Net Unrealized Profit Loss" (NUPL) indicator is a highly regarded tool for assessing Bitcoin investor sentiment by analyzing the relationship between Market Value and Realized Value. This Pine Script implementation, developed by Jeffrey Timmermans, includes additional features such as dynamic labels, alerts, and thresholds with color-coded bands, enhancing its usability for traders and analysts.
Core Concepts Behind NUPL
Market Value (MV):
Defined as the current Bitcoin price multiplied by the number of coins in circulation.
Equivalent to market capitalization in traditional finance.
Realized Value (RV):
Calculated by considering the price at which each Bitcoin last moved (e.g., transferred between wallets).
The average price of all these transactions is multiplied by the total coins in circulation.
Net Unrealized Profit Loss (NUPL):
Formula: NUPL = (Market Value − Realized Value) : Market Value × 100
Measures the proportion of paper profits or losses held by investors relative to the market cap.
Significance of NUPL:
Tracks investor sentiment over time.
A high NUPL value indicates that most investors are in profit, often signaling potential market overheating.
A low or negative NUPL suggests pessimism and undervaluation, which may precede market recovery.
How to View the Chart
The NUPL chart uses distinct percentage bands to delineate various market phases. These bands provide context for understanding investor sentiment and market stages:
Extreme Low Values (< 0%): Indicates widespread losses; the market may be near capitulation.
Neutral Value (0%): A balance between profit and loss; often signifies a transition phase.
Slightly High to High Values (> 0% to 50%): Increasing profits suggest growing optimism; early stages of bullish trends.
Extreme High Values (> 75%): Signals overheating; often corresponds to excessive greed, which may precede corrections.
The colored bands visually represent these stages, enabling traders to identify key turning points.
Features of the Script
Querying Data
The indicator uses data from two key sources:
Bitcoin Market Cap (MC1): GLASSNODE:BTC_MARKETCAP
Bitcoin Realized Cap (MCR): COINMETRICS:BTC_MARKETCAPREAL
These values are fetched using the request.security function to ensure daily accuracy, regardless of the chart's timeframe.
Threshold Calculation
The script computes NUPL values dynamically and compares them against historical lows:
Calculated using the ta.lowest function over a 1,000-bar lookback period.
The average of the historical low and the current NUPL value, providing a dynamic baseline.
Value Classification
NUPL is categorized into sentiment levels with corresponding weights:
< Low Threshold: 1 (Extreme Bearish)
Low to 0: 0.75 (Moderate Bearish)
0 to 25: 0.25 (Neutral to Slightly Bullish)
25 to 50: -0.25 (Moderate Bullish)
50 to 75 : -0.75 (Strong Bullish)
> 75: -1 (Extreme Bullish)
Visual Elements
NUPL Line Plot:
The NUPL line is plotted in orange for clear visibility.
Threshold Bands:
Horizontal thresholds ranging from -160 to 160 and are plotted, representing key sentiment levels. Bands are categorized as:
Extreme High/Low Values
Significant High/Low Values
Neutral Values
Fill Colors:
Red Shades (Bearish Sentiment): Above neutral levels.
Green Shades (Bullish Sentiment): Below neutral levels.
The opacity of fills decreases as sentiment moves from extreme to neutral values.
Dynamic Label:
A real-time label displays the current NUPL value and sentiment classification.
Positioned directly on the NUPL line for immediate insight.
Alerts:
The indicator includes two alerts for crossing key thresholds:
NUPL Above 0% Alert: Triggers when NUPL crosses above the neutral value, signaling a shift to positive sentiment.
NUPL Below 0% Alert: Triggers when NUPL crosses below the neutral value, indicating a shift to negative sentiment.
Alerts are configured with alert.freq_once_per_bar to avoid redundancy during intra-bar fluctuations.
Use Cases
Identifying Market Extremes:
Use NUPL levels to pinpoint moments of extreme greed or fear, which often precede market reversals.
Long-Term Strategy:
NUPL trends can assist strategic investors in deciding when to accumulate during pessimistic phases or take profits during euphoria.
Market Sentiment Analysis:
Provides a macro perspective on the prevailing investor sentiment, offering valuable context for trading decisions.
Conclusion
The Net Unrealized Profit Loss (NUPL) indicator combines advanced data processing with intuitive visualization to deliver actionable insights into Bitcoin market sentiment. With its real-time alerts, dynamic labels, and comprehensive banding system, this tool is indispensable for traders and investors seeking to understand and anticipate market movements based on sentiment analysis.
-Jeffrey
Onchain Analysis - BTCIntroduction
This indicator is designed to equip traders with actionable insights into long-term BITSTAMP:BTCUSD market dynamics through a blend of on-chain metrics and technical tools. It provides a streamlined visualization of market sentiment and critical price levels using unique and proprietary methodologies.
The script features:
NUPL (Net Unrealized Profit/Loss) with advanced bar color coding.
350DMA and 350DMAx2, offering insights into key Bitcoin cycle levels.
Logarithmic Fibonacci Extension, aiding in precise target setting during price discovery phases.
Core Functionality
NUPL Analysis
NUPL reflects the network's aggregate unrealized profit or loss, calculated as (Market Cap − Realized Cap) / Market Cap. Bars are color-coded dynamically to simplify the interpretation of market sentiment. The emotional states (e.g., euphoria, fear) are visually represented for quick analysis, making this indicator particularly valuable for traders monitoring Bitcoin's macro cycles. This implementation improves clarity by aggregating NUPL across all holders rather than separating short- and long-term holders.
350DMA and 350DMAx2
The 350DMAx2 line has historical relevance as a key level during Bitcoin bull cycles, often acting as a resistance point during price rallies. This implementation also includes precise visualization of price interaction with the 350DMA, enabling traders to anticipate potential retracement or breakout zones. Furthermore, to minimize chart clutter, the 350DMA and 350DMAx2 lines are designed to dynamically appear only when the price is near these levels. This ensures that traders can focus on relevant data without unnecessary visual distractions.
Logarithmic Fibonacci Extensions
Unlike traditional Fibonacci extensions, logarithmic levels better suit assets like Bitcoin that grow exponentially. The calculated levels provide traders with clear targets in price discovery phases, enhancing the utility of this feature.
Key Advantages and Unique Features
Enhanced Visualization : NUPL bar color-coding simplifies sentiment analysis, allowing traders to instantly identify key turning points in market psychology.
Historical Context : The script incorporates insights derived from past market cycles, emphasizing the significance of 350DMAx2 levels.
Customization : Traders can adapt settings like lookback periods (e.g., 500 for daily, 100 for weekly) to fit their preferred timeframe and trading strategy.
Proprietary Insights : The script integrates logarithmic Fibonacci levels in a unique manner, optimizing their application to logarithmic assets.
Why This Indicator is Valuable
This indicator is not a simple combination of existing tools; it is a carefully curated suite of functionalities designed to address specific needs of crypto traders. The advanced NUPL representation and integration of logarithmic Fibonacci make it a distinct addition to any trader's toolkit. It provides clarity in interpreting long-term trends and offers actionable insights for navigating Bitcoin's cyclical nature.
How to Use
NUPL Monitoring
Pay close attention to initial color changes, e.g. orange and red, since it may establish clear pull-back. Especially, when bars turn black, it suggests that the market is heavily in profit, often signaling a market top.
350DMAx2 Interaction
If the price is trading below or near the 350DMAx2 level, it often reflects a key resistance zone. Historically, price rejections from this level are common, offering traders critical insights into potential retracement scenarios.
Logarithmic Fibonacci Extensions
Logarithmic Fibonacci extension levels are especially valuable for assets like BITSTAMP:BTCUSD , which exhibit logarithmic growth. These levels provide:
Target Identification: During price discovery phases, the logarithmic Fibonacci levels act as critical resistance or support points, enabling traders to set realistic price targets.
Market Top Detection: When extreme NUPL values (e.g., black bars) align with price interaction near logarithmic Fibonacci levels, the likelihood of a market top increases significantly. This alignment offers a robust method for identifying overbought or overextended market conditions.
Combining Concepts
When NUPL's extreme signals (e.g., red or black bars) align with price movements near the 350DMAx2 level, the likelihood of a significant pullback increases. Additionally, these scenarios can be further validated by observing logarithmic Fibonacci resistance levels, which can provide added confidence in identifying market tops during price discovery phases.



