Net Unrealized Profit/Loss is one of the most powerful on-chain metrics for Bitcoin cycle analysis. It measures the aggregate profit or loss of all Bitcoin holders at any given moment. When NUPL is high, most holders are in profit and the market is approaching euphoria. When NUPL is low or negative, most holders are at a loss and the market is in capitulation. The transitions between these zones have aligned with every major cycle top and bottom in Bitcoin's history.
We automated NUPL into a trading strategy that earned ROBUST verdicts on 7 symbols across five market regime periods. Here is how NUPL works and why it is one of the most reliable cycle indicators available.
How NUPL Is Calculated
NUPL compares the current market value of all Bitcoin in circulation to the realized value (the value at which each coin last moved on-chain). The formula is: NUPL equals (market cap minus realized cap) divided by market cap. The result ranges from approximately negative 0.5 to positive 0.75.
When NUPL is 0.5, it means that 50 percent of the total market cap represents unrealized profit. Holders collectively have paper gains equal to half the total market value. This is an extreme condition that has historically coincided with cycle tops. When NUPL drops below 0, it means aggregate holders are underwater. This has coincided with cycle bottoms.
The metric works because it captures the collective psychology of the market through an objective measurement. It does not depend on opinions, sentiment surveys, or social media analysis. It directly measures whether holders are in profit or at a loss based on on-chain transaction data.
The Five NUPL Zones
The crypto analytics community divides NUPL into five zones that correspond to market cycle phases.
Capitulation (NUPL below 0): Most holders are at a loss. Selling pressure comes from desperation rather than profit-taking. Historically, this zone has marked the best long-term buying opportunities. Bitcoin has spent time in capitulation during the 2015 bear bottom, the 2018-2019 bear bottom, and briefly during the March 2020 crash.
Hope/Fear (NUPL 0 to 0.25): The market is recovering from a bottom. Some holders are back in profit but confidence is low. This is the early recovery phase where the most asymmetric risk-reward exists.
Optimism (NUPL 0.25 to 0.50): A healthy bull market. Most holders are in profit and confidence is growing. This is the longest-duration phase in bull markets and the most productive for trending strategies.
Belief (NUPL 0.50 to 0.75): Strong conviction. Holders have significant unrealized gains and are reluctant to sell. New buyers are entering at higher prices. Momentum is strong but the market is increasingly extended.
Euphoria (NUPL above 0.75): Extreme greed. Nearly all holders are deeply in profit. Historically, this zone has marked cycle tops with high reliability. The 2017 and 2021 cycle peaks both coincided with NUPL exceeding 0.75.
Our Automated NUPL Strategy
Our nupl_cycle_filter strategy uses NUPL zones to generate trading signals. The core logic is straightforward: avoid entering positions during euphoria (where the probability of a major correction is high) and increase exposure during capitulation and hope (where the probability of recovery is high).
The strategy parameters are: euphoria_threshold (default 0.75, the level above which all entries are blocked), capitulation_threshold (default 0.0, the level below which long entries are encouraged), and trend_lookback (default 7 days, the period over which NUPL trend is measured).
An interesting finding from our parameter sweep was that use_sopr=false (disabling the STH-SOPR confirmation signal) produced better results than use_sopr=true. The Spent Output Profit Ratio adds noise to the signal without improving accuracy. NUPL alone is a cleaner indicator for cycle position.
Validation Results
The nupl_cycle_filter strategy earned ROBUST verdicts on 7 symbols: INJ and LINK (5 out of 5 periods profitable), and TRX, UNI, AVAX, BTC, and DOT (4 out of 5 periods). This makes it our best-performing on-chain strategy and one of the most broadly robust strategies in our entire testing pipeline.
The winner parameters from the sweep were: euphoria_threshold=0.75, capitulation_threshold=0.0, trend_lookback=7, use_sopr=false. The sweep best Sharpe was 1.45 on APT. These are modest Sharpe ratios compared to our price-based strategies (Sharpe 9 to 19 for mean reversion), but the edge is genuine and persistent across regimes.
The strength of the NUPL strategy is not high returns in any single period. It is consistency across regimes. The strategy correctly avoided the 2022 crash (NUPL was elevated, blocking entries), capitalized on the 2023 recovery (NUPL in the hope zone, encouraging entries), and maintained exposure during the 2024-2025 consolidation (NUPL in the optimism zone, neutral stance).
Data Coverage
Our NUPL data comes from Coinglass and has full historical depth back to Bitcoin's early years. Unlike derivatives data (limited to approximately 6 months on the Coinglass Hobbyist plan), on-chain data has extensive history. This allowed us to validate the strategy across our standard five-year regime periods rather than the shortened three-period validation used for derivatives strategies.
The data syncs every 4 hours via our automated pipeline. The btc_nupl table stores timestamped NUPL values that the backtest engine loads alongside candle data. Strategies access NUPL via the same candles dictionary interface used for all data types.
NUPL for Portfolio Construction
Beyond the standalone strategy, NUPL is valuable as a portfolio-level regime indicator. When NUPL enters the euphoria zone, it signals that the market is extended and correction risk is elevated. This information can be used to reduce overall portfolio exposure, tighten stop-losses, or shift allocation from momentum strategies (which suffer in corrections) to mean reversion strategies (which benefit from volatility expansion during selloffs).
We currently run 7 bots with the nupl_cycle_filter strategy on INJ, LINK, TRX, UNI, AVAX, BTC, and DOT at 4-hour timeframes. These bots are part of our broader on-chain analytics allocation alongside stablecoin supply momentum (5 bots) and represent a fundamentally different signal source than our price-based and derivatives strategies.
The diversification benefit is the primary value. NUPL measures something that no price indicator can: the collective profit/loss position of all Bitcoin holders. This information is uncorrelated with RSI, MACD, Bollinger Bands, and every other technical indicator because it comes from the blockchain rather than the price chart. Adding NUPL-based strategies to a portfolio of price-based strategies reduces portfolio-level correlation and improves risk-adjusted returns.