Blockchain Fundamentals: Liquidity Cycle MomentumLiquidity Cycle Momentum Indicator
Overview:
This indicator analyzes global liquidity trends by calculating a unique Liquidity Index and measuring its year-over-year (YoY) percentage change. It then applies a momentum oscillator to the YoY change, providing insights into the cyclical momentum of liquidity. The indicator incorporates a limited historical data workaround to ensure accurate calculations even when the chart’s history is short.
Features Breakdown:
1. Limited Historical Data Workaround
Function: The limit(length) function adjusts the lookback period when there isn’t enough historical data (i.e., near the beginning of the chart), ensuring that calculations do not break due to insufficient data.
2. Global Liquidity Calculation
Data Sources:
TVC:CN10Y (10-year yield from China)
TVC:DXY (US Dollar Index)
ECONOMICS:USCBBS (US Central Bank Balance Sheet)
FRED:JPNASSETS (Japanese assets)
ECONOMICS:CNCBBS (Chinese Central Bank Balance Sheet)
FRED:ECBASSETSW (ECB assets)
Calculation Methodology:
A ratio is computed (cn10y / dxy) to adjust for currency influences.
The Liquidity Index is then derived by multiplying this ratio with the sum of the other liquidity components.
3. Year-over-Year (YoY) Percent Change
Computation:
The indicator determines the number of bars that approximately represent one year.
It then compares the current Liquidity Index to its value one year ago, calculating the YoY percentage change.
4. Momentum Oscillator on YoY Change
Oscillator Components:
1. Calculated using the Chande Momentum Oscillator (CMO) applied to the YoY percent change with a user-defined momentum length.
2. A weighted moving average (WMA) that smooths the momentum signal.
3. Overbought and Oversold zones
Signal Generation:
Buy Signal: Triggered when the momentum crosses upward from an oversold condition, suggesting a potential upward shift in liquidity momentum.
Sell Signal: Triggered when crosses below an overbought condition, indicating potential downward momentum.
State Management:
The indicator maintains a state variable to avoid repeated signals, ensuring that a new buy or sell signal is only generated when there’s a clear change in momentum.
5. Visual Presentation and Alerts
Plots:
The oscillator value and signalline are plotted for visual analysis.
Overbought and oversold levels are marked with dashed horizontal lines.
Signal Markers:
Buy and sell signals are marked with green and maroon circles, respectively.
Background Coloration:
Optionally, the chart’s background bars are colored (yellow for buy signals and fuchsia for sell signals) to enhance visual cues when signals are triggered.
Conclusion
In summary, the Liquidity Cycle Momentum Indicator provides a robust framework to analyze liquidity trends by combining global liquidity data, YoY changes, and momentum oscillation. This makes it an effective tool for traders and analysts looking to identify cyclical shifts in liquidity conditions and potential turning points in the market. Indicator

