TNZ - Index above MA Use this indicator to filter stock selection based on the relevant index value being above the selected simple moving average.
For example, only buying the S+P 500 stock if the S+P 500 index value is above the 10 period moving average.
The time frame used is that displayed
"美股标普500" için komut dosyalarını ara
Macroeconomic Artificial Neural Networks
This script was created by training 20 selected macroeconomic data to construct artificial neural networks on the S&P 500 index.
No technical analysis data were used.
The average error rate is 0.01.
In this respect, there is a strong relationship between the index and macroeconomic data.
Although it affects the whole world,I personally recommend using it under the following conditions: S&P 500 and related ETFs in 1W time-frame (TF = 1W SPX500USD, SP1!, SPY, SPX etc. )
Macroeconomic Parameters
Effective Federal Funds Rate (FEDFUNDS)
Initial Claims (ICSA)
Civilian Unemployment Rate (UNRATE)
10 Year Treasury Constant Maturity Rate (DGS10)
Gross Domestic Product , 1 Decimal (GDP)
Trade Weighted US Dollar Index : Major Currencies (DTWEXM)
Consumer Price Index For All Urban Consumers (CPIAUCSL)
M1 Money Stock (M1)
M2 Money Stock (M2)
2 - Year Treasury Constant Maturity Rate (DGS2)
30 Year Treasury Constant Maturity Rate (DGS30)
Industrial Production Index (INDPRO)
5-Year Treasury Constant Maturity Rate (FRED : DGS5)
Light Weight Vehicle Sales: Autos and Light Trucks (ALTSALES)
Civilian Employment Population Ratio (EMRATIO)
Capacity Utilization (TOTAL INDUSTRY) (TCU)
Average (Mean) Duration Of Unemployment (UEMPMEAN)
Manufacturing Employment Index (MAN_EMPL)
Manufacturers' New Orders (NEWORDER)
ISM Manufacturing Index (MAN : PMI)
Artificial Neural Network (ANN) Training Details :
Learning cycles: 16231
AutoSave cycles: 100
Grid
Input columns: 19
Output columns: 1
Excluded columns: 0
Training example rows: 998
Validating example rows: 0
Querying example rows: 0
Excluded example rows: 0
Duplicated example rows: 0
Network
Input nodes connected: 19
Hidden layer 1 nodes: 2
Hidden layer 2 nodes: 0
Hidden layer 3 nodes: 0
Output nodes: 1
Controls
Learning rate: 0.1000
Momentum: 0.8000 (Optimized)
Target error: 0.0100
Training error: 0.010000
NOTE : Alerts added . The red histogram represents the bear market and the green histogram represents the bull market.
Bars subject to region changes are shown as background colors. (Teal = Bull , Maroon = Bear Market )
I hope it will be useful in your studies and analysis, regards.
Damped Sine Wave Weighted FilterIntroduction
Remember that we can make filters by using convolution, that is summing the product between the input and the filter coefficients, the set of filter coefficients is sometime denoted "kernel", those coefficients can be a same value (simple moving average), a linear function (linearly weighted moving average), a gaussian function (gaussian filter), a polynomial function (lsma of degree p with p = order of the polynomial), you can make many types of kernels, note however that it is easy to fall into the redundancy trap.
Today a low-lag filter who weight the price with a damped sine wave is proposed, the filter characteristics are discussed below.
A Damped Sine Wave
A damped sine wave is a like a sine wave with the difference that the sine wave peak amplitude decay over time.
A damped sine wave
Used Kernel
We use a damped sine wave of period length as kernel.
The coefficients underweight older values which allow the filter to reduce lag.
Step Response
Because the filter has overshoot in the step response we can conclude that there are frequencies amplified in the passband, we could have reached to this conclusion by simply seeing the negative values in the kernel or the "zero-lag" effect on the closing price.
Enough ! We Want To See The Filter !
I should indeed stop bothering you with transient responses but its always good to see how the filter act on simpler signals before seeing it on the closing price. The filter has low-lag and can be used as input for other indicators
Filter with length = 100 as input for the rsi.
The bands trailing stop utility using rolling squared mean average error with length 500 using the filter of length 500 as input.
Approximating A Least Squares Moving Average
A least squares moving average has a linear kernel with certain values under 0, a lsma of length k can be approximated using the proposed filter using period p where p = k + k/4 .
Proposed filter (red) with length = 250 and lsma (blue) with length = 200.
Conclusions
The use of damping in filter design can provide extremely useful filters, in fact the ideal kernel, the sinc function, is also a damped sine wave.
VIX reversion-Buschi
English:
A significant intraday reversion (commonly used: 3 points) on a high (over 20 points) S&P 500 Volatility Index (VIX) can be a sign of a market bottom, because there is the assumption that some of the "big guys" liquidated their options / insurances because the worst is over.
This indicator shows these reversions (3 points as default) when the VIX was over 20 points. The character "R" is then shown directly over the daily column, the VIX need not to be loaded explicitly.
Deutsch:
Eine deutliche Intraday-Umkehr (3 Punkte im Normalfall) bei einem hohen (über 20 Punkte) S&P 500 Volatility Index (VIX) kann ein Zeichen für eine Bodenbildung im Markt sein, weil möglicherweise einige "große Jungs" ihre Optionen / Versicherungen auflösen, weil das schlimmste vorbei ist.
Dieser Indikator zeigt diese Umkehr (Standardwert: 3 Punkte), wenn der VIX vorher über 20 Punkte lag. Der Buchstabe "R" wird dabei direkt über dem Tagesbalken angezeigt, wobei der VIX nicht explizit geladen werden muss.
Relative Price StrengthThe strength of a stock relative to the S&P 500 is key part of most traders decision making process. Hence the default reference security is SPY, the most commonly trades S&P 500 ETF.
Most profitable traders buy stocks that are showing persistence intermediate strength verses the S&P as this has been shown to work. Hence the default period is 63 days or 3 months.
TICK Extremes IndicatorSimple TICK indicator, plots candles and HL2 line
Conditional green/red coloring for highs above 500, 900 and lows above 0, and for lows below -500, -900, and highs above 0
Probably best used for 1 - 5 min timeframes
Always open to suggestions if criteria needs tweaking or if something else would make it more useful or user-friendly!
Market direction and pullback based on S&P 500.A simple indicator based on www.swing-trade-stocks.com The link is also the guide for how to use it.
0 - nothing. If the indicator is showing 0 for a prolonged amount of time, it is likely the market is in "momentum mode" (referred to in the link above).
1 - indicates an uptrend based on SMA and EMA and also a place where a reversal to the upside is likely to occur. You should look only for long trades in the stock market when you see a spike upwards and S&P 500 is showing an obvious uptrend.
-1 - indicates a downtrend based on SMA and EMA and also a place where a reversal to the downside is likely to occur. You should look only for short trades in the stock market when you see a spike upwards and S&P 500 is showing an obvious uptrend.
Net XRP Margin PositionTotal XRP Longs minus XRP Shorts in order to give you the total outstanding XRP margin debt.
ie: If 500,000 XRP has been longed, and 400,000 XRP has been shorted, then 500,000 has been bought, and 400,000 sold, leaving us with 100,000 XRP (net) remaining to be sold to give us an overall neutral margin position.
That isn't to say that the net margin position must move towards zero, but it is a sensible reference point, and historical net values may provide useful insights into the current circumstances.
Net DASH Margin PositionTotal DASH Longs minus DASH Shorts in order to give you the total outstanding DASH margin debt.
ie: If 500,000 DASH has been longed, and 400,000 DASH has been shorted, then 500,000 has been bought, and 400,000 sold, leaving us with 100,000 DASH (net) remaining to be sold to give us an overall neutral margin position.
That isn't to say that the net margin position must move towards zero, but it is a sensible reference point, and historical net values may provide useful insights into the current circumstances.
(Anyone know what category this script should be in?)
Net NEO Margin PositionTotal NEO Longs minus NEO Shorts in order to give you the total outstanding NEO margin debt.
ie: If 500,000 NEO has been longed, and 400,000 NEO has been shorted, then 500,000 has been bought, and 400,000 sold, leaving us with 100,000 NEO (net) remaining to be sold to give us an overall neutral margin position.
That isn't to say that the net margin position must move towards zero, but it is a sensible reference point, and historical net values may provide useful insights into the current circumstances.
(Anyone know what category this script should be in?)
Everyday 0002 _ MAC 1st Trading Hour WalkoverThis is the second strategy for my Everyday project.
Like I wrote the last time - my goal is to create a new strategy everyday
for the rest of 2016 and post it here on TradingView.
I'm a complete beginner so this is my way of learning about coding strategies.
I'll give myself between 15 minutes and 2 hours to complete each creation.
This is basically a repetition of the first strategy I wrote - a Moving Average Crossover,
but I added a tiny thing.
I read that "Statistics have proven that the daily high or low is established within the first hour of trading on more than 70% of the time."
(source: )
My first Moving Average Crossover strategy, tested on VOLVB daily, got stoped out by the volatility
and because of this missed one nice bull run and a very nice bear run.
So I added this single line: if time("60", "1000-1600") regarding when to take exits:
if time("60", "1000-1600")
strategy.exit("Close Long", "Long", profit=2000, loss=500)
strategy.exit("Close Short", "Short", profit=2000, loss=500)
Sweden is UTC+2 so I guess UTC 1000 equals 12.00 in Stockholm. Not sure if this is correct, actually.
Anyway, I hope this means the strategy will only take exits based on price action which occur in the afternoon, when there is a higher probability of a lower volatility.
When I ran the new modified strategy on the same VOLVB daily it didn't get stoped out so easily.
On the other hand I'll have to test this on various stocks .
Reading and learning about how to properly test strategies is on my todo list - all tips on youtube videos or blogs
to read on this topic is very welcome!
Like I said the last time, I'm posting these strategies hoping to learn from the community - so any feedback, advice, or corrections is very much welcome and appreciated!
/pbergden
9:00-9:59 NY Range -> 10:00-11:00 Lines (v6)//@version=6
indicator("9:00-9:59 NY Range -> 10:00-11:00 Lines (v6)", overlay=true, max_lines_count=500)
// --- state vars ---
var float sessionHigh = na
var float sessionLow = na
var line hiLine = na
var line loLine = na
var line v10 = na
var line v11 = na
// --- New York time ---
t_ny = time("America/New_York")
hr = hour(t_ny)
mn = minute(t_ny)
// --- reset / clear at 16:00 (4 PM NY) ---
if hr == 16 and mn == 0
sessionHigh := na
sessionLow := na
if not na(hiLine)
line.delete(hiLine)
hiLine := na
if not na(loLine)
line.delete(loLine)
loLine := na
if not na(v10)
line.delete(v10)
v10 := na
if not na(v11)
line.delete(v11)
v11 := na
// --- accumulate 9:00 - 9:59 NY range ---
if hr == 9
if mn == 0
sessionHigh := high
sessionLow := low
else
sessionHigh := na(sessionHigh) ? high : math.max(sessionHigh, high)
sessionLow := na(sessionLow) ? low : math.min(sessionLow, low)
// --- at 10:00 NY: draw horizontal lines (start) and vertical dashed at 10:00 ---
if hr == 10 and mn == 0
// delete previous day's horizontal lines if any
if not na(hiLine)
line.delete(hiLine)
hiLine := na
if not na(loLine)
line.delete(loLine)
loLine := na
hiLine := line.new(bar_index, sessionHigh, bar_index, sessionHigh, color=color.red, width=1, extend=extend.none)
loLine := line.new(bar_index, sessionLow, bar_index, sessionLow, color=color.red, width=1, extend=extend.none)
if not na(v10)
line.delete(v10)
v10 := na
v10 := line.new(bar_index, low, bar_index, high, color=color.red, width=1, style=line.style_dashed)
// --- at 11:00 NY: draw vertical dashed at 11:00 ---
if hr == 11 and mn == 0
if not na(v11)
line.delete(v11)
v11 := na
v11 := line.new(bar_index, low, bar_index, high, color=color.red, width=1, style=line.style_dashed)
// --- extend the horizontal lines forward every bar, but only until 11:00 ---
if hr < 11
if not na(hiLine)
line.set_x2(hiLine, bar_index)
if not na(loLine)
line.set_x2(loLine, bar_index)
// --- required output so script compiles (hidden) ---
plot(na)
HH/HL/LH/LL - Bigger Letter MArkingAlam's Money
//@version=6
indicator("HH/HL/LH/LL - Clean Letters Only", overlay = true, max_labels_count = 500)
// Pivot confirmation bars (fixed)
L = 2
R = 2
// Confirmed pivots (appear R bars after turn)
sh = ta.pivothigh(high, L, R)
sl = ta.pivotlow(low, L, R)
// Keep last confirmed swing values
var float lastHigh = na
var float lastLow = na
// Swing highs → HH / LH
if not na(sh)
if na(lastHigh)
lastHigh := sh
else
string txtH = sh > lastHigh ? "HH" : "LH"
label.new(bar_index - R, sh, txtH, xloc.bar_index, yloc.price, color.new(color.white, 100), label.style_label_down, color.red, size.large)
lastHigh := sh
// Swing lows → HL / LL
if not na(sl)
if na(lastLow)
lastLow := sl
else
string txtL = sl > lastLow ? "HL" : "LL"
label.new(bar_index - R, sl, txtL, xloc.bar_index, yloc.price, color.new(color.white, 100), label.style_label_up, color.green, size.large)
lastLow := sl
Static Beta for Pair and Quant Trading A beta coefficient shows the volatility of an individual stock compared to the systematic risk of the entire market. Beta represents the slope of the line through a regression of data points. In finance, each point represents an individual stock's returns against the market.
Beta effectively describes the activity of a security's returns as it responds to swings in the market. It is used in the capital asset pricing model (CAPM), which describes the relationship between systematic risk and expected return for assets. CAPM is used to price risky securities and to estimate the expected returns of assets, considering the risk of those assets and the cost of capital.
Calculating Beta
A security's beta is calculated by dividing the product of the covariance of the security's returns and the market's returns by the variance of the market's returns over a specified period. The calculation helps investors understand whether a stock moves in the same direction as the rest of the market. It also provides insights into how volatile—or how risky—a stock is relative to the rest of the market.
For beta to provide useful insight, the market used as a benchmark should be related to the stock. For example, a bond ETF's beta with the S&P 500 as the benchmark would not be helpful to an investor because bonds and stocks are too dissimilar.
Beta Values
Beta equal to 1: A stock with a beta of 1.0 means its price activity correlates with the market. Adding a stock to a portfolio with a beta of 1.0 doesn’t add any risk to the portfolio, but it doesn’t increase the likelihood that the portfolio will provide an excess return.
Beta less than 1: A beta value less than 1.0 means the security is less volatile than the market. Including this stock in a portfolio makes it less risky than the same portfolio without the stock. Utility stocks often have low betas because they move more slowly than market averages.
Beta greater than 1: A beta greater than 1.0 indicates that the security's price is theoretically more volatile than the market. If a stock's beta is 1.2, it is assumed to be 20% more volatile than the market. Technology stocks tend to have higher betas than the market benchmark. Adding the stock to a portfolio will increase the portfolio’s risk, but may also increase its return.
Negative beta: A beta of -1.0 means that the stock is inversely correlated to the market benchmark on a 1:1 basis. Put options and inverse ETFs are designed to have negative betas. There are also a few industry groups, like gold miners, where a negative beta is common.
LET'S START
Now I'll give my own definition.
Beta:
If we assume market caps are equal ,
it is an indicator that shows how much of the second instrument we should buy if we buy one of the first, taking into account the price volatility of two instruments.
But if the market caps are not equal:
For example, the ETF for A is $300.
The ETF for B is $600.
If static beta predicted by this script is 0.5:
300 * 1 * a = 600 * 0.5 * b
Then we should use 1 b for 1 a.
(Long a and short b or vice versa )
So, we can try pair trading for a/b or a-b.
However, these values are generally close to each other, such as 0.8 and 0.93. However, the closer we can adjust our lot purchases to bring the double beta to a value closer to 1, the higher the hedge ratio will be.
Large commercials use dynamic betas, which are updated periodically, in addition to static betas
However, scaling this is very difficult for individual investors with limited investment tools.
But a static beta of 5,000 bars is still much better than not considering any beta at all.
Note: The presence of a beta value for two instruments does not necessarily mean they can be included in pair trading.
It is also important (%99) to consider historically very high correlations and cointegration relationships, as well as the compatibility of security structures.
Note 2 : This script is designed for low timeframes.
Do not use betas from different timeframes.
Beta dynamics are different for each timeframe.
Note 3 : I created this script with the help of ChatGPT.
Source for beta definition ( ) :
www.investopedia.com
Regards.
Relative Performance Areas [LuxAlgo]The Relative Performance Areas tool enables traders to analyze the relative performance of any asset against a user-selected benchmark directly on the chart, session by session.
The tool features three display modes for rescaled benchmark prices, as well as a statistics panel providing relevant information about overperforming and underperforming streaks.
🔶 USAGE
Usage is straightforward. Each session is highlighted with an area displaying the asset price range. By default, a green background is displayed when the asset outperforms the benchmark for the session. A red background is displayed if the asset underperforms the benchmark.
The benchmark is displayed as a green or red line. An extended price area is displayed when the benchmark exceeds the asset price and is set to SPX by default, but traders can choose any ticker from the settings panel.
Using benchmarks to compare performance is a common practice in trading and investing. Using indexes such as the S&P 500 (SPX) or the NASDAQ 100 (NDX) to measure our portfolio's performance provides a clear indication of whether our returns are above or below the broad market.
As the previous chart shows, if we have a long position in the NASDAQ 100 and buy an ETF like QQQ, we can clearly see how this position performs against BTSUSD and GOLD in each session.
Over the last 15 sessions, the NASDAQ 100 outperformed the BTSUSD in eight sessions and the GOLD in six sessions. Conversely, it underperformed the BTCUSD in seven sessions and the GOLD in nine sessions.
🔹 Display Mode
The display mode options in the Settings panel determine how benchmark performance is calculated. There are three display modes for the benchmark:
Net Returns: Uses the raw net returns of the benchmark from the start of the session.
Rescaled Returns: Uses the benchmark net returns multiplied by the ratio of the benchmark net returns standard deviation to the asset net returns standard deviation.
Standardized Returns: Uses the z-score of the benchmark returns multiplied by the standard deviation of the asset returns.
Comparing net returns between an asset and a benchmark provides traders with a broad view of relative performance and is straightforward.
When traders want a better comparison, they can use rescaled returns. This option scales the benchmark performance using the asset's volatility, providing a fairer comparison.
Standardized returns are the most sophisticated approach. They calculate the z-score of the benchmark returns to determine how many standard deviations they are from the mean. Then, they scale that number using the asset volatility, which is measured by the asset returns standard deviation.
As the chart above shows, different display modes produce different results. All of these methods are useful for making comparisons and accounting for different factors.
🔹 Dashboard
The statistics dashboard is a great addition that allows traders to gain a deep understanding of the relationship between assets and benchmarks.
First, we have raw data on overperforming and underperforming sessions. This shows how many sessions the asset performance at the end of the session was above or below the benchmark.
Next, we have the streaks statistics. We define a streak as two or more consecutive sessions where the asset overperformed or underperformed the benchmark.
Here, we have the number of winning and losing streaks (winning means overperforming and losing means underperforming), the median duration of each streak in sessions, the mode (the number of sessions that occurs most frequently), and the percentages of streaks with durations equal to or greater than three, four, five, and six sessions.
As the image shows, these statistics are useful for traders to better understand the relative behavior of different assets.
🔶 SETTINGS
Benchmark: Benchmark for comparison
Display Mode: Choose how to display the benchmark; Net Returns: Uses the raw net returns of the benchmark. Rescaled Returns: Uses the benchmark net returns multiplied by the ratio of the benchmark and asset standard deviations. Standardized Returns: Uses the benchmark z-score multiplied by the asset standard deviation.
🔹 Dashboard
Dashboard: Enable or disable the dashboard.
Position: Select the location of the dashboard.
Size: Select the dashboard size.
🔹 Style
Overperforming: Enable or disable displaying overperforming sessions and choose a color.
Underperforming: Enable or disable displaying underperforming sessions and choose a color.
Benchmark: Enable or disable displaying the benchmark and choose colors.
Bitcoin vs M2 Global Liquidity (Lead 3M) - Table Ticker═══════════════════════════════════════════════════════════════
Bitcoin vs M2 Global Liquidity - Regression Indicator
═══════════════════════════════════════════════════════════════
TECHNICAL SPECS
• Pine Script v6
• Overlay: false (separate pane)
• Data sources: 5 M2 series + 4 FX pairs (request.security)
• Calculation: Rolling OLS linear regression with configurable lead
• Output: Regression line + ±1σ/±2σ confidence bands + R² ticker
CORE FUNCTIONALITY
Aggregates M2 money supply from 5 central banks (CN, US, EU, JP, GB),
converts to USD, applies time-lead, runs rolling linear regression
vs Bitcoin price, plots predicted value with confidence intervals.
CONFIGURABLE PARAMETERS
Input Controls:
• Lead Period: 0-365 days (default: 90)
• Lookback Window: 50-2000 bars (default: 750)
• Bands: Toggle ±1σ and ±2σ visibility
• Colors: BTC, M2, regression line, confidence zones
• Ticker: Position, size, colors, transparency
Advanced Settings:
• Table display: R², lead, M2 total, country breakdown (%)
• Ticker customization: 9 position options, 6 text sizes
• Border: Width 0-10px, color, outline-only mode
DATA AGGREGATION
Sources (via request.security):
• ECONOMICS:CNM2, USM2, EUM2, JPM2, GBM2
• FX_IDC:CNYUSD, JPYUSD (others: FX:EURUSD, GBPUSD)
• Conversion: All M2 → USD → Sum / 1e12 (trillions)
REGRESSION ENGINE
• Arrays: m2Array, btcArray (dynamic sizing, auto-trim)
• Window: Rolling (lookbackPeriod bars)
• Lead: Time-shift via array indexing (i + leadPeriodDays)
• Calc: Manual OLS (covariance/variance), no built-in ta functions
• Outputs: slope, intercept, r2, stdResiduals
CONFIDENCE BANDS
±1σ and ±2σ calculated from standard deviation of residuals.
Fill zones between upper/lower bounds with configurable transparency.
ALERTS
5 pre-configured alertcondition():
• Divergence > 15%
• Price crosses ±1σ bands (up/down)
• Price crosses ±2σ bands (up/down)
TICKER TABLE
Dynamic table.new() with 9 rows:
• R² value (4 decimals)
• Lead period (days + months)
• M2 Global total (trillions USD)
• Country breakdown: CN, US, EU, JP, GB (absolute + %)
• Optional: Hide/show M2 details
VISUAL CUSTOMIZATION
All plot() elements support:
• Color picker inputs (group="Couleurs")
• Line width: 1-3px
• Transparency: 0-100% for zones
• Offset: M2 plot has +leadPeriodDays offset option
PERFORMANCE
• Max arrays size: lookbackPeriod + leadPeriodDays + 200
• Calculations: Only when array.size >= lookbackPeriod + leadPeriodDays
• Table update: barstate.islast (once per bar)
• Request.security: gaps_off mode
CODE STRUCTURE
1. Inputs (lines 7-54)
2. Data fetch (lines 56-76)
3. M2 aggregation (line 78)
4. Array management (lines 84-95)
5. Regression calc (lines 97-172)
6. Prediction + bands (lines 174-183)
7. Plots (lines 185-199)
8. Ticker table (lines 201-236)
9. Alerts (lines 238-246)
DEPENDENCIES
None. Pure Pine Script v6. No external libraries.
LIMITATIONS
• Daily timeframe recommended (1D)
• Requires 750+ bars history for optimal calculation
• M2 data availability: TradingView ECONOMICS feed
• Max lines: 500 (declared in indicator())
CUSTOMIZATION EXAMPLES
• Shorter lookback (200d): More reactive, lower R²
• Longer lookback (1500d): More stable, regime mixing
• No bands: Set showBands=false for clean view
• Different lead: Test 60d, 120d for sensitivity analysis
TECHNICAL NOTES
• Manual OLS implementation (no ta.linreg)
• Array-based lead application (not plot offset)
• M2 values stored in trillions (/ 1e12) for readability
• Residuals array cleared/rebuilt each calculation
OPEN SOURCE
Code fully visible. Modify, fork, analyze freely.
No hidden calculations. No proprietary data.
VERSION
1.0 | November 2025 | Pine Script v6
═══════════════════════════════════════════════════════════════
OSOM TrendHow to Use the OSOM Breakers Indicator
The OSOM Breakers indicator is a customizable overlay tool for TradingView (Pine Script v5) that identifies market structure patterns, breakouts, breakers (order blocks), and price targets based on pivots, higher highs/lows (HH/LL), and breaks of structure (BoS/MSB). It helps visualize bullish/bearish trends, potential reversals, and target levels, with a focus on institutional "order blocks" (OB) for support/resistance. The indicator supports alerts indirectly through plotted events and is optimized for volatile markets like forex, crypto, or indices.
1. Adding the Indicator to Your Chart
Open TradingView (tradingview.com) and load a chart for your desired asset.
Click the "Indicators" button at the top.
Search for "OSOM Breakers" (if community-shared) or add via Pine Editor:
Open the Pine Editor tab at the bottom.
Paste the provided code (from //@version=5 to the end).
Click "Save" and name it (e.g., "OSOM Breakers").
Click "Add to Chart".
The indicator overlays on your chart with defaults like dashed zigzag lines, HH/LL labels, and green/red colors for bull/bear elements.
2. Configuring Inputs
Click the gear icon next to the indicator name in the legend to access settings.
Inputs are grouped:
Nephew_Sam Market Structure Settings: Pivot strength (default 5; higher for smoother, lower for sensitivity). Toggles for zigzag lines, BoS lines, HH/LL labels, and pattern matches.
Nephew_Sam Bull/Bear Patterns: Pre-defined sequences (e.g., "LL,LH,LL,HH,HL" for bull patterns) with text labels (e.g., "BOS HL 1") and toggles. Customize up to 7 per direction for specific setups like BOS (break of structure) or MSS (market structure shift).
Nephew_Sam Styles: Colors for HH/LL (green up, red down), labels, zigzag style (dashed/dotted), and width (1-4).
Market Structure Break Targets Settings: Max duration (250 bars), calculation method (Percent or ATR), ATR multiplier (2.0). Enable/disable bull/bear MSB/BoS, set colors (green/red), and % targets (100% default).
Breakers Settings: Max breaks (1; increase for stricter breaker confirmation), max duration (1000 bars). Colors for bullish MS (green), bull breaker (red), bearish MS (red), bear breaker (green).
Defaults suit 15m-1h charts; reduce pivot strength for scalping (1m-5m) or increase for daily+. Test patterns on historical data to match your strategy.
3. Interpreting the Visuals and Signals
Zigzag and HH/LL Labels:
Dashed/dotted lines connect pivots; green for upswings, red for downswings (if enabled).
Labels like "HH" (higher high), "LH" (lower high), "LL" (lower low), "HL" (higher low) appear at pivots. Green for bullish, red for bearish.
Pattern Matches:
Labels (e.g., "BOS HL 1") at pivots when sequences match user-defined bull/bear conditions. Up arrows for bull, down for bear.
Use for spotting reversals or continuations (e.g., bull pattern after downtrend signals potential long).
Market Structure Breaks (MSB/BoS):
Solid lines: Green for bullish MSB/BoS (break above prior high), red for bearish (break below prior low).
Labels: "MSB" or "MSS" (shift) at breaks, "BoS" for breaks of structure.
Boxes: Translucent green/red "OB" (order block) boxes highlight ranges before breaks – potential support (post-bull break) or resistance (post-bear).
Targets:
Dotted horizontal/vertical lines extend from breaks to projected targets (percent of range or ATR-based).
Active until hit or expired (after max duration). Green for bull targets (above), red for bear (below).
Breakers:
Dotted lines: Recent MSB/BoS levels that act as breakers (e.g., red dotted for bull breaker).
Plotted shapes: "▲" (green below bar) for bull MSB breakout, "▼" (red above) for bear.
Candle borders: Green for support events (price tests breaker from above), red for resistance (from below).
Overall Direction: Tracks bullish (1) or bearish (-1) based on recent breaks; use for trend bias.
4. Trading Strategies
Breakout Trading: Enter long on green "▲" (bull breakout) above MSB/BoS lines; short on red "▼" below. Target dotted lines (e.g., 100% of prior range).
Order Block (OB) Plays: Buy at green OB boxes (support after bull break), sell at red (resistance after bear). Confirm with support/resistance events.
Pattern-Based Reversals: Long on bull patterns (e.g., "BOS HL") after bearish structure; short on bear patterns. Filter with HH/LL (e.g., HH after LL signals uptrend).
Trend Continuation: In bullish direction, stack longs on BoS breaks; use breakers as trailing stops.
Risk Management: Stops below recent LL (longs) or above HH (shorts). Position size based on ATR (from targets). Avoid choppy markets by disabling patterns.
Timeframes: Scalping (1m-15m with low pivot strength), swing (1h-4h), position (daily with higher strength). Combine with volume indicators for confirmation.
5. Alerts and Automation
No built-in alertcondition(); set manual alerts in TradingView:
Right-click chart > Add Alert > Condition (e.g., "OSOM Breakers - Bull MSB Breakout" crosses 1 for "▲").
Or alert on close crossing MSB/BoS lines (use indicator plots as conditions).
For strategies: Convert to a strategy script by adding strategy() entries/exits based on breaks/patterns.
6. Tips and Best Practices
Asset Suitability: Ideal for trending markets (e.g., BTC/USD, EUR/USD). Less effective in ranging; toggle off zigzag/boxes to reduce clutter.
Performance: Limits (500 lines/boxes/labels) prevent overload; delete oldest automatically. Backtest on replay mode.
Customization: Add custom patterns (e.g., for ICT/SMC concepts like fair value gaps). Match colors to your theme.
Limitations: Relies on pivots – false signals in low-volatility; no volume integration (pair with another indicator). Targets are projections, not guarantees.
Enhancements: Combine with OSOM Trend for volume confirmation. Practice on demo charts.
This indicator provides a structured view of price action, emphasizing breaks and targets for systematic trading. Always validate with multiple timeframes and risk controls.
OSOM TrendHow to Use the OSOM Trend Indicator
The OSOM Trend indicator is designed for use on TradingView charts. It provides trend identification, entry/exit signals, breakout detection, volume analysis, and market state insights. Below is a step-by-step guide to setting it up and using it effectively.
1. Adding the Indicator to Your Chart
Open TradingView (tradingview.com) and load a chart for your desired asset (e.g., stock, crypto, forex).
Click the "Indicators" button at the top of the chart.
Search for "OSOM Trend" (if it's a community script, you may need to paste the Pine Script code into the Pine Editor).
To add via Pine Editor:
Click the Pine Editor tab at the bottom.
Paste the provided code (from //@version=6 to the end).
Click "Save" and name it (e.g., "OSOM Trend").
Click "Add to Chart".
The indicator will overlay on your chart with default settings.
2. Configuring Inputs
Once added, click the gear icon next to the indicator name in the chart legend to open settings.
Inputs are grouped for ease:
OSOM WV Settings: Adjust trend length (default 14 for sensitivity), smoothing (7), band width (0.8 ATR multiplier), ATR length (10). Toggle fast mode for minimal lag, signals, forecast, take-profits, and re-entries.
Breakout Boxes Settings: Set pivot length (5), box widths (0.5 upper/lower via sliders), and colors.
MMB Settings: Volume lookback (200), EMA smoothing (10).
PVSRA Settings: Length (10), multipliers for climax/rising volumes (2.0/1.5). Optional symbol override (e.g., for aggregated BTC data).
Vector Candle Zones: Toggle on/off, max zones (500), zone type (body/wicks), transparency (90).
CVD Settings: Toggle long/short MAs (55/34 EMA), multipliers (1.5), lengths (40). Enable higher TF, volume integration, dynamic clouds, bar coloring, and status table.
Start with defaults for most assets; reduce lengths for lower timeframes (e.g., 1m-15m) to increase responsiveness, or increase for higher TFs (e.g., daily) for smoother trends.
Visual tweaks: Choose label size (small to reduce clutter), colors, and mode (Cloud for channels, Line Only for simplicity).
3. Interpreting the Visuals and Signals
Trend Line and Bands/Cloud:
Green (bullish) when price > upper band; red (bearish) when < lower band; gray (neutral).
Cloud mode shows a filled channel; use for range visualization. Single Band highlights the active support/resistance.
Buy/Sell Signals:
Up arrow (↑) labels for buys (price crosses over upper band); down arrow (↓) for sells (crosses under lower band).
If forecast enabled, labels show "count/avg" (e.g., "↑ 5/10") – current trend bars vs. smoothed historical average.
Take-profit: "✖" labels when overextended (Z-score > threshold, RSI EMA slope reversal).
Re-entries: "↻" labels on wick touches during trends (with cooldown to avoid spam).
Breakout Boxes:
Pink upper boxes (resistance) and green lower boxes (support) around pivots.
Boxes display total volume and buy/sell % breakdown.
Breakout signals: "BreakUp ⯁" or "BreakDn ⯁" labels/alerts when price crosses box edges – use for momentum trades.
MMB (Market Maker Build):
Green crosses below bars: Building long (accumulation).
Red crosses above: Building short.
Green X above: Closing long (distribution).
Red X below: Closing short.
Watch for clusters near support/resistance for institutional activity.
PVSRA Candle Coloring:
Overrides bar colors: Green/lime (bull climax), red (bear climax), blue (bull rising), violet/fuchsia (bear rising), gray (normal).
Vector zones (translucent boxes) highlight high-volume areas as potential S/R.
CVD (Cumulative Volume Delta):
Bar colors: Blue (uptrend), red (downtrend) based on CVD vs. MAs.
Status table (top-right): Checkmarks for Long/Short/Test/Sideways states.
Long: CVD above both MAs (bullish confirmation).
Short: Below both (bearish).
Test: Near clouds (potential reversal).
Sideways: Within parallels (range-bound).
4. Trading Strategies
Trend Following: Enter long on buy signals in green trends; short on sell in red. Exit on opposite signals or take-profits. Use forecast for expected duration.
Breakouts: Trade breakups from upper boxes (long) or breakdowns from lower (short). Confirm with volume % (e.g., high buy volume in upper box suggests strong breakout).
Volume Confirmation: Align with MMB builds/closes and PVSRA climaxes for high-conviction entries. Avoid trades in sideways CVD states.
Filters: Use RSI EMA slope in take-profits for overbought/oversold avoidance. Higher TF CVD for broader context.
Timeframes: Versatile – scalping (1m-5m with fast mode), swing (1h-4h), position (daily+). Test on historical data.
Risk Management: Set stops below lower band (longs) or above upper (shorts). Size positions based on ATR.
5. Alerts and Automation
Set alerts via TradingView: Right-click chart > Add Alert > Condition (e.g., "Buy Signal" or "BreakUp").
Supported alerts: Buy/Sell, Take-Profit, BreakUp/Dn, MMB crosses, Vector patterns, CVD Long/Short entries.
For scripting: Use alertcondition() calls in the code for custom notifications.
6. Tips and Best Practices
Asset Suitability: Best on volume-rich assets (e.g., BTC/USD, stocks). For low-volume, disable CVD/MMB or use overrides.
Performance: On busy charts, reduce max counts (labels/boxes) to avoid lag. Test fast mode for real-time trading.
Backtesting: Use TradingView's replay or strategy tester (convert to strategy script by adding strategy() functions).
Limitations: Not a standalone system – combine with fundamentals/news. Higher TF data may delay updates.
Customization: Experiment with inputs; e.g., tighten bands (lower multiplier) for volatile markets.
This indicator excels in providing multi-layered confirmation, reducing false signals through volume integration. Always practice on demo accounts before live trading.
Match Finder [theUltimator5]Match Finder is the dating app of indicators. It takes your current ticker and finds the most compatible match over a recent time period. The match may not be Mr. right, but it is Mr. right now. It doesn't forecast future connection, but it tells you current compatibility for today.
Jokes aside, it is a pattern–comparison tool that was designed to find the ticker that tracks most closely to the one you are currently looking at. It scans a user-defined list of 40 tickers (pre-set to a bunch of liquid ETFs) and finds which one most closely matches the recent price action of the current chart over a fixed lookback window.
LOGIC BEHIND THE SCENES
For each bar, the script:
Takes the last N bars (Correlation Window Length) of the current symbol.
Takes the last N bars of each selected comparison ticker.
Calculates the Pearson correlation between the current symbol and each comparison ticker.
Identifies the single best-matching ticker (highest positive correlation, excluding the current symbol itself).
Rescales and overlays that matched segment on the chart so you can visually compare shapes.
Optionally shows a correlation table with all tickers and their correlation values.
The use case of this indicator is to help you see which symbol has recently moved most similarly to your current chart, and how that shape looks when overlaid in the same panel. It helps you see which sectors it may be following most closely to.
Here is an image with arrows showing the elements of this indicator that will be mostly explained later.
USER INPUTS
1. Correlation Window Length
Default: 30
Range: 10–500
This is the number of bars used to compare the current symbol against each ticker.
Important - Larger values produce more “global” shape comparison but increase computational load and may cause the indicator to timeout if the length is too long
2. Drawing Mode
Options:
Scale Only - Adjusts min and max of the plotted line segment to match the chart over the range
Scale & Rotate - Scales as above, but matches the first and last point to the close of the chart over the range. This effectively rotates the pattern to force it to track the chart to an extent.
3. Show Correlation Table
When enabled (disabled by default), shows a table in the bottom-right of the chart that displays the correlation values over the lookback range for all 40 tickers. The best fit ticker is highlighted.
4. Best Fit Line Color
Color used to draw the overlaid best-match segment (yellow by default).
5. Ticker inputs (1–40)
Default set to a broad universe of major ETFs (e.g., SPY, QQQ, IWM, sector and bond ETFs, commodities, etc.).
You can replace these with any symbols supported by your data feed (stocks, ETFs, indexes, etc.).
The script always excludes the current chart’s symbol from being considered as its own best match.
NOTE: THIS INDICATOR IS EXTREMELY MEMORY INTENSIVE AND MAY TAKE SEVERAL SECONDS TO LOAD. PLEASE BE PATIENT AND GIVE THE INDICATOR UP TO 20 SECONDS FOR THE DATA TO DISPLAY
LiqD HeatMap 👑 [RubiXalgo]LiqD HeatMap - Advanced Liquidation Heatmap IndicatorOverviewThe LiqD HeatMap is a cutting-edge Pine Script™ indicator designed to visualize liquidation levels, market bias, and potential trade setups through an AI-driven color system. Inspired by Rubik's Cube mechanics and Ichimoku principles, it transforms complex market data (price, volume, momentum) into intuitive visuals like heatmaps, bubbles, lines, and gradients. This tool helps traders spot high-probability liquidation zones, support/resistance, and trend reversals without overwhelming charts.Powered by advanced smoothing (Kalman filters + LOWESS), pattern recognition (implied KNN clustering), and machine learning, it offers a "color language" for quick decisions: green/teal for bullish (buy), red/purple for bearish (sell), and yellow/orange for max volume (high-action zones). Darker shades indicate stronger signals.Key Benefits:Reduces trader bias with AI-based visuals.
Supports multi-timeframe (MTF) analysis for intraday to long-term trades.
Customizable for longs, shorts, or both.
No math required—follow the colors for 3:1+ risk-reward setups.
This indicator is for educational purposes only and does not guarantee profits. Trading involves risk; use at your own discretion.Main FeaturesLiquidation Heatmap (Bubbles & Lines): Displays liquidation levels as bubbles (circles) and horizontal lines. Bubbles show precise spots; lines mark broader zones. Size and color intensity reflect volume strength.
MTF Liquidation Levels: Overlay higher timeframes (e.g., Daily, Weekly) for thicker, brighter lines indicating stronger support/resistance.
Dynamic VWAP: Anchored VWAP with ATR multipliers for bias and liquidation estimates. Custom periods (e.g., Session, Month).
A.I. Volume Profit-Trend: Polyline prediction based on Ichimoku, volume delta, and targets (V, N, E, NT). Includes stop-loss, entry, and profit levels in a "Trade Window."
Stochastic Money Flow & Bollinger Band Width Percent: Labels above/below bars for momentum and volatility. Ranges from 3%–96% for extreme conditions.
Daily 0.618 Expansion (Fibonacci Ranges): Visualizes daily/HTF ranges with fib projections. Options for bar graphs and pre-market display.
Color Themes: "Classic" (red/green) or "Crypto" (teal/purple) for personalized visuals.
Trade Signals: High-probability setups like "Dark Green Bubble Surge" (long) or "Thick Red Line Breakdown" (short).
How to UseThe indicator shines in spotting liquidations and trends. Use the color language:Green/Teal: Bullish—buy or hold.
Red/Purple: Bearish—sell or short.
Yellow/Orange: Max volume—watch for reversals or breakouts.
Top Long Setups (3:1+ RR):Dark Green Bubble Surge: Enter long on dark green bubble below price + green bar. SL below bar low; TP 3x SL to red line. Exit on red bubble.
Thick Green Line Breakout: Enter long above thick green line + green bar. SL below line; TP 3x SL to red line. Exit on red rejection.
Yellow Line Bounce: Enter long off yellow line bounce + green bar. SL below low; TP 3x SL to higher red. Exit on red shift.
Top Short Setups (3:1+ RR):Dark Red Bubble Surge: Enter short on dark red bubble above price + red bar. SL above bar high; TP 3x SL to green line. Exit on green bubble.
Thick Red Line Breakdown: Enter short below thick red line + red bar. SL above line; TP 3x SL to green line. Exit on green support.
Yellow Line Rejection: Enter short off yellow line rejection + red bar. SL above high; TP 3x SL to lower green. Exit on green shift.
Pro Tips:In ranging markets: Trade bounces off levels.
In trends: Follow breakouts—aggressive moves take out levels.
Combine with Volume Profit-Trend: Polyline up + green = hit targets; down + red = breakdowns.
Stochastic Labels: >69% (red) = overbought; <31% (green) = oversold. Yellow (31–69%) = caution.
Bollinger Width: High % = volatility spike; low % = squeeze incoming.
For best results, use on crypto or forex charts. Test on demo accounts first.SettingsChart Settings: Toggle LiqD Levels/Bubbles, VWAP, Volume Profit-Trend, LiqD Window, Stochastic Flow, Bollinger Width.
HeatMap Liquidation Levels: Dynamic Lookback (8–21 bars for money flow), Market Bias (Both/Long/Short), Leverage (25–500 for signal frequency), Color Gradient (0–33 for intensity).
Dynamic VWAP: Anchor Period (e.g., Month), ATR Multiplier (0.9–3.14 for divergence).
MTF Liquidation Levels: Timeframe (e.g., D), Options (Current + HTF for overlays).
Daily 0.618 Expansion V4: Enable for fib ranges; Hide Historical, Show as Bar Graph, Resolution/Display (e.g., D), Mode (Daily Open/OHLC4/VWAP), Pre-Market Display.
Color Themes: Classic (red/green) or Crypto (teal/purple).
DisclaimersFinancial Disclaimer: This is for educational/informational purposes only. Not financial, investment, or trading advice. Use at your own risk; no liability for losses.
Copyright & Fair Use: Open-source under Mozilla Public License 2.0 and CC BY-NC-SA 4.0. Reuse for non-commercial, educational purposes with credit. Fair use applies per U.S. law (e.g., 17 U.S.C. § 107).
AI & Educational Reuse: AI modifications for learning are allowed under fair use precedents (e.g., Sony v. Universal, 1984).
TradingView Rules: Complies with platform guidelines; federal laws supersede any conflicts.
Risk Warning: Trading involves financial risk. Past performance ≠ future results. Rubik's Algo assumes no liability.
© 2025 Rubik's Algo. All rights reserved. Built with contributions from open-source Pine Script community and AI assistance (e.g., Grok). Special thanks to @StupidBitcoin
and referenced creators.
Session Volume Profile - Open Source (DeadCat) Decided to make this Open Source so everyone can make edits.
Volume Profile is a charting study that displays trading activity over specific time periods at various price levels. It appears as a horizontal histogram on the chart, revealing where traders have shown the most interest based on volume concentration.
This Volume Profile automatically anchors to user-selected timeframes, creating fresh volume analysis for each new period while maintaining clean, systematic visualization of price-volume relationships.
Core Components:
Point of Control (POC): The price level with the highest volume activity during the selected period, marked with a yellow line and left-side label.
Value Area High/Low (VAH/VAL): Price boundaries that contain a specified percentage of the total volume (default 40%), helping identify the main trading range where most activity occurred.
Volume Histogram: Left-aligned bars showing volume distribution across price levels, with value area highlighting for enhanced visual clarity.
Key Features:
- Automatic Period Detection: Supports hourly, daily, weekly, and monthly timeframe anchoring
- Customizable Granularity: Adjustable rows (10-500) for different price resolution needs
- Labels: Clear POC, VAH, and VAL identification positioned at profile start
- Toggle Controls**: Optional display for volume rows, key levels, and background fills
- Clean Visualization: Profiles reset automatically at each new period for current market focus
Display Options:
- Profile Rows: Show/hide the volume histogram bars
- Key Level Lines: Individual controls for POC, VAH, and VAL display
- Value Area Background: Optional shading between VAH and VAL levels
- Color Customization: Separate color controls for all visual elements
The indicator provides systematic volume analysis by creating fresh profiles at regular intervals, helping traders identify significant price levels and volume patterns within their preferred timeframe structure.
Disclaimer: This indicator is for educational and informational purposes only. Trading decisions should be based on comprehensive analysis and proper risk management. Past performance does not guarantee future results.
Global M2 Money Supply Growth (GDP-Weighted)📊 Global M2 Money Supply Growth (GDP-Weighted)
This indicator tracks the weighted aggregate M2 money supply growth across the world's four largest economies: United States, China, Eurozone, and Japan. These economies represent approximately 69.3 trillion USD in combined GDP and account for the majority of global liquidity, making this a comprehensive macro indicator for analyzing worldwide monetary conditions.
════════════════════════════════════════════
🔧 KEY FEATURES:
📈 GDP-Weighted Aggregation
Each economy is weighted proportionally by its nominal GDP using 2025 IMF World Economic Outlook data:
• United States: 44.2% (30.62 trillion USD)
• China: 28.0% (19.40 trillion USD)
• Eurozone: 21.6% (15.0 trillion USD)
• Japan: 6.2% (4.28 trillion USD)
The weights are fully adjustable through the indicator settings, allowing you to update them annually as new IMF forecasts are released (typically April and October).
⏱️ Multiple Time Period Options
Choose between three calculation methods to analyze different timeframes:
• YoY (Year-over-Year): 12-month growth rate for identifying long-term liquidity trends and cycles
• MoM (Month-over-Month): 1-month growth rate for detecting short-term monetary policy shifts
• QoQ (Quarter-over-Quarter): 3-month growth rate for medium-term trend analysis
🔄 Advanced Offset Function
Shift the entire indicator forward by 0-365 days to test lead/lag relationships between global liquidity and asset prices. Research suggests a 56-70 day lag between M2 changes and Bitcoin price movements, but you can experiment with different offsets for various assets (equities, gold, commodities, etc.).
🌍 Individual Country Breakdown
Real-time display of each economy's M2 growth rate with:
• Current percentage change (YoY/MoM/QoQ)
• GDP weight contribution
• Color-coded values (green = monetary expansion, red = contraction)
📊 Smart Overlay Capability
Displays directly on your main price chart with an independent left-side scale, allowing you to visually correlate global liquidity trends with any asset's price action without cluttering the chart.
🔧 Customizable GDP Weights
All GDP values can be adjusted through the indicator settings without editing code, making annual updates simple and accessible for all users.
════════════════════════════════════════════
📡 DATA SOURCES:
All M2 money supply data is sourced from ECONOMICS (Trading Economics) for consistency and reliability:
• ECONOMICS:USM2 (United States)
• ECONOMICS:CNM2 (China)
• ECONOMICS:EUM2 (Eurozone)
• ECONOMICS:JPM2 (Japan)
All values are normalized to USD using current daily exchange rates (USDCNY, EURUSD, USDJPY) before GDP-weighted aggregation, ensuring accurate cross-country comparisons.
══════════════════════════════════════════════
💡 USE CASES & APPLICATIONS:
🔹 Liquidity Cycle Analysis
Track global monetary expansion/contraction cycles to identify when central banks are coordinating loose or tight monetary policies.
🔹 Market Timing & Risk Assessment
High M2 growth (>10%) historically correlates with risk-on environments and rising asset prices across crypto, equities, and commodities. Negative M2 growth signals monetary tightening and potential market corrections.
🔹 Bitcoin & Crypto Correlation
Compare with Bitcoin price using the offset feature to identify the optimal lag period. Many traders use 60-70 day offsets to predict crypto market movements based on liquidity changes.
🔹 Macro Portfolio Allocation
Use as a regime filter to adjust portfolio exposure: increase risk assets during liquidity expansion, reduce during contraction.
🔹 Central Bank Policy Divergence
Monitor individual country metrics to identify when major central banks are pursuing divergent policies (e.g., Fed tightening while China eases).
🔹 Inflation & Economic Forecasting
Rapid M2 growth often leads inflation by 12-18 months, making this a leading indicator for future inflation trends.
🔹 Recession Early Warning
Negative M2 growth is extremely rare and has preceded major recessions, making this a valuable risk management tool.
════════════════════════════════════════════
📊 INTERPRETATION GUIDE:
🟢 +10% or Higher
Aggressive monetary expansion, typically during crises (2001, 2008, 2020). The COVID-19 period saw M2 growth reach 20-27%, which preceded significant inflation and asset price surges. Strong bullish signal for risk assets.
🟢 +6% to +10%
Above-average liquidity growth. Central banks are providing stimulus beyond normal levels. Generally favorable for equities, crypto, and commodities.
🟡 +3% to +6%
Normal/healthy growth rate, roughly in line with GDP growth plus 2% inflation targets. Neutral environment with moderate support for risk assets.
🟠 0% to +3%
Slowing liquidity, potential tightening phase beginning. Central banks may be raising rates or reducing balance sheets. Caution warranted for high-beta assets.
🔴 Negative Growth
Monetary contraction - extremely rare. Only occurred during aggressive Fed tightening in 2022-2023. Strong warning signal for risk assets, often precedes recessions or major market corrections.
════════════════════════════════════════════
🎯 OPTIMAL USAGE:
📅 Recommended Timeframes:
• Daily or Weekly charts for macro analysis
• Monthly charts for very long-term trends
💹 Compatible Asset Classes:
• Cryptocurrencies (especially Bitcoin, Ethereum)
• Equity indices (S&P 500, NASDAQ, global markets)
• Commodities (Gold, Silver, Oil)
• Forex majors (DXY correlation analysis)
⚙️ Suggested Settings:
• Default: YoY calculation with 0 offset for current liquidity conditions
• Bitcoin traders: YoY with 60-70 day offset for predictive analysis
• Short-term traders: MoM with 0 offset for recent policy changes
• Quarterly rebalancers: QoQ with 0 offset for medium-term trends
════════════════════════════════════════════
📋 VISUAL DISPLAY:
The indicator plots a blue line showing the selected growth metric (YoY/MoM/QoQ), with a dashed reference line at 0% to clearly identify expansion vs. contraction regimes.
A comprehensive table in the top-right corner displays:
• Current global M2 growth rate (large, prominent display)
• Individual country breakdowns with their GDP weights
• Color-coded growth rates (green for positive, red for negative)
════════════════════════════════════════════
🔄 MAINTENANCE & UPDATES:
GDP weights should be updated annually (ideally in April or October) when the IMF releases new World Economic Outlook forecasts. Simply adjust the four GDP input parameters in the indicator settings - no code editing required.
The relative GDP proportions between the Big 4 economies change very gradually (typically <1-2% per year), so even if you update weights once every 1-2 years, the impact on the indicator's accuracy is minimal.
════════════════════════════════════════════
💭 TRADING PHILOSOPHY:
This indicator embodies the principle that "liquidity drives markets." By tracking the combined M2 money supply of the world's largest economies, weighted by their economic size, you gain insight into the fundamental liquidity conditions that underpin all asset prices.
Unlike single-country M2 indicators, this GDP-weighted approach captures the true global picture, accounting for the fact that US monetary policy has 2x the impact of Japanese policy due to economic size differences.
Perfect for macro-focused traders, long-term investors, and anyone seeking to understand the "tide that lifts all boats" in financial markets.
════════════════════════════════════════════
Created for traders and investors who incorporate global liquidity trends into their decision-making process. Best used alongside other technical and fundamental analysis tools for comprehensive market assessment.
⚠️ Disclaimer: M2 money supply is a lagging macroeconomic indicator. Past correlations do not guarantee future results. Always use proper risk management and combine with other analysis methods.
EMA Cross Strategy v5 (30 lots) (15 min candle only)- safe flip🚀 EMA Cross Strategy v5 (30 Lots) (15 min candle only)— Safe Flip Edition
Fully Automated | Fast | Reliable | Battle-tested
Welcome to a clean, powerful, and automation-friendly EMA crossover system.
This strategy is built for traders who want consistent trend-based entries without the risk of unwanted pyramiding or doubled positions.
🔥 How It Works
This strategy uses a fast EMA (10) crossing a slow EMA (20) to detect trend shifts:
Bullish Crossover → LONG (30 lots)
Bearish Crossover → SHORT (30 lots)
Every opposite signal safely flips the position by first closing the current trade, then opening a fresh position of exactly 30 lots.
No doubling.
No runaway position size.
No surprises.
Just clean, mechanical trend-following.
📈 Why This Strategy Stands Out
Unlike basic EMA crossbots, this version:
✔ Prevents unintended pyramiding
✔ Never over-allocates capital
✔ Works perfectly with webhook-based automation
✔ Produces stable, systematic entries
✔ Executes directional flips with precision
🔍 Backtest Highlights (1-Year)
(Backtests will vary by instrument/timeframe)
1,500+ trades executed
Profit factor above 1.27
Strong trend performance
Balanced long/short behavior
No margin calls
Consistent trade execution
This strategy thrives in trending markets and maintains strict discipline even in choppy conditions.
⚙️ Automation Ready
Designed for automated execution via webhook and API setups on supported platforms.
Just connect, run, and let the bot follow the rules without hesitation.
No emotions.
No overtrading.
No fear or greed.
Pure logic.






















