Multi-Scale Slope Alignment FilterMulti-Scale Slope Alignment Filter (MSSA)
█ OVERVIEW
This indicator identifies periods where the market trend, measured by the slope of a linear regression line, is aligned across multiple time scales (short, medium, and long-term). It acts as a trend confirmation filter, visually highlighting when different trend perspectives agree. The core idea is that signals or trades taken in the direction of aligned slopes might have a higher probability of success.
It plots the calculated slopes in a separate pane and colors the main chart background based on the alignment status: green for bullish alignment, red for bearish alignment.
█ HOW IT WORKS
The indicator calculates the slope of a linear regression line for three different lookback periods defined by the user inputs (`Short-Term`, `Medium-Term`, `Long-Term`).
The "slope" is determined by comparing the value of the linear regression line at the current bar (`offset=0`) to its value on the previous bar (`offset=1`).
A positive difference indicates an upward sloping regression line (potential uptrend).
A negative difference indicates a downward sloping regression line (potential downtrend).
The core calculation for a single slope is:
ta.linreg(source, length, 0) - ta.linreg(source, length, 1)
Based on these three slopes, the alignment state is determined:
Bullish Alignment: All three slopes (Short, Medium, Long) are positive (greater than 0). This suggests an uptrend is confirmed across all measured scales.
Bearish Alignment: All three slopes are negative (less than 0). This suggests a downtrend is confirmed across all measured scales.
Neutral/Mixed: The slopes do not unanimously agree (i.e., some are positive while others are negative, or some are zero). This indicates conflicting signals or a potential consolidation phase.
█ HOW TO USE
The primary use of the Multi-Scale Slope Alignment Filter (MSSA) is as a trend confirmation tool or trade filter .
Consider taking long trades only when the background is green ( Bullish Alignment ). This acts as confirmation that the broader trend context supports the long idea.
Consider taking short trades only when the background is red ( Bearish Alignment ). This acts as confirmation that the broader trend context supports the short idea.
Consider being cautious or avoiding trades when there is no background color ( Neutral/Mixed Alignment ), as the trend direction is unclear or conflicting across different timeframes.
This indicator is generally not designed to provide direct entry or exit signals on its own. It works best when combined with your primary trading strategy or other indicators to filter their signals based on multi-timeframe trend agreement.
Example filter logic:
// Example Long Condition
primaryLongSignal = ta.crossover(fastMA, slowMA) // Your primary signal
longCondition = primaryLongSignal and isBullishAligned // Filter with MSSA
// Example Short Condition
primaryShortSignal = ta.crossunder(fastMA, slowMA) // Your primary signal
shortCondition = primaryShortSignal and isBearishAligned // Filter with MSSA
█ INPUTS / SETTINGS
Short-Term Slope Length: (Default: 20) The lookback period for calculating the short-term linear regression slope.
Medium-Term Slope Length: (Default: 50) The lookback period for calculating the medium-term linear regression slope.
Long-Term Slope Length: (Default: 100) The lookback period for calculating the long-term linear regression slope.
Source: (Default: close) The price data source used for the linear regression calculations (e.g., close, HLC3, OHLC4).
█ VISUALIZATION
Background Coloring: The background of the main price chart is colored to indicate the alignment state:
Green: Bullish Alignment (all slopes positive).
Red: Bearish Alignment (all slopes negative).
No Color: Neutral/Mixed Alignment.
Indicator Pane: A separate pane below the main chart displays:
Three lines representing the calculated slope values for the short (red), medium (blue), and long (yellow) terms.
A dashed horizontal line at zero, making it easy to visually distinguish positive (above zero) from negative (below zero) slopes.
█ SUMMARY
The MSSA indicator provides a visual filter based on the consensus of trend direction across short, medium, and long-term perspectives using linear regression slopes. It helps traders align their strategies with the prevailing multi-scale trend environment. Remember to use it as part of a comprehensive trading plan and always practice sound risk management. This tool provides analysis and is not financial advice.
Indicadores e estratégias
Apex Edge SMC Tactical Suite
🛰 Apex Edge SMC Tactical Suite
Apex Edge SMC Tactical Suite is a precision-engineered multi-signal tool designed for advanced traders who demand real-time edge detection, breakout identification, and smart volatility-based risk placement. Built to blend seamlessly into any price action, SMC, or momentum-based strategy.
🔧 Core Features:
📍 Entry Signals
Green & red arrows appear only when a candle meets strict "Power Candle" criteria:
High momentum breakout
Volume spike confirmation
OBV spike divergence
Trend & HTF filter optional
Volatility-adjusted stop placement
💥 Power Candles
Smart detection of explosive volume+range candles
Custom "fuel score" system ranks their momentum potential
Displays as either candle highlights or subtle labels
📊 Fuel Meter
RSI-based energy tracker with customizable threshold
Plots real-time bar strength on a mini histogram
🧠 Trap Detection + Reversals
Detects stop hunt wicks or "liquidity traps"
Shows reversal diamonds on potential reclaim setups
Built-in swing logic confirms trap reversals
🧮 HTF Filtering
Optional higher-timeframe trend filter via Hull MA
Keeps signals aligned with broader market direction
📦 TP/SL Zones
Risk is calculated using volatility clustering (recent swing zones)
TP auto-calculated using ATR-based expansion
🔔 Alerts Included:
✅ Power Candle Detection
✅ Long/Short Entry Alerts
✅ Exit Signal Alerts
✅ Trap Defense Alerts
✅ Trap Reversal Confirmations
🎯 Ideal For:
SMC / ICT traders
Breakout traders
Trend followers
Scalpers / intraday setups
Momentum + volume combo traders
⚠️ Tip: Best paired with clean chart layouts, market structure, or order block frameworks. Can be combined with internal/external liquidity sweep logic for extra confluence.
Feel free to play around with the code and if you're a professional coder (unlike me) then please tag me into any versions that you can make better. Enjoy!
Disclaimer - This script was created entirely with many hours using the assistance of ChatGPT
VPSRVP Sovereign Reign (VPSR) - Advanced Volume Profile Analysis
A sophisticated volume analysis tool that provides deep insights into market participation and momentum through an intuitive visual interface. This indicator helps traders identify significant market moves, potential reversals, and institutional activity.
Key Features:
1. Smart Volume Analysis
• Dynamic volume profiling
• Institutional participation detection
• Abnormal volume identification
• Real-time momentum tracking
2. Advanced Visual System
• Color-coded volume bars
• Adaptive cloud formation
• Reversal pattern detection
• Fake-out warning system
Visual Components:
1. Volume Bars
• Green: Bullish pressure with normal volume
• Purple: Bearish pressure with normal volume
• White: Significant bullish participation
• Pink: Significant bearish participation
• Orange: High-probability reversal zones
2. Dynamic Cloud
• White Cloud: Bullish control zone
• Purple Cloud: Bearish control zone
• Cloud density indicates participation strength
• Adaptive to market conditions
Signal Interpretation:
1. Normal Market Conditions
• Green/Purple bars show directional pressure
• Cloud color indicates dominant force
• Cloud height shows average participation
2. Significant Events
• White/Pink bars signal major moves
• Orange bars highlight potential reversals
• Cloud expansion shows increasing activity
• Cloud contraction indicates consolidation
Customization Options:
• Volume MA Length: Smoothing factor
• Abnormal Volume Threshold: Sensitivity
• Cloud Display: Toggle visualization
• Color scheme optimization
Best Practices:
1. Multiple Timeframe Analysis
• Start with higher timeframes
• Confirm on lower timeframes
• Watch for confluence
2. Volume Analysis
• Compare to historical levels
• Monitor abnormal spikes
• Track participation trends
3. Trade Management
• Use as confirmation tool
• Wait for clear signals
• Monitor fake-out warnings
• Combine with price action
Trading Applications:
1. Trend Analysis
• Identify strong moves
• Spot weakening trends
• Detect consolidation
2. Reversal Detection
• Spot potential turning points
• Identify fake-outs
• Monitor institutional activity
3. Risk Management
• Volume-based position sizing
• Stop loss placement
• Profit target selection
The VP Sovereign Reign indicator excels at:
• Identifying significant market moves
• Detecting institutional participation
• Warning of potential reversals
• Highlighting fake-outs
• Providing clear market context
Risk Warning:
This indicator is designed as a technical analysis tool and should be used as part of a complete trading strategy. Past performance does not guarantee future results. Always employ proper risk management techniques.
Note: For optimal results, use in conjunction with price action analysis and other complementary indicators.
GIGANEVA V6.61 PublicThis enhanced Fibonacci script for TradingView is a powerful, all-in-one tool that calculates Fibonacci Levels, Fans, Time Pivots, and Golden Pivots on both logarithmic and linear scales. Its ability to compute time pivots via fan intersections and Range interactions, combined with user-friendly features like Bool Fib Right, sets it apart. The script maximizes TradingView’s plotting capabilities, making it a unique and versatile tool for technical analysis across various markets.
1. Overview of the Script
The script appears to be a custom technical analysis tool built for TradingView, improving upon an existing script from TradingView’s Community Scripts. It calculates and plots:
Fibonacci Levels: Standard retracement levels (e.g., 0.236, 0.382, 0.5, 0.618, etc.) based on a user-defined price range.
Fibonacci Fans: Trendlines drawn from a high or low point, radiating at Fibonacci ratios to project potential support/resistance zones.
Time Pivots: Points in time where significant price action is expected, determined by the intersection of Fibonacci Fans or their interaction with key price levels.
Golden Pivots: Specific time pivots calculated when the 0.5 Fibonacci Fan (on a logarithmic or linear scale) intersects with its counterpart.
The script supports both logarithmic and linear price scales, ensuring versatility across different charting preferences. It also includes a feature to extend Fibonacci Fans to the right, regardless of whether the user selects the top or bottom of the range first.
2. Key Components Explained
a) Fibonacci Levels and Fans from Top and Bottom of the "Range"
Fibonacci Levels: These are horizontal lines plotted at standard Fibonacci retracement ratios (e.g., 0.236, 0.382, 0.5, 0.618, etc.) based on a user-defined price range (the "Range"). The Range is typically the distance between a significant high (top) and low (bottom) on the chart.
Example: If the high is $100 and the low is $50, the 0.618 retracement level would be at $80.90 ($50 + 0.618 × $50).
Fibonacci Fans: These are diagonal lines drawn from either the top or bottom of the Range, radiating at Fibonacci ratios (e.g., 0.382, 0.5, 0.618). They project potential dynamic support or resistance zones as price evolves over time.
From Top: Fans drawn downward from the high of the Range.
From Bottom: Fans drawn upward from the low of the Range.
Log and Linear Scale:
Logarithmic Scale: Adjusts price intervals to account for percentage changes, which is useful for assets with large price ranges (e.g., cryptocurrencies or stocks with exponential growth). Fibonacci calculations on a log scale ensure ratios are proportional to percentage moves.
Linear Scale: Uses absolute price differences, suitable for assets with smaller, more stable price ranges.
The script’s ability to plot on both scales makes it adaptable to different markets and user preferences.
b) Time Pivots
Time pivots are points in time where significant price action (e.g., reversals, breakouts) is anticipated. The script calculates these in two ways:
Fans Crossing Each Other:
When two Fibonacci Fans (e.g., one from the top and one from the bottom) intersect, their crossing point represents a potential time pivot. This is because the intersection indicates a convergence of dynamic support/resistance zones, increasing the likelihood of a price reaction.
Example: A 0.618 fan from the top crosses a 0.382 fan from the bottom at a specific bar on the chart, marking that bar as a time pivot.
Fans Crossing Top and Bottom of the Range:
A fan line (e.g., 0.5 fan from the bottom) may intersect the top or bottom price level of the Range at a specific time. This intersection highlights a moment where the fan’s projected support/resistance aligns with a key price level, signaling a potential pivot.
Example: The 0.618 fan from the bottom reaches the top of the Range ($100) at bar 50, marking bar 50 as a time pivot.
c) Golden Pivots
Definition: Golden pivots are a special type of time pivot calculated when the 0.5 Fibonacci Fan on one scale (logarithmic or linear) intersects with the 0.5 fan on the opposite scale (or vice versa).
Significance: The 0.5 level is the midpoint of the Fibonacci sequence and often acts as a critical balance point in price action. When fans at this level cross, it suggests a high-probability moment for a price reversal or significant move.
Example: If the 0.5 fan on a logarithmic scale (drawn from the bottom) crosses the 0.5 fan on a linear scale (drawn from the top) at bar 100, this intersection is labeled a "Golden Pivot" due to its confluence of key Fibonacci levels.
d) Bool Fib Right
This is a user-configurable setting (a boolean input in the script) that extends Fibonacci Fans to the right side of the chart.
Functionality: When enabled, the fans project forward in time, regardless of whether the user selected the top or bottom of the Range first. This ensures consistency in visualization, as the direction of the Range selection (top-to-bottom or bottom-to-top) does not affect the fan’s extension.
Use Case: Traders can use this to project future support/resistance zones without worrying about how they defined the Range, improving usability.
3. Why Is This Code Unique?
Original calculation of Log levels were taken from zekicanozkanli code. Thank you for giving me great Foundation, later modified and applied to Fib fans. The script’s uniqueness stems from its comprehensive integration of Fibonacci-based tools and its optimization for TradingView’s plotting capabilities. Here’s a detailed breakdown:
All-in-One Fibonacci Tool:
Most Fibonacci scripts on TradingView focus on either retracement levels, extensions, or fans.
This script combines:
Fibonacci Levels: Static horizontal lines for retracement and extension.
Fibonacci Fans: Dynamic trendlines for projecting support/resistance.
Time Pivots: Temporal analysis based on fan intersections and Range interactions.
Golden Pivots: Specialized pivots based on 0.5 fan confluences.
By integrating these functions, the script provides a holistic Fibonacci analysis tool, reducing the need for multiple scripts.
Log and Linear Scale Support:
Many Fibonacci tools are designed for linear scales only, which can distort projections for assets with exponential price movements. By supporting both logarithmic and linear scales, the script caters to a wider range of markets (e.g., stocks, forex, crypto) and user preferences.
Time Pivot Calculations:
Calculating time pivots based on fan intersections and Range interactions is a novel feature. Most TradingView scripts focus on price-based Fibonacci levels, not temporal analysis. This adds a predictive element, helping traders anticipate when significant price action might occur.
Golden Pivot Innovation:
The concept of "Golden Pivots" (0.5 fan intersections across scales) is a unique addition. It leverages the symmetry of the 0.5 level and the differences between log and linear scales to identify high-probability pivot points.
Maximized Plot Capabilities:
TradingView imposes limits on the number of plots (lines, labels, etc.) a script can render. This script is coded to fully utilize these limits, ensuring that all Fibonacci levels, fans, pivots, and labels are plotted without exceeding TradingView’s constraints.
This optimization likely involves efficient use of arrays, loops, and conditional plotting to manage resources while delivering a rich visual output.
User-Friendly Features:
The Bool Fib Right option simplifies fan projection, making the tool intuitive even for users who may not consistently select the Range in the same order.
The script’s flexibility in handling top/bottom Range selection enhances usability.
4. Potential Use Cases
Trend Analysis: Traders can use Fibonacci Fans to identify dynamic support/resistance zones in trending markets.
Reversal Trading: Time pivots and Golden Pivots help pinpoint moments for potential price reversals.
Range Trading: Fibonacci Levels provide key price zones for trading within a defined range.
Cross-Market Application: Log/linear scale support makes the script suitable for stocks, forex, commodities, and cryptocurrencies.
The original code was from zekicanozkanli . Thank you for giving me great Foundation.
High ATRDisplays a short ATR as histogram and colors a bar and/or triggers an alert whenever the short ATR crosses a long ATR.
Useful to get you to the charts when action is taking place
Total Oscillator Matrix Total Oscillator Matrix provides reliable buy/sell signals based on the alignment of multiple momentum oscillators relative to the SMA 200. Designed for swing trading on higher timeframes or scalping strategies on lower timeframes, it filters opportunities using the SMA 200 as a trend benchmark
🔥 PratikMoneyCPTY – AI Crypto Swing SignalCreated by Pratik Patel, this advanced crypto trading tool fuses AI logic with technical indicators—EMA, SuperTrend, MACD, RSI, and candlestick patterns—to identify profitable swing entries. Built for crypto markets like BTC, ETH, and top altcoins on 4H/1D charts. Includes smart alerts, BUY/SELL tags, and popup notifications for actionable insights.
Estrategia EMAs + RSI + MACD con SL y TPestrategia diseñada por Miguelito para btc en 4 horas jugando con rsi macd y 2 emas
Visionary Insights (200 EMA on 1H + 20 EMA on 15m)How to use this script?
Open the 15 min chart and u will see the 200 EMA from the 1 hour chart and the 20 EMA of the 15 min chart
Trend Filter (1H Timeframe):
Price must be above the 200 EMA for a bullish setup
Price must be below the 200 EMA for a bearish setup
Entry Conditions (15m Timeframe):
Bullish:
Pullback to 20 EMA (close is near or below EMA 20)
RSI > 50
Bullish engulfing pattern
Bearish:
Pullback to 20 EMA (close is near or above EMA 20)
RSI < 50
Bearish engulfing pattern
SteveStrat 15MThis report provides a professional analysis of the BTC/USD pair on the 5-minute timeframe, focusing on an "Up and Down" trend assessment using Exponential Moving Averages (EMAs) and supplementary technical indicators. The goal is to identify the current trend and predict its future development based on real-time price data and market signals.
🎨 Volume Tuy Chinh - Super High Red//@version=5
indicator("🎨 Volume Tuy Chinh - Super High Red", overlay=false)
avgLength = input.int(20, "So nen tinh volume trung binh")
threshold = input.float(2.0, "Nguong volume sieu cao (x lan)")
avgVol = ta.sma(volume, avgLength)
isSuperHigh = volume > avgVol * threshold
plot(volume, style=plot.style_columns, color=isSuperHigh ? color.red : color.gray, title="Volume Tuy chinh")
YASINKARACAThe short-, medium-, and long-term indicator I have created is actually composed of moving averages, trend-following tools, Bollinger Bands, and various other indicators. You can use this indicator on any time frame.
If the turquoise moving average crosses above the orange moving average, it should be interpreted as a buy signal; if it crosses below, it should be interpreted as a sell signal.
Additionally, the white trend-following line indicates safety when the price is above it and risk when the price is below it.
The upper and lower lines of the Bollinger Bands are presented in gray. When the price approaches the lower Bollinger Band, it can be interpreted as a buying opportunity; when it reaches the upper band, it can be seen as a selling opportunity.
If the price is above the orange-colored slow moving average, the trend should be considered upward; if it is below, the trend is downward.
Wishing you success and a great day.
Yasin Karaca
Estrategia EMAs + RSI + MACD con SL y TPestrategia con emas rei macd y sl y tp para conseguir exprimir el grafico. en pruebas
Estrategia EMAs + RSI + MACD con SL y TPestrategia para enlazar con bitget. en pruebas para saber si es rentable
🟢🟥 Liquidity Grabs + Volumen Alto by ernesto[Crypto CLEAN]How does a Liquidity Grab work?
Pursuit of pending orders: In highly volatile markets, prices can move quickly to reach levels where there are many unexecuted orders. These orders can be stop-loss orders (which are being chased by the market), take-profit orders, or limit orders.
Market manipulation: In some cases, large market players, such as banks or financial institutions, can trigger these sharp price movements to capture liquidity and execute their trades at more favorable prices. This can generate a false price movement that appears to be going in one direction, but then quickly reverses.
Common causes: Liquidity grabs are common during times of low liquidity or when significant news events occur. They can also occur in consolidation ranges where the market is waiting for a "catalyst" to move.
Chande Composite Momentum Index [LazyBear]This is a Updated Version of the original indikator from lazy bear!
It has added a clear buy signal if the there is a bullish momentum under the -25 Level!
The buy is only confirmed if the SMA length 2 is sideways or up to prevent opening Trades in a ongoing Downtrend!
the Buy Singnals you find below, the green Dots.
Let me knwo if i shouldd add a sell also or should do any Changes.
Volume Range Profile with Fair Value (Zeiierman)// This work is licensed under a Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) creativecommons.org
// © Zeiierman {
//@version=6
indicator("Volume Range Profile with Fair Value (Zeiierman)", overlay=true, max_boxes_count=200, max_lines_count=10, max_labels_count=10)
//~~}
//~~ Tooltips for Inputs {
var string t1 = "Defines how many historical bars to consider when calculating the highest high and lowest low for the volume range zones. A larger value creates broader zones and more stable volume profiles, while a smaller value reacts quicker to price shifts."
var string t2 = "Controls how much of the full price range (from high to low) is allocated for the volume zones. A smaller value makes zones narrower and more focused on extremes; a higher value widens the zones to capture more volume."
var string t3 = "Sets the number of horizontal volume bins in each zone. More bins give finer granularity, while fewer bins make the volume histogram more generalized. Increasing too much may impact performance."
var string t4 = "Color used to fill the upper (typically sell) volume zone background. Lower transparency means stronger visual emphasis."
var string t5 = "Color used to fill the lower (typically buy) volume zone background. Adjust transparency to make it more or less visible against chart elements."
var string t6 = "Color used for the most active bin (POC – Point of Control). This bin represents where the most volume was traded within the zone."
var string t7 = "Toggle to display a dashed midline inside each volume zone. Helps visually separate the upper and lower halves of each zone."
var string t8 = "Color for the zone midlines. A more visible color helps with separation, especially on dark or noisy charts."
var string t9 = "When enabled, adds a label showing the percentage of total zone volume that occurred inside the POC bin."
var string t10 = "When enabled, displays labels showing the total Buy or Sell volume accumulated in each respective zone. Useful for reading directional volume pressure directly on the chart."
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Inputs {
len = input.int(100, "Lookback Period", minval=2, group="Period & Zones", tooltip=t1)
zoneP = input.float(30.0, "Zone Width (% of Range)", minval=1, maxval=50, step=0.5, group="Period & Zones", tooltip=t2)
bins = input.int(10, "Bins per Zone", minval=1, maxval=50, group="Volume Profile", tooltip=t3)
clrUp = input.color(color.new(color.red, 80), "Upper Zone Color", group="Visuals", tooltip=t4)
clrLo = input.color(color.new(color.lime, 80), "Lower Zone Color", group="Visuals", tooltip=t5)
clrPOC = input.color(color.new(color.white, 0), "POC Bin Color", group="Visuals", tooltip=t6)
showMid = input.bool(true, "Show Zone Midline", group="Visuals", tooltip=t7)
clrMid = input.color(color.new(color.orange, 0), "Midline Color", group="Visuals", tooltip=t8)
showPOClbl = input.bool(true, "Show POC % Label", group="Visuals", tooltip=t9)
showTotlbl = input.bool(true, "Show Total Vol Label", group="Visuals", tooltip=t10)
lblClr = color.white
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Globals {
var array allBoxes = array.new_box(0)
var array allLines = array.new_line(0)
var array allLabels = array.new_label(0)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Helpers {
f_formatVol(_v) =>
suf = ""
x = _v
if _v >= 1e9
suf := "B"
x := _v / 1e9
else if _v >= 1e6
suf := "M"
x := _v / 1e6
else if _v >= 1e3
suf := "K"
x := _v / 1e3
str.format("{0,number,#.###}{1}", x, suf)
f_clearDrawings() =>
for b in allBoxes
box.delete(b)
array.clear(allBoxes)
for l in allLines
line.delete(l)
array.clear(allLines)
for lb in allLabels
label.delete(lb)
array.clear(allLabels)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Zone calculation with distributed volume + buy/sell per bin {
f_zone() =>
hh = ta.highest(high, len)
ll = ta.lowest( low, len)
rng = hh - ll
zh = rng * zoneP / 100
ut = hh
ub = hh - zh
lt = ll + zh
lbz = ll
bs = zh / bins
volsU = array.new_float(bins, 0.0)
volsL = array.new_float(bins, 0.0)
buyU = array.new_float(bins, 0.0)
sellU = array.new_float(bins, 0.0)
buyL = array.new_float(bins, 0.0)
sellL = array.new_float(bins, 0.0)
totU = 0.0
totL = 0.0
for i = 0 to len - 1
bh = high
bl = low
v = volume
isBuy = close >= open
// Upper zone overlap
if bh >= ub and bl <= ut
br = bh - bl
if br <= syminfo.mintick
price = hl2
if price >= ub and price <= ut
j = math.floor((ut - price) / bs)
j := math.min(math.max(j, 0), bins - 1)
array.set(volsU, j, array.get(volsU, j) + v)
if isBuy
array.set(buyU, j, array.get(buyU, j) + v)
else
array.set(sellU, j, array.get(sellU, j) + v)
totU := totU + v
else
for j = 0 to bins - 1
binT = ut - j * bs
binB = binT - bs
ov = math.min(bh, binT) - math.max(bl, binB)
if ov > 0
frac = ov / br
cvol = v * frac
array.set(volsU, j, array.get(volsU, j) + cvol)
if isBuy
array.set(buyU, j, array.get(buyU, j) + cvol)
else
array.set(sellU, j, array.get(sellU, j) + cvol)
totU := totU + cvol
// Lower zone overlap
if bh >= lbz and bl <= lt
br2 = bh - bl
if br2 <= syminfo.mintick
price = hl2
if price >= lbz and price <= lt
j2 = math.floor((price - lbz) / bs)
j2 := math.min(math.max(j2, 0), bins - 1)
array.set(volsL, j2, array.get(volsL, j2) + v)
if isBuy
array.set(buyL, j2, array.get(buyL, j2) + v)
else
array.set(sellL, j2, array.get(sellL, j2) + v)
totL := totL + v
else
for j2 = 0 to bins - 1
binB2 = lbz + j2 * bs
binT2 = binB2 + bs
ov2 = math.min(bh, binT2) - math.max(bl, binB2)
if ov2 > 0
frac2 = ov2 / br2
cvol2 = v * frac2
array.set(volsL, j2, array.get(volsL, j2) + cvol2)
if isBuy
array.set(buyL, j2, array.get(buyL, j2) + cvol2)
else
array.set(sellL, j2, array.get(sellL, j2) + cvol2)
totL := totL + cvol2
pocU = 0
pocL = 0
maxU = 0.0
maxL = 0.0
for j = 0 to bins - 1
u = array.get(volsU, j)
l = array.get(volsL, j)
if u > maxU
maxU := u
pocU := j
if l > maxL
maxL := l
pocL := j
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Main {
f_clearDrawings()
hh = ta.highest(high, len)
ll = ta.lowest( low, len)
if hh - ll <= syminfo.mintick * bins
runtime.error("Range too small")
= f_zone()
startBar = bar_index - len + 1
histW = math.round(len * 0.5)
rightB = startBar - 2
leftB = rightB - histW
zoneEnd = bar_index + 1
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// Draw boxes {
bU = box.new(leftB, ut, zoneEnd, ub, border_color=na, bgcolor=clrUp)
bL = box.new(leftB, lt, zoneEnd, lbz, border_color=na, bgcolor=clrLo)
array.push(allBoxes, bU)
array.push(allBoxes, bL)
// Draw upper bins
pocVolU = totU > 0 ? array.get(volsU, pocU) : 0.0
for j = 0 to bins - 1
volj = array.get(volsU, j)
ratio = pocVolU > 0 ? volj / pocVolU : 0.0
wBars = math.max(1, math.ceil(histW * ratio))
x0 = math.max(leftB, rightB - wBars)
yT = ut - j * bs
yB = yT - bs
col = j == pocU ? clrPOC : color.new(clrUp, 50)
b = box.new(x0, yT, rightB, yB, border_color=color.new(color.red,30), bgcolor=col)
array.push(allBoxes, b)
// Draw lower bins
pocVolL = totL > 0 ? array.get(volsL, pocL) : 0.0
for j = 0 to bins - 1
volj = array.get(volsL, j)
ratio = pocVolL > 0 ? volj / pocVolL : 0.0
wBars = math.max(1, math.ceil(histW * ratio))
x0 = math.max(leftB, rightB - wBars)
yB2 = lbz + j * bs
yT2 = yB2 + bs
col2 = j == pocL ? clrPOC : color.new(clrLo, 50)
b2 = box.new(x0, yT2, rightB, yB2, border_color=color.new(color.lime,30), bgcolor=col2)
array.push(allBoxes, b2)
// Midlines
if showMid
mU = (ut + ub) / 2
mL = (lt + lbz) / 2
lnU = line.new(startBar, mU, zoneEnd, mU, color=clrMid, style=line.style_dashed)
lnL = line.new(startBar, mL, zoneEnd, mL, color=clrMid, style=line.style_dashed)
array.push(allLines, lnU)
array.push(allLines, lnL)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Draw Total‑Volume Labels {
if showTotlbl
// Upper zone: total Sell volume
totalSellU = array.sum(sellU)
if totalSellU > 0
labU = label.new(
startBar + histW/2, ut + bs,
"Sell Vol: " + f_formatVol(totalSellU),
xloc = xloc.bar_index,
style = label.style_label_center,
color = color.red,
textcolor = color.white,
size = size.normal
)
array.push(allLabels, labU)
// Lower zone: total Buy volume
totalBuyL = array.sum(buyL)
if totalBuyL > 0
labL = label.new(
startBar + histW/2, lbz - bs,
"Buy Vol: " + f_formatVol(totalBuyL),
xloc = xloc.bar_index,
style = label.style_label_center,
color = color.green,
textcolor = color.white,
size = size.normal
)
array.push(allLabels, labL)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Draw POC Vol % {
xLab = zoneEnd + 1
// Upper zone POC
if totU > 0
pvU = array.get(volsU, pocU)
bvU = array.get(buyU, pocU)
svU = array.get(sellU, pocU)
buyPctU = pvU > 0 ? bvU / pvU * 100 : 0
sellPctU = pvU > 0 ? svU / pvU * 100 : 0
totalPctU= pvU / totU * 100
txtU = "POC Vol: " +
"Buy " + str.format("{0,number,#.##}%", buyPctU) + " " +
"Sell " + str.format("{0,number,#.##}%", sellPctU) + " " +
"Total " + str.format("{0,number,#.##}%", totalPctU)
colU = buyPctU >= sellPctU ? color.green : color.red
labPOCU = label.new(
xLab, ut - (pocU + 0.5) * bs, txtU,
xloc = xloc.bar_index,
style = label.style_label_left,
color = colU,
textcolor = color.white,
size = size.small
)
array.push(allLabels, labPOCU)
// Lower zone POC
if totL > 0
pvL = array.get(volsL, pocL)
bvL = array.get(buyL, pocL)
svL = array.get(sellL, pocL)
buyPctL = pvL > 0 ? bvL / pvL * 100 : 0
sellPctL = pvL > 0 ? svL / pvL * 100 : 0
totalPctL = pvL / totL * 100
txtL = "POC Vol: " +
"Buy " + str.format("{0,number,#.##}%", buyPctL) + " " +
"Sell " + str.format("{0,number,#.##}%", sellPctL) + " " +
"Total " + str.format("{0,number,#.##}%", totalPctL)
colL = buyPctL >= sellPctL ? color.green : color.red
labPOCL = label.new(
xLab, lbz + (pocL + 0.5) * bs, txtL,
xloc = xloc.bar_index,
style = label.style_label_left,
color = colL,
textcolor = color.white,
size = size.small
)
array.push(allLabels, labPOCL)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ 6. POC‑volume trend line {
pocPrice = ut - (pocU + 0.5) * bs
avgPocPrice = ta.sma(pocPrice, len)
delta = avgPocPrice - avgPocPrice
lineColor = delta >= 0 ? color.green : color.red
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
// ~~ Plot {
plot(
avgPocPrice,
title = "Fair value - drifting over time.",
color = lineColor,
linewidth = 1,
style = plot.style_line
)
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}
EMA Crossover Strategy with Trailing Stop and AlertsPowerful EMA Crossover Strategy with Dynamic Trailing Stop and Real-Time Alerts
This strategy combines the simplicity and effectiveness of EMA crossovers with a dynamic trailing stop-loss mechanism for robust risk management.
**Key Features:**
* **EMA Crossover Signals:** Identifies potential trend changes using customizable short and long period Exponential Moving Averages.
* **Trailing Stop-Loss:** Automatically adjusts the stop-loss level as the price moves favorably, helping to protect profits and limit downside risk. The trailing stop percentage is fully adjustable.
* **Visual Buy/Sell Signals:** Clear buy (green upward label) and sell (red downward label) signals are plotted directly on the price chart.
* **Customizable Inputs:** Easily adjust the lengths of the short and long EMAs, as well as the trailing stop percentage, to optimize the strategy for different assets and timeframes.
* **Real-Time Alerts:** Receive instant alerts for buy and sell signals, ensuring you don't miss potential trading opportunities.
**How to Use:**
1. Add the strategy to your TradingView chart.
2. Customize the "Short EMA Length," "Long EMA Length," and "Trailing Stop Percentage" in the strategy's settings.
3. Enable alerts in TradingView to receive notifications when buy or sell signals are generated.
This strategy is intended to provide automated trading signals based on EMA crossovers with built-in risk management. Remember to backtest thoroughly on your chosen instruments and timeframes before using it for live trading.
#EMA
#Crossover
#TrailingStop
#Strategy
#TradingView
#TechnicalAnalysis
#Alerts
#TradingStrategy
Enhanced Futures Multi-Signal StrategyThis is my second strategy indicator, please try to backtest and use it, hopefully it will be useful.
网格交易v1.0### Strategy Function Overview
**Grid Trading Framework:**
- Set up 11 grid buy levels evenly distributed between `maxPrice` and `minPrice`.
- Fund allocation increases progressively with each lower grid level (weights 1–11), resulting in more buying at lower prices.
- The grid range is controlled by the `range1` parameter (default: -10%).
**Semi-Final and Final DCA (Dollar-Cost Averaging) Buys:**
- A larger buy order is triggered when the price drops to the `semifinal` level (default: -12%).
- The largest buy order is triggered when the price drops to the `final` level (default: -15%).
**Take-Profit Mechanism:**
- **Primary Take-Profit:** All holdings are sold for profit when the average entry price rises by `tp%`.
- **First Order Trailing Take-Profit:** If only the first order has been executed, a dynamic trailing take-profit is set based on ATR.
**Visualization Elements:**
- **Grid Lines and Labels:** Show the price and quantity at each buy level.
- **Price Lines:** Indicate the highest grid price, the current average entry price, and the take-profit target.
- **Event Markers:** Flag for start time, 🛑 for semi-final trigger, and 🚀 for final trigger.
Market Session Boxes with Volume Delta [algo_aakash]This script highlights four key forex trading sessions — Tokyo, London, New York, and Sydney — by drawing color-coded boxes directly on the chart. For each session, it shows:
High and low of the session
Total volume traded
Volume delta (bullish vs bearish pressure)
Optional extension of session highs/lows into future candles
Cleanly labeled time range and stats
Users can:
Select which sessions to display
Customize session times (in UTC+0)
Choose colors per session
Toggle session labels and extension lines
Use Case: Designed to help intraday and short-term traders visualize market rhythm, liquidity zones, and session-based volatility. The volume delta metric adds an extra layer of sentiment analysis.
This tool works best on intraday timeframes like 15m, 30m, or 1H.
Disclaimer:
This indicator is for educational and visual analysis purposes. It does not constitute trading advice or guarantee results. Always conduct your own analysis before making trading decisions.
🟢🟥 Liquidity Grabs + Volumen Alto by ernesto[Crypto CLEAN]Name: 🟢🟥 Liquidity Grabs + High Volume
This indicator identifies potential liquidity grabs at both swing highs and swing lows, confirmed by a high volume spike. It's designed specifically for crypto trading and works across all timeframes.
🔍 What it does:
Detects possible stop hunts / liquidity sweeps.
Confirms with volume higher than the average (user-defined multiplier).
Marks the event with a clean label above or below the candle (no background coloring).
Great for spotting institutional moves or whale activity.
Compatible with any asset and timeframe.
📌 How it works:
A swing high is considered a liquidity grab if the high breaks recent highs and volume is elevated.
A swing low is a grab if the low breaks recent lows with high volume.
Labels show:
🟥 High Liquidity Grab (above candle)
🟩 Low Liquidity Grab (below candle)
🔔 Alerts included so you never miss a move.
SignalCore Widodo Budi v1.0SignalCore Widodo Budi v1.0 is an all-in-one breakout and trend signal suite, designed to help traders detect high-probability trade setups using a fusion of price action, momentum, and volume.
✅ Combines breakout & breakdown detection using:
Donchian Channel (20)
Moving Averages (SMA 20 & 50)
MACD momentum confirmation
Volume spike detection
ADX trend strength
Heikin Ashi trend filter
🧠 Additional tools:
Conditional Stochastic %K/%D
RSI (Overbought/Oversold levels)
ADX visual + DI+/DI- alerts
Auto labels for breakout and pre-breakdown levels
🔔 Built-in alerts:
Breakout & Pre-Breakout
Breakdown & Pre-Breakdown
RSI signals
Stochastic crossovers
ADX directional strength
🎯 Best used on liquid instruments with defined ranges or trending behavior. Suitable for swing traders, momentum traders, and intraday scalpers alike.
Created by: Widodo Budi, 2025
Version: v1.0