Blockchain Fundamentals: Liquidity & BTC YoYLiquidity & BTC YoY Indicator
Overview:
This indicator calculates the Year-over-Year (YoY) percentage change for two critical metrics: a custom Liquidity Index and Bitcoin's price. The Liquidity Index is derived from a blend of economic and forex data representing the M2 money supply, while the BTC price is obtained from a reliable market source. A dedicated limit(length) function is implemented to handle limited historical data, ensuring that the YoY calculations are available immediately—even when the chart's history is short.
Features Breakdown:
1. Limited Historical Data Workaround
- Functionality: limit(length) The function dynamically adjusts the lookback period when there isn’t enough historical data. This prevents delays in displaying YoY metrics at the beginning of the chart.
2. Liquidity Calculation
- Data Sources: Combines multiple data streams:
USM2, ECONOMICS:CNM2, USDCNY, ECONOMICS:JPM2, USDJPY, ECONOMICS:EUM2, USDEUR
- Formula:
Liquidity Index = USM2 + (CNM2 / USDCNY) + (JPM2 / USDJPY) + (EUM2 / USDEUR)
[b3. Bitcoin Price Calculation
- Data Source: Retrieves Bitcoin's price from BITSTAMP:BTCUSD on the user-selected timeframe for its historical length.
4. Year-over-Year (YoY) Percent Change Calculation
- Methodology:
- The indicator uses a custom function, to autodetect the proper number of bars, based on the selected timeframe.
- It then compares the current value to that from one year ago for both the Liquidity Index and BTC price, calculating the YoY percentage change.
5. Visual Presentation
- Plotting:
- The YoY percentage changes for Liquidity (plotted in blue) and BTC price (plotted in orange) are clearly displayed.
- A horizontal zero line is added for visual alignment, making it easier to compare the two copies of the metric. You add one copy and only display the BTC YoY. Then you add another copy and only display the M2 YoY.
-The zero lines are then used to align the scripts to each other by interposing them. You scale each chart the way you like, then move each copy individually to align both zero lines on top of each other.
This indicator is ideal for analysts and investors looking to monitor macroeconomic liquidity trends alongside Bitcoin's performance, providing immediate insights. Indicator

Indicator

MVRV-Z adjusted EN version (by ilyaevp95)Descriptions:
The MVRV Z-Score indicator is a powerful tool designed by original authors Murad Mahmudov and David Puell for BTC to help traders make informed decisions about their cryptocurrency investments. It is based on the MVRV (Market Value to Realized Value) metric, which measures the relationship between the market capitalization and the realized capitalization of a cryptocurrency. The indicator provides signals for accumulating or selling an asset based on deviations in market capitalization from realized capitalization.
How it works:
Market Capitalization : This is the total value of coins that have been issued at a given point in time. Market capitalization is calculated by multiplying the current price of the asset by the number of coins that have been issued.
Realized Capitalization (Realized Price) : This is the amount of money that has been spent on purchasing a particular asset. In the context of cryptocurrencies, it represents the sum of all transaction values for a specific blockchain. Realized capitalization can be calculated using historical data on transaction prices.
MVRV Metric : The MVRV metric compares market capitalization with realized capitalization, providing a measure of how overvalued or undervalued a cryptocurrency is relative to its historical transaction data. A high MVRV value indicates that the market is overvaluing the asset, while a low MVRV suggests undervaluation.
Z-Score Calculation : The Z-score is a statistical measure that normalizes the deviation of market capitalization from its mean value (realized capitalization) to a standard deviation. This makes it possible to compare assets that have different values and time periods, as it takes into account the volatility of the market.
Note: For accurate Z-score calculation, you need to use the indicator on a chart with a mostly complete historical data set for a specific cryptocurrency.
Signals : Based on the Z-score, the indicator generates signals for accumulation or sale. If the Z-score falls below a certain threshold (negative), it may indicate an opportunity to accumulate the asset. Conversely, if the Z-score rises above a positive threshold, it could suggest a potential sell signal.
The indicator uses a color-coded system to provide traders with visual cues:
Green background indicates a signal to accumulate.
Orange (Red) background indicates a signal to sell.
Deviations exceeding the specified thresholds by 1 and 2 Z (positive direction), 0.5 and 1 Z (negative direction) are highlighted in a brighter color, indicating more extreme deviations.
Note: The signals provided by this indicator should not be considered financial advice. Traders should conduct their own research (DYOR) before making any investment decisions.
Parameters: The indicator provides several parameters for customization:
Blockchain : The blockchain for which the analysis is performed. This allows the user to select the specific blockchain they are interested in analyzing. The default value is BTC.
Z threshold for positive deviations : This parameter sets the threshold above which the deviation will be considered positive. A higher value will result in fewer signals, while a lower value may generate more false signals. The default value is 3.0.
Z threshold for negative deviations : Similar to the previous parameter, this sets the threshold below which the deviation will be considered negative. The default value is 0.
Market Capitalization : There are two types of market capitalization available: Standard and Free float coin capitalization. Free float is calculated by multiplying its current price by the total number of units in free circulation - the number that are not locked in any contracts or other forms of restriction. For DASH, ZEC, BAT and ALGO available only Free float capitalization. The default value is "Standard"
Negative Deviation Filter Mode : When enabled, if the deviation has been positive for a certain number of previous weeks (the default value is 40 weeks), the indicator will not generate a signal to accumulate. This helps to avoid false signals during the start of a bearish market. This may be helpful for volatile coins, whose price can drastically fall below the realized price after the end of a bull market. The default setting is "disabled".
Display Options:
MVRV plot : Displays the MVRV metric for the selected blockchain.
Z-Score plot : Shows the Z-score calculated by the indicator.
Realized Price plot : Provides a visual representation of the realized price of the cryptocurrency on main chart.
S ignal Display : Choose whether to display signals on the main chart or in a separate panel.
Historical mode : Choose whether to show signals for all historical data on the chart or for a certain number of periods. The default setting is "disabled".
Indicator

Library

Indicator

Market Activity Risk"Market Activity Risk" (MAR) - Is a dynamic tool designed to structurize the competitive landscape of blockchain transaction blocks, offering traders a strategic edge in anticipating market movements.
By capturing where market participants are actively buying and selling, the MAR indicator provides insights into areas of high competition, allowing traders to make informed decisions and potentially front-run transactions.
At the heart of this tool are blockchain transaction fees , they can represent daily shifts in transaction fee pressures.
By measuring momentum in fees, we can analyze the urgency and competition among traders to have their transactions processed first. This indicator is particularly good at revealing potential support or resistance zones, areas where traders are likely to defend their positions or increase their stakes, thus serving as critical junctures for strategic decision-making.
Key Features:
Adaptable Standard Deviation Settings: Users have the flexibility to adjust the length of the standard deviation and its multipliers, managing the risk bands to their individual risk tolerance.
Color-Coded Risk Levels: The MAR indicator employs an intuitive color scheme, making it easy to interpret the data at a glance.
Multi-Currency Compatibility: While designed with Bitcoin in mind, the MAR indicator is versatile, functioning effectively across various cryptocurrencies including Ethereum, XRP, and several other major altcoins. This broad compatibility ensures that traders across different market segments can leverage the insights provided by this tool.
Customizable Moving Average: The 730-day moving average setting is thoughtfully chosen to reflect the nuances of a typical cryptocurrency cycle, capturing long-term trends and fluctuations. However, recognizing the diverse needs and perspectives of traders, the indicator allows for the moving average period to be modified.
Indicator

Indicator

Blockchain FundamentalThis indicator is made for traders to harness fundamental blockchain data for better decision-making. Unlike traditional tools, this indicator doesn't depend on standard technical indicators. It offers a novel perspective by focusing on core blockchain metrics like capitalization, miner activity, and other intrinsic data elements. I've designed a distinct scoring logic, exclusive to BF, ensuring it's user-friendly and provides actionable insights for traders at all levels.
Mainly created for Bitcoin , but can be applied to any other crypto assets in cost of losing some metrics in the analysis.
Ethereum chart:
Features:
Customizable Moving Averages:
Choose from an array of moving averages, with the flexibility to adjust the length for a tailored analysis, aiding in pinpointing asset trends.
Blockchain Metrics Integration:
Incorporates a range of blockchain metrics such as Market Cap to Realised Cap ratio, Spent Output Profit Ratio, ATH Drawdown, and more.
Blockchain Metrics Evaluation:
Each metric can be toggled on/off to customize the analysis. Using default settings, traders can use all of the metrics combined.
Every metric is essentially evaluated on a scale from -100 to 100 and then combined with others. If any metric is uncertain about its direction (equals to 0), then the score of it is not accounted in a final calculation.
Kalman Filter:
This indicator offers the option to apply a Kalman filter to the signals, enhancing the smoothness and accuracy of the indicator’s output. This is my approach to mitigate the noise in the final output.
Signal Oscillator:
Displays the aggregated score of all selected blockchain metrics.
Offers visual signals with adjustable upper and lower bounds for easy interpretation based on particular asset observation.
Visual Elements:
Signal Oscillator:
A visual representation of the aggregated blockchain fundamental score.
(White line for a raw calculation, orange line for kalman-filtered one)
Signal Counter:
Displays the count of metrics currently being considered in the fundamental score calculation. (grey line at the middle of an indicator)
Buy/Sell Signal Coloring:
The background color changes to indicate potential buying or selling opportunities based on user-defined bounds.
Usage:
Analysis:
Use the signal oscillator to identify potential market tops and bottoms based on blockchain fundamental data.
Adjust the bounds to customize the sensitivity of buy/sell signals.
Customization:
Enable/disable specific blockchain metrics to tailor the indicator to your analytical needs.
Adjust the moving average type and length for better analysis.
Integration:
Combine with other technical indicators to create a comprehensive trading strategy.
Utilize in conjunction with volume and price action analysis for enhanced decision-making. Every output could be used in traders custom strategies and indicators. Indicator

Strategy

Indicator

Indicator

Indicator

Indicator

Indicator

Bitcoin Block Height (Total Blocks)Bitcoin Block Height by RagingRocketBull 2020
Version 1.0
Differences between versions are listed below:
ver 1.0: compare QUANDL Difficulty vs Blockchain Difficulty sources, get total error estimate
ver 2.0: compare QUANDL Hash Rate vs Blockchain Hash Rate sources, get total error estimate
ver 3.0: Total Blocks estimate using different methods
--------------------------------
This indicator estimates Bitcoin Block Height (Total Blocks) using Difficulty and Hash Rate in the most accurate way possible, since
QUANDL doesn't provide a direct source for Bitcoin Block Height (neither QUANDL:BCHAIN, nor QUANDL:BITCOINWATCH/MINING).
Bitcoin Block Height can be used in other calculations, for instance, to estimate the next date of Bitcoin Halving.
Using this indicator I demonstrate:
- that QUANDL data is not accurate and differ from Blockchain source data (industry standard), but still can be used in calculations
- how to plot a series of data points from an external csv source and compare it with another source
- how to accurately estimate Bitcoin Block Height
Features:
- compare QUANDL Difficulty source (EOD, D1) with external Blockchain Difficulty csv source (EOD, D1, embedded)
- show/hide Quandl/Blockchain Difficulty curves
- show/hide Blockchain Difficulty candles
- show/hide differences (aqua vertical lines)
- show/hide time gaps (green vertical lines)
- count source differences within data range only or for the whole history
- multiply both sources by alpha to match before comparing
- floor/round both matched sources when comparing
- Blockchain Difficulty offset to align sequences, bars > 0
- count time gaps and missing bars (as result of time gaps)
WARNING:
- This indicator hits the max 1000 vars limit, adding more plots/vars/data points is not possible
- Both QUANDL/Blockchain provide daily EOD data and must be plotted on a daily D1 chart otherwise results will be incorrect
- current chart must not have any time gaps inside the range (time gaps outside the range don't affect the calculation). Time gaps check is provided.
Otherwise hardcoded Blockchain series will be shifted forward on gaps and the whole sequence become truncated at the end => data comparison/total blocks estimate will be incorrect
Examples of valid charts that can run this indicator: COINBASE:BTCUSD,D1 (has 8 time gaps, 34 missing bars outside the range), QUANDL:BCHAIN/DIFF,D1 (has no gaps)
Usage:
- Description of output plot values from left to right:
- c_shifted - 4x blockchain plotcandles ohlc, green/black (default na)
- diff - QUANDL Difficulty
- c_shifted - Blockchain Difficulty with offset
- QUANDL Difficulty multiplied by alpha and rounded
- Blockchain Difficulty multiplied by alpha and rounded
- is_different, bool - cur bar's source values are different (1) or not (0)
- count, number of differences
- bars, total number of bars/data points in the range
- QUANDL daily blocks
- Blockchain daily blocks
- QUANDL total blocks
- Blockchain total blocks
- total_error - difference between total_blocks estimated using both sources as of cur bar, blocks
- number_of_gaps - number of time gaps on a chart
- missing_bars - number of missing bars as result of time gaps on a chart
- Color coding:
- Blue - QUANDL data
- Red - Blockchain data
- Black - Is Different
- Aqua - number of differences
- Green - number of time gaps
- by default the indicator will show lots of vertical aqua lines, 138 differences, 928 bars, total error -370 blocks
- to compare the best match of the 2 sources shift Blockchain source 1 bar into the future by setting Blockchain Difficulty offset = 1, leave alpha = 0.01 =>
this results in no vertical aqua lines, 0 differences, total_error = 0 blocks
if you move the mouse inside the range some bars will show total_error = 1 blocks => total_error <= 1 blocks
- now uncheck Round Difficulty Values flag => some filled aqua areas, 218 differences.
- now set alpha = 1 (use raw source values) instead of 0.01 => lots of filled aqua areas, 871 differences.
although there are many differences this still doesn't affect the total_blocks estimate provided Difficulty offset = 1
Methodology:
To estimate Bitcoin Block Height we need 3 steps, each step has its own version:
- Step 1: Compare QUANDL Difficulty vs Blockchain Difficulty sources and estimate error based on differences
- Step 2: Compare QUANDL Hash Rate vs Blockchain Hash Rate sources and estimate error based on differences
- Step 3: Estimate Bitcoin Block Height (Total Blocks) using different methods in the most accurate way possible
QUANDL doesn't provide block time data, but we can calculate it using the Hash Rate approximation formula:
estimated Hash rate/sec H = 2^32 * D / T, where D - Difficulty, T - block time, sec
1. block time (T) can be derived from the formula, since we already know Difficulty (D) and Hash Rate (H) from QUANDL
2. using block time (T) we can estimate daily blocks as daily time / block time
3. block height (total blocks) = cumulative sum of daily blocks of all bars on the chart (that's why having no gaps is important)
Notes:
- This code uses Pinescript v3 compatibility framework
- hash rate is in THash/s, although QUANDL falsely states in description GHash/s! THash = 1000 GHash
- you can't read files, can only embed/hardcode raw data in script
- both QUANDL and Blockchain sources have no gaps
- QUANDL and Blockchain series are different in the following ways:
- all QUANDL data is already shifted 1 bar into the future, i.e. prev day's value is shown as cur day's value => Blockchain data must be shifted 1 bar forward to match
- all QUANDL diff data > 1 bn (10^12) are truncated and have last 1-2 digits as zeros, unlike Blockchain data => must multiply both values by 0.01 and floor/round the results
- QUANDL sometimes rounds, other times truncates those 1-2 last zero digits to get the 3rd last digit => must use both floor/round
- you can only shift sequences forward into the future (right), not back into the past (left) using positive offset => only Blockchain source can be shifted
- since total_blocks is already a cumulative sum of all prev values on each bar, total_error must be simple delta, can't be also int(cum()) or incremental
- all Blockchain values and total_error are na outside the range - move you mouse cursor on the last bar/inside the range to see them
TLDR, ver 1.0 Conclusion:
QUANDL/Blockchain Difficulty source differences don't affect total blocks estimate, total error <= 1 block with avg 150 blocks/day is negligible
Both QUANDL/Blockchain Difficulty sources are equally valid and can be used in calculations. QUANDL is a relatively good stand in for Blockchain industry standard data.
Links:
QUANDL difficulty source: www.quandl.com
QUANDL hash rate source: www.quandl.com
Blockchain difficulty source (export data as csv): www.blockchain.com
Indicator

Indicator

Indicator

Indicator

Indicator

Indicator

Indicator

NVT Signal with RMA and thresholds [alertable]NVT Signal, or NVTS, is an indicator that compares the market cap of Bitcoin to the aggregate USD value of daily transactions on the Bitcoin blockchain. It is a value indicator that shows a multiple of Bitcoin price against the actual usage of its blockchain. When the NVTS is low, it suggests Bitcoin price is low relative to the amount of utility the network provides, and vice versa.
For more information on NVTS, visit medium.com
This indicator aims to provide the following:
1. An open-source implementation of NVTS on Tradingview, as the most popular one currently is closed-source.
2. To provide two simple ways to define and visualize "overbought" or "oversold" conditions using the NVTS. Here, we have absolute value of NVTS & deviation from a long-term moving average.
3. Crude integration into Tradingview's alert system.
What this indicator CANNOT do:
1. Timeframes below 1d.
2. Signals based on statistical analyses, such as seen in Bollinger Bands et al. (However, with the appropriate type of account, you can add BBands on top of this indicator.)
I would like to express my gratitude to Willy Woo, Chris Burniske and Dimitry Kalichkin for their work on NVT Ratio and NVT Signal, without which my indicator would not have been created.
Feel free to fork & improve, or experiment with settings. I hope this indicator will be useful to someone. Indicator
