Linear Regression AnalysisJust another linear regression tool to play with :)
I have to say that linear regression is one of my favorite indictor so i just try to play to show
how its we can make it smarter:)
the dashed lines are represent linear regression clone with high low and mid level shown.
the blue thin line show longer trend projection
the trend is option that can use for shorter trend
在腳本中搜尋"smart"
Hyper Frame Fibo MA RibbonsIntroduction
Moving averages are an integral part of the TA world. There are different types of moving averages and each person uses them depending on their strategy and market conditions.
Meanwhile, the main variable in calculating the averages is their LENGTH. This value is optional, but not every value is applicable.
After much experience in the world of financial markets, I came to the conclusion that although the most popular length values are 20, 50, 100, and 200, the Fibonacci number come with surprising results .
Description
The following script calculates seven averages with the length of Fibonacci numbers (34, 55, 89, 144, 233, 377 and 610) with the formula of your choice (SMA, EMA, WMA, HMA) and shows that we named it FiboMa .
You can also have Bollinger Bands with the desired frame at the same time.
This is not the whole story...
You can see the same values from smaller or larger frames at the same time!
We named this feature Hyper Frame Vision .
It is possible to display values for FiboMa up to three hyper frames (with the main frame a total of 4 levels) and in the Bollinger Bands one hyper frame (with the main frame a total of 2 levels).
By default, the display of FiboMa hyper frame values is limited to the last 10 bars, which you can change to an arbitrary value by changing the source code.
The display of hyper frame values is not limited for Bollinger Band.
What is its use? What is it good for?
Support and Resistance
Using dynamic support / resistance is much smarter than static! This protects you from the risk of many fake breaks, and your profit and loss limits will be more flexible and more efficient.
The intersection of FiboMa ribbons are potential points of support / resistance.
We use colors to easily identify supports / resistances.
Any average lower than the price is assumed as support and displayed in green, and any average above the price is assumed as resistance so displayed in red.
So the color of the averages is dynamic.
The color of FiboMa is a range from red to green. Whatever colors get saturated , the lenght is longer and the more power it has as support / resistance.
Volatility
With this script, you also have the ability to monitor the amount of market volatility ! The combination of Bollinger Bands and FiboMa provides a clear view of the market volatility.
The decrease and compression of the FiboMa width is a sign of a decrease in volatility and vice versa.
Trend
I don't see the need for additional explanation, only whenever the price is higher than the middle band , the BB cloud is green , and whenever it is lower , is red .
The wider FiboMa means the stronger trend.
How to use
In the script settings you have the ability to enable or disable anything except.
---------------------------------------------
Similar scripts have been published before and we were inspired by them and tried to improve idea and code uniqe one.
I hope it will be useful .. Support us with your likes and comments .. We have anothers great script .. Just started.
BitMEX Liquidation LevelsThis indicator plots BitMEX liquidation levels:
- 25x
- 50x
- 100x
The indicator works as following:
The underlying assumption (as with all liquidation calculations) obviously is that traders used fixed margin or go "all in" on their cross-margin account.
You then can configure a minimum trade volume and a minimum price change in percent for a candle to start computing liquidation levels from that candle
Additionally: configure the price base for the liqudation level: Candle high or low (default) works well, but you can also set "candle close" or "median high/low"
The indicator will then plot horizontal lines on the main chart showing price levels where many positions opened at the configured "start candle" will likely get liquidated.
It works for all BitMEX contracts and while it has been optimized for BitMEX, it will work on other exchanges with the same leverage levels (25x, 50x, 100x) and maintenance margin requirements too.
This indicator uses the Smart Volume indicator to compute the volume at the "start volume candle" setting where the liquidation level starts. This indicator can be found here: Smart Volume:
Price-Line Channel - A Friendly Support And Resistance IndicatorIntroduction
Lines are the most widely used figures in technical analysis, this is due to the linear trends that some securities posses (daily log SP500 for example), support and resistances are also responsible for the uses of lines, basically linear support and resistances are made with the assumption that the line connecting two local maximas or minimas will help the user detect a new local maxima or minima when the price will cross the line.
Technical indicators attempting to output lines have always been a concern in technical analysis, the mostly know certainly being the linear regression, however any linear models would fit in this category. In general those indicators always reevaluate their outputs values (repainting), others non repainting indicators returning lines are sometimes to impractical to set-up. This is what has encouraged me to make a simpler indicator based on the framework used in the recursive bands indicator that i published.
The proposed indicator aim to be extremely flexible and easy to use while returning linear support and resistances, an option that allow readjustment is also introduced, thus allowing for a "smarter" indicator.
The Indicator
The indicator return two extremities, the upper one aim to detect resistance points while the lower one aim to detect support points. The length setting control the steepness of the line, with higher values of length involving a lower slope, this make the indicator less reactive and interact with the price less often.
The name "price-line" comes from the fact that the channel is dependent on its own interaction with the price, therefore a breakout methodology can also be used, where price is up-trending when crossing with the upper extremity and down trending when crossing with the lower one.
Readjusted Option
The line steepness can be readjusted based on the market volatility, it make more sense for the line to be more steep when the market is more volatile, thus making it converge faster toward the price, this of course is done at the cost of some linearity. This is achieved by checking the "readjustment" option. The effects can be shown on BTCUSD, below the indicator without the readjusted option :
when the "readjustment" option is checked we have the following results :
The volatile down movement on BTCUSd make the upper extremity converge faster toward the price, this option can be great for volatile markets.
Conclusion
The recursive bands indicator prove to be an excellent framework that allow for the creation of lots of indicators, the proposed indicator is extremely efficient and provide an easy solution for returning linear support and resistances without much drawbacks, the readjusted option allow the indicator to adapt to the market volatility at the cost of linearity.
The performance of the indicator is relative to the motion of the price, however the indicator show signs of returning accurate support and resistances points. I hope the indicator find its use in the community.
Thanks for reading !
Note
Respect the house rules, always request permission before publishing open source code. This is an original work, requesting permission is the least you can do.
T-Step LSMAIntroduction
The trend step indicator family has produced much interest in the community, those indicators showed in certain cases robustness and reactivity. Their ease of use/interpretation is also a major advantage. Although those indicators have a relatively good fit with the input price, they can still be improved by introducing least-squares fitting on their calculations. This is why i propose a new indicator (T-Step LSMA) which aim to gather all the components of the trend-step indicator family (including the auto-line family).
The indicator will use as a threshold the mean absolute error between the input and the output (T-Channel) scaled with the efficiency ratio (Efficient Trend Step) while using least squares in order to provide a better fit with the price (Auto-Filter).
The Indicator
The interpretation of the indicator is easy, the indicator estimate an up-trending market when in blue, down-trending when in orange, the signal only depend on the trend-step part ( b in the code).
length control the period of the efficiency ratio as well as any components in the lsma calculation. The efficiency ratio allow to provide adaptivity, therefore the threshold will be lower when market is trending and higher when market is ranging.
Sc control the amount of feedback of the indicator, a value of 1 will use only the closing price as input, a value of 0.5 will use 50% of the closing price/indicator output as input, this allow to get smoother results.
It is possible to get the non-smooth version of the indicator by checking "No Smoothing".
This allow the indicator to filter more information.
Least Squares Smoothing - Benefits
One could ask why introducing least squares smoothing, there are several reasons to this choice, we have seen that trend-step indicators are boxy, they filter most of the variational information in the price, introducing least squares smoothing allow to gain back some of this variational information while providing a better fit with the price, the indicator is more noisy but also more practical in certain situations.
For example the indicator in its boxy form can't really be useful as input for other indicators, which is not the case with this version.
Relative strength index of period 14 using the proposed indicator as input.
Down-Sides
The indicator is dependent on the time frame used, larger time frames resulting in an indicator overfitting, sticking with lower time frames might be ideal. The indicator behavior might also change depending on the market in which it is applied.
Setting Up Alerts For The Indicator
Alerts conditions are already set, in order to create an alert based on the indicator follow these steps :
Go to the alert section (the alarm clock) -> create new alert -> select T-Step LSMA in condition -> Below select Up or Dn (Up for a up-trending alert and Dn for a down-trending alert)
In option select "once per bar close", change the message if you want a personalized message.
Conclusion
I don't think i'll post other indicators related to the trend-step framework for the time to comes, nonetheless the ones posted proven to have interesting results as well as many upsides. Although i don't think they would generate positive long-terms returns they could still be of use when using smarter volatility metrics as threshold. The proposed indicator conserve more information than its relatives and might find some use as input for other indicators.
Recommended Use Of The Code
Although i don't put restrictions on the code usage, i still recommend creative and pertinent changes to be made, graphical changes or any minor changes are not necessary, remember that such practice is disrespectful toward the author, you don't want to load up the tradingview servers for nothing right ?
Support Me
Making indicators sure is hard, it takes time and it can be quite lonely to, so i would love talking with you guys while making them :) There isn't better support than the one provided by your friends so drop me a message.
Kaufman Adaptive Least Squares Moving AverageIntroduction
It is possible to use a wide variety of filters for the estimation of a least squares moving average, one of the them being the Kaufman adaptive moving average (KAMA) which adapt to the market trend strength, by using KAMA in an lsma we therefore allow for an adaptive low lag filter which might provide a smarter way to remove noise while preserving reactivity.
The Indicator
The lsma aim to minimize the sum of the squared residuals, paired with KAMA we obtain a great adaptive solution for smoothing while conserving reactivity. Length control the period of the efficiency ratio used in KAMA, higher values of length allow for overall smoother results. The pre-filtering option allow for even smoother results by using KAMA as input instead of the raw price.
The proposed indicator without pre-filtering in green, a simple moving average in orange, and a lsma with all of them length = 200. The proposed filter allow for fast and precise crosses with the moving average while eliminating major whipsaws.
Same setup with the pre-filtering option, the result are overall smoother.
Conclusion
The provided code allow for the implementation of any filter instead of KAMA, try using your own filters. Thanks for reading :)
Kaufman Adaptive Moving AverageKaufman Adaptive Moving Average script.
This indicator was originally developed by Perry J. Kaufman (`Smarter Trading: Improving Performance in Changing Markets`, 1995).
Candle CountingI was talking with one of the biggest hedge fund traders in the world the other day. He goes to me, "Brian, why don't you come and work for us, since you're a better trader than anyone at our firm?" Well I said I would, but there's no one there with an iq as high as mine, so I'd have no one to talk to when I'm eatin my sammiches. Man I'm a savant mate, I'm a f***ing CANDLE COUNTER. I tell people all the time, know your market. And that's your tip of the day really, I mean nobody out there knows Yen better than me. I mean the other day I was 70,000 in the hole, but I didn't get out, I was balls deep making a cheese sammich on the George Forman. Now I mean you can try and do what I'm doing, but understand something, I am 100% smarter than you, and your machines. In the industry, they call me Mr. Yen, I touch the sun, and my d*ck, regularly.
Volume Heatmap ProVolume Heatmap Pro - Statistical Volume Analysis Indicator
First and foremost, credit goes to xdecow. You can find the original indicator here:
I forked this indicator to make some changes that I wanted (mainly being able to color the volume bars and candlesticks independently).
Overview:
Volume Heatmap Pro is an advanced volume analysis tool that uses statistical analysis to identify significant volume anomalies in real-time. By calculating how many standard deviations the current volume is from its moving average (Z-score), it provides a visual heatmap that instantly highlights unusual volume activity.
Key Features:
📊 Statistical Volume Analysis
- Measures volume using Z-score calculations (standard deviations from mean)
- Dynamically adapts to each instrument's unique volume profile
- Identifies statistically significant volume spikes and drops
🎨 Visual Heatmap System
- Color-coded candlesticks and volume bars based on volume intensity
- Five threshold levels: Extra High (4σ), High (2.5σ), Medium (1σ), Normal (-0.5σ), and Low
- Multiple display modes: backgrounds, lines, or both
- Customizable colors for all threshold levels
⚙️ Flexible Configuration
- Adjustable moving average and standard deviation lengths (default: 610)
- Two color modes: Heatmap (volume-only) or Up/Down (volume + direction)
- Volume bar opacity control
🔔 Smart Alerts
- Set alerts for any threshold level
- Separate alerts for up/down volume bars
- Monitor unusual volume activity across multiple instruments
Use Cases:
- Identify institutional activity and large player participation
- Spot potential breakouts or reversals with volume confirmation
- Monitor volume climax and exhaustion patterns
- Analyze volume trends across different timeframes
- Validate price movements with statistical volume analysis
Perfect For:
Day traders, swing traders, VPA traders, and investors who want to add visual confirmation to their volume analysis and quickly identify when "smart money" is active in the market.
Ultimate ATR ProUltimate ATR Pro - Professional Volatility Analysis Tool
Unlock Market Turning Points with Precision Volatility Analysis
Key Features
1. Advanced ATR Calculation Engine
4 MA Types: RMA (Wilder's), SMA, EMA, WMA
Customizable Period: Adjust ATR length (default: 14)
Multi-Timeframe Compatible: Works on all chart intervals
2. Smart Volatility Extremum Detection
Low Volatility Signals: Identifies ATR contraction periods
High Volatility Signals: Detects ATR expansion phases
Custom Lookback Period: Set detection window (10-500 bars)
3. Professional Divergence System
Bullish Divergence: Price ↑ while ATR ↓ (trend continuation signal)
Bearish Divergence: Price ↓ while ATR ↑ (trend acceleration signal)
Visual Connection Lines: Dotted lines highlight price-ATR relationships
4. Visual Extreme Value Lines (NEW!)
Lowest ATR Line: Customizable dotted line showing minimum volatility level
Highest ATR Line: Customizable dotted line marking maximum volatility level
Dynamic Positioning: Auto-updates with each new bar
5. Complete Customization System
Full Color Control:
Signal markers (low/high volatility)
Divergence labels
ATR line
Extreme value lines
Background highlights
Toggle Features: Enable/disable any visual element
6. Intelligent Alert System
Dual Alert Types:
Volatility Extremes (Low/High ATR)
Divergence Signals (Bullish/Bearish)
Smart Cooldown: Prevent alert fatigue with adjustable cooldown period
Visual Alert Tags: Color-coded notifications at chart top
7. Professional Dashboard
Real-time status monitoring:
Current volatility state
Cooldown timers
Extreme ATR values
Divergence detection status
Color-coded for instant recognition
How Traders Benefit
Strategic Applications
markdown
复制
| SIGNAL | MARKET CONDITION | TRADING IMPLICATION |
|-----------------------|---------------------------|------------------------------------|
| Low Volatility | Contraction/Consolidation | Prepare for breakout strategies |
| High Volatility | Expansion/Climax | Watch for reversals or pauses |
| Bullish Divergence | Price↑ ATR↓ | Trend continuation opportunity |
| Bearish Divergence | Price↓ ATR↑ | Trend acceleration warning |
| Lowest ATR Line Break | Volatility breakout | Confirm directional movement |
Risk Management Tools
ATR-Based Position Sizing: Use extreme values to calculate optimal trade size
Dynamic Stop Loss: Adjust stops based on current volatility regime
Volatility Filtering: Avoid trading during uncertain high-volatility periods
Setup Recommendations
Parameter Guide
pine
复制
length: 14 // Standard ATR period
lookback: 50 // Optimal for swing trading
cooldownPeriod: 14// Balanced alert frequency
minLineColor: #00C853 // Bright green for low volatility
maxLineColor: #FF3D00 // Bright red for high volatility
Professional Configurations
Day Trading: Lookback=20-30, Cooldown=5-10
Swing Trading: Lookback=50-100, Cooldown=10-20
Position Trading: Lookback=100-200, Cooldown=20-50
Why Choose Ultimate ATR Pro?
"Transforms complex volatility analysis into clear, actionable visual cues - the essential tool for breakout traders and risk managers alike."
Install Now To:
Spot consolidation before big moves
Identify exhaustion at trend extremes
Automate volatility-based position sizing
Receive instant alerts at critical volatility turns
Gain professional-grade insights into market dynamics
Master market rhythms with the most advanced ATR analysis tool on TradingView!
Compatibility: Works flawlessly across stocks, forex, crypto, and commodities on all timeframes.
Version: 2.0 (Enhanced with Extreme Value Lines)
Category: Volatility Analysis | Risk Management | Professional Trading
Advanced Correlation Monitor📊 Advanced Correlation Monitor - Pine Script v6
🎯 What does this indicator do?
Monitors real-time correlations between 13 different asset pairs and alerts you when historically strong correlations break, indicating potential trading opportunities or changes in market dynamics.
🚀 Key Features
✨ Multi-Market Monitoring
7 Forex Pairs (GBPUSD/DXY, EURUSD/GBPUSD, etc.)
6 Index/Stock Pairs (SPY/S&P500, DAX/NASDAQ, TSLA/NVDA, etc.)
Fully configurable - change any pair from inputs
📈 Dual Correlation Analysis
Long Period (90 bars): Identifies historically strong correlations
Short Period (6 bars): Detects recent breakdowns
Pearson Correlation using Pine Script v6 native functions
🎨 Intuitive Visualization
Real-time table with 6 information columns
Color coding: Green (correlated), Red (broken), Gray (normal)
Visual states: 🟢 OK, 🔴 BROKEN, ⚫ NORMAL
🚨 Smart Alert System
Only alerts previously correlated pairs (>80% historical)
Detects breakdowns when short correlation <80%
Consolidated alert with all affected pairs
🛠️ Flexible Configuration
Adjustable Parameters:
📅 Periods: Long (30-500), Short (2-50)
🎯 Threshold: 50%-99% (default 80%)
🎨 Table: Configurable position and size
📊 Symbols: All pairs are configurable
Default Pairs:
FOREX: INDICES/STOCKS:
- GBPUSD vs DXY • SPY vs S&P500
- EURUSD vs GBPUSD • DAX vs S&P500
- EURUSD vs DXY • DAX vs NASDAQ
- USDCHF vs DXY • TSLA vs NVDA
- GBPUSD vs USDCHF • MSFT vs NVDA
- EURUSD vs USDCHF • AAPL vs NVDA
- EURUSD vs EURCAD
💡 Practical Use Cases
🔄 Pairs Trading
Detects when strong correlations break for:
Statistical arbitrage
Mean reversion trading
Divergence opportunities
🛡️ Risk Management
Identifies when "safe" assets start moving independently:
Portfolio diversification
Smart hedging
Regime change detection
📊 Market Analysis
Understand underlying market structure:
Forex/DXY correlations
Tech sector rotation
Regional market disconnection
🎓 Results Interpretation
Reading Example:
EURUSD vs DXY: -98.57% → -98.27% | 🟢 OK
└─ Perfect negative correlation maintained (EUR rises when DXY falls)
TSLA vs NVDA: 78.12% → 0% | ⚫ NORMAL
└─ Lost tech correlation (divergence opportunity)
Trading Signals:
🟢 → 🔴: Broken correlation = Possible opportunity
Large difference: Indicates correlation tension
Multiple breaks: Market regime change
Time-Based Market Structure – DEMO (TRAL 00 / 03 / 29)This is a simplified DEMO version of our advanced time-based levels indicator.
It highlights only three key algorithmic time anchors:
00, 03, and 29 — moments when price is likely to react due to internal logic derived from advanced temporal analysis (Hopiplaka-inspired).
These time levels are often associated with liquidity shifts and potential trend reversals, especially when price aligns with these anchors.
Ideal for both intraday and multi-timeframe traders looking to observe how time-based reactions influence price behavior.
10kaDum by NAVHere's a comprehensive description for publishing your "10kaDum by NAV" script on TradingView:
---
# 🎯 10kaDum by NAV - Advanced SMA Alignment Trading System
**A comprehensive trading strategy that combines SMA alignment signals with intelligent dip-buying and automated profit-taking mechanisms.**
## 📊 Strategy Overview
The 10kaDum system identifies optimal entry and exit points using Simple Moving Average (SMA) alignment patterns, while providing additional opportunities through systematic dip buying and profit taking.
### Core Signals:
🟢 **MAIN BUY**: Triggers when Close < SMA20 < SMA50 < SMA200 (bearish alignment - potential reversal)
🟡 **10kaDum BUY**: Secondary buy signal when price drops 10% after main buy (dollar-cost averaging)
🟠 **10kaDum SELL**: Exit signal when price rises 10% from 10kaDum buy (quick profit taking)
🔴 **MAIN SELL**: Exit signal when Close > SMA20 > SMA50 > SMA200 (bullish alignment - trend reversal)
## 🔥 Key Features
### Smart Signal Management
- **One-time signals**: Each signal triggers only once until the opposite condition occurs
- **No signal spam**: Clean, actionable entries without repetitive alerts
- **Cycle-based logic**: Complete trading cycles from entry to exit
### Performance Analytics
- **Real-time statistics table** with configurable position and styling
- **Closed Trades**: Total number of completed 10kaDum cycles
- **Average Days**: Mean holding period for 10kaDum positions
- **Minimum Days**: Fastest trade completion time
- **Min Days Date**: When the fastest trade occurred
### Advanced Label System
- **Performance metrics**: Days held, gain percentage, and CAGR on exit signals
- **Calendar days calculation**: Accurate time-based performance (not just bars)
- **Anti-overlap positioning**: Smart label placement to avoid chart clutter
- **Fully customizable**: Colors, sizes, and text styling
### Professional Customization
- **Label colors**: Separate color controls for each signal type
- **Table styling**: Full control over fonts, colors, and positioning
- **Position controls**: Precise offset adjustments for optimal visibility
- **Alert system**: Built-in alerts for all signal types
## 📈 Trading Logic
**Entry Strategy:**
1. Wait for bearish SMA alignment (potential bottom)
2. Enter initial position on MAIN BUY
3. Add to position on 10% dips (10kaDum BUY)
**Exit Strategy:**
1. Take quick profits on 10kaDum positions (+10% gain)
2. Hold main position until bullish SMA alignment
3. Full exit on MAIN SELL signal
## 🎨 Visual Elements
- **SMA Lines**: 20, 50, and 200-period moving averages
- **Colored Labels**: Distinct visual signals for each action
- **Statistics Table**: Live performance tracking
- **Clean Design**: Minimal chart clutter with maximum information
## ⚡ Best Practices
- Use on daily or higher timeframes for best results
- Combine with volume analysis for confirmation
- Monitor the statistics table for strategy performance
- Adjust position sizes based on signal type
- Set alerts for hands-free trading
## 🔧 Customization Options
- **9 table positions** (top, middle, bottom × left, center, right)
- **5 font sizes** (tiny to huge)
- **Full color customization** for all elements
- **Adjustable label spacing** for different chart scales
- **Toggle statistics display** on/off
---
**Disclaimer**: This indicator is for educational purposes. Past performance doesn't guarantee future results. Always practice proper risk management and consider your financial situation before trading.
**Created by**: NAV
**Version**: 1.0
**Category**: Strategy / Trend Analysis
---
This description highlights the key features, provides clear usage instructions, and maintains a professional tone suitable for TradingView's marketplace.
Opening Range with Breakouts & Targets + Retest AlertsOpening Range with Breakouts & Targets + Retest Alerts
Opening Range Breakout strategy with custom sessions, breakout signals, dynamic targets, and smart retest alerts. Perfect for intraday traders seeking precision entries and high-probability setups.
This advanced ORB tool brings precision and flexibility to your trading by combining the Opening Range Breakout concept with retest confirmation, dynamic target projections, and custom session control.
Why Traders Love This Script
✅ High-Probability Setups – Breakouts with confirmation retests are statistically stronger.
✅ Custom Session Flexibility – Adapt the opening range to any market (Stocks, Forex, Crypto).
✅ Dynamic Targets – Automatically projected based on range size for clear profit objectives.
✅ Smart Alerts – Never miss a breakout retest opportunity with Unified Alert Conditions.
Features You’ll Get
✔ Opening Range Box – Marks the range for your selected timeframe or custom session.
✔ Breakout Arrows – Instant visual confirmation of bullish and bearish breakouts.
✔ Daily Bias Filter – Optional directional filter for higher accuracy.
✔ Dynamic Targets – Adaptive or extended display of projected targets.
✔ Retest Detection – Alerts when price retests the breakout zone after a breakout.
✔ Full Customization – Colors, text size, line styles, target styles, and more.
How to Use It
Set Your Opening Range – Default: 30 minutes after session open or choose a custom range.
Look for Breakouts – Signals appear when price closes beyond the range.
Wait for Retest – For higher confidence, enter on retest signals (green/red dots).
Manage Risk with Targets – Use dynamic target levels to plan your exits.
Pro Tip
Combine this indicator with EMA trend filters, VWAP, or volume confirmation for maximum precision.
Alerts
✅ Unified Break & Retest Alert – Fires when price successfully retests after a breakout, signaling a potential high-probability trade.
⚠ Disclaimer: This tool is for educational purposes only. Always use proper risk management and confirm with your own analysis before trading.
Liquidity Hunter PRO FINAL ✅Liquidity Hunter PRO ✅ is a smart tool designed for traders who want to spot key liquidity sweeps and hunt stop runs with precision.
🔑 How it works:
Automatically plots significant swing highs and lows (liquidity levels) using pivots.
Monitors these levels in real-time and detects when price sweeps above highs or below lows.
Draws clear lines, boxes, and sweep zones to visualize where liquidity was grabbed.
Highlights BUY/SELL opportunities after stop hunts with clean triangle markers and labels.
Fully customizable: set pivot lookback, maximum levels, line age, buffer zone, and visual style.
📌 Features:
✔️ Automatic swing high/low detection
✔️ Dynamic liquidity sweep boxes
✔️ BUY/SELL labels and triangle signals
✔️ Alerts for sweeps above highs and below lows
✔️ Adjustable buffer and line lifetime
✔️ Lightweight, clear and easy to use
💡 Idea: This script helps traders follow Smart Money Concepts (SMC) by showing where the market hunts liquidity before reversals. Combine with your own confluence and strategy for powerful entries.
⚠️ Reminder: Always use this tool with proper risk management — it does not guarantee entries by itself.
Ultra BUY SELL//@version=5
indicator("Ultra BUY SELL", overlay = false)
// Inputs
src = input(close, "Source", group = "Main settings")
p = input.int(180, "Trend period", group = "Main settings", tooltip = "Changes STRONG signals' sensitivity.", minval = 1)
atr_p = input.int(155, "ATR Period", group = "Main settings", minval = 1)
mult = input.float(2.1, "ATR Multiplier", step = 0.1, group = "Main settings", tooltip = "Changes sensitivity: higher period = higher sensitivty.")
mode = input.string("Type A", "Signal mode", options = , group = "Mode")
use_ema_smoother = input.string("No", "Smooth source with EMA?", options = , group = "Source")
src_ema_period = input(3, "EMA Smoother period", group = "Source")
color_bars = input(true, "Color bars?", group = "Addons")
signals_view = input.string("All", "Signals to show", options = , group = "Signal's Addon")
signals_shape = input.string("Labels", "Signal's shape", options = , group = "Signal's Addon")
buy_col = input(color.rgb(0, 255, 8), "Buy colour", group = "Signal's Addon", inline = "BS")
sell_col = input(color.rgb(255, 0, 0), "Sell colour", group = "Signal's Addon", inline = "BS")
// Calculations
src := use_ema_smoother == "Yes" ? ta.ema(src, src_ema_period) : src
// Source;
h = ta.highest(src, p)
// Highest of src p-bars back;
l = ta.lowest(src, p)
// Lowest of src p-bars back.
d = h - l
ls = ""
// Tracker of last signal
m = (h + l) / 2
// Initial trend line;
m := bar_index > p ? m : m
atr = ta.atr(atr_p)
// ATR;
epsilon = mult * atr
// Epsilon is a mathematical variable used in many different theorems in order to simplify work with mathematical object. Here it used as sensitivity measure.
change_up = (mode == "Type B" ? ta.cross(src, m + epsilon) : ta.crossover(src, m + epsilon)) or src > m + epsilon
// If price breaks trend line + epsilon (so called higher band), then it is time to update the value of a trend line;
change_down = (mode == "Type B" ? ta.cross(src, m - epsilon) : ta.crossunder(src, m - epsilon)) or src < m - epsilon
// If price breaks trend line - epsilon (so called higher band), then it is time to update the value of a trend line.
sb = open < l + d / 8 and open >= l
ss = open > h - d / 8 and open <= h
strong_buy = sb or sb or sb or sb or sb
strong_sell = ss or ss or ss or ss or ss
m := (change_up or change_down) and m != m ? m : change_up ? m + epsilon : change_down ? m - epsilon : nz(m , m)
// Updating the trend line.
ls := change_up ? "B" : change_down ? "S" : ls
// Last signal. Helps avoid multiple labels in a row with the same signal;
colour = ls == "B" ? buy_col : sell_col
// Colour of the trend line.
buy_shape = signals_shape == "Labels" ? shape.labelup : shape.triangleup
sell_shape = signals_shape == "Labels" ? shape.labeldown : shape.triangledown
// Plottings
// Signals with label shape
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Buy/Sell") and change_up and ls != "B" and not strong_buy, "Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.normal, text = "BUY", textcolor = color.white, force_overlay=true)
// Plotting the BUY signal;
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Buy/Sell") and change_down and ls != "S" and not strong_sell, "Sell signal" , color = colour, style = sell_shape, size = size.normal, text = "SELL", textcolor = color.white, force_overlay=true)
// Plotting the SELL signal.
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Strong") and change_up and ls != "B" and strong_buy, "Strong Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.normal, text = "STRONG", textcolor = color.white, force_overlay=true)
// Plotting the STRONG BUY signal;
plotshape(signals_shape == "Labels" and (signals_view == "All" or signals_view == "Strong") and change_down and ls != "S" and strong_sell, "Strong Sell signal" , color = colour, style = sell_shape, size = size.normal, text = "STRONG", textcolor = color.white, force_overlay=true)
// Plotting the STRONG SELL signal.
// Signal with arrow shape
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Buy/Sell") and change_up and ls != "B" and not strong_buy, "Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.tiny, force_overlay=true)
// Plotting the BUY signal;
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Buy/Sell") and change_down and ls != "S" and not strong_sell, "Sell signal" , color = colour, style = sell_shape, size = size.tiny, force_overlay=true)
// Plotting the SELL signal.
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Strong") and change_up and ls != "B" and strong_buy, "Strong Buy signal" , color = colour, style = buy_shape , location = location.belowbar, size = size.tiny, force_overlay=true)
// Plotting the STRONG BUY signal;
plotshape(signals_shape == "Arrows" and (signals_view == "All" or signals_view == "Strong") and change_down and ls != "S" and strong_sell, "Strong Sell signal" , color = colour, style = sell_shape, size = size.tiny, force_overlay=true)
// Plotting the STRONG SELL signal.
barcolor(color_bars ? colour : na)
// Bar coloring
// Alerts
matype = input.string(title='MA Type', defval='EMA', options= )
ma_len1 = input(title='Short EMA1 Length', defval=5)
ma_len2 = input(title='Long EMA1 Length', defval=7)
ma_len3 = input(title='Short EMA2 Length', defval=5)
ma_len4 = input(title='Long EMA2 Length', defval=34)
ma_len5 = input(title='Short EMA3 Length', defval=98)
ma_len6 = input(title='Long EMA3 Length', defval=45)
ma_len7 = input(title='Short EMA4 Length', defval=7)
ma_len8 = input(title='Long EMA4 Length', defval=11)
ma_len9 = input(title='Short EMA5 Length', defval=11)
ma_len10 = input(title='Long EMA5 Length', defval=15)
ma_offset = input(title='Offset', defval=0)
//res = input(title="Resolution", type=resolution, defval="240")
f_ma(malen) =>
float result = 0
if matype == 'EMA'
result := ta.ema(src, malen)
result
if matype == 'SMA'
result := ta.sma(src, malen)
result
result
htf_ma1 = f_ma(ma_len1)
htf_ma2 = f_ma(ma_len2)
htf_ma3 = f_ma(ma_len3)
htf_ma4 = f_ma(ma_len4)
htf_ma5 = f_ma(ma_len5)
htf_ma6 = f_ma(ma_len6)
htf_ma7 = f_ma(ma_len7)
htf_ma8 = f_ma(ma_len8)
htf_ma9 = f_ma(ma_len9)
htf_ma10 = f_ma(ma_len10)
//plot(out1, color=green, offset=ma_offset)
//plot(out2, color=red, offset=ma_offset)
//lengthshort = input(8, minval = 1, title = "Short EMA Length")
//lengthlong = input(200, minval = 2, title = "Long EMA Length")
//emacloudleading = input(50, minval = 0, title = "Leading Period For EMA Cloud")
//src = input(hl2, title = "Source")
showlong = input(false, title='Show Long Alerts')
showshort = input(false, title='Show Short Alerts')
showLine = input(false, title='Display EMA Line')
ema1 = input(true, title='Show EMA Cloud-1')
ema2 = input(true, title='Show EMA Cloud-2')
ema3 = input(true, title='Show EMA Cloud-3')
ema4 = input(true, title='Show EMA Cloud-4')
ema5 = input(true, title='Show EMA Cloud-5')
emacloudleading = input.int(0, minval=0, title='Leading Period For EMA Cloud')
mashort1 = htf_ma1
malong1 = htf_ma2
mashort2 = htf_ma3
malong2 = htf_ma4
mashort3 = htf_ma5
malong3 = htf_ma6
mashort4 = htf_ma7
malong4 = htf_ma8
mashort5 = htf_ma9
malong5 = htf_ma10
cloudcolour1 = mashort1 >= malong1 ? color.rgb(0, 255, 0) : color.rgb(255, 0, 0)
cloudcolour2 = mashort2 >= malong2 ? #4caf4f47 : #ff110047
cloudcolour4 = mashort4 >= malong4 ? #4caf4f52 : #f2364652
cloudcolour5 = mashort5 >= malong5 ? #33ff0026 : #ff000026
//03abc1
mashortcolor1 = mashort1 >= mashort1 ? color.olive : color.maroon
mashortcolor2 = mashort2 >= mashort2 ? color.olive : color.maroon
mashortcolor3 = mashort3 >= mashort3 ? color.olive : color.maroon
mashortcolor4 = mashort4 >= mashort4 ? color.olive : color.maroon
mashortcolor5 = mashort5 >= mashort5 ? color.olive : color.maroon
mashortline1 = plot(ema1 ? mashort1 : na, color=showLine ? mashortcolor1 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA1', force_overlay=true)
mashortline2 = plot(ema2 ? mashort2 : na, color=showLine ? mashortcolor2 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA2', force_overlay=true)
mashortline3 = plot(ema3 ? mashort3 : na, color=showLine ? mashortcolor3 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA3', force_overlay=true)
mashortline4 = plot(ema4 ? mashort4 : na, color=showLine ? mashortcolor4 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA4', force_overlay=true)
mashortline5 = plot(ema5 ? mashort5 : na, color=showLine ? mashortcolor5 : na, linewidth=1, offset=emacloudleading, title='Short Leading EMA5', force_overlay=true)
malongcolor1 = malong1 >= malong1 ? color.green : color.red
malongcolor2 = malong2 >= malong2 ? color.green : color.red
malongcolor3 = malong3 >= malong3 ? color.green : color.red
malongcolor4 = malong4 >= malong4 ? color.green : color.red
malongcolor5 = malong5 >= malong5 ? color.green : color.red
malongline1 = plot(ema1 ? malong1 : na, color=showLine ? malongcolor1 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA1', force_overlay=true)
malongline2 = plot(ema2 ? malong2 : na, color=showLine ? malongcolor2 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA2', force_overlay=true)
malongline3 = plot(ema3 ? malong3 : na, color=showLine ? malongcolor3 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA3', force_overlay=true)
malongline4 = plot(ema4 ? malong4 : na, color=showLine ? malongcolor4 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA4', force_overlay=true)
malongline5 = plot(ema5 ? malong5 : na, color=showLine ? malongcolor5 : na, linewidth=3, offset=emacloudleading, title='Long Leading EMA5', force_overlay=true)
fill(mashortline1, malongline1, color=cloudcolour1, title='MA Cloud1', transp=45)
fill(mashortline2, malongline2, color=cloudcolour2, title='MA Cloud2', transp=65)
fill(mashortline4, malongline4, color=cloudcolour4, title='MA Cloud4', transp=65)
fill(mashortline5, malongline5, color=cloudcolour5, title='MA Cloud5', transp=65)
leftBars = input(15, title='Left Bars ')
rightBars = input(15, title='Right Bars')
volumeThresh = input(20, title='Volume Threshold')
//
highUsePivot = fixnan(ta.pivothigh(leftBars, rightBars) )
lowUsePivot = fixnan(ta.pivotlow(leftBars, rightBars) )
r1 = plot(highUsePivot, color=ta.change(highUsePivot) ? na : #FF0000, linewidth=3, offset=-(rightBars + 1), title='Resistance', force_overlay=true)
s1 = plot(lowUsePivot, color=ta.change(lowUsePivot) ? na : #00ff0d, linewidth=3, offset=-(rightBars + 1), title='Support', force_overlay=true)
//Volume %
short = ta.ema(volume, 5)
long = ta.ema(volume, 10)
osc = 100 * (short - long) / long
//For bull / bear wicks
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © divudivu600
// Developer By ALCON ALGO
//telegram : @harmonicryptosignals
//@version = 5
//indicator(shorttitle='Oscillator Vision', title='Alcon Oscillator Vision', overlay=false)
n1 = input(10, 'Channel length')
n2 = input(21, 'Average length')
reaction_wt = input.int(defval=1, title='Reaction in change of direction', minval=1)
nsc = input.float(53, 'Levels About Buys', minval=0.0)
nsv = input.float(-53, 'Levels About Sells', maxval=-0.0)
Buy_sales = input(true, title='Only Smart Buy Reversal')
Sell_sales = input(true, title='Only Smart Sell Reversal')
Histogram = input(true, title='Show Histogarm')
//Trendx = input(false, title='Show Trendx')
barras = input(true, title='Divergence on chart(Bars)')
divregbull = input(true, title='Regular Divergence Bullish')
divregbear = input(true, title='Regular Divergence Bearish')
divhidbull = input(true, title='Show Divergence Hidden Bullish')
divhidbear = input(true, title='Show Divergence Hidden Bearish')
Tags = input(true, title='Show Divergence Lable')
amme = input(false, title='Activar media movil Extra para WT')
White = #FDFEFE
Black = #000000
Bearish = #e91e62
Bullish = #18e0ff
Strong_Bullish = #2962ff
Bullish2 = #00bedc
Blue1 = #00D4FF
Blue2 = #009BBA
orange = #FF8B00
yellow = #FFFB00
LEZ = #0066FF
purp = #FF33CC
// Colouring
tf(_res, _exp, gaps_on) =>
gaps_on == 0 ? request.security(syminfo.tickerid, _res, _exp) : gaps_on == true ? request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_on, barmerge.lookahead_off) : request.security(syminfo.tickerid, _res, _exp, barmerge.gaps_off, barmerge.lookahead_off)
ha_htf = ''
show_ha = input.bool(true, "Show HA Plot/ Market Bias", group="HA Market Bias")
ha_len = input(7, 'Period', group="HA Market Bias")
ha_len2 = input(10, 'Smoothing', group="HA Market Bias")
// Calculations {
o = ta.ema(open, ha_len)
c = ta.ema(close, ha_len)
h1 = ta.ema(high, ha_len)
l1 = ta.ema(low, ha_len)
haclose = tf(ha_htf, (o + h1 + l1 + c) / 4, 0)
xhaopen = tf(ha_htf, (o + c) / 2, 0)
haopen = na(xhaopen ) ? (o + c) / 2 : (xhaopen + haclose ) / 2
hahigh = math.max(h1, math.max(haopen, haclose))
halow = math.min(l1, math.min(haopen, haclose))
o2 = tf(ha_htf, ta.ema(haopen, ha_len2), 0)
c2 = tf(ha_htf, ta.ema(haclose, ha_len2), 0)
h2 = tf(ha_htf, ta.ema(hahigh, ha_len2), 0)
l2 = tf(ha_htf, ta.ema(halow, ha_len2), 0)
ha_avg = (h2 + l2) / 2
// }
osc_len = 8
osc_bias = 100 *(c2 - o2)
osc_smooth = ta.ema(osc_bias, osc_len)
sigcolor =
(osc_bias > 0) and (osc_bias >= osc_smooth) ? color.new(Bullish, 35) :
(osc_bias > 0) and (osc_bias < osc_smooth) ? color.new(Bullish2, 75) :
(osc_bias < 0) and (osc_bias <= osc_smooth) ? color.new(Bearish, 35) :
(osc_bias < 0) and (osc_bias > osc_smooth) ? color.new(Bearish, 75) :
na
// }
nsc1 = nsc
nsc2 = nsc + 5
nsc3 = nsc + 10
nsc4 = nsc + 15
nsc5 = nsc + 20
nsc6 = nsc + 25
nsc7 = nsc + 30
nsc8 = nsc + 35
nsv1 = nsv - 5
nsv2 = nsv - 10
nsv3 = nsv - 15
nsv4 = nsv - 20
nsv5 = nsv - 25
nsv6 = nsv - 30
nsv7 = nsv - 35
nsv8 = nsv - 40
ap = hlc3
esa = ta.ema(ap, n1)
di = ta.ema(math.abs(ap - esa), n1)
ci = (ap - esa) / (0.015 * di)
tci = ta.ema(ci, n2)
wt1 = tci
wt2 = ta.sma(wt1, 4)
direction = 0
direction := ta.rising(wt1, reaction_wt) ? 1 : ta.falling(wt1, reaction_wt) ? -1 : nz(direction )
Change_of_direction = ta.change(direction, 1)
pcol = direction > 0 ? Strong_Bullish : direction < 0 ? Bearish : na
obLevel1 = input(60, 'Over Bought Level 1')
obLevel2 = input(53, 'Over Bought Level 2')
osLevel1 = input(-60, 'Over Sold Level 1')
osLevel2 = input(-53, 'Over Sold Level 2')
rsi = ta.rsi(close,14)
color greengrad = color.from_gradient(rsi, 10, 90, #00ddff, #007d91)
color redgrad = color.from_gradient(rsi, 10, 90, #8b002e, #e91e62)
ob1 = plot(obLevel1, color=#e91e6301)
os1 = plot(osLevel1, color=#00dbff01)
ob2 = plot(obLevel2, color=#e91e6301)
os2 = plot(osLevel2, color=#00dbff01)
p1 = plot(wt1, color=#00dbff01)
p2 = plot(wt2, color=#e91e6301)
plot(wt1 - wt2, color=wt2 - wt1 > 0 ? redgrad : greengrad, style=plot.style_columns)
// fill(p1,p2,color = wt2 - wt1 > 0 ? redgrad: greengrad) // old
fill(p1,p2,color = sigcolor)
// new
fill(ob1,ob2,color = #e91e6350)
fill(os1,os2,color = #00dbff50)
midpoint = (nsc + nsv) / 2
ploff = (nsc - midpoint) / 8
BullSale = ta.crossunder(wt1, wt2) and wt1 >= nsc and Buy_sales == true
BearSale = ta.crossunder(wt1, wt2) and Buy_sales == false
Bullishh = ta.crossover(wt1, wt2) and wt1 <= nsv and Sell_sales == true
Bearishh = ta.crossover(wt1, wt2) and Sell_sales == false
plot(BullSale ? wt2 + ploff : na, style=plot.style_circles, color=color.new(Bearish, 0), linewidth=6, title='BuysG')
plot(BearSale ? wt2 + ploff : na, style=plot.style_circles, color=color.new(Bearish, 0), linewidth=6, title='SellsG')
plot(Bullishh ? wt2 - ploff : na, style=plot.style_circles, color=color.new(Strong_Bullish, 0), linewidth=6, title='Buys On Sale')
plot(Bearishh ? wt2 - ploff : na, style=plot.style_circles, color=color.new(Strong_Bullish, 0), linewidth=6, title='Sells on Sale')
//plot(Histogram ? wt1 - wt2 : na, style=plot.style_area, color=color.new(Blue2, 80), linewidth=1, title='Histograma')
//barcolor(barras == true and Bullishh == true or barras == true and Bearishh == true ? Bullish2 : na)
//barcolor(barras == true and BullSale == true or barras == true and BearSale == true ? Bearish : na)
/////// Divergence ///////
f_top_fractal(_src) =>
_src < _src and _src < _src and _src > _src and _src > _src
f_bot_fractal(_src) =>
_src > _src and _src > _src and _src < _src and _src < _src
f_fractalize(_src) =>
f_top_fractal(_src) ? 1 : f_bot_fractal(_src) ? -1 : 0
fractal_top1 = f_fractalize(wt1) > 0 ? wt1 : na
fractal_bot1 = f_fractalize(wt1) < 0 ? wt1 : na
high_prev1 = ta.valuewhen(fractal_top1, wt1 , 0)
high_price1 = ta.valuewhen(fractal_top1, high , 0)
low_prev1 = ta.valuewhen(fractal_bot1, wt1 , 0)
low_price1 = ta.valuewhen(fractal_bot1, low , 0)
regular_bearish_div1 = fractal_top1 and high > high_price1 and wt1 < high_prev1 and divregbear == true
hidden_bearish_div1 = fractal_top1 and high < high_price1 and wt1 > high_prev1 and divhidbear == true
regular_bullish_div1 = fractal_bot1 and low < low_price1 and wt1 > low_prev1 and divregbull == true
hidden_bullish_div1 = fractal_bot1 and low > low_price1 and wt1 < low_prev1 and divhidbull == true
col1 = regular_bearish_div1 ? Bearish : hidden_bearish_div1 ? Bearish : na
col2 = regular_bullish_div1 ? Strong_Bullish : hidden_bullish_div1 ? Strong_Bullish : na
//plot(title='Divergence Bearish', series=fractal_top1 ? wt1 : na, color=col1, linewidth=2, transp=0)
//plot(title='Divergence Bullish', series=fractal_bot1 ? wt1 : na, color=col2, linewidth=2, transp=0)
plotshape(regular_bearish_div1 and divregbear and Tags ? wt1 + ploff * 1 : na, title='Divergence Regular Bearish', text='Bear', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(Bearish, 0), textcolor=color.new(White, 0))
plotshape(hidden_bearish_div1 and divhidbear and Tags ? wt1 + ploff * 1 : na, title='Divergence Hidden Bearish', text='H Bear', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(Bearish, 0), textcolor=color.new(White, 0))
plotshape(regular_bullish_div1 and divregbull and Tags ? wt1 - ploff * 1 : na, title='Divergence Regular Bullish', text='Bull', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(Strong_Bullish, 0), textcolor=color.new(White, 0))
plotshape(hidden_bullish_div1 and divhidbull and Tags ? wt1 - ploff * 1 : na, title='Divergence Hidden Bullish', text='H Bull', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(Strong_Bullish, 0), textcolor=color.new(White, 0))
/////// Unfazed Alerts //////
////////////////////////////////////////////////-MISTERMOTA MOMENTUM-/////////////////////////////////////
source = input(close)
responsiveness = math.max(0.00001, input.float(0.9, minval=0.0, maxval=1.0))
periodd = input(50)
sd = ta.stdev(source, 50) * responsiveness
var worm = source
diff = source - worm
delta = math.abs(diff) > sd ? math.sign(diff) * sd : diff
worm += delta
ma = ta.sma(source, periodd)
raw_momentum = (worm - ma) / worm
current_med = raw_momentum
min_med = ta.lowest(current_med, periodd)
max_med = ta.highest(current_med, periodd)
temp = (current_med - min_med) / (max_med - min_med)
value = 0.5 * 2
value *= (temp - .5 + .5 * nz(value ))
value := value > .9999 ? .9999 : value
value := value < -0.9999 ? -0.9999 : value
temp2 = (1 + value) / (1 - value)
momentum = .25 * math.log(temp2)
momentum += .5 * nz(momentum )
//momentum := raw_momentum
signal = nz(momentum )
trend = math.abs(momentum) <= math.abs(momentum )
////////////////////////////////////////////////-GROWING/FAILING-//////////////////////////////////////////
length = input.int(title="MOM Period", minval=1, defval=14, group="MOM Settings")
srcc = input(title="MOM Source", defval=hlc3, group="MOM Settings")
txtcol_grow_above = input(#1a7b24, "Above Grow", group="MOM Settings", inline="Above")
txtcol_fall_above = input(#672ec5, "Fall", group="MOM Settings", inline="Above")
txtcol_grow_below = input(#F37121, "Below Grow", group="MOM Settings", inline="Below")
txtcol_fall_below = input(#be0606, "Fall", group="MOM Settings", inline="Below")
ma(source, length, type) =>
switch type
"SMA" => ta.sma(source, length)
"EMA" => ta.ema(source, length)
"SMMA (RMA)" => ta.rma(source, length)
"WMA" => ta.wma(source, length)
"VWMA" => ta.vwma(source, length)
typeMA = input.string(title = "Method", defval = "SMA", options= , group="MA Settings")
smoothingLength = input.int(title = "Length", defval = 5, minval = 1, maxval = 100, group="MA Settings")
smoothingLine = ma(delta, smoothingLength, typeMA)
deltaText=(delta > 0 ? (delta > delta ? " MOM > 0 and ▲ Growing, MOM = " + str.tostring(delta , "#.##") :" MOM > 0 and ▼ Falling, MOM = " + str.tostring(delta , "#.##") ) : (delta > delta ? "MOM < 0 and ▲ Growing, MOM = " + str.tostring(delta , "#.##"): " MOM < 0 and ▼ Falling, MOM = " + str.tostring(delta , "#.##")))
oneDay = 24 * 60 * 60 * 1000
barsAhead = 3
tmf = if timeframe.ismonthly
barsAhead * oneDay * 30
else if timeframe.isweekly
barsAhead * oneDay * 7
else if timeframe.isdaily
barsAhead * oneDay
else if timeframe.isminutes
barsAhead * oneDay * timeframe.multiplier / 1440
else if timeframe.isseconds
barsAhead * oneDay * timeframe.multiplier / 86400
else
0
angle(_src) =>
rad2degree = 180 / 3.14159265359
//pi
ang = rad2degree * math.atan((_src - _src ) / ta.atr(14))
ang
emae = angle(smoothingLine)
emaanglestat = emae > emae ? "▲ Growing": "▼ Falling"
deltaTextxxx = "MOM MA/ATR angle value is " + str.tostring(emae, "#.##") + "° and is " + emaanglestat
deltacolorxxx = emae >0 and emae >=emae ? txtcol_grow_above : txtcol_fall_below
// Label
label lpt1 = label.new(time, -30, text=deltaTextxxx , color=deltacolorxxx, xloc=xloc.bar_time, style=label.style_label_left, textcolor=color.white, textalign=text.align_left, size=size.normal)
label.set_x(lpt1, label.get_x(lpt1) + tmf)
label.delete(lpt1 )
txtdeltaColors = (delta > 50 ? (delta < delta ? txtcol_grow_above : txtcol_fall_above) : (delta < delta ? txtcol_grow_below : txtcol_fall_below))
label ldelta1 = label.new(time, 30, text=deltaText , color=txtdeltaColors, xloc=xloc.bar_time, style=label.style_label_left, textcolor=color.white, textalign=text.align_left, size=size.normal)
label.set_x(ldelta1, label.get_x(ldelta1) + tmf)
label.delete(ldelta1 )
CandleTrack Pro | Pure Price Action Trend Detection CandleTrack Pro | Pure Price Action Trend Detection with Smart Candle Coloring
📝 Description:
CandleTrack Pro is a clean, lightweight trend-detection tool that uses only candle structure and ATR-based logic to determine market direction — no indicators, no overlays, just pure price action.
🔍 Features:
✅ Smart Candle-Based Trend Detection
Uses dynamic ATR thresholds to identify trend shifts with precision.
✅ Doji Protection Logic
Automatically filters indecision candles to avoid whipsaws and false signals.
✅ Dynamic Bull/Bear Color Coding
Bullish candles are colored green, bearish candles are colored red — see the trend instantly.
✅ No Noise, No Lag
No moving averages, no smoothing — just real-time decision-making power based on price itself.
📈 Ideal For:
Price action purists
Scalpers and intraday traders
Swing traders looking for clear visual bias
─────────────────────────────────────────────────────────────
Disclaimer:
This indicator is provided for educational and informational purposes only and should not be considered as financial or investment advice. The tool is designed to assist with technical analysis, but it does not guarantee any specific results or outcomes. All trading and investment decisions are made at your own risk. Past performance is not indicative of future results. Always do your own research and consult with a qualified financial advisor before making any trading decisions. The author accepts no liability for any losses or damages resulting from the use of this script. By using this indicator, you acknowledge and accept these terms.
─────────────────────────────────────────────────────────────
Light MA CrossWhy Use the "GOLDGoalGO" Indicator?
Are you looking for a reliable tool to enhance your gold trading strategy?
Introducing "GOLDGoalGO", a smart and easy-to-use indicator specifically designed to help traders make informed decisions in the gold market.
What Makes "GOLDGoalGO" Stand Out?
* Tailored for Gold (XAUUSD):
Specially optimized to detect crucial trend changes in gold prices, offering you timely signals to buy or sell.
* Precise Entry Points:
Uses smart moving average crossovers to identify the best moments for entry and exit, reducing guessing and improving profitability.
* Real-Time Alerts:
Get instant notifications when buy or sell signals occur—whether you're at your desk or on the go. Never miss a critical trading opportunity again!
* Easy to Use:
Clear visual signals on your chart show exactly when the market is favorable, perfect for both beginners and experienced traders.
* Ideal for Short-Term Trading:
Designed to generate signals on 1-minute charts, helping you capitalize on quick market movements in the fast-paced gold market.
Why Trader's Love It:
* Increase Confidence:
Making trade decisions becomes easier with accurate signals specific to gold trends.
* Save Time:
Automate your analysis—spend less time guessing and more time trading confidently.
* Maximize Profits:
Spot those crucial moments when the price movement is about to turn, giving you a competitive edge.
Start Using "GOLDGoalGO" Today!
Whether you're looking to refine your short-term trading strategy or want a trustworthy tool to guide your trades in gold markets, "GOLDGoalGO" is the perfect addition to your trading arsenal. Try it now and watch your trading confidence and results improve!
GOLDGOGOSIG - 1 Min MA CrossoverWhy Use the "GOLDGoalGO" Indicator?
Are you looking for a reliable tool to enhance your gold trading strategy?
Introducing "GOLDGoalGO", a smart and easy-to-use indicator specifically designed to help traders make informed decisions in the gold market.
What Makes "GOLDGoalGO" Stand Out?
* Tailored for Gold (XAUUSD):
Specially optimized to detect crucial trend changes in gold prices, offering you timely signals to buy or sell.
* Precise Entry Points:
Uses smart moving average crossovers to identify the best moments for entry and exit, reducing guessing and improving profitability.
* Real-Time Alerts:
Get instant notifications when buy or sell signals occur—whether you're at your desk or on the go. Never miss a critical trading opportunity again!
* Easy to Use:
Clear visual signals on your chart show exactly when the market is favorable, perfect for both beginners and experienced traders.
* Ideal for Short-Term Trading:
Designed to generate signals on 1-minute charts, helping you capitalize on quick market movements in the fast-paced gold market.
Why Trader's Love It:
* Increase Confidence:
Making trade decisions becomes easier with accurate signals specific to gold trends.
* Save Time:
Automate your analysis—spend less time guessing and more time trading confidently.
* Maximize Profits:
Spot those crucial moments when the price movement is about to turn, giving you a competitive edge.
Start Using "GOLDGoalGO" Today!
Whether you're looking to refine your short-term trading strategy or want a trustworthy tool to guide your trades in gold markets, "GOLDGoalGO" is the perfect addition to your trading arsenal. Try it now and watch your trading confidence and results improve!
Gabriel's Relative Strength IndexGabriel’s RSI—The Reinvention of Relative Strength
Not your average RSI.
This is a fully reengineered Relative Strength Index that merges the power of advanced signal processing, adaptive smoothing, volume dynamics, and intelligent divergence detection into a single, modular toolkit designed for precision trading across all markets.
Whether you’re scalping crypto, swing trading equities, or dissecting futures contracts—Gabriel’s RSI adapts to your strategy with unrivaled control and clarity.
⚙️ 1. RSI Settings
RSI Length (Jurik): Set to 51 by default to mimic a 21-period standard RSI when Jurik smoothing is applied. Adjust lower (e.g., 22) to mimic a 9-period RSI. 32 would be almost ~14, 13.33 RSI.
RSI Source: The default is hlc3 for smoother RSI. Can be changed to any price-based series (close, open, etc.) for customization.
📡 VIX-Aware: Automatically switches to high/low/close during VIX spikes using a custom Z-score model if toggled. (I backtested it, and it catches bottoms better.) 📡
🎯 2. RSI Smoothing Options
MA Type: Smoothing applies to both RSI and its MA overlay simultaneously. I used to use the 56 EMA RSI, and it works well too.
Options: JMA, T3, Kalman, Laguerre, Super Smoother, ALMA, VWMA, LSMA, etc.
JMA: Best for adaptive recursive smoothing. A power of 2 and a phase of 50 are used.
T3: Smooth and lag-reduced, suitable for trend detection. The alpha is 0.7.
SMA + Bollinger Bands: Adds deviation-based envelopes for volatility spotting. BB StdDev: Only relevant if BBs are used. Controls bandwidth for overbought/oversold zones.
MA Length: Affects how smooth or reactive the RSI signal is.
📉 3. MACD Settings
Fast/Slow Length: Defaults (21/81) optimized for smoother MACD with SMA or T3. For Algo trading, EMA/JMA is best.
Signal Length: Shorter (e.g., 2) gives more reactive crossover signals; it can be increased.
Source: Default is close. Close works best for the settings I input. I also tuned some of the other MA types that worked for it.
MA Types: JMA and EMA reduce noise and increase signal generation. Select SMA for simplicity or T3 for trend-following.
Histogram: Bar colors signal strength and trend of MACD directly on your chart.
🔀 4. Directional Movement Index (DMI)
ADX Smoothing: High values (e.g., 100) offer strong trend confirmation with Hann Window smoothing 12, or 14 for either regular RMA or double smoothed.
DI Length: Affects DI+/- sensitivity. 100 ADX - 12/14 DI or 15 ADX - 35 DI are suggested, the latter for quicker boot time, as 100 bars is quite long.
Smoothing Type: Choose Hann Window for refined smoothing; RMA (SMMA) for simplicity. Double-smoothing is RMA -> Hann window, best of both types.
Volatility Type: ATR includes gaps for a full-range volatility; ADR is useful for gapless strategies, particularly OTC markets and intraday.
Plotted as area fills, 0 to 100 scaled.
Color-coded as Red (ADX), Orange (DI-), Blue (DI+).
📊 5. Volume Z-Score
%R Length: Normalizes volume to percentile range (73 swing, 112 exhaustion).
Z-Score Lengths: Compares short-term and long-term volume trends with Z-scores of volume.
Fast Z-Score < Slow Z-Score = Gives a Volume Squeeze.
Fast MA > Slow MA = Bullish Volume Divergence; volume has been fired. Not via Z-score, but instead via SMA, ALMA, and RMA of volume.
WPR Volume: Weighted %R used to highlight exhaustion/pivot points.
Plot volume bars after a volume squeeze has been fired; if bars aren't plotted, then it's under squeeze. Backtest on ES1! Prove it's good for catching bottoms below 15 minutes as well.
🧠 6. Divergence Engine
Pivot Settings: Pivot Period (12), Divergence minval Lookback (5), and max Lookback Bars (100) control sensitivity. Works well on any asset class; these are the optimal settings for the RSI.
Source Options: RSI, MACD, ADX, DI difference, or Volume %R.
Divergence Types: Regular (Mean Reversal), Hidden (Trend Continuation).
Heikin Ashi Mode: Enables use of HA candles on normal charts for smoother pivots. May distort values if your chart is H.A. so leave it unchecked then.
💥 7. Squeeze Momentum System (SQZMOM PRO)
Squeeze Types:
⚫ Wide (Black) — Regular Compression
🔴 Normal (Red) — Standard squeeze
🟡 Narrow (Yellow) — Golden squeeze
🟣 Very Narrow (Purple) — Extreme compression
🟢 Fired (Green) — Fired Squeeze = Breakout
Plotted on the very bottom of my indicator.
Momentum Bars:
🔷 Cyan = Rising
🔵 Blue = Pullback
🔴 Red = Falling
🟡 Yellow = Corrective
Plotted on the top of my indicator.
Reversal Signals: Dashed lines on momentum–JMA crossovers (DM-style pivot logic) ploted directly on the chart.
📈 8. Rate of Change (RoC)
RoC of Momentum: EMA-smoothed RoC on momentum for leading signals. Double smoothed, once and then another time for smoother signals.
RoC of Momentum → EMA → EMA → JMA Signal.
Signal Line: JMA used to filter noise and generate reversal signals.
Crossovers: Bullish/bearish signals based on RoC vs. signal line are plotted as triangles directly on your chart.
Optimized: Backtested for short-term setups like 1H or faster. Works on Daily timeframes as well for Futures and 24/7 Markets.
🕰️ 9. Multi-Timeframe Squeeze Settings
Each timeframe (Hourly, 4H, Daily, Weekly, Monthly) has:
Reversal Toggle: Enables dashed line DM-style pivots on crossovers.
MA Length: For Jurik MA smoothing on momentum.
BB/KC Thresholds: Define squeeze sensitivity per timeframe. A shorter BB/KC length, 17-14-12, responds better on lower timeframes.
Momentum Length: Tailors oscillator responsiveness; 20 is ideal.
🧮 10. BB Std. Deviation Scaling
Low-Pass Super Smoother : Smooths noise for BBs.
High-Pass Butterworth : Extracts cycles for BB Stdv. blend.
Root Mean Squared : Dynamic BB width adjustment based on market activity. True-range-based.
LP -> HP -> RMS -> Bollinger Band Multiplier (2.0)
Optional Intensify: Increases the squeeze rate * 4. Can be used for some option pricing strategies.
🧵 11. Moving Average Ribbon
4 optional MAs with full customization:
Choose from 13 MA types (incl. Kalman, Laguerre, T3, ALMA)
Color-coded for trend analysis (MA1–MA4 mimicking 9/21/50/200 periods)
Optional crossover alerts
🔔12. Alerts
RSI: Overbought/oversold reversals. Several types. (🦅 / 🕊️)
MACD: Histogram shift through zero line. (🐘 / 🐴)
DMI/ADX: Crossovers and strength conditions. The key level is the level where if DI/ADX is past this threshold, then it's considered to be trending. (🐬 / 🐋 / 🛡️)
Volume: Smart Money alerts on low-volume zones. May concentrate on ICT sessions. (🚨)
Squeeze: Alerts on all 5 squeeze states. (⚫, 🔴, 🟡, 🟣, 🟢)
Momentum: Momentum / JMA crosses and reversals. (🐂 / 🐻)
RoC: Bullish and bearish crosses. (📈 / 📉)
Divergences: Regular, hidden, and combined. (🐂 / 🐻 / 🐾 / 🐼)
MA Ribbon: Cross alert (⚔️)
VIX: VIX Z-Score past 2.0 (🏴☠️)
📊 13. Visual Output Summary
RSI Line + MA + Optional BB
MACD Histogram (Color Adaptive)
DMI/ADX Area Fills
%R Volume Bars (Smart Money)
Squeeze Dots (Circles)
Momentum Bars (Squares)
RoC Arrows (Cross Signals)
Pivot Break Lines (Dashed)
Auto-Divergence Lines & Labels
MA Ribbon Overlay (Optional)
✅ Best Practices ✅
Watch the slope of the RSI for pullbacks on a strong trend. Combine it with squeeze for exit timing.
Combine RSI Divergence with MACD histogram cross and Squeeze firing for precise entry.
Use Volume Z-Score to filter for institutional activity, and enter Long. Watch for reversals as well.
Watch RoC crossovers for fast, leading signals.
Enable Reversal Lines on 1H+ charts for breakout or breakdown pivots.
Use multi-timeframe thresholds for swing confirmation. The TFs I use the most are 2-5-15 minutes for futures and swinging with 1 hour daily and weekly. Those are the TFs I backtested.
An optional MA Ribbon is here as well; it supports 13 MA types.
🌎 Asset-Agnostic
MACD Automatically adjusts for Crypto, Forex, Stocks, Commodities, and Indices.
Custom ALMA, T3, Kalman, and Laguerre filters optimized per asset class and timeframe.
📚 Tech Highlights
Over 15,000 lines of modular, structured Pine Script v6 code.
Integration of Ehlers Cycle Theory and various other filters, one for each indicator.
Designed for visual clarity, multi-dimensional signal stacking, and low lag/high accuracy.
🌀 All 64 outputs are filled, so there might not be any more future updates. It's also a bit slow to load due to that.
Rally/Drop Market Structure (Multi-Timeframe)Rally/Drop Market Structure
Supply and Demand Zones from Bullish/Bearish Breaks
Overview:
The Rally/Drop Market Structure indicator is a powerful price action tool that identifies key structural turning points in the market by detecting bullish and bearish breaks . After each confirmed break, it plots either a demand zone (following a bullish break or rally) or a supply zone (following a bearish break or drop). These zones represent institutional footprints — areas where price is likely to react due to imbalance or unfilled orders.
The indicator is based on synthetic higher timeframe (HTF) candles to provide a more stable and smoothed structural map, improving clarity and signal quality over raw candles.
How It Works:
- A bullish break is defined when price makes a higher high and a higher low (or closes above the previous high depending on your selected mode).
- A bearish break is defined when price makes a lower high and a lower low (or closes below the previous low).
- After a bullish break, the indicator plots a demand zone based on the low and high of the most recent bearish candle — representing where demand stepped in.
- After a bearish break, the indicator plots a supply zone from the most recent bullish candle — indicating where supply took control.
- Optional mitigation logic marks zones as mitigated (or deletes them) once price trades into the opposing side.
- Internal shift detection highlights swing highs and lows , labels structural points (HH, HL, LH, LL), and identifies potential liquidity sweeps .
Features:
- Dynamic plotting of rally-based demand zones and drop-based supply zones
- Toggle to use Highs/Lows or Close-based breaks for structure
- Support for LTF, MTF, and HTF analysis (with selectable timeframe)
- Zone mitigation logic with optional automatic cleanup
- Labeling of key swing points: HH , HL , LH , LL , and LS (Liquidity Sweep)
- Zigzag visualization for structure flow
- Alert-ready for internal shifts, BoS, and zone creation
- Separate styling options for BoS lines, internal shift shapes, and zone colors
How to Use:
- Set your desired HTF candle source (e.g., 1H or 4H) depending on your trading style.
- Use Highs/Lows mode for pure price action structure or Close mode for more conservative signals.
- Observe when a bullish break occurs — a demand zone will form where price previously dropped before rallying. Look for long opportunities if price revisits this zone.
- After a bearish break , a supply zone forms where the rally failed — use this to scout short entries on retests.
- Use BoS lines to confirm structure shifts and validate entry triggers or trend direction.
- Monitor mitigated zones for reduced reliability or avoid them completely by enabling automatic deletion.
- Use alerts to stay notified about key changes without watching the chart constantly.
Recommended Strategies:
- Smart money or ICT-style trading : identify institutional footprints and mitigation setups
- Reversal trading : catch price rejecting off unmitigated zones after structure break
- Trend continuation : enter in the direction of internal structure after pullbacks into zones
- Liquidity sweep confirmation : filter out false breaks using HH/LL with LS detection
Tips:
- Combine this indicator with a higher timeframe bias tool (e.g., moving average, higher timeframe market structure).
- For scalping, use tighter HTFs and reduce the zone duration.
- For swing trading, use larger HTFs (1H, 4H, Daily) and increase zone persistence.
Summary:
The Rally/Drop Market Structure indicator gives you an actionable framework for understanding price structure, market intent, and supply/demand imbalances. Whether you're looking for precision entries, trend confirmation, or smart money concepts, this tool helps simplify complex price behavior into clean, usable structure and zones.
VampFX Kill Zone🦇 VampFX Kill Zone Indicator
Built for Smart Money Traders by Vamp FX
This custom Kill Zone tool highlights the optimal institutional trading window — when volume, liquidity, and precision align.
🔹 What It Does:
• Shades the VampFX Kill Zone (default: 8:00 AM to 12:30 PM UTC-4 / New York)
• Designed for New York session scalping/sniping
• Helps isolate high-probability Smart Money setups (liquidity sweeps, FVGs, BOS entries)
🔧 Default Settings:
• Timezone: UTC -4 (New York)
• Session Start: 08:00
• Session End: 12:30
• Adjustable to fit your strategy or local session bias
⸻
📈 Why Use It:
The VampFX Kill Zone reflects when algos run, liquidity gets manipulated, and clean entries occur.
Avoid noise — trade when the market actually moves.
“We don’t chase the market. We wait inside the zone… then strike with precision.”
— 🦇 VampFX Code
Intelligent Top & Bottom Finder v9.8 Keyvankh📈 Intelligent Top & Bottom Finder v9.8 Keyvankh
A next-generation all-in-one trading system for precise tops, bottoms, and reversals across all timeframes.
---
🟢 Overview
This indicator is a powerful and intelligent solution for detecting market tops and bottoms, key reversals, and S/R zones with institutional-grade accuracy. Designed for traders seeking an edge in any market (crypto, forex, stocks), it combines advanced candlestick recognition, multi-indicator confirmation, smart support/resistance clustering, and strict signal filtering into one seamless tool.
---
🔎 How Does It Work?
1. Advanced Support & Resistance Clustering
Automatically detects and draws high-probability support and resistance zones using dynamic ATR-based pivot clustering.
Highlights breakouts and retest (flip) zones in real-time, adapting to changing market structure.
2. Full Candlestick Pattern Recognition
Scans for 15+ classic and advanced patterns: Engulfing, Pin Bar, Doji, Three Bar, Marubozu, Hammer, Shooting Star, Three White Soldiers, Three Black Crows, Tweezer, Morning/Evening Star, Kicker, Belt Hold, and more.
Scores each pattern’s strength based on location (S/R zone, retest, breakout), volume context, and confirmation signals.
3. Multi-Indicator Confirmation Engine**
Integrates and scores confirmation from up to five additional sources:
RSI Games 1.2** (smoothed LTF momentum shifts)
MACD Divergence** (bullish/bearish momentum reversal)
QQE+ v7 Advanced** (dynamic volatility filter)
OBV Trend Filter** (volume-backed trend validation)
Volume Game** (net volume spike and reversal detection)
Each module can be enabled or disabled to fit your personal trading style.
4. Institutional S/R and Retest Logic
Real-time recognition of major trendline breaks, retest zones, and price flips.
Automatic labeling and coloring of S/R zones, retest boxes, and confirmation candles.
5. Smart Buy & Sell Signal Generation**
Combines all scoring modules with strict logical filters and “failsafe override” logic (guaranteeing signal on confirmed hammers, engulfings, etc. even if other filters disagree).
Plots clear “BUY” and “SELL” labels only when a strong, multi-factor signal appears—minimizing noise and maximizing reliability.
Built-in fallback logic (optional) for edge cases.
6. Alerts & Automation Ready
TradingView alerts for all BUY, SELL, or ANY signal conditions—perfect for auto-trading or notification setups.
---
*⚙️ Customizable Inputs
Enable/Disable any module (RSI Games, MACD, OBV, QQE+, Candlestick Scanner, Volume Game)
Minimum Confirmations** required for a signal (1–10)
Pivot/Zone Sensitivity:** ATR multiplier, pivots per cluster, retest bar duration
LTF (Lower Timeframe) Confirmation:** Fully configurable
---
📊 How To Use**
Apply on any timeframe and symbol**—crypto, stocks, forex, indices.
Use as a **standalone reversal/entry tool** or to confirm your own technical setups.
Combine with your favorite momentum, trend, or volume indicators for advanced confluence.
Set up **TradingView alerts** for auto-trading, Telegram/email notifications, or trade journaling.
---
🟢 What Makes This Unique?
All-in-one multi-indicator fusion:** No more juggling a dozen scripts.
Institutional logic:** Goes beyond basic signals with true S/R, retest, and volume logic.
Full transparency:** Source code is clear and commented (if published open-source).
Fast and reliable:** Optimized for minimal lag and maximum accuracy.
---
⚠️ Disclaimer**
This indicator is a tool to assist with trade timing and risk management. **No system is 100% accurate.** Always use in conjunction with your own analysis and risk management practices.
---
📚 Credits & License**
Created by Keyvan Khodakhah.
You may use, modify, or share this script under the (mozilla.org).
Please credit the original author if you fork or reuse in public.
---
Questions, feedback, or collaboration? Contact: Keyvankh
---
Precision in technical analysis comes from layers of confluence and discipline. This tool brings that precision to your chart.