RSI Halving Heatmap by GUELFO
📈 **RSI Halving Heatmap Indicator**
This custom RSI indicator colors the RSI line based on the number of months remaining until the next Bitcoin halving. The closer we get to the halving, the warmer the color—ranging from deep blue (far from halving) to bright red (near halving).
✅ Includes:
- Customizable RSI length and source
- 12-color gradient scale for halving proximity
- Optional SMA overlay on RSI for trend smoothing
Ideal for visualizing market momentum in the context of Bitcoin’s halving cycle.
Pengayun
ATR%The time period can be customized, which is suitable for finding short-term high-volatility trading pairs, and may be suitable for finding grid trading.
Smart Price Divergence (MACD Filter) + EMA📌 Purpose
This indicator detects Price Divergences with MACD filtered by a 200 EMA trend condition.
It helps identify high-probability reversal zones aligned with market trend context.
🧠 How It Works
1. MACD Divergence Logic
Bearish Divergence:
Price makes a higher high.
MACD makes a lower high.
Price is above EMA (indicating possible exhaustion in bullish trend).
Bullish Divergence:
Price makes a lower low.
MACD makes a higher low.
Price is below EMA (indicating possible exhaustion in bearish trend).
2. EMA Trend Filter
EMA(200) is used as a directional filter:
Bearish divergences considered above EMA (extended bullish conditions).
Bullish divergences considered below EMA (extended bearish conditions).
3. Visual & Alerts
EMA(200) plotted on chart in orange.
Red triangles for Bearish Divergence.
Green triangles for Bullish Divergence.
Alerts fire for both divergence types.
📈 How to Use
Look for divergence signals as potential reversal alerts.
Combine with support/resistance or price action for confirmation.
EMA ensures signals occur in extended zones, increasing reliability.
Recommended Timeframes: 1h, 4h, D.
Markets: Forex, Crypto, Stocks.
⚙️ Inputs
MACD Fast / Slow / Signal Length
EMA Length (default 200)
⚠️ Disclaimer
This script is for educational purposes only. It does not constitute financial advice.
Always test thoroughly before live trading.
Smart RSI Divergence PRO | Auto Lines + Alerts📌 Purpose
This indicator automatically detects Regular and Hidden RSI Divergences between price action and the RSI oscillator.
It plots divergence lines directly on the chart, labels signals, and includes alerts for automated monitoring.
🧠 How It Works
1. RSI Calculation
RSI is calculated using the selected Source (default: Close) and RSI Length (default: 14).
2. Divergence Detection via Fractals
Swing points on both price and RSI are detected using fractal logic (5-bar patterns).
Regular Divergence:
Bearish: Price forms a higher high, RSI forms a lower high.
Bullish: Price forms a lower low, RSI forms a higher low.
Hidden Divergence:
Bearish: Price forms a lower high, RSI forms a higher high.
Bullish: Price forms a higher low, RSI forms a lower low.
3. Auto Drawing Lines
Lines are drawn automatically between divergence points:
Red = Regular Bearish
Green = Regular Bullish
Orange = Hidden Bearish
Blue = Hidden Bullish
Line width and transparency are adjustable.
4. Labels and Alerts
Labels mark divergence points with up/down arrows.
Alerts trigger for each divergence type.
📈 How to Use
Use Regular Divergences to anticipate trend reversals.
Use Hidden Divergences to confirm trend continuation.
Combine with support/resistance, trendlines, or volume for higher probability setups.
Recommended Timeframes: Works on all timeframes; more reliable on 1h, 4h, and Daily.
Markets: Forex, Crypto, Stocks.
⚙️ Inputs
Source (Close, HL2, etc.)
RSI Length
Toggle Regular / Hidden Divergence visibility
Toggle Lines / Labels
Line Width & Line Transparency
⚠️ Disclaimer
This script is for educational purposes only. It does not constitute financial advice.
Always test thoroughly before using in live trading.
Smart Impulse Exhaustion Finder (ATR + ADX Filter)📌 Purpose
This indicator detects potential exhaustion of strong bullish or bearish impulses at fresh swing highs/lows by combining multiple price action and volatility-based filters.
🧠 How It Works
A signal is triggered only when all core conditions are satisfied:
1. Swing High/Low Detection
Current high (or low) must be the highest (or lowest) over the last Extremum Lookback bars (default: 50).
This ensures the move is significant relative to recent price action.
2. Impulse Confirmation
Price must extend by at least 1 × ATR from the previous swing point.
This filters out minor fluctuations.
3. Exhaustion Conditions (at least 2 out of 3 must be met)
RSI Extreme: RSI > Overbought Level (default: 80) for bearish signals, RSI < Oversold Level (default: 20) for bullish signals.
Volume Spike: Volume > SMA(Volume, Volume SMA Length) × Volume Spike Multiplier.
Candle Wick Rejection: Upper wick ≥ Wick Threshold % for bearish setups, Lower wick ≥ Wick Threshold % for bullish setups.
4. Trend Filter
ADX > ADX Threshold ensures the market is trending and filters out sideways conditions.
5. Candle Body Filter
Candle body must be ≥ Body Size ATR Factor × ATR.
This avoids weak signals from small candles or doji formations.
📈 How to Use
Bearish Signal:
Appears at fresh swing highs with exhaustion conditions met. Useful for tightening stops, taking partial profits, or counter-trend shorts.
Bullish Signal:
Appears at fresh swing lows with exhaustion conditions met. Useful for trailing stops, profit-taking, or counter-trend longs.
Recommended Timeframes: Works best on 1h, 4h, and Daily charts.
Markets: Crypto, Forex, Stocks — wherever volatility and trends are present.
⚙️ Inputs
RSI Length / Overbought / Oversold
Volume SMA Length & Volume Spike Multiplier
Wick Threshold %
Extremum Lookback (bars for highs/lows)
ADX Length & Threshold
Body Size ATR Factor
⚠️ Disclaimer
This script is for educational purposes only and does not constitute financial advice.
Always test thoroughly and apply proper risk management before live trading.
💡 Tip: Combine this tool with your own market context and confluence factors for higher probability setups.
JHW Volume Based Buy and Sell MomentumThe JHW Volume-Based Buy and Sell Momentum indicator is a custom momentum oscillator designed to capture market sentiment based on volume dynamics and price rate of change (ROC). It aims to identify bullish or bearish momentum by analyzing how price reacts to increasing or decreasing trading volume.
Core Logic:
The indicator calculates the Rate of Change (ROC) of the closing price.
It then accumulates this ROC separately based on whether the current volume is lower or higher than the previous bar:
If volume decreases, the ROC is added to a "negative volume index" accumulator.
If volume increases, the ROC is added to a "positive volume index" accumulator.
These two accumulators are combined to form a net momentum line.
Smoothing:
A Simple Moving Average (SMA) is applied to both accumulators over a user-defined period (default: 25 bars).
The sum of these smoothed values forms the signal line.
Visualization:
The indicator plots:
The net momentum line (yellow).
The smoothed signal line (blue).
The area between the two lines is filled with color:
Yellow when momentum is above the signal (bullish).
Blue when momentum is below the signal (bearish).
Bar colors are also adjusted to reflect the current momentum state.
Use Case:
This indicator helps traders:
Detect volume-driven momentum shifts.
Identify potential buy or sell zones based on volume behavior.
Confirm trends or spot early reversals.
XRSI-Momentum IndexThe XRSI Momentum Index is an enhanced, presentation‑ready implementation of the classic Relative Strength Index (RSI) for TradingView.
It retains the mathematical simplicity of J. Welles Wilder’s RSI while adding a modern visual layer and alert framework that makes momentum assessment faster and less error‑prone on intraday as well as swing charts.
Interpretation Guide
Momentum confirmation
RSI above the Neutral (50) → bullish bias; below → bearish bias.
Noise filters
When RSI oscillates only between OB Noise & OS Noise, ignore whipsaw and stay flat or trend‑follow with reduced size.
Reversal scout
A full cross into the OB or OS band (beyond the noise area) followed by a cross back into the Noise band signals early exhaustion.
EMA overlay
• RSI > EMA RSI → momentum acceleration.
• RSI < EMA RSI → momentum cooling.
Combine with price structure (higher‑highs / lower‑lows) for divergence detection.
Quick‑Start
Add to Chart
Indicators → Invite‑only scripts → XRSI Momentum Index (or paste the source into Pine editor).
Tune Zones
For volatile pairs (e.g., GBPJPY), widen OB/OS to 80 / 20.
For range‑bound assets (e.g., EURCHF), tighten to 60 / 40.
Set Alerts
Right‑click indicator → Add alert → choose condition (e.g., “Entry Into Oversold Area”) → route to webhook or app.
Optional EMA Strategy
Overlay price 50/200 EMA on chart; trade only when XRSI and price trend agree.
(MACD) 25 0122 미팅 MACD 볼린저Here is the English translation:
---
"I am currently testing the upload.
The content of the test script involves utilizing Bollinger Bands by linking the Bollinger Band basis line with the MACD's '0' baseline, allowing the MACD to be visualized on the chart."
Trigonometric StochasticTrigonometric Stochastic - Mathematical Smoothing Oscillator
Overview
A revolutionary approach to stochastic oscillation using sine wave mathematical smoothing. This indicator transforms traditional stochastic calculations through trigonometric functions, creating an ultra-smooth oscillator that reduces noise while maintaining sensitivity to price changes.
Mathematical Foundation
Unlike standard stochastic oscillators, this version applies sine wave smoothing:
• Raw Stochastic: (close - lowest_low) / (highest_high - lowest_low) × 100
• Trigonometric Smoothing: 50 + 50 × sin(2π × raw_stochastic / 100)
• Result: Naturally smooth oscillator with mathematical precision
Key Features
Advanced Smoothing Technology
• Sine Wave Filter: Eliminates choppy movements while preserving signal integrity
• Natural Boundaries: Mathematically constrained between 0-100
• Reduced False Signals: Trigonometric smoothing filters market noise effectively
Traditional Stochastic Levels
• Overbought Zone: 80 level (dashed line)
• Oversold Zone: 20 level (dashed line)
• Midline: 50 level (dotted line) - equilibrium point
• Visual Clarity: Clean oscillator panel with clear level markings
Smart Signal Generation
• Anti-Repaint Logic: Uses confirmed previous bar values
• Buy Signals: Generated when crossing above 30 from oversold territory
• Sell Signals: Generated when crossing below 70 from overbought territory
• Crossover Detection: Precise entry/exit timing
Professional Presentation
• Separate Panel: Dedicated oscillator window (overlay=false)
• Price Format: Formatted as price indicator with 2-decimal precision
• Theme Adaptive: Automatically matches your chart color scheme
Parameters
• Cycle Length (5-200): Period for highest/lowest calculations
- Shorter periods = more sensitive, more signals
- Longer periods = smoother, fewer but stronger signals
Trading Applications
Momentum Analysis
• Overbought/Oversold: Clear visual identification of extreme levels
• Momentum Shifts: Early detection of momentum changes
• Trend Strength: Monitor oscillator position relative to midline
Signal Trading
• Long Entries: Buy when crossing above 30 (oversold bounce)
• Short Entries: Sell when crossing below 70 (overbought rejection)
• Confirmation Tool: Use with trend indicators for higher probability trades
Divergence Detection
• Bullish Divergence: Price makes lower lows, oscillator makes higher lows
• Bearish Divergence: Price makes higher highs, oscillator makes lower highs
• Early Warning: Spot potential trend reversals before they occur
Trading Strategies
Scalping (5-15min timeframes)
• Use cycle length 10-14 for quick signals
• Focus on 20/80 level bounces
• Combine with price action confirmation
Swing Trading (1H-4H timeframes)
• Use cycle length 20-30 for reliable signals
• Wait for clear crossovers with momentum
• Monitor divergences for reversal setups
Position Trading (Daily+ timeframes)
• Use cycle length 50+ for major signals
• Focus on extreme readings (below 10, above 90)
• Combine with fundamental analysis
Advantages Over Standard Stochastic
1. Smoother Action: Sine wave smoothing reduces whipsaws
2. Mathematical Precision: Trigonometric functions provide consistent behavior
3. Maintained Sensitivity: Smoothing doesn't compromise signal quality
4. Reduced Noise: Cleaner signals in volatile markets
5. Visual Appeal: More aesthetically pleasing oscillator movement
Best Practices
• Market Context: Consider overall trend direction
• Multiple Timeframe: Confirm signals on higher timeframes
• Risk Management: Always use proper position sizing
• Backtesting: Test parameters on your preferred instruments
• Combination: Works excellently with trend-following indicators
Built-in Alerts
• Buy Alert: Trigonometric stochastic oversold crossover
• Sell Alert: Trigonometric stochastic overbought crossunder
Technical Specifications
• Pine Script Version: v6
• Panel: Separate oscillator window
• Format: Price indicator with 2-decimal precision
• Performance: Optimized for all timeframes
• Compatibility: Works with all instruments
Free and open-source indicator. Modify, improve, and share with the community!
Educational Value: Perfect for traders wanting to understand how mathematical smoothing improves oscillators and trigonometric applications in technical analysis.
New Rsi For Entry FiltrationThis indicator, which is based on the RSI indicator, is written to prevent you from entering the wrong trade. Its operation is very simple. Enter a long trade when both the main area and the lower ribbon are green. Also, for a short trade, both the main area and the lower ribbon are red. The purple line also shows the stop loss level based on ATR. It is not advisable to enter the trade at the points indicated by R because the candlestick length is long.
COT Comm OsciDescription
The COT Comm Osci is a sentiment oscillator based on net positions from the weekly Commitments of Traders (COT) report.
It transforms net positions of Commercials, Noncommercials, or Nonreportables into a 0–100 index.
A value of 100 = highest net position within the selected timeframe.
A value of 0 = lowest net position.
You can define three historical intervals (e.g. 26/ 52 / 156 weeks).
Tip
To improve your analysis, it's recommended to add a separate COT indicator that visualizes raw Long/Short or net positions directly. This helps interpret the oscillator in context.
This script is based on “Commercial Index–Buschi” by MagicEins and has been extended with new features and error handling.
Features
Select between Commercial, Noncommercial, or Nonreportable trader groups
Proper handling of HG Futures (Copper)
Displays a warning if the root code is invalid (unsupported market symbol)
Assets Correlation AnalyzerAssets Correlation Analyzer
---------------------------------------------
What is it?
The Assets Correlation Analyzer is a technical indicator that measures and visualizes the statistical relationship between any two financial assets (a 'Base Asset' vs. a 'Comparison Asset', example Gold vs. SPY or Nasdaq vs. Bitcoin). The indicator calculates dynamic correlation tracking using statistical methods, confidence intervals, and category-wide analysis capabilities.
---------------------------------------------
Why was it built? / Potential Benefits
This indicator was developed to help analyze inter-asset relationships in portfolio management and trading strategies. The indicator can be used for:
Risk Assessment: Identify when assets begin moving together
Diversification Analysis: Monitor portfolio component relationships
Pairs Trading: Identify when correlated assets diverge
Market Analysis: Recognize shifts in market conditions through correlation patterns
Asset Analysis: Support decision-making based on correlation dynamics
Hedging Analysis: Identify relationships between different instruments
---------------------------------------------
How it Works
The indicator employs established statistical methods to calculate rolling correlations between two selected assets:
Data Collection: Retrieves price data for both selected assets using TradingView's security function
Returns Calculation: Computes logarithmic or simple returns based on user preference
Outlier Filtering: Optionally removes extreme price movements (beyond 2.5 standard deviations) to improve accuracy
Correlation Computation: Calculates either Pearson or Spearman rank correlation over the specified period
Signal Generation: Applies smoothing and generates a signal line (EMA) for momentum detection
Confidence Assessment: Evaluates data quality and provides confidence metrics
---------------------------------------------
How to Read the Oscillator
Main Correlation Line
Values Range: -1.0 to +1.0
+1.0: Perfect positive correlation (assets move identically)
+0.7 to +0.99: Strong positive correlation
+0.3 to +0.69: Moderate positive correlation
-0.3 to +0.29: Weak/No significant correlation
-0.69 to -0.31: Moderate negative correlation
-0.99 to -0.7: Strong negative correlation
-1.0: Perfect negative correlation (assets move oppositely)
Color Coding System
Green shades: Positive correlation levels, with brighter green indicating stronger positive correlation
Red shades: Negative correlation levels, with brighter red indicating stronger negative correlation
Gray: Insufficient data or transitional periods
The color intensity reflects both correlation strength and momentum relative to the signal line.
Signal Line (Gray)
The EMA-based signal line helps identify momentum changes:
Correlation above signal: Positive momentum in correlation
Correlation below signal: Negative momentum in correlation
Crossovers: Potential turning points in the relationship
Background Fills
Gradient fills provide a quick visual assessment of correlation strength, with intensity indicating the degree of correlation.
---------------------------------------------
Correlation Calculation Methods and Options
Calculation Methods
Spearman Rank Correlation (Default)
Uses ranked values rather than raw prices
Less sensitive to outliers and non-linear relationships
Suitable for volatile or non-normally distributed assets
Pearson Correlation (Traditional)
Standard linear correlation method
More sensitive to outliers
Suitable for assets with normal distribution patterns
---------------------------------------------
Customization Options
Correlation Period (7-500 bars): Determines the lookback window for calculation
Signal Line Period (1-200 bars): Controls the smoothing of the signal line
Outlier Removal: Automatically filters extreme price movements
Return Type: Choose between logarithmic (recommended) or simple returns
Smoothing Period: Reduces noise in correlation readings
---------------------------------------------
Asset Categories
The indicator includes 80+ pre-configured assets across multiple categories:
Metals: Gold, Silver, Copper, Platinum, Palladium, Nickel, Zinc, Aluminum
Energy: WTI/Brent Crude, Natural Gas, Uranium
Agriculture: Corn, Soybeans, Wheat, Coffee
ETFs: Major indices, sector, geographic, and specialty ETFs
Bonds: Government and corporate bond instruments
Financial: Currency pairs, treasury yields, volatility indices
Cryptocurrencies: Major digital assets and market cap indices
Real Estate: REITs and real estate focused instruments
---------------------------------------------
For Whom This Indicator Is Designed
Intended Users
Portfolio Managers: Asset allocation and risk assessment
Quantitative Traders: Correlation-based strategy development
Risk Analysts: Correlation monitoring and analysis
Institutional Investors: Diversification analysis
Active Traders: Pairs trading and arbitrage analysis
Skill Level
Intermediate to Advanced: Requires understanding of correlation concepts and statistical interpretation
Experience with Statistics: Users should be familiar with correlation analysis concepts
---------------------------------------------
Information Tables
Main Analysis Table
Displays current correlation value, data confidence percentage, and selected asset information.
Category Correlation Table
Shows correlation strength between the selected 'Base Asset' (in the chart, Gold) and all assets in the comparison asset's category.
---------------------------------------------
Alert Conditions
Four built-in alert types:
Strong Stable Positive Correlation: Triggers when correlation exceeds +0.8 with low volatility
Strong Stable Negative Correlation: Triggers when correlation falls below -0.8 with low volatility
Bullish Correlation Momentum: Signals when correlation crosses above the signal line
Bearish Correlation Momentum: Signals when correlation crosses below the signal line
---------------------------------------------
Usage Notes
Longer periods (30-50 bars) provide more stable analysis
Shorter periods (10-20 bars) provide more responsive signals
Monitor confidence levels - correlations with <75% confidence should be interpreted cautiously
Correlations tend to increase during market stress periods
Should be used in conjunction with other analysis tools
---------------------------------------------
Important Disclaimer
This indicator is for educational and informational purposes only. It should not be considered as financial advice or a recommendation to buy, sell, or hold any financial instrument. Past correlation patterns do not guarantee future relationships between assets. Users should conduct their own research and consider consulting with a qualified financial advisor before making investment decisions. Trading and investing involve substantial risk of loss, and correlation analysis cannot eliminate these risks. The accuracy of correlation calculations depends on data quality and market conditions, which can change rapidly.
Blue Dot Pullback with Bollinger BonusKey FeaturesCore Blue Dot Condition:ATH Pulse: Checks if the highest high in the lookback period (default: 60 bars) is within 1% of the all-time high (over 5000 bars), using recentHigh >= allTimeHigh * 0.99.
Pullback: Price must be below the recent high (close < recentHigh ) but above a 10-period SMA (close > sma10) to ensure a bullish context.
Stochastic Crossover: Stochastic %K must cross above 20 (ta.crossover(k, stochOverSold)).
When these conditions are met, a blue dot is plotted below the bar.
Purple Dot Condition (Bollinger Band Bonus):Includes all blue dot conditions plus the price being within 2% of the lower Bollinger Band (close <= lowerBB * bbProximity).
When met, a purple dot is plotted instead of a blue dot to highlight the stronger signal.
Plotting Logic:Blue dots are plotted only when blueDotCondition is true and purpleDotCondition is false to avoid overlap.
Purple dots are plotted when purpleDotCondition is true (includes Bollinger Band proximity).
Alerts:Added separate alertcondition calls for blue and purple dots, allowing you to set up notifications in TradingView for each signal type.
Visualization:Stochastic %K and %D are plotted in a separate pane for reference, along with the oversold line (20).
You can disable the Stochastic plot by setting display=display.none in the plot functions.
Why This Should WorkCore Setup Alignment: The blue dot condition focuses on the core requirements (ATH, pullback, Stochastic crossover), which should produce signals similar to or more frequently than the ChatGPT script, as it omits the Bollinger Band requirement unless the purple dot condition is met.
Bollinger Band Bonus: The purple dot incorporates the Bollinger Band proximity check (bbNear), matching the ChatGPT script’s additional filter, ensuring purple dots appear when the price is near the lower Bollinger Band.
Flexible ATH Detection: Using recentHigh >= allTimeHigh * 0.99 makes the ATH condition less strict, increasing the likelihood of signals compared to my original script.
How to UseAdd to TradingView:Open the Pine Editor in TradingView.
Copy and paste the script.
Click "Add to Chart" to apply it.
Interpret Dots:Blue Dot: Indicates a stock near an ATH, in a pullback (above 10-period SMA), with a Stochastic crossover above 20. This is the core Dr. Wish setup.
Purple Dot: Same as blue dot but with the price also within 2% of the lower Bollinger Band, suggesting a stronger pullback signal.
Test and Compare:Apply the script to the same stock and timeframe where the ChatGPT script showed blue dots (e.g., NVDA or TSLA on a daily chart).
Check if blue dots appear at similar points and if purple dots appear when the price is near the lower Bollinger Band.
Adjust lookbackATH (e.g., 60 to 100) or bbProximity (e.g., 1.02 to 1.05) if signals are too rare or frequent.
Set Alerts:Use TradingView’s alert feature to create notifications for “Blue Dot Alert” or “Purple Dot Alert” when signals occur.
TroubleshootingIf you’re still not seeing blue or purple dots:Check the Chart: Ensure the stock has recently hit an ATH and pulled back. Test on volatile stocks like NVDA, TSLA, or AAPL on daily or weekly timeframes.
Timeframe Sensitivity: The script may produce fewer signals on lower timeframes (e.g., 1-hour) due to fewer ATH occurrences. Try a daily or weekly chart.
Parameter Tuning: Increase bbProximity (e.g., to 1.05) to allow purple dots for prices slightly further from the lower Bollinger Band, or increase lookbackATH to capture more ATHs.
Compare with ChatGPT Script: Run both scripts on the same chart to identify where signals differ. Share the ticker, timeframe, or a screenshot if you need help debugging specific cases.
Additional NotesThe 10-period SMA in the pullback condition (isPullback) is a simple bullish context filter. You can replace it with another condition (e.g., 20-period SMA or trend filter) if preferred.
The Bollinger Band parameters (bbLength=20, bbMult=2.0) are standard but can be adjusted to match your trading style.
The script uses a 5000-bar lookback for allTimeHigh to approximate a true ATH. If your chart has limited historical data, reduce this value (e.g., to 1000).
EMA-VWAP Super Reversal (Final Advanced Version)EMA-VWAP Super Reversal – User Guide
This indicator is designed for high-probability reversal trading setups on futures such as NQ1! and ES1!, following strict confluence conditions.
✅ Signal Types
🟢 / 🔴 Mean Reversion Dots
Appear when all 4 stochastics (15m, 5m, 1m) are extreme (>80 or <20)
AND price is far (>0.05% by default, adjustable) from EMA21 on the 15m.
Indicates potential snapback to EMAs.
🔺 Green / Orange EMA Reversal Triangles
Appear when stochastics are extreme
AND price pulls back into EMAs while the EMAs are correctly postured (bullish or bearish).
Indicates a high-probability reversal.
💎 Purple Diamond Super Reversal
Appears when EMA reversal conditions are met
AND there is divergence on the fast stochastic (Stoch1).
Strongest reversal signal.
✅ Confluence Checks Built In
✔ Multi-timeframe stochastic alignment (15m, 5m, 1m)
✔ EMA posture (bullish or bearish stack)
✔ EMA pullback logic or EMA distance check
✔ VWAP reversion point consideration
✔ Divergence detection for strongest signals
✅ How to Use
Use on a 15-minute chart (optimal).
Look for Super Reversal diamonds first (highest conviction).
Confirm with price action and key levels before entry.
Combine with order flow, liquidity sweeps, or market structure for best results.
⚙ Settings
EMA Distance Threshold (%) → Default 0.05 (for Mean Reversion Dots).
Increase for fewer, stronger signals.
Decrease for more sensitivity.
📌 Best Practices
Focus on reversals during London & NY sessions.
Avoid trading against strong higher timeframe trends without extra confirmation.
Use tight stops and let winners run when the setup is strong.
💡 This tool is built to highlight only the cleanest reversal setups with layered confluence. Use it to filter noise and stay disciplined with your entries.
Hawkes Volatility Exit IndicatorOverview
The Hawkes Volatility Exit Indicator is a powerful tool designed to help traders capitalize on volatility breakouts and exit positions when momentum fades. Built on the Hawkes process, it models volatility clustering to identify optimal entry points after quiet periods and exit signals during volatility cooling. Designed to be helpful for swing traders and trend followers across markets like stocks, forex, and crypto.
Key Features Volatility-Based Entries: Detects breakouts when volatility spikes above the 95th percentile (adjustable) after quiet periods (below 5th percentile).
This indicator is probably better on exits than entries.
Smart Exit Signals: Triggers exits when volatility drops below a customizable threshold (default: 30th percentile) after a minimum hold period.
Hawkes Process: Uses a decay-based model (kappa) to capture volatility clustering, making it responsive to market dynamics.
Visual Clarity: Includes a volatility line, exit threshold, percentile bands, and intuitive markers (triangles for entries, X for exits).
Status Table: Displays real-time data on position (LONG/SHORT/FLAT), volatility regime (HIGH/LOW/NORMAL), bars held, and exit readiness.
Customizable Alerts: Set alerts for breakouts and exits to stay on top of trading opportunities.
How It Works Quiet Periods: Identifies low volatility (below 5th percentile) that often precede significant moves.
Breakout Entries: Signals bullish (triangle up) or bearish (triangle down) entries when volatility spikes post-quiet period.
Exit Signals: Suggests exiting when volatility cools below the exit threshold after a minimum hold (default: 3 bars).
Visuals & Table: Tracks volatility, position status, and signals via lines, shaded zones, and a detailed status table.
Settings
Hawkes Kappa (0.1): Adjusts volatility decay (lower = smoother, higher = more sensitive).
Volatility Lookback (168): Sets the period for percentile calculations.
ATR Periods (14): Normalizes volatility using Average True Range.
Breakout Threshold (95%): Volatility percentile for entries.
Exit Threshold (30%): Volatility percentile for exits.
Quiet Threshold (5%): Defines quiet periods.
Minimum Hold Bars (3): Ensures positions are held before exiting.
Alerts: Enable/disable breakout and exit alerts.
How to Use
Entries: Look for triangle markers (up for long, down for short) and confirm with the status table showing "ENTRY" and "LONG"/"SHORT."
Exits: Exit on X cross markers when the status table shows "EXIT" and "Exit Ready: YES."
Monitoring: Use the status table to track position, bars held, and volatility regime (HIGH/LOW/NORMAL).
Combine: Pair with price action, support/resistance, or other indicators for better context.
Tips : Adjust thresholds for your market: lower breakout thresholds for more signals, higher exit thresholds for earlier exits.
Test on your asset to ensure compatibility (best for markets with volatility clustering).
Use alerts to automate signal detection.
Limitations Requires sufficient data (default: 168 bars) for reliable signals. Check "Data Status" in the table.
Focuses on volatility, not price direction—combine with trend tools.
May lag slightly due to the smoothing nature of the Hawkes process.
Why Use It?
The Hawkes Volatility Exit Indicator offers a unique, data-driven approach to timing trades based on volatility dynamics. Its clear visuals, customizable settings, and real-time status table make it a valuable addition to any trader’s toolkit. Try it to catch breakouts and exit with precision!
This indicator is based on neurotrader888's python repo. All credit to him. All mistakes mine.
This conversion published for wider attention to the Hawkes method.
Custom EMA/SMA Dashboard📊 Custom EMA/SMA Dashboard
This indicator provides a customizable dashboard to display multiple moving averages (MAs) on your chart. You can switch between EMA (Exponential Moving Average) and SMA (Simple Moving Average) with a single input, and independently enable, color, and style each line.
✨ Features:
✅ Choose between EMA and SMA for all MAs
✅ Enable or disable each MA individually
🎨 Custom color and line width for:
10-period MA
20-period MA
50-period MA
200-period MA
RSI WMA VWMA Divergence Indicator// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © Kenndjk
//@version=6
indicator(title="RSI WMA VWMA Divergence Indicator", shorttitle="Kenndjk", format=format.price, precision=2)
oscType = input.string("RSI", "Oscillator Type", options = , group="General Settings")
// RSI Settings
rsiGroup = "RSI Settings"
rsiLengthInput = input.int(14, minval=1, title="RSI Length", group=rsiGroup)
rsiSourceInput = input.source(close, "Source", group=rsiGroup)
// WMA VWMA
wmaLength = input.int(9, "WMA Length", minval=1, group="WMA Settings")
vwmaLength = input.int(3, "VWMA Length", minval=1, group="WMA Settings")
wma = ta.wma(close, wmaLength)
vwma = ta.vwma(close, vwmaLength)
useVWMA = input.bool(true, "Use VWMA for Divergence (when WMA + VWMA mode)", group="WMA Settings")
// Oscillator selection
rsi = ta.rsi(rsiSourceInput, rsiLengthInput) // Calculate RSI always, but use conditionally
osc = oscType == "RSI" ? rsi : useVWMA ? vwma : wma
// RSI plots (conditional)
isRSI = oscType == "RSI"
rsiPlot = plot(isRSI ? rsi : na, "RSI", color=isRSI ? #7E57C2 : na)
rsiUpperBand = hline(isRSI ? 70 : na, "RSI Upper Band", color=isRSI ? #787B86 : na)
midline = hline(isRSI ? 50 : na, "RSI Middle Band", color=isRSI ? color.new(#787B86, 50) : na)
rsiLowerBand = hline(isRSI ? 30 : na, "RSI Lower Band", color=isRSI ? #787B86 : na)
fill(rsiUpperBand, rsiLowerBand, color=isRSI ? color.rgb(126, 87, 194, 90) : na, title="RSI Background Fill")
midLinePlot = plot(isRSI ? 50 : na, color = na, editable = false, display = display.none)
fill(rsiPlot, midLinePlot, 100, 70, top_color = isRSI ? color.new(color.green, 0) : na, bottom_color = isRSI ? color.new(color.green, 100) : na, title = "Overbought Gradient Fill")
fill(rsiPlot, midLinePlot, 30, 0, top_color = isRSI ? color.new(color.red, 100) : na, bottom_color = isRSI ? color.new(color.red, 0) : na, title = "Oversold Gradient Fill")
// WMA VWMA plots
wmaColor = oscType != "RSI" ? (useVWMA ? color.new(color.blue, 70) : color.blue) : na
wmaWidth = useVWMA ? 1 : 2
vwmaColor = oscType != "RSI" ? (useVWMA ? color.orange : color.new(color.orange, 70)) : na
vwmaWidth = useVWMA ? 2 : 1
plot(oscType != "RSI" ? wma : na, "WMA", color=wmaColor, linewidth=wmaWidth)
plot(oscType != "RSI" ? vwma : na, "VWMA", color=vwmaColor, linewidth=vwmaWidth)
// Smoothing MA inputs (only for RSI)
GRP = "Smoothing (RSI only)"
TT_BB = "Only applies when 'Show Bollinger Bands' is selected. Determines the distance between the SMA and the bands."
maLengthSMA = input.int(14, "SMA Length", minval=1, group=GRP, display=display.data_window)
maLengthEMA = input.int(14, "EMA Length", minval=1, group=GRP, display=display.data_window)
maLengthRMA = input.int(14, "SMMA (RMA) Length", minval=1, group=GRP, display=display.data_window)
maLengthWMA = input.int(14, "WMA Length", minval=1, group=GRP, display=display.data_window)
maLengthVWMA = input.int(14, "VWMA Length", minval=1, group=GRP, display=display.data_window)
bbMultInput = input.float(2.0, "BB StdDev", minval=0.001, maxval=50, step=0.5, tooltip=TT_BB, group=GRP, display=display.data_window)
showSMA = input.bool(false, "Show SMA", group=GRP)
showEMA = input.bool(false, "Show EMA", group=GRP)
showRMA = input.bool(false, "Show SMMA (RMA)", group=GRP)
showWMAsmooth = input.bool(false, "Show WMA", group=GRP)
showVWMAsmooth = input.bool(false, "Show VWMA", group=GRP)
showBB = input.bool(false, "Show SMA + Bollinger Bands", group=GRP, tooltip=TT_BB)
// Smoothing MA Calculations
sma_val = (showSMA or showBB) and isRSI ? ta.sma(rsi, maLengthSMA) : na
ema_val = showEMA and isRSI ? ta.ema(rsi, maLengthEMA) : na
rma_val = showRMA and isRSI ? ta.rma(rsi, maLengthRMA) : na
wma_val = showWMAsmooth and isRSI ? ta.wma(rsi, maLengthWMA) : na
vwma_val = showVWMAsmooth and isRSI ? ta.vwma(rsi, maLengthVWMA) : na
smoothingStDev = showBB and isRSI ? ta.stdev(rsi, maLengthSMA) * bbMultInput : na
// Smoothing MA plots
plot(sma_val, "RSI-based SMA", color=(showSMA or showBB) ? color.yellow : na, display=(showSMA or showBB) ? display.all : display.none, editable=(showSMA or showBB))
plot(ema_val, "RSI-based EMA", color=showEMA ? color.purple : na, display=showEMA ? display.all : display.none, editable=showEMA)
plot(rma_val, "RSI-based RMA", color=showRMA ? color.red : na, display=showRMA ? display.all : display.none, editable=showRMA)
plot(wma_val, "RSI-based WMA", color=showWMAsmooth ? color.blue : na, display=showWMAsmooth ? display.all : display.none, editable=showWMAsmooth)
plot(vwma_val, "RSI-based VWMA", color=showVWMAsmooth ? color.orange : na, display=showVWMAsmooth ? display.all : display.none, editable=showVWMAsmooth)
bbUpperBand = plot(showBB ? sma_val + smoothingStDev : na, title="Upper Bollinger Band", color=showBB ? color.green : na, display=showBB ? display.all : display.none, editable=showBB)
bbLowerBand = plot(showBB ? sma_val - smoothingStDev : na, title="Lower Bollinger Band", color=showBB ? color.green : na, display=showBB ? display.all : display.none, editable=showBB)
fill(bbUpperBand, bbLowerBand, color=showBB ? color.new(color.green, 90) : na, title="Bollinger Bands Background Fill", display=showBB ? display.all : display.none, editable=showBB)
// Divergence Settings
divGroup = "Divergence Settings"
calculateDivergence = input.bool(true, title="Calculate Divergence", group=divGroup, tooltip = "Calculating divergences is needed in order for divergence alerts to fire.")
lookbackLeft = input.int(5, "Pivot Lookback Left", minval=1, group=divGroup)
lookbackRight = input.int(5, "Pivot Lookback Right", minval=1, group=divGroup)
rangeLower = input.int(5, "Min Range for Divergence", minval=0, group=divGroup)
rangeUpper = input.int(60, "Max Range for Divergence", minval=1, group=divGroup)
showHidden = input.bool(true, "Show Hidden Divergences", group=divGroup)
bearColor = color.red
bullColor = color.green
textColor = color.white
noneColor = color.new(color.white, 100)
_inRange(cond) =>
bars = ta.barssince(cond)
rangeLower <= bars and bars <= rangeUpper
bool plFound = false
bool phFound = false
bool bullCond = false
bool bearCond = false
bool hiddenBullCond = false
bool hiddenBearCond = false
float oscLBR = na
float lowLBR = na
float highLBR = na
float prevPlOsc = na
float prevPlLow = na
float prevPhOsc = na
float prevPhHigh = na
if calculateDivergence
plFound := not na(ta.pivotlow(osc, lookbackLeft, lookbackRight))
phFound := not na(ta.pivothigh(osc, lookbackLeft, lookbackRight))
oscLBR := osc
lowLBR := low
highLBR := high
prevPlOsc := ta.valuewhen(plFound, oscLBR, 1)
prevPlLow := ta.valuewhen(plFound, lowLBR, 1)
prevPhOsc := ta.valuewhen(phFound, oscLBR, 1)
prevPhHigh := ta.valuewhen(phFound, highLBR, 1)
// Regular Bullish
oscHL = oscLBR > prevPlOsc and _inRange(plFound )
priceLL = lowLBR < prevPlLow
bullCond := priceLL and oscHL and plFound
// Regular Bearish
oscLL = oscLBR < prevPhOsc and _inRange(phFound )
priceHH = highLBR > prevPhHigh
bearCond := priceHH and oscLL and phFound
// Hidden Bullish
oscLL_hidden = oscLBR < prevPlOsc and _inRange(plFound )
priceHL = lowLBR > prevPlLow
hiddenBullCond := priceHL and oscLL_hidden and plFound and showHidden
// Hidden Bearish
oscHH_hidden = oscLBR > prevPhOsc and _inRange(phFound )
priceLH = highLBR < prevPhHigh
hiddenBearCond := priceLH and oscHH_hidden and phFound and showHidden
// Plot divergences (lines and labels on pane)
if bullCond
leftBar = ta.valuewhen(plFound, bar_index , 1)
line.new(leftBar, prevPlOsc, bar_index , oscLBR, xloc=xloc.bar_index, color=bullColor, width=2)
label.new(bar_index , oscLBR, "R Bull", style=label.style_label_up, color=noneColor, textcolor=textColor)
if bearCond
leftBar = ta.valuewhen(phFound, bar_index , 1)
line.new(leftBar, prevPhOsc, bar_index , oscLBR, xloc=xloc.bar_index, color=bearColor, width=2)
label.new(bar_index , oscLBR, "R Bear", style=label.style_label_down, color=noneColor, textcolor=textColor)
if hiddenBullCond
leftBar = ta.valuewhen(plFound, bar_index , 1)
line.new(leftBar, prevPlOsc, bar_index , oscLBR, xloc=xloc.bar_index, color=bullColor, width=2, style=line.style_dashed)
label.new(bar_index , oscLBR, "H Bull", style=label.style_label_up, color=noneColor, textcolor=textColor)
if hiddenBearCond
leftBar = ta.valuewhen(phFound, bar_index , 1)
line.new(leftBar, prevPhOsc, bar_index , oscLBR, xloc=xloc.bar_index, color=bearColor, width=2, style=line.style_dashed)
label.new(bar_index , oscLBR, "H Bear", style=label.style_label_down, color=noneColor, textcolor=textColor)
// Alert conditions
alertcondition(bullCond, title="Regular Bullish Divergence", message="Found a new Regular Bullish Divergence, Pivot Lookback Right number of bars to the left of the current bar.")
alertcondition(bearCond, title="Regular Bearish Divergence", message="Found a new Regular Bearish Divergence, Pivot Lookback Right number of bars to the left of the current bar.")
alertcondition(hiddenBullCond, title="Hidden Bullish Divergence", message="Found a new Hidden Bullish Divergence, Pivot Lookback Right number of bars to the left of the current bar.")
alertcondition(hiddenBearCond, title="Hidden Bearish Divergence", message="Found a new Hidden Bearish Divergence, Pivot Lookback Right number of bars to the left of the current bar.")
RSI+BOLLINGER (LONG & SHORT)This indicator combines two of the most popular tools in technical analysis, the Relative Strength Index (RSI) and Bollinger Bands (BB), to generate both long (BUY) and short (SELL) trading signals.
Strategy:
Entries (Buy/Short): Entry signals are based on the RSI.
A BUY is suggested when the RSI crosses above an oversold level (default: 29), indicating a possible upward reversal.
A SHORT is suggested when the RSI crosses below an overbought level (default: 71), indicating a possible downward reversal.
Exits (Position Closure): Exit signals are based on Bollinger Bands.
A long position is closed when the price crosses below the upper Bollinger Band.
A short position is closed when the price crosses above the lower Bollinger Band.
Key Features:
Cascade Filter: Includes a smart filter that prevents opening new consecutive trades if the price hasn't moved significantly in favor of a new entry, optimizing signal quality.
Automation Alerts: Generates detailed alerts in JSON format for each event (buy, sell, close), designed for easy integration with trading bots and automated systems via webhooks.
Fully Configurable: All parameters of the RSI, Bollinger Bands, and strategy filters can be adjusted from the indicator’s settings menu.
[volfgang] wave.liteThe wave.lite indicator is a simplified version of my WAVE momentum tracker indicator, designed to help traders identify market trends by analysing price action across multiple timeframes. As a simplified version of my full WAVE script, it focuses on core momentum signals and confluence for the current timeframe only.
Quick Summary
The Lite WAVE features a signal line that alternates between Red (bearish) and Blue (bullish).
It turns Blue when the WAVE line crosses above the signal and holds for 1 bar.
It turns Red when the WAVE line crosses below the signal and holds for 1 bar.
Under The Hood
The Lite WAVE aggregates close, high, low, and EMA data over a set period to measure recent price extremes and midpoint deviations, emphasizing newer action. It calculates averages for high-to-high and low-to-low differences to derive the WAVE value, smoothed for trend determination.
This lite version omits advanced divergence, specialist info box, confluence scanner and signal features from the full WAVE, focusing on momentum tracking for simplicity. It's suitable for all markets and assets; always combine with other analysis—past performance doesn't guarantee future results.
MIGA Trader DNAMIGA Trader DNA is a composite indicator that integrates:
Trend Identification: Uses three exponential moving averages (fast, mid, slow) to determine market bias based on their order.
Momentum Filter: An adaptive RSI whose period automatically matches the fastest EMA highlights overbought or oversold conditions.
Entry Timing: A Stochastic %K crossover signals precise entry points when momentum aligns with trend direction.
Volatility Envelope: An optional, SuperTrend band adjusts dynamically to changing ATR-based volatility.
Visual Signals: Discrete “Buy” and “Sell” labels mark entry opportunities directly on the price chart when all conditions align.
Current RSI LabelRSI percentage indicator above stock price. Updates RSI percentage as stock price fluctuates.
Will indicate if the price is overbought or oversold
RSI MA PercentagePlace updated RSI MA percentage as the stock price updates
Will indicate if the RSI MA is overbought or oversold
RV Indicator This Pine Script defines a custom Relative Volatility (RV) Indicator, which measures the ratio of directional price movement to volatility over a specified number of bars. Below is a full explanation of what this script does.
Title:
RV Indicator — Relative Volatility Oscillator
Purpose:
This indicator measures how aggressively price is moving compared to recent volatility, and smooths the result with a signal line. It can be used to gauge momentum shifts and trend strength.
How It Works – Step by Step
1. Measuring Price Momentum (v1)
It calculates the difference between the close and open prices of the last 4 candles.
A weighted average is applied:
The current candle and the one 3 bars ago get weight 1.
The two middle candles (1 and 2 bars ago) get weight 2.
This creates a smoothed momentum measure:
If close > open (bullish), v1 is positive.
If close < open (bearish), v1 is negative.
2. Measuring Volatility (v2)
Similarly, it calculates the high-low range for the last 4 candles.
The same weighting (1, 2, 2, 1) is applied.
This gives a smoothed volatility measure.
3. Combining Momentum and Volatility (RV Ratio)
For the past ti bars (default: 10), it sums up:
All v1 values (momentum sum)
All v2 values (volatility sum)
Then it divides them:
𝑅𝑉= sum of price momentum % sum of volatility
This produces the RV value:
RV > 0: Momentum is bullish (price is generally moving up relative to its volatility).
RV < 0: Momentum is bearish (price is moving down relative to its volatility).
4. Smoothed Signal Line (rvsig)
A smoothed version of the RV is created using a weighted average of the latest 4 RV values.
This acts like a signal line, similar to how MACD uses a signal line.
Crossovers between RV and this signal line can be used to detect shifts in momentum.
5. Visual Output
Orange Line (RV): Shows the raw momentum/volatility ratio.
Blue Line (Signal): A smoother line that follows RV more slowly.
Zero Line: Divides bullish vs. bearish momentum.
How to Use It in Trading
1. Look for Crossovers:
If RV crosses above its signal line → Possible buy signal (momentum turning bullish).
If RV crosses below its signal line → Possible sell signal (momentum turning bearish).
2. Check the Zero Line:
If both RV and Signal are above zero, momentum is bullish.
If both are below zero, momentum is bearish.
3. Filter False Signals:
Combine RV with a trend filter (like a 50 or 200 EMA) to avoid trading against the main trend.
Disclaimer: This script is for informational and educational purposes only. It does not constitute financial advice or a recommendation to buy or sell any asset. All trading decisions are solely your responsibility. Use at your own risk.