MÈGAS ALGO : ZIG-ZAG CYCLE INSIGTH [INDICATOR]Overview
The Zig-Zag Cycle Insigth is a revisited version of the classic Zig Zag indicator, designed to provide traders with a more comprehensive and actionable view of price movements.
This advanced tool not only highlights significant price swings but also incorporates additional features such as cycle analysis, real-time data tracking, and Fibonacci retracement levels. These enhancements make it an invaluable resource for identifying trends, potential reversal points, and market structure.
This indicator adheres to TradingView's guidelines and is optimized for both technical analysts and active traders who seek deeper insights into market dynamics.
Key Features:
1. Customizable Thresholds for Price Movements:
- Users can set personalized thresholds for price movement percentages and time periods.
This ensures that only significant price swings are plotted, reducing noise and increasing
clarity.
- Straight lines connect swing highs and lows, providing a cleaner visual representation of
the trend.
2. Cycle Analysis Table:
- A dynamic table is included to analyze price cycles based on three key factors:
- Price Change: Measures the magnitude of each swing (high-to-low or low-to-high).
- Time Duration (Bar Count): Tracks the number of bars elapsed between consecutive swings,
offering precise timing insights.
- Volume: Analyzes trading volume during each segment of the cycle.
- The indicator calculates the **maximum**, **minimum**, and **mean** values for each
parameter across all completed cycles, providing deeper statistical insights into market
behavior.
- This table updates in real-time, offering traders a quantitative understanding of how price
behaves over different cycles.
3. Real-Time Data Integration:
- The indicator displays live updates of current price action relative to the last identified
swing high/low. This includes:
- Current distance from the last pivot point.
- Percentage change since the last pivot.
- Volume traded since the last pivot.
4. Fibonacci Retracement Levels:
- Integrated Fibonacci retracement levels are dynamically calculated based on the most
recent significant swing high and low.
- Key retracement levels (23.6%, 38.2%, 50%, 61.8%, and 78.6%) are plotted alongside the Zig
Zag lines, helping traders identify potential support/resistance zones.
- Extension levels (100%, 161.8%, etc.) are also included to anticipate possible breakout
targets.
5. Customizable Alerts:
- Users can configure alerts for specific real-time conditions, such as:
- Price Change
- Duration
- Volume
- Fibonacci Retracement Levels
How It Works:
1. Zig Zag Identification:
- The indicator scans historical price data to identify significant turning points where the
price moves by at least the user-defined percentage threshold.
- These turning points are connected by straight lines to form the Zig Zag pattern.
2. Cycle Analysis:
For each completed cycle (from one swing high/low to the next), the indicator calculates:
- Price Change: Difference between the start and end prices of the cycle.
- Maximum Price Change: The largest price difference observed across all cycles.
- Minimum Price Change: The smallest price difference observed across all cycles.
- Mean Price Change: The average price difference across all cycles.
- Time Duration (Bar Count): Number of bars elapsed between consecutive swings.
- Maximum Duration: The longest cycle in terms of bar count.
- Minimum Duration: The shortest cycle in terms of bar count.
- Mean Duration: The average cycle length in terms of bar count.
- Volume: Total volume traded during the cycle.
- Maximum Volume: The highest volume traded during any single cycle.
- Minimum Volume: The lowest volume traded during any single cycle.
- Mean Volume: The average volume traded across all cycles.
- These calculations provide traders with a statistical overview of market behavior, enabling
them to identify patterns and anomalies in price, time, and volume.
3. Fibonacci Integration:
- Once a new swing high or low is identified, the indicator automatically calculates Fibonacci
retracement and extension levels.
- These levels serve as reference points for potential entry/exit opportunities.
4. Real-Time Updates:
- As the market evolves, the indicator continuously monitors the relationship between the
current price and the last identified swing point.
- Real-time metrics, such as percentage change and volume, are updated dynamically.
5. Alerts Based on Real-Time Parameters:
- The indicator allows users to set customizable alerts based on real-time conditions:
- Price Change Alert: Triggered when the real-time price change is less or greater than a
predefined percentage threshold (e.g., > or < fixed value).
- Duration Alert: Triggered when the cycle duration (in bars) is less or greater than a
predefined
bar count threshold (e.g., > or < fixed value).
- Volume Alert: Triggered when the trading volume during the current cycle is less or greater
than a predefined volume threshold (e.g., > or < fixed value).
Advantages of Zig-Zag Cycle Insigth
- Comprehensive Insights: Combining cycle analysis, Fibonacci retracements, and real-time data
provides a holistic view of market conditions.
- Statistical Analysis: The inclusion of maximum, minimum, and mean values for price change,
duration, and volume offers deeper insights into market behavior.
- Actionable Signals: Customizable alerts ensure traders never miss critical market events based
on real-time price, duration, and volume parameters.
- User-Friendly Design: Clear visuals and intuitive controls make it accessible for traders of all
skill levels.
Reference:
TradingView/ZigZag
TradingView/AutofibRetracement
Please Note:
This indicator is provided for informational and educational purposes only. It is not financial advice, and it should not be considered a recommendation to buy, sell, or trade any financial instrument. Trading involves significant risks, including the potential loss of your entire investment. Always conduct your own research and consult with a licensed financial advisor before making any trading decisions.
The results and images provided are based on algorithms and historical/paid real-time market data but do not guarantee future results or accuracy. Use this tool at your own risk, and understand that past performance is not indicative of future outcomes.
Tìm kiếm tập lệnh với "alert"
DataDoodles SD + ProbabilityDataDoodles SD + Probability
Overview:
The “DataDoodles SD + Probability” indicator is designed to provide traders with a statistical edge by leveraging standard deviation and probability metrics. This advanced tool calculates the annualized standard deviation, Z-score, and probability of price movements, offering insights into potential market direction with customizable alert thresholds.
Key Features:
1. Annualized Standard Deviation (Volatility) Calculation:
• Uses a user-defined period to compute the rolling standard deviation of daily returns.
• Annualizes the volatility, giving a clear picture of expected price fluctuations.
2. Probability of Price Movement:
• Calculates the probability of price moving up or down using a corrected Z-Score.
• Displays the probability percentage for both upward and downward movements.
3. Dynamic Alerts:
• Configurable alerts for upward and downward price movement probabilities.
• Receive alerts when the probability exceeds user-defined thresholds.
4. Projections and Visuals:
• Plots projected high and low price levels based on annualized volatility.
• Displays Z-Score and probability metrics on the chart for quick reference.
5. Comprehensive Data Table:
• Bottom-center table displays key metrics:
• Daily Return
• Standard Deviation (SD)
• Annualized Standard Deviation (Yearly SD)
User Inputs:
• Annualization Period: Set the time frame for volatility annualization (Default: 252 days).
• SD Period: Define the rolling window for calculating standard deviation (Default: 252 days).
• Alert Probability Up/Down: Customize the probability thresholds for alerts (Default: 90%).
How It Works:
• Data Request and Calculation:
• Uses daily close prices to ensure consistent timeframe calculations.
• Calculates daily returns and annualizes the volatility using the square root of the time frame.
• Probability Computation:
• Employs a normal distribution CDF approximation to compute the probability of upward and downward price movements.
• Adjusts probabilities based on Z-Score to ensure accuracy.
• High and Low Projections:
• Utilizes the annualized volatility to estimate high and low price projections for the year.
• Visual Indicators and Alerts:
• Plots projected high (green) and low (red) levels on the chart.
• Displays Z-Score, probability percentages, and dynamically updates a statistics table.
Use Cases:
• Trend Analysis: Identify high-probability market movements using the probability metrics.
• Volatility Insights: Understand annualized volatility to gauge market risk and potential price ranges.
• Strategic Trading Decisions: Set alerts for high-probability scenarios to optimize entry and exit points.
Why Use “DataDoodles SD + Probability”?
This indicator provides a powerful combination of statistical analysis and visual representation. It empowers traders with:
• Quantitative Edge: By leveraging probability metrics and standard deviation, users can make informed trading decisions.
• Risk Management: Annualized volatility projections help in setting realistic stop-loss and take-profit levels.
• Actionable Alerts: Customizable probability alerts ensure users are notified of potential market moves, allowing proactive trading strategies.
Recommended Settings:
• Annualization Period: 252 (Ideal for daily data representing a trading year)
• SD Period: 252 (One trading year for consistent volatility calculations)
• Alert Probability: Set to 90% for conservative signals or lower for more frequent alerts.
Final Thoughts:
The “DataDoodles SD + Probability” indicator is a robust tool for traders looking to integrate statistical analysis into their trading strategies. It combines volatility measurement, probability calculations, and dynamic alerts to provide a comprehensive market overview.
Whether you’re a day trader or a long-term investor, this indicator can enhance your market insight and improve decision-making accuracy.
Disclaimer:
This indicator is a technical analysis tool designed for educational purposes. Past performance is not indicative of future results. Traders are encouraged to perform their own analysis and manage risk accordingly.
Relative Volume at Time█ OVERVIEW
This indicator calculates relative volume, which is the ratio of present volume over an average of past volume.
It offers two calculation modes, both using a time reference as an anchor.
█ CONCEPTS
Calculation modes
The simplest way to calculate relative volume is by using the ratio of a bar's volume over a simple moving average of the last n volume values.
This indicator uses one of two, more subtle ways to calculate both values of the relative volume ratio: current volume:past volume .
The two calculations modes are:
1 — Cumulate from Beginning of TF to Current Bar where:
current volume = the cumulative volume since the beginning of the timeframe unit, and
past volume = the mean of volume during that same relative period of time in the past n timeframe units.
2 — Point-to-Point Bars at Same Offset from Beginning of TF where:
current volume = the volume on a single chart bar, and
past volume = the mean of volume values from that same relative bar in time from the past n timeframe units.
Timeframe units
Timeframe units can be defined in three different ways:
1 — Using Auto-steps, where the timeframe unit automatically adjusts to the timeframe used on the chart:
— A 1 min timeframe unit will be used on 1sec charts,
— 1H will be used for charts at 1min and less,
— 1D will be used for other intraday chart timeframes,
— 1W will be used for 1D charts,
— 1M will be used for charts at less than 1M,
— 1Y will be used for charts at greater or equal than 1M.
2 — As a fixed timeframe that you define.
3 — By time of day (for intraday chart timeframes only), which you also define. If you use non-intraday chart timeframes in this mode, the indicator will switch to Auto-steps.
Relative Relativity
A relative volume value of 1.0 indicates that current volume is equal to the mean of past volume , but how can we determine what constitutes a high relative volume value?
The traditional way is to settle for an arbitrary threshold, with 2.0 often used to indicate that relative volume is worthy of attention.
We wanted to provide traders with a contextual method of calculating threshold values, so in addition to the conventional fixed threshold value,
this indicator includes two methods of calculating a threshold channel on past relative volume values:
1 — Using the standard deviation of relative volume over a fixed lookback.
2 — Using the highs/lows of relative volume over a variable lookback.
Channels calculated on relative volume provide meta-relativity, if you will, as they are relative values of relative volume.
█ FEATURES
Controls in the "Display" section of inputs determine what is visible in the indicator's pane. The next "Settings" section is where you configure the parameters used in the calculations. The "Column Coloring Conditions" section controls the color of the columns, which you will see in three of the five display modes available. Whether columns are plotted or not, the coloring conditions also determine when markers appear, if you have chosen to show the markers in the "Display" section. The presence of markers is what triggers the alerts configured on this indicator. Finally, the "Colors" section of inputs allows you to control the color of the indicator's visual components.
Display
Five display modes are available:
• Current Volume Columns : shows columns of current volume , with past volume displayed as an outlined column.
• Relative Volume Columns : shows relative volume as a column.
• Relative Volume Columns With Average : shows relative volume as a column, with the average of relative volume.
• Directional Relative Volume Average : shows a line calculated using the average of +/- values of relative volume.
The positive value of relative volume is used on up bars; its negative value on down bars.
• Relative Volume Average : shows the average of relative volume.
A Hull moving average is used to calculate the average used in the three last display modes.
You can also control the display of:
• The value or relative volume, when in the first three display modes. Only the last 500 values will be shown.
• Timeframe transitions, shown in the background.
• A reminder of the active timeframe unit, which appears to the right of the indicator's last bar.
• The threshold used, which can be a fixed value or a channel, as determined in the next "Settings" section of inputs.
• Up/Down markers, which appear on transitions of the color of the volume columns (determined by coloring conditions), which in turn control when alerts are triggered.
• Conditions of high volatility.
Settings
Use this section of inputs to change:
• Calculation mode : this is where you select one of this indicator's two calculation modes for current volume and past volume , as explained in the "Concepts" section.
• Past Volume Lookback in TF units : the quantity of timeframe units used in the calculation of past volume .
• Define Timeframes Units Using : the mode used to determine what one timeframe unit is. Note that when using a fixed timeframe, it must be higher than the chart's timeframe.
Also, note that time of day timeframe units only work on intraday chart timeframes.
• Threshold Mode : Five different modes can be selected:
— Fixed Value : You can define the value using the "Fixed Threshold" field below. The default value is 2.0.
— Standard Deviation Channel From Fixed Lookback : This is a channel calculated using the simple moving average of relative volume
(so not the Hull moving average used elsewhere in the indicator), plus/minus the standard deviation multiplied by a user-defined factor.
The lookback used is the value of the "Channel Lookback" field. Its default is 100.
— High/Low Channel From Beginning of TF : in this mode, the High/Low values reset at the beginning of each timeframe unit.
— High/Low Channel From Beginning of Past Volume Lookback : in this mode, the High/Low values start from the farthest point back where we are calculating past volume ,
which is determined by the combination of timeframe units and the "Past Volume Lookback in TF units" value.
— High/Low Channel From Fixed Lookback : In this mode the lookback is fixed. You can define the value using the "Channel Lookback" field. The default value is 100.
• Period of RelVol Moving Average : the period of the Hull moving average used in the "Directional Relative Volume Average" and the "Relative Volume Average".
• High Volatility is defined using fast and slow ATR periods, so this represents the volatility of price.
Volatility is considered to be high when the fast ATR value is greater than its slow value. Volatility can be used as a filter in the column coloring conditions.
Column Coloring Conditions
• Eight different conditions can be turned on or off to determine the color of the volume columns. All "ON" conditions must be met to determine a high/low state of relative volume,
or, in the case of directional relative volume, a bull/bear state.
• A volatility state can also be used to filter the conditions.
• When the coloring conditions and the filter do not allow for a high/low state to be determined, the neutral color is used.
• Transitions of the color of the volume columns determined by coloring conditions are used to plot the up/down markers, which in turn control when alerts are triggered.
Colors
• You can define your own colors for all of the oscillator's plots.
• The default colors will perform well on light or dark chart backgrounds.
Alerts
• An alert can be defined for the script. The alert will trigger whenever an up/down marker appears in the indicator's display.
The particular combination of coloring conditions and the display settings for up/down markers when you create the alert will determine which conditions trigger the alert.
After alerts are created, subsequent changes to the conditions controlling the display of markers will not affect existing alerts.
• By configuring the script's inputs in different ways before you create your alerts, you can create multiple, functionally distinct alerts from this script.
When creating multiple alerts, it is useful to include in the alert's message a reminder of the particular conditions you used for each alert.
• As is usually the case, alerts triggering "Once Per Bar Close" will prevent repainting.
Error messages
Error messages will appear at the end of the chart upon the following conditions:
• When the combination of the timeframe units used and the "Past Volume Lookback in TF units" value create a lookback that is greater than 5000 bars.
The lookback will then be recalculated to a value such that a runtime error does not occur.
• If the chart's timeframe is higher than the timeframe units. This error cannot occur when using Auto-steps to calculate timeframe units.
• If relative volume cannot be calculated, for example, when no volume data is available for the chart's symbol.
• When the threshold of relative volume is configured to be visible but the indicator's scale does not allow it to be visible (in "Current Volume Columns" display mode).
█ NOTES
For traders
The chart shown here uses the following display modes: "Current Volume Columns", "Relative Volume Columns With Average", "Directional Relative Volume Average" and "Relative Volume Average". The last one also shows the threshold channel in standard deviation mode, and the TF Unit reminder to the right, in red.
Volume, like price, is a value with a market-dependent scale. The only valid reference for volume being its past values, any improvement in the way past volume is calculated thus represents a potential opportunity to traders. Relative volume calculated as it is here can help traders extract useful information from markets in many circumstances, markets with cyclical volume such as Forex being one, obvious case. The relative nature of the values calculated by this indicator also make it a natural fit for cross-market and cross-sector analysis, or to identify behavioral changes in the different futures contracts of the same market. Relative volume can also be put to more exotic uses, such as in evaluating changes in the popularity of exchanges.
Relative volume alone has no directional bias. While higher relative volume values always indicate higher trading activity, that activity does not necessarily translate into significant price movement. In a tightly fought battle between buyers and sellers, you could theoretically have very large volume for many bars, with no change whatsoever in bid/ask prices. This of course, is unlikely to happen in reality, and so traders are justified in considering high relative volume values as indicating periods where more attention is required, because imbalances in the strength of buying/selling power during high-volume trading periods can amplify price variations, providing traders with the generally useful gift of volatility.
Be sure to give the "Directional Relative Volume Average" a try. Contrary to the always-positive ratio widely used in this indicator, the "Directional Relative Volume Average" produces a value able to determine a bullish/bearish bias for relative volume.
Note that realtime bars must be complete for the relative volume value to be confirmed. Values calculated on historical or elapsed realtime bars will not recalculate unless historical volume data changes.
Finally, as with all indicators using volume information, keep in mind that some exchanges/brokers supply different feeds for intraday and daily data, and the volume data on both feeds can sometimes vary quite a bit.
For coders
Our script was written using the PineCoders Coding Conventions for Pine .
The description was formatted using the techniques explained in the How We Write and Format Script Descriptions PineCoders publication.
Bits and pieces of code were lifted from the MTF Selection Framework and the MTF Oscillator Framework , also by PineCoders.
█ THANKS
Thanks to dgtrd for suggesting to add the channel using standard deviation.
Thanks to adolgov for helpful suggestions on calculations and visuals.
Look first. Then leap.
Hidden Divergence with S/R & TP// This source code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © Gemini
// @version=5
// This indicator combines Hidden RSI Divergence with Support & Resistance detection
// and provides dynamic take-profit targets based on ATR. It also includes alerts.
indicator("Hidden Divergence with S/R & TP", overlay=true)
// === INPUTS ===
rsiLengthInput = input.int(14, "RSI Length", minval=1)
rsiSMALengthInput = input.int(5, "RSI SMA Length", minval=1)
pivotLookbackLeft = input.int(5, "Pivot Left Bars", minval=1)
pivotLookbackRight = input.int(5, "Pivot Right Bars", minval=1)
atrPeriodInput = input.int(14, "ATR Period", minval=1)
atrMultiplierTP1 = input.float(1.5, "TP1 ATR Multiplier", minval=0.1)
atrMultiplierTP2 = input.float(3.0, "TP2 ATR Multiplier", minval=0.1)
atrMultiplierTP3 = input.float(5.0, "TP3 ATR Multiplier", minval=0.1)
// === CALCULATIONS ===
// Calculate RSI and its SMA
rsiValue = ta.rsi(close, rsiLengthInput)
rsiSMA = ta.sma(rsiValue, rsiSMALengthInput)
// Calculate Average True Range for Take Profits
atrValue = ta.atr(atrPeriodInput)
// Identify pivot points for Support and Resistance
pivotLow = ta.pivotlow(pivotLookbackLeft, pivotLookbackRight)
pivotHigh = ta.pivothigh(pivotLookbackLeft, pivotLookbackRight)
// Define variables to track divergence and TP levels
var bool bullishDivergence = false
var bool bearishDivergence = false
var float tp1Buy = na
var float tp2Buy = na
var float tp3Buy = na
var float tp1Sell = na
var float tp2Sell = na
var float tp3Sell = na
// Reset divergence flags at each new bar
bullishDivergence := false
bearishDivergence := false
// === HIDDEN DIVERGENCE LOGIC ===
// Hidden Bullish Divergence (Higher low in price, lower low in RSI)
// Price makes a higher low, while RSI makes a lower low, suggesting trend continuation.
for i = 1 to 50 // Look back up to 50 bars for a confirmed pivot low
if not na(pivotLow ) and close < close and rsiValue < rsiValue
// Check if price is making a higher low than the pivot low, and RSI is making a lower low
if low > low and rsiValue < rsiValue
bullishDivergence := true
break // Exit loop once divergence is found
// Hidden Bearish Divergence (Lower high in price, higher high in RSI)
// Price makes a lower high, while RSI makes a higher high, suggesting trend continuation.
for i = 1 to 50 // Look back up to 50 bars for a confirmed pivot high
if not na(pivotHigh ) and close > close and rsiValue > rsiValue
// Check if price is making a lower high than the pivot high, and RSI is making a higher high
if high < high and rsiValue > rsiValue
bearishDivergence := true
break // Exit loop once divergence is found
// === SETTING TP LEVELS AND ALERTS ===
if bullishDivergence
buySignalPrice = low - atrValue * 0.5 // Entry below the low
tp1Buy := buySignalPrice + atrValue * atrMultiplierTP1
tp2Buy := buySignalPrice + atrValue * atrMultiplierTP2
tp3Buy := buySignalPrice + atrValue * atrMultiplierTP3
// Alert for buying signal
alert("Hidden Bullish Divergence Detected on " + syminfo.ticker + " - Buy Signal", alert.freq_once_per_bar_close)
else
tp1Buy := na
tp2Buy := na
tp3Buy := na
if bearishDivergence
sellSignalPrice = high + atrValue * 0.5 // Entry above the high
tp1Sell := sellSignalPrice - atrValue * atrMultiplierTP1
tp2Sell := sellSignalPrice - atrValue * atrMultiplierTP2
tp3Sell := sellSignalPrice - atrValue * atrMultiplierTP3
// Alert for selling signal
alert("Hidden Bearish Divergence Detected on " + syminfo.ticker + " - Sell Signal", alert.freq_once_per_bar_close)
else
tp1Sell := na
tp2Sell := na
tp3Sell := na
// === PLOTTING SIGNALS AND TAKE PROFITS ===
// Plotting shapes for buy/sell signals
plotshape(bullishDivergence, title="Buy Signal", style=shape.triangleup, location=location.belowbar, color=color.new(color.green, 0), text="Buy", textcolor=color.black)
plotshape(bearishDivergence, title="Sell Signal", style=shape.triangledown, location=location.abovebar, color=color.new(color.red, 0), text="Sell", textcolor=color.black)
// Plotting take-profit lines
plot(tp1Buy, "TP1 Buy", color=color.new(color.lime, 0), style=plot.style_linebr)
plot(tp2Buy, "TP2 Buy", color=color.new(color.lime, 0), style=plot.style_linebr)
plot(tp3Buy, "TP3 Buy", color=color.new(color.lime, 0), style=plot.style_linebr)
plot(tp1Sell, "TP1 Sell", color=color.new(color.orange, 0), style=plot.style_linebr)
plot(tp2Sell, "TP2 Sell", color=color.new(color.orange, 0), style=plot.style_linebr)
plot(tp3Sell, "TP3 Sell", color=color.new(color.orange, 0), style=plot.style_linebr)
// Plotting the RSI and its SMA on a sub-pane
plot(rsiValue, "RSI", color.new(color.fuchsia, 0))
plot(rsiSMA, "RSI SMA", color.new(color.yellow, 0))
hline(50, "50 Midline", color=color.new(color.gray, 50))
// Plotting background for signals
bullishColor = color.new(color.green, 90)
bearishColor = color.new(color.red, 90)
bgcolor(bullishDivergence ? bullishColor : na, title="Bullish Divergence Zone")
bgcolor(bearishDivergence ? bearishColor : na, title="Bearish Divergence Zone")
// === EXPLANATION OF CONCEPTS ===
// Deep Knowledge of Market from AI:
// This indicator is based on a powerful, yet often misunderstood, concept: divergence.
// While standard divergence signals a potential trend reversal, hidden divergence signals a
// continuation of the prevailing trend. This is crucial for traders who want to capitalize
// on the momentum of a move rather than trying to catch tops and bottoms.
// Hidden Bullish Divergence: Occurs in an uptrend when price makes a higher low, but the
// RSI makes a lower low. This suggests that while there was a brief period of weakness, the
// underlying buying pressure is returning to push the trend higher. It’s a "re-energizing"
// of the bullish momentum.
// Hidden Bearish Divergence: Occurs in a downtrend when price makes a lower high, but the
// RSI makes a higher high. This indicates that while the sellers paused, the underlying
// selling pressure remains strong and is likely to continue pushing the price down. It's a
// subtle signal that the bears are regaining control.
// Combining Divergence with S/R: The true power of this indicator comes from its
// "confluence" principle. A divergence signal alone can be noisy. By requiring it to occur
// at a key support or resistance level (identified using pivot points), we are filtering
// out weaker signals and only focusing on high-probability setups where the market is
// likely to respect a previous area of interest. This tells us that not only is the trend
// likely to continue, but it is doing so from a strategic, well-defined point on the chart.
// Dynamic Take-Profit Targets: The take-profit targets are based on the Average True Range (ATR).
// ATR is a measure of market volatility. Using it to set targets ensures that your profit
// levels are dynamic and adapt to current market conditions. In a volatile market, your
// targets will be wider, while in a calm market, they will be tighter, helping you avoid
// unrealistic expectations and improving your risk management.
Game Theory Trading StrategyGame Theory Trading Strategy: Explanation and Working Logic
This Pine Script (version 5) code implements a trading strategy named "Game Theory Trading Strategy" in TradingView. Unlike the previous indicator, this is a full-fledged strategy with automated entry/exit rules, risk management, and backtesting capabilities. It uses Game Theory principles to analyze market behavior, focusing on herd behavior, institutional flows, liquidity traps, and Nash equilibrium to generate buy (long) and sell (short) signals. Below, I'll explain the strategy's purpose, working logic, key components, and usage tips in detail.
1. General Description
Purpose: The strategy identifies high-probability trading opportunities by combining Game Theory concepts (herd behavior, contrarian signals, Nash equilibrium) with technical analysis (RSI, volume, momentum). It aims to exploit market inefficiencies caused by retail herd behavior, institutional flows, and liquidity traps. The strategy is designed for automated trading with defined risk management (stop-loss/take-profit) and position sizing based on market conditions.
Key Features:
Herd Behavior Detection: Identifies retail panic buying/selling using RSI and volume spikes.
Liquidity Traps: Detects stop-loss hunting zones where price breaks recent highs/lows but reverses.
Institutional Flow Analysis: Tracks high-volume institutional activity via Accumulation/Distribution and volume spikes.
Nash Equilibrium: Uses statistical price bands to assess whether the market is in equilibrium or deviated (overbought/oversold).
Risk Management: Configurable stop-loss (SL) and take-profit (TP) percentages, dynamic position sizing based on Game Theory (minimax principle).
Visualization: Displays Nash bands, signals, background colors, and two tables (Game Theory status and backtest results).
Backtesting: Tracks performance metrics like win rate, profit factor, max drawdown, and Sharpe ratio.
Strategy Settings:
Initial capital: $10,000.
Pyramiding: Up to 3 positions.
Position size: 10% of equity (default_qty_value=10).
Configurable inputs for RSI, volume, liquidity, institutional flow, Nash equilibrium, and risk management.
Warning: This is a strategy, not just an indicator. It executes trades automatically in TradingView's Strategy Tester. Always backtest thoroughly and use proper risk management before live trading.
2. Working Logic (Step by Step)
The strategy processes each bar (candle) to generate signals, manage positions, and update performance metrics. Here's how it works:
a. Input Parameters
The inputs are grouped for clarity:
Herd Behavior (🐑):
RSI Period (14): For overbought/oversold detection.
Volume MA Period (20): To calculate average volume for spike detection.
Herd Threshold (2.0): Volume multiplier for detecting herd activity.
Liquidity Analysis (💧):
Liquidity Lookback (50): Bars to check for recent highs/lows.
Liquidity Sensitivity (1.5): Volume multiplier for trap detection.
Institutional Flow (🏦):
Institutional Volume Multiplier (2.5): For detecting large volume spikes.
Institutional MA Period (21): For Accumulation/Distribution smoothing.
Nash Equilibrium (⚖️):
Nash Period (100): For calculating price mean and standard deviation.
Nash Deviation (0.02): Multiplier for equilibrium bands.
Risk Management (🛡️):
Use Stop-Loss (true): Enables SL at 2% below/above entry price.
Use Take-Profit (true): Enables TP at 5% above/below entry price.
b. Herd Behavior Detection
RSI (14): Checks for extreme conditions:
Overbought: RSI > 70 (potential herd buying).
Oversold: RSI < 30 (potential herd selling).
Volume Spike: Volume > SMA(20) x 2.0 (herd_threshold).
Momentum: Price change over 10 bars (close - close ) compared to its SMA(20).
Herd Signals:
Herd Buying: RSI > 70 + volume spike + positive momentum = Retail buying frenzy (red background).
Herd Selling: RSI < 30 + volume spike + negative momentum = Retail selling panic (green background).
c. Liquidity Trap Detection
Recent Highs/Lows: Calculated over 50 bars (liquidity_lookback).
Psychological Levels: Nearest round numbers (e.g., $100, $110) as potential stop-loss zones.
Trap Conditions:
Up Trap: Price breaks recent high, closes below it, with a volume spike (volume > SMA x 1.5).
Down Trap: Price breaks recent low, closes above it, with a volume spike.
Visualization: Traps are marked with small red/green crosses above/below bars.
d. Institutional Flow Analysis
Volume Check: Volume > SMA(20) x 2.5 (inst_volume_mult) = Institutional activity.
Accumulation/Distribution (AD):
Formula: ((close - low) - (high - close)) / (high - low) * volume, cumulated over time.
Smoothed with SMA(21) (inst_ma_length).
Accumulation: AD > MA + high volume = Institutions buying.
Distribution: AD < MA + high volume = Institutions selling.
Smart Money Index: (close - open) / (high - low) * volume, smoothed with SMA(20). Positive = Smart money buying.
e. Nash Equilibrium
Calculation:
Price mean: SMA(100) (nash_period).
Standard deviation: stdev(100).
Upper Nash: Mean + StdDev x 0.02 (nash_deviation).
Lower Nash: Mean - StdDev x 0.02.
Conditions:
Near Equilibrium: Price between upper and lower Nash bands (stable market).
Above Nash: Price > upper band (overbought, sell potential).
Below Nash: Price < lower band (oversold, buy potential).
Visualization: Orange line (mean), red/green lines (upper/lower bands).
f. Game Theory Signals
The strategy generates three types of signals, combined into long/short triggers:
Contrarian Signals:
Buy: Herd selling + (accumulation or down trap) = Go against retail panic.
Sell: Herd buying + (distribution or up trap).
Momentum Signals:
Buy: Below Nash + positive smart money + no herd buying.
Sell: Above Nash + negative smart money + no herd selling.
Nash Reversion Signals:
Buy: Below Nash + rising close (close > close ) + volume > MA.
Sell: Above Nash + falling close + volume > MA.
Final Signals:
Long Signal: Contrarian buy OR momentum buy OR Nash reversion buy.
Short Signal: Contrarian sell OR momentum sell OR Nash reversion sell.
g. Position Management
Position Sizing (Minimax Principle):
Default: 1.0 (10% of equity).
In Nash equilibrium: Reduced to 0.5 (conservative).
During institutional volume: Increased to 1.5 (aggressive).
Entries:
Long: If long_signal is true and no existing long position (strategy.position_size <= 0).
Short: If short_signal is true and no existing short position (strategy.position_size >= 0).
Exits:
Stop-Loss: If use_sl=true, set at 2% below/above entry price.
Take-Profit: If use_tp=true, set at 5% above/below entry price.
Pyramiding: Up to 3 concurrent positions allowed.
h. Visualization
Nash Bands: Orange (mean), red (upper), green (lower).
Background Colors:
Herd buying: Red (90% transparency).
Herd selling: Green.
Institutional volume: Blue.
Signals:
Contrarian buy/sell: Green/red triangles below/above bars.
Liquidity traps: Red/green crosses above/below bars.
Tables:
Game Theory Table (Top-Right):
Herd Behavior: Buying frenzy, selling panic, or normal.
Institutional Flow: Accumulation, distribution, or neutral.
Nash Equilibrium: In equilibrium, above, or below.
Liquidity Status: Trap detected or safe.
Position Suggestion: Long (green), Short (red), or Wait (gray).
Backtest Table (Bottom-Right):
Total Trades: Number of closed trades.
Win Rate: Percentage of winning trades.
Net Profit/Loss: In USD, colored green/red.
Profit Factor: Gross profit / gross loss.
Max Drawdown: Peak-to-trough equity drop (%).
Win/Loss Trades: Number of winning/losing trades.
Risk/Reward Ratio: Simplified Sharpe ratio (returns / drawdown).
Avg Win/Loss Ratio: Average win per trade / average loss per trade.
Last Update: Current time.
i. Backtesting Metrics
Tracks:
Total trades, winning/losing trades.
Win rate (%).
Net profit ($).
Profit factor (gross profit / gross loss).
Max drawdown (%).
Simplified Sharpe ratio (returns / drawdown).
Average win/loss ratio.
Updates metrics on each closed trade.
Displays a label on the last bar with backtest period, total trades, win rate, and net profit.
j. Alerts
No explicit alertconditions defined, but you can add them for long_signal and short_signal (e.g., alertcondition(long_signal, "GT Long Entry", "Long Signal Detected!")).
Use TradingView's alert system with Strategy Tester outputs.
3. Usage Tips
Timeframe: Best for H1-D1 timeframes. Shorter frames (M1-M15) may produce noisy signals.
Settings:
Risk Management: Adjust sl_percent (e.g., 1% for volatile markets) and tp_percent (e.g., 3% for scalping).
Herd Threshold: Increase to 2.5 for stricter herd detection in choppy markets.
Liquidity Lookback: Reduce to 20 for faster markets (e.g., crypto).
Nash Period: Increase to 200 for longer-term analysis.
Backtesting:
Use TradingView's Strategy Tester to evaluate performance.
Check win rate (>50%), profit factor (>1.5), and max drawdown (<20%) for viability.
Test on different assets/timeframes to ensure robustness.
Live Trading:
Start with a demo account.
Combine with other indicators (e.g., EMAs, support/resistance) for confirmation.
Monitor liquidity traps and institutional flow for context.
Risk Management:
Always use SL/TP to limit losses.
Adjust position_size for risk tolerance (e.g., 5% of equity for conservative trading).
Avoid over-leveraging (pyramiding=3 can amplify risk).
Troubleshooting:
If no trades are executed, check signal conditions (e.g., lower herd_threshold or liquidity_sensitivity).
Ensure sufficient historical data for Nash and liquidity calculations.
If tables overlap, adjust position.top_right/bottom_right coordinates.
4. Key Differences from the Previous Indicator
Indicator vs. Strategy: The previous code was an indicator (VP + Game Theory Integrated Strategy) focused on visualization and alerts. This is a strategy with automated entries/exits and backtesting.
Volume Profile: Absent in this strategy, making it lighter but less focused on high-volume zones.
Wick Analysis: Not included here, unlike the previous indicator's heavy reliance on wick patterns.
Backtesting: This strategy includes detailed performance metrics and a backtest table, absent in the indicator.
Simpler Signals: Focuses on Game Theory signals (contrarian, momentum, Nash reversion) without the "Power/Ultra Power" hierarchy.
Risk Management: Explicit SL/TP and dynamic position sizing, not present in the indicator.
5. Conclusion
The "Game Theory Trading Strategy" is a sophisticated system leveraging herd behavior, institutional flows, liquidity traps, and Nash equilibrium to trade market inefficiencies. It’s designed for traders who understand Game Theory principles and want automated execution with robust risk management. However, it requires thorough backtesting and parameter optimization for specific markets (e.g., forex, crypto, stocks). The backtest table and visual aids make it easy to monitor performance, but always combine with other analysis tools and proper capital management.
If you need help with backtesting, adding alerts, or optimizing parameters, let me know!
Scalping with Williams %R, MACD, and SMA (1m)Overview:
This trading strategy is designed for scalping in the 1-minute timeframe. It uses a combination of the Williams %R, MACD, and SMA indicators to generate buy and sell signals. It also includes alert functionalities to notify users when trades are executed or closed.
Indicators Used:
Williams %R : A momentum indicator that measures overbought and oversold conditions. The Williams %R values range from -100 to 0.
Length: 140 bars (i.e., 140-period).
MACD (Moving Average Convergence Divergence) : A trend-following momentum indicator that shows the relationship between two moving averages of a security's price.
Fast Length: 24 bars
Slow Length: 52 bars
MACD Length: 9 bars (signal line)
SMA (Simple Moving Average) : A trend-following indicator that smooths out price data to create a trend-following indicator.
Length: 7 bars
Conditions and Logic:
Timeframe Check :
The strategy is designed specifically for the 1-minute timeframe. If the current chart is not on the 1-minute timeframe, a warning label is displayed on the chart instructing the user to switch to the 1-minute timeframe.
Williams %R Conditions :
Buy Condition: The strategy looks for a crossover of Williams %R from below -94 to above -94. This indicates a potential buying opportunity when the market is moving out of an oversold condition.
Sell Condition: The strategy looks for a crossunder of Williams %R from above -6 to below -6. This indicates a potential selling opportunity when the market is moving out of an overbought condition.
Deactivate Buy: If Williams %R crosses above -40, the buy signal is deactivated, suggesting that the buying condition is no longer valid.
Deactivate Sell: If Williams %R crosses below -60, the sell signal is deactivated, suggesting that the selling condition is no longer valid.
MACD Conditions :
MACD Histogram: Used to identify the momentum and the direction of the trend.
Long Entry: The strategy initiates a buy order if the MACD histogram shows a positive bar after a negative bar while a buy condition is active and Williams %R is above -94.
Long Exit: The strategy exits the buy position if the MACD histogram turns negative and is below the previous histogram bar.
Short Entry: The strategy initiates a sell order if the MACD histogram shows a negative bar after a positive bar while a sell condition is active and Williams %R is below -6.
Short Exit: The strategy exits the sell position if the MACD histogram turns positive and is above the previous histogram bar.
Trend Confirmation (Using SMA) :
Bullish Trend: The strategy considers a bullish trend if the current price is above the 7-bar SMA. A buy signal is only considered if this condition is met.
Bearish Trend: The strategy considers a bearish trend if the current price is below the 7-bar SMA. A sell signal is only considered if this condition is met.
Alerts:
Long Entry Alert: An alert is triggered when a buy order is executed.
Long Exit Alert: An alert is triggered when the buy order is closed.
Short Entry Alert: An alert is triggered when a sell order is executed.
Short Exit Alert: An alert is triggered when the sell order is closed.
Summary:
Buy Signal: Activated when Williams %R crosses above -94 and the price is above the 7-bar SMA. A buy order is placed if the MACD histogram shows a positive bar after a negative bar. The buy order is closed when the MACD histogram turns negative and is below the previous histogram bar.
Sell Signal: Activated when Williams %R crosses below -6 and the price is below the 7-bar SMA. A sell order is placed if the MACD histogram shows a negative bar after a positive bar. The sell order is closed when the MACD histogram turns positive and is above the previous histogram bar.
This strategy combines momentum (Williams %R), trend-following (MACD), and trend confirmation (SMA) to identify trading opportunities in the 1-minute timeframe. It is designed for short-term trading or scalping.
Advanced RSI [CryptoSea]The Advanced RSI Duration (ARSI) is a unique tool crafted to deepen your market insights by focusing on the duration the Relative Strength Index (RSI) spends above or below key thresholds. This innovative approach is designed to help traders anticipate potential market reversals by observing sustained overbought and oversold conditions.
Core Feature
Duration Monitoring ARSI's standout feature is its ability to track how long the RSI remains in overbought (>70) or oversold (<30) conditions. By quantifying these durations, traders can gauge the strength of current market trends and the likelihood of reversals.
Enhanced Functionality
Multi-Timeframe Flexibility : Analyze the RSI duration from any selected timeframe on your current chart, offering a layered view of market dynamics.
Customizable Alerts : Receive notifications when the RSI maintains its position above or below set levels for an extended period, signaling sustained market pressure.
Visual Customization : Adjust the visual elements, including colors for overbought and oversold durations, to match your analytical style and preferences.
Label Management : Control the frequency of labels marking RSI threshold crossings, ensuring clarity and focus on significant market events.
Settings Overview
RSI Timeframe & Length : Tailor the RSI calculation to fit your analysis, choosing from various timeframes and period lengths.
Threshold Levels : Define what you consider overbought and oversold conditions with customizable upper and lower RSI levels.
Duration Alert Threshold : Set a specific bar count for how long the RSI should remain beyond these thresholds to trigger an alert.
Visualization Options : Choose distinct colors for durations above and below thresholds, and adjust label visibility to suit your charting approach.
Application & Strategy
Use ARSI to identify potential turning points in the market
Trend Exhaustion : Extended periods in overbought or oversold territories may indicate a strong trend but also warn of possible exhaustion and impending reversals.
Comparative Analysis : By evaluating the current duration against historical averages, traders can assess the relative strength of ongoing market conditions.
Strategic Entries/Exits : Utilize duration insights to refine entry and exit points, capitalizing on the predictive nature of prolonged RSI levels.
Alert Conditions
The Advanced RSI (ARSI) offers critical alert mechanisms to aid traders in identifying prolonged market conditions that could lead to actionable trading opportunities. These conditions are designed to alert traders when the RSI remains at extremes longer than typical durations, signaling sustained market behaviors.
Above Upper Level Alert: This alert is triggered when the RSI sustains above the upper threshold (usually 70) for more than the configured duration, indicating strong bullish momentum or potential overbought conditions.
Below Lower Level Alert: Similarly, this alert is activated when the RSI stays below the lower threshold (commonly 30) for an extended period, suggesting significant bearish momentum or potential oversold conditions.
These alerts enable traders to respond swiftly to extend market conditions, enhancing their strategy by providing timely insights into potential trend reversals or continuations.
The Advanced RSI Duration Analysis empowers traders with a nuanced understanding of market states, beyond mere RSI values. It highlights the significance of how long markets remain in extreme conditions, offering a predictive edge in anticipating reversals. Whether you're strategizing entries or preparing for shifts in market momentum, ARSI is your companion for informed trading decisions.
CCOMET_Scanner_LibraryLibrary "CCOMET_Scanner_Library"
- A Trader's Edge (ATE)_Library was created to assist in constructing CCOMET Scanners
Loc_tIDs_Col(_string, _firstLocation)
TickerIDs: You must form this single tickerID input string exactly as described in the scripts info panel (little gray 'i' that
is circled at the end of the settings in the settings/input panel that you can hover your cursor over this 'i' to read the
details of that particular input). IF the string is formed correctly then it will break up this single string parameter into
a total of 40 separate strings which will be all of the tickerIDs that the script is using in your CCOMET Scanner.
Locations: This function is used when there's a desire to print an assets ALERT LABELS. A set Location on the scale is assigned to each asset.
This is created so that if a lot of alerts are triggered, they will stay relatively visible and not overlap each other.
If you set your '_firstLocation' parameter as 1, since there are a max of 40 assets that can be scanned, the 1st asset's location
is assigned the value in the '_firstLocation' parameter, the 2nd asset's location is the (1st asset's location+1)...and so on.
Parameters:
_string (simple string) : (string)
A maximum of 40 Tickers (ALL joined as 1 string for the input parameter) that is formulated EXACTLY as described
within the tooltips of the TickerID inputs in my CCOMET Scanner scripts:
assets = input.text_area(tIDset1, title="TickerID (MUST READ TOOLTIP)", tooltip="Accepts 40 TICKERID's for each
copy of the script on the chart. TEXT FORMATTING RULES FOR TICKERID'S:
(1) To exclude the EXCHANGE NAME in the Labels, de-select the next input option.
(2) MUST have a space (' ') AFTER each TickerID.
(3) Capitalization in the Labels will match cap of these TickerID's.
(4) If your asset has a BaseCurrency & QuoteCurrency (ie. ADAUSDT ) BUT you ONLY want Labels
to show BaseCurrency(ie.'ADA'), include a FORWARD SLASH ('/') between the Base & Quote (ie.'ADA/USDT')", display=display.none)
_firstLocation (simple int) : (simple int)
Optional (starts at 1 if no parameter added).
Location that you want the first asset to print its label if is triggered to do so.
ie. loc2=loc1+1, loc3=loc2+1, etc.
Returns: Returns 40 output variables in the tuple (ie. between the ' ') with the TickerIDs, 40 variables for the locations for alert labels, and 40 Colors for labels/plots
TickeridForLabelsAndSecurity(_ticker, _includeExchange)
This function accepts the TickerID Name as its parameter and produces a single string that will be used in all of your labels.
Parameters:
_ticker (simple string) : (string)
For this parameter, input the varible named '_coin' from your 'f_main()' function for this parameter. It is the raw
Ticker ID name that will be processed.
_includeExchange (simple bool) : (bool)
Optional (if parameter not included in function it defaults to false ).
Used to determine if the Exchange name will be included in all labels/triggers/alerts.
Returns: ( )
Returns 2 output variables:
1st ('_securityTickerid') is to be used in the 'request.security()' function as this string will contain everything
TV needs to pull the correct assets data.
2nd ('lblTicker') is to be used in all of the labels in your CCOMET Scanner as it will only contain what you want your labels
to show as determined by how the tickerID is formulated in the CCOMET Scanner's input.
InvalID_LblSz(_barCnt, _close, _securityTickerid, _invalidArray, _tablePosition, _stackVertical, _lblSzRfrnce)
INVALID TICKERIDs: This is to add a table in the middle right of your chart that prints all the TickerID's that were either not formulated
correctly in the '_source' input or that is not a valid symbol and should be changed.
LABEL SIZES: This function sizes your Alert Trigger Labels according to the amount of Printed Bars the chart has printed within
a set time period, while also keeping in mind the smallest relative reference size you input in the 'lblSzRfrnceInput'
parameter of this function. A HIGHER % of Printed Bars(aka...more trades occurring for that asset on the exchange),
the LARGER the Name Label will print, potentially showing you the better opportunities on the exchange to avoid
exchange manipulation liquidations.
*** SHOULD NOT be used as size of labels that are your asset Name Labels next to each asset's Line Plot...
if your CCOMET Scanner includes these as you want these to be the same size for every asset so the larger ones dont cover the
smaller ones if the plots are all close to each other ***
Parameters:
_barCnt (float) : (float)
Get the 1st variable('barCnt') from the Security function's tuple and input it as this functions 1st input
parameter which will directly affect the size of the 2nd output variable ('alertTrigLabel') that is also outputted by this function.
_close (float) : (float)
Put your 'close' variable named '_close' from the security function here.
_securityTickerid (string) : (string)
Throughout the entire charts updates, if a '_close' value is never registered then the logic counts the asset as INVALID.
This will be the 1st TickerID variable (named _securityTickerid) outputted from the tuple of the TickeridForLabels()
function above this one.
_invalidArray (array) : (array string)
Input the array from the original script that houses all of the invalidArray strings.
_tablePosition (simple string) : (string)
Optional (if parameter not included, it defaults to position.middle_right). Location on the chart you want the table printed.
Possible strings include: position.top_center, position.top_left, position.top_right, position.middle_center,
position.middle_left, position.middle_right, position.bottom_center, position.bottom_left, position.bottom_right.
_stackVertical (simple bool) : (bool)
Optional (if parameter not included, it defaults to true). All of the assets that are counted as INVALID will be
created in a list. If you want this list to be prited as a column then input 'true' here, otherwise they will all be in a row.
_lblSzRfrnce (string) : (string)
Optional (if parameter not included, it defaults to size.small). This will be the size of the variable outputted
by this function named 'assetNameLabel' BUT also affects the size of the output variable 'alertTrigLabel' as it uses this parameter's size
as the smallest size for 'alertTrigLabel' then uses the '_barCnt' parameter to determine the next sizes up depending on the "_barCnt" value.
Returns: ( )
Returns 2 variables:
1st output variable ('AssetNameLabel') is assigned to the size of the 'lblSzRfrnceInput' parameter.
2nd output variable('alertTrigLabel') can be of variying sizes depending on the 'barCnt' parameter...BUT the smallest
size possible for the 2nd output variable ('alertTrigLabel') will be the size set in the 'lblSzRfrnceInput' parameter.
PrintedBarCount(_time, _barCntLength, _barCntPercentMin)
The Printed BarCount Filter looks back a User Defined amount of minutes and calculates the % of bars that have printed
out of the TOTAL amount of bars that COULD HAVE been printed within the same amount of time.
Parameters:
_time (int) : (int)
The time associated with the chart of the particular asset that is being screened at that point.
_barCntLength (int) : (int)
The amount of time (IN MINUTES) that you want the logic to look back at to calculate the % of bars that have actually
printed in the span of time you input into this parameter.
_barCntPercentMin (int) : (int)
The minimum % of Printed Bars of the asset being screened has to be GREATER than the value set in this parameter
for the output variable 'bc_gtg' to be true.
Returns: ( )
Returns 2 outputs:
1st is the % of Printed Bars that have printed within the within the span of time you input in the '_barCntLength' parameter.
2nd is true/false according to if the Printed BarCount % is above the threshold that you input into the '_barCntPercentMin' parameter.
Heikin Ashi MTF Trend [Pt]█ Introduction
The Heikin Ashi MTF Trend indicator takes a simple approach to understand the trend by visualizing Heikin Ashi candle colors across multiple timeframes and representing it in a simple and visual manner. It utilizes the Heikin Ashi (HA) candles across four custom timeframes to detect trend shifts and strength. The indicator also offers alert conditions for potential bullish and bearish trend shifts.
█ Features
► Multiple Timeframes (MTF) Trend Detection: The script fetches HA data from four different timeframes. This multi-timeframe approach gives a holistic view of the market sentiment.
► Weighted Trend Score: The individual trend scores of the four timeframes are multiplied with their respective weights and summed up to provide a cumulative trend score that is used to determine bar colors and trend shifts.
► Visual Trend Depiction : It displays the trend using default green/red squares for each timeframe and a gradient-filled bar to represent the cumulative trend score.
► Trend Change Alerts: Users can set alerts for bullish and bearish trend shifts.
█ Alerts
◊ Bull Trend Signal Alert: Alert when there is a bullish trend shift.
◊ Bear Trend Signal Alert: Alert when there is a bearish trend shift.
█ Usage Tips
◊ The greater the discrepancy in the weights across the timeframes, the more emphasis is placed on the higher weighted timeframe.
◊ While the gradient bar provides a quick trend overview, it's essential to view the trend squares to understand the individual timeframe sentiments.
◊ Always consider using this tool in conjunction with other indicators or methods for confirmation and enhanced trading strategy.
Happy Trading~~
Multi-Timeframe SFP + SMTImportant: Please Read First
This indicator is not a "one size fits all" solution. It is a professional and complex tool that requires you to learn how to use it, in addition to backtesting different settings to discover what works best for your specific trading style and the assets you trade. The default settings provided are my personal preferences for trading higher-timeframe setups, but you are encouraged to experiment and find your own optimal configuration.
Please note that while this initial version is solid, it may still contain small errors or bugs. I will be actively working on improving the indicator over time. Also, be aware that the script is not written for maximum efficiency and may be resource-intensive, but this should not pose a problem for most users.
The source code for this indicator is open. If you truly want to understand precisely how all the logic works, you can copy and paste the code into an AI assistant like Gemini or ChatGPT and ask it to explain any part of the script to you.
Author's Preferred Settings (Guideline)
As a starting point, here are the settings I personally use for my trading:
SFP Timeframe: 4-Hour (Strength: 5-5)
Max Lookback: 35 Bars
Raid Expiration: 1 Bar
SFP Lines Limit: 1
SMT Timeframe 1: 30-Minute (Strength: 2-2) with 3-Minute LTF Detection.
SMT Timeframe 2: 15-Minute (Strength: 3-3) with 3-Minute LTF Detection.
SMT Timeframe 3: 1-Hour (Strength: 1-1) with 3-Minute LTF Detection.
SMT Timeframe 4: 15-Minute (Strength: 1-1) with 3-Minute LTF Detection.
Multi-Timeframe SMT: An Overview
This indicator is a powerful tool designed to identify high-probability trading setups by combining two key institutional concepts: Swing Failure Patterns (SFP) on a higher timeframe and Smart Money Technique (SMT) divergences on a lower timeframe. A key feature is the ability to configure and run up to four independent SMT analyses simultaneously, allowing you to monitor for divergences across multiple timeframes (e.g., 15m, 1H, 4H) from a single indicator.
Its primary purpose is to generate automated signals through TradingView's alert system. By setting up alerts, the script runs server-side, monitoring the market for you. When a setup presents itself, it will send a push notification to your device, allowing you to personally evaluate the trade without being tied to your screen.
The Strategy: HTF Liquidity Sweeps into LTF SMT
The core strategy is built on a classic institutional trading model:
Wait for a liquidity sweep on a significant high timeframe (e.g., 4-hour, Daily).
Once liquidity is taken, look for a confirmation of a shift in market structure on a lower timeframe.
This indicator uses an SMT divergence as that confirmation signal, indicating that smart money may be stepping in to reverse the price.
How It Works: The Two-Step Process
The indicator's logic follows a precise two-step process to generate a signal:
Step 1: The Swing Failure Pattern (SFP)
First, the indicator identifies a high-timeframe liquidity sweep. This is configured in the "Swing Failure Pattern (SFP) Timeframe" settings.
It looks for a candle that wicks above a previous high (or below a previous low) but then closes back within the range of that pivot. This action is known as a "raid" or a "swing failure," suggesting the move failed to find genuine momentum.
Step 2: The SMT Divergence
The moment a valid SFP is confirmed, the indicator's multiple SMT engines activate.
Each engine begins monitoring the specific SMT timeframe you have configured (e.g., "SMT Timeframe 1," "SMT Timeframe 2," etc.) for a Smart Money Technique (SMT) divergence.
An SMT divergence occurs when two closely correlated assets fail to move in sync. For example, after a raid on a high, Asset A makes a new high, but Asset B fails to do so. This disagreement suggests weakness and a potential reversal.
When the script finds this divergence, it plots the SMT line and triggers an alert.
The Power of Alerts
The true strength of this indicator lies in its alert capabilities. You can create alerts for both unconfirmed and confirmed SMTs.
Enable Alerts LTF Detection: These alerts trigger when an unconfirmed, potential SMT is spotted on the lower "LTF Detection" timeframe. While not yet confirmed, these early alerts can notify you of a potential move before it fully happens, allowing you to be ahead of the curve and find the best possible trade entries.
Enable Alerts Confirmed SMT: These alerts trigger only when a permanent, confirmed SMT line is plotted on your chosen SMT timeframe. These signals are more reliable but occur later than the early detection alerts.
Key Concepts Explained
What is Pivot Strength?
Pivot Strength determines how significant a high or low needs to be to qualify as a valid structural point. A setting of 5-5, for example, means that for a candle's high to be considered a valid pivot high, its high must be higher than the highs of the 5 candles to its left and the 5 candles to its right.
Higher Strength (e.g., 5-5, 8-8): Creates fewer, but more significant, pivots. This is ideal for identifying major structural highs and lows on higher timeframes.
Lower Strength (e.g., 2-2, 3-3): Creates more pivots, making it suitable for identifying the smaller shifts in momentum on lower timeframes.
Raid Expiration & Validity
An SFP signal is not valid forever. The "Raid Expiration" setting determines how many SFP timeframe bars can pass after a raid before that signal is considered "stale" and can no longer be used to validate an SMT. This ensures your SMT divergences are always in response to recent liquidity sweeps.
Why You Must Be on the Right Chart Timeframe to See SMT Lines
Pine Script™ has a fundamental rule: an indicator running on a chart can only "see" the bars of that chart's timeframe or higher.
When the SMT logic is set to the 15-minute timeframe, it calculates its pivots based on 15-minute data. To accurately plot lines connecting these pivots, you must be on a 15-minute chart or lower (e.g., 5-minute, 1-minute).
If you are on a higher timeframe chart, like the 1-hour, the 15-minute bars do not exist on that chart, so the indicator has no bars to draw the lines on.
This is precisely why the alert system is so powerful. You can set your alert to run on the 15-minute timeframe, and TradingView's servers will monitor that timeframe for you, sending a notification regardless of what chart you are currently viewing.
Multi-Timeframe SMTSummery
The Multi-Timeframe SMT indicator is designed to identify and visualize Higher Timeframe (HTF) data on a Lower Timeframe (LTF) chart, allowing traders to see the broader market context without changing their current chart's resolution. It accurately draws pivots and SMT divergences from higher timeframes on the corresponding candles of your current lower timeframe chart.
Its core features include:
Multi-Timeframe Analysis: Configure and monitor pivots on up to four independent timeframes, from intraday to monthly.
Customizable Pivot Detection: Define the strength of pivots by adjusting the number of bars to the left and right.
SMT Divergence: Automatically identifies bullish and bearish SMT divergences by comparing the price action of the main chart symbol with a chosen correlated asset.
Early SMT Detection: A unique feature that monitors a lower "detection timeframe" to provide early warnings of potential SMT setups before they're confirmed on the main timeframe. Note that this early detection is only shown on timeframes equal to or lower than the "Detection timeframe" you have set.
Visual Cues & Alerts: Clear on-chart labels, lines, and fully customizable alerts notify you of confirmed pivots and SMT divergences, ensuring you don't miss key opportunities.
Important Nuance Regarding Pivot Label Display
Due to a self-imposed limit within this script's drawing management logic, the indicator might quickly reach its drawing capacity if you enable pivot crosses for multiple timeframes simultaneously. When this internal drawing limit is exceeded, the script is designed to automatically remove the oldest drawings to make space for new ones.
Therefore, to ensure optimal performance and visibility of the most recent and relevant pivots, it's highly recommended to only enable the "Show Pivot Crosses" option for one timeframe at a time. If you wish to view pivots for a different timeframe, simply disable the pivot crosses for the currently active timeframe and then enable them for your desired one. This approach prevents the rapid cycling and disappearance of pivot labels, providing a clearer and more stable visual experience.
In-Depth Explanation of the Logic
This script is built on two primary concepts: pivot points and Smart Money Technique (SMT) divergence. It systematically collects historical data on multiple timeframes, identifies pivots, and then compares them between two assets to find divergences.
Pivot Point Identification
A pivot is a turning point in the market. A pivot high is a candle that has a higher high than the candles to its immediate left and right. Conversely, a pivot low is a candle with a lower low than its neighbors.
How it Works in the Script:
The script tracks the highest high and lowest low for each period of the selected timeframe (e.g., for each 4-hour candle). When a new high-timeframe candle closes, it stores that high/low value and its bar index in an array. The checkForPivot() function then checks if a recently stored high or low qualifies as a pivot.
Key Inputs:
Left Strength (leftBars1): The number of candles to the left that must have a lower high (for a pivot high) or higher low (for a pivot low).
Right Strength (rightBars1): The number of candles to the right that must meet the same criteria.
For example, with Left Strength and Right Strength both set to 3, a pivot high is only confirmed when its high is greater than the highs of the 3 previous high-timeframe candles and the 3 subsequent high-timeframe candles. Increasing these values will identify more significant, longer-term pivots.
Smart Money Technique (SMT) Divergence
SMT Divergence is a concept popularized by The Inner Circle Trader (ICT). It occurs when two closely correlated assets fail to move in sync. For instance, if Asset A makes a higher high but Asset B fails to do so and instead makes a lower high, this creates a bearish SMT divergence. It suggests that the "smart money" may not be supporting the move in Asset A, signaling a potential reversal.
Bearish SMT: Main asset makes a higher high, while the correlated asset makes a lower high. This is a potential sell signal.
Bullish SMT: Main asset makes a lower low, while the correlated asset makes a higher low. This is a potential buy signal.
How it Works in the Script:
Data Request: For each timeframe, the script uses the request.security() function to fetch the high and low data for both the main chart symbol (syminfo.tickerid) and the chosen Comparison Asset.
Pivot Comparison: When a new pivot is confirmed on the main asset, the script checks if a corresponding pivot also formed on the comparison asset at the same time.
Divergence Check: It then compares the direction of the pivots. For a bearish SMT, it checks if the main asset's new pivot high is higher than its previous pivot high, while the comparison asset's new pivot high is lower than its previous one. The logic is reversed for bullish SMT.
Visualization: If a divergence is found, the script draws a red (bearish) or green (bullish) line connecting the two pivots on your chart and places an "SMT" label.
Early SMT Detection
This is a proactive feature designed to give you a heads-up. Waiting for a 4-hour or daily pivot to form can take a long time. The early detection system looks for SMT divergences on a much smaller, user-defined Detection timeframe (e.g., 15-minute).
How it Works in the Script:
Awaiting Setup: After a primary pivot (Pivot A) is formed on the main timeframe (e.g., a Daily pivot high), the script begins monitoring.
Intraday Monitoring: It then watches the Detection timeframe (e.g., 15-minute) for smaller intraday pivots.
Potential Divergence: It looks for an intraday pivot that forms a divergence against the primary Pivot A.
Watchline & Alert: When this "potential" divergence occurs, the script draws a dashed white line and triggers a "Potential SMT" alert. This isn't a confirmed SMT on the main timeframe yet, but it's a powerful early warning that one may be forming.
Drawing & Object Management
To keep the chart clean and prevent performance issues, the script manages its drawings (lines and labels) efficiently. It stores them in arrays and uses a drawing limit to automatically delete the oldest drawings as new ones are created, ensuring your TradingView remains responsive.
How to Use the Indicator
Configuration
Enable Timeframes: Use the checkboxes (Enable Timeframe 1, Enable Timeframe 2, etc.) to activate the timeframes you want to monitor. It's often best to start with one or two to keep the chart clean.
Select Timeframes: Choose the higher timeframes you want to analyze (e.g., 240 for 4-hour, D for Daily, W for Weekly).
Set Pivot Strength: The default of 3 for Left/Right strength is a good starting point. Increase it to find more significant market structure points or decrease it for more frequent, shorter-term pivots.
Configure SMT:
Check Enable SMT for the timeframes where you want to detect divergence.
Enter a Comparison Asset . This is crucial. Ensure the assets are correlated.
To use the early warning system, check Enable early SMT detection and select an appropriate Detection timeframe (e.g., 15 or 60 minutes for a Daily analysis).
Percent Change IndicatorPercent Change Indicator Description
Overview:
The Percent Change Indicator is a Pine Script (version 6) indicator designed for TradingView to calculate and visualize the percentage change of the current close price relative to a user-selected reference price. It provides a customizable interface to display percentage changes as candlesticks or a line plot, with optional horizontal lines and labels for key levels. The indicator also includes visual signals and alerts for user-defined percentage thresholds, making it useful for identifying significant price movements.
Key Features:
1. Percentage Change Calculation:
- Computes the percentage change of the current close price compared to a reference price, scaled by a user-defined length parameter.
- Formula: percentChange = (close - refPrice) / refPrice * len
- The reference price is sourced from a user-selected timeframe (default: 1D) and price type (Open, High, Low, Close, HL2, HLC3, or HLCC4).
2. Visualization Options:
- Candlestick Plot: Displays percentage change as candlesticks, colored green for rising values and red for falling values.
- Line Plot: Plots the percentage change as a line, with the same color logic.
- Horizontal Lines: Optional horizontal lines at key percentage levels (0%, ±0.2%, ±0.5%, ±0.8%, ±1%) for reference.
- Labels: Optional labels for percentage levels (0, ±15%, ±35%, ±50%, ±65%, ±85%, ±100%) displayed at the chart's right edge.
- All visualizations are toggleable via input settings.
3. Signal and Alert System:
- Threshold-Based Signals: Plots green triangles below bars for long signals (percent change above a user-defined threshold) and red triangles above bars for short signals (percent change below the threshold).
- Alerts: Configurable alerts for long and short conditions, triggered when the percentage change crosses the user-defined threshold (default: 2%). Alert messages include the threshold value for clarity.
4. Customizable Inputs:
- Show Labels: Toggle visibility of percentage level labels (default: true).
- Show Percentage Change: Toggle the line plot of percentage change (default: true).
- Show HLines: Toggle visibility of horizontal reference lines (default: false).
- Show Candle Plot: Toggle the candlestick plot (default: true).
- Percent Change Length: Adjust the scaling factor for percentage change (default: 14).
- Plot Timeframe: Select the timeframe for the reference price (default: 1D).
- Price Type: Choose the reference price type (Open, High, Low, Close, HL2, HLC3, HLCC4; default: Open).
- Percentage Threshold: Set the threshold for long/short signals and alerts (default: 0.02 or 2%).
How It Works:
- The indicator fetches the reference price using request.security() based on the selected timeframe and price type.
- It calculates the percentage change and scales it by the user-defined length.
- Visuals (candlesticks, lines, labels, horizontal lines) are plotted based on user preferences.
- Long and short signals are generated when the percentage change exceeds or falls below the user-defined threshold, with corresponding triangles plotted and alerts triggered.
Use Cases:
- Trend Identification: Monitor significant price movements relative to a reference price.
- Signal Generation: Identify potential entry/exit points based on percentage change thresholds.
- Custom Analysis: Analyze price changes across different timeframes and price types for various trading strategies.
- Alert Notifications: Receive alerts for significant price movements to stay informed without constant chart monitoring.
Setup Instructions:
1. Add the indicator to a TradingView chart.
2. Adjust input settings (timeframe, price type, threshold, etc.) to suit your analysis.
3. Enable/disable visualization options (candlesticks, lines, labels, horizontal lines) as needed.
4. Set up alerts in TradingView:
- Go to the "Alerts" tab and select "Percent Change Indicator."
- Choose "Long Alert" or "Short Alert" to monitor threshold crossings.
- Configure alert frequency and notification method (e.g., email, webhook).
Notes:
- The indicator is non-overlay, displayed in a separate pane below the main chart.
- Alerts trigger on bar close by default; adjust TradingView alert settings for real-time notifications if needed.
- The indicator is released under the Mozilla Public License 2.0.
Author: Dshergill
This indicator is ideal for traders seeking a flexible tool to track percentage-based price movements with customizable visuals and alerts.
EWMA & EWVar + EWStd Expansion with MTF_V.5EWMA & EWVar + EWStd Expansion with MTF_V.5
This indicator combines adaptive trend smoothing (EWMA), variance estimation (EWVar) and dynamic volatility “bursts” (EWStd Expansion) with optional higher-timeframe confirmation. It’s designed both for visual chart analysis and for automated alerts on regime changes.
Key Features
EWMA (Exponential Smoothing):
• Computes an exponential moving average with either a custom α or a length-derived α = 2/(N+1).
• Option to recalculate only every N bars (reduces CPU load).
EWVar & EWStd (Variance & Standard Deviation):
• Exponentially weighted variance tracks recent price dispersion.
• EWStd (σ) is computed alongside the EWMA.
• Z-score (deviation in σ units) shows how far price has diverged from trend.
Multi-Timeframe Filter (MTF):
• Optionally require the same trend direction on a chosen higher timeframe (e.g. Daily, Weekly, H4).
• Real-time lookahead available (may repaint).
Gradient Around EWMA:
• A multi-layer “glow” zone of ±1σ, broken into up to 10 steps.
• Color interpolates between “upper” and “lower” shades for bullish, bearish and neutral regimes.
Instantaneous Trendline (ITL):
• Ultra-fast trend filter with slope-based coloring.
• Highlights micro-trends and short-lived accelerations.
Cross-Over Signals (ITL ↔ EWMA):
• Up/down triangles plotted when the ITL crosses the main EWMA.
EWStd Expansion (Volatility Bursts):
• Automatically detects σ expansions (σ growth above a set % threshold).
• Price filter: only when price moves beyond EWMA ± (multiplier·σ).
• Optional higher-timeframe confirmation.
Labels & Alerts:
• Text labels and circular markers on bars where a volatility burst occurs.
• Built-in alertcondition calls for both bullish and bearish expansions.
How to Use
Visual Analysis:
• The gradient around EWMA shows the width of the volatility channel expanding or contracting.
• ITL color changes instantly highlight short-term impulses.
• EWMA line color switches (bullish/bearish/neutral) indicate trend state.
Spotting Volatility Breakouts:
• “EWStd Expansion” labels and circles signal the onset of strong moves when σ spikes.
• Useful for entering at the start of new impulses.
Automated Alerts:
• Set alerts on the built-in conditions “Bullish EWStd Expansion Alert” or “Bearish EWStd Expansion Alert” to receive a popup or mobile push when a burst occurs.
This compact tool unifies trend, volatility and multi-timeframe analysis into a single indicator—ideal for traders who want to see trend direction, current dispersion, and timely volatility burst signals all at once.
MA Deviation// -----------------------------------------------------------------------------
// MA Deviation Marking & Alert (MA Divergence)
// -----------------------------------------------------------------------------
// Short Title: MA Deviation Radar
// Author: zhipeng luo
// Version: 1.0
// Date: 2025-04-11
// -----------------------------------------------------------------------------
// Overview:
// This indicator identifies and highlights price bars where the closing price
// deviates significantly from its Simple Moving Average (SMA) by a user-defined
// percentage. It visually marks these bars on the chart and provides
// configurable alert conditions for threshold breaches.
//
// How it Works:
// 1. Calculates the Simple Moving Average (SMA) based on the 'MA Period' input.
// 2. Computes the percentage deviation of the closing price from the SMA value.
// Formula: `((Close - SMA) / SMA) * 100`
// 3. Compares the calculated deviation percentage against the positive and
// negative 'Threshold (%)' input values.
// 4. Marks the background of the price bars when a threshold is exceeded:
// - Red Background: Price deviation is greater than the positive threshold.
// - Green Background: Price deviation is less than the negative threshold.
// 5. Includes an optional, non-visible plot of the MA line itself.
// 6. Offers three distinct alert conditions for automation and notifications.
//
// Features:
// - Customizable Simple Moving Average period.
// - Adjustable deviation threshold percentage.
// - Clear visual signals using background colors on the main chart.
// - Built-in Alert Conditions:
// - MA Positive Deviation Alert (Triggers when price > MA + Threshold %)
// - MA Negative Deviation Alert (Triggers when price < MA - Threshold %)
// - MA Deviation Alert - Any (Triggers on either positive or negative breach)
//
// How to Use:
// - Identify Potential Extremes: Useful for spotting potential overbought (large
// positive deviation) or oversold (large negative deviation) conditions
// which might precede price corrections or mean reversion.
// - Gauge Trend Extension: Extreme deviations can sometimes indicate that a
// trend is overextended and might be due for a pause or reversal.
// - Parameter Tuning: Adjust the 'MA Period' and '(Threshold %)' settings to
// suit the specific asset, timeframe, and volatility characteristics you
// are analyzing. Lower thresholds yield more signals; higher thresholds
// focus on more significant deviations.
// - Alerts: Set up alerts via the TradingView alert menu using the provided
// conditions ("MA Positive Deviation Alert", "MA Negative Deviation Alert",
// "MA Deviation Alert - Any") to get notified of potential setups.
//
// Parameters:
// - MA Period (Default: 200): The lookback period for the SMA calculation.
// - (Threshold %) (Default: 7.0): The percentage deviation (positive and
// negative) from the MA required to trigger a background signal and alert.
//
// Alerts & Important Note:
// Three alert conditions corresponding to the signals are available:
// 1. "MA Positive Deviation Alert"
// 2. "MA Negative Deviation Alert"
// 3. "MA Deviation Alert - Any"
//
// ***Please Note:*** The value shown after "( {{plot_0}}%)" or
// "( {{plot_0}}%)" in the default alert message refers to the
// **Moving Average value** (`plot_0`), not the actual deviation percentage.
// The alert *triggers correctly* based on the deviation percentage crossing
// the threshold, but the number displayed by the `{{plot_0}}` placeholder
// in the message is the MA's value at that time due to the script's
// internal plot order.
//
// Disclaimer: This indicator is provided for informational and analytical
// purposes only. It does not constitute financial advice or a recommendation
// to buy or sell any asset. Always conduct your own research and use proper
// risk management. Trading involves significant risk.
// -----------------------------------------------------------------------------
Risk MeterRisk Meter Indicator for TradingView
The Risk Meter is a powerful market risk assessment tool designed to help traders evaluate the current risk environment using a simple, data-driven score. By analyzing four critical market factors—VIX (volatility index), market breadth, trailing volatility, and credit spreads—the indicator generates a risk score between 0 and 4. This score empowers traders to make informed decisions about hedging, exiting positions, or re-entering the market, with clear visual cues and alerts for intraday monitoring.
What It Does
Calculates a Risk Score: Assigns a score from 0 to 4, where each point reflects an active risk condition based on four market indicators.
Identifies Risk Levels:
A score of 3 or higher indicates a high-risk environment, suggesting traders consider hedging or reducing exposure.
A score of 2 or lower for at least two consecutive days signals a potential opportunity to re-enter the market.
Provides Visual Feedback: Uses color-coded Columns, threshold markers, and a component table for quick interpretation.
Supports Decision-Making: Offers a structured approach to managing risk and timing trades.
How It Works
The Risk Meter aggregates four key risk conditions, each contributing 1 point to the total score when triggered:
Elevated and Rising VIX (Risk 1)
Condition: The VIX is above 18 and higher than it was 20 days ago.
Purpose: Detects increasing market fear or uncertainty.
Market Breadth Dropping (Risk 2)
Condition: Either:
Fewer than 50% of S&P 500 stocks are above their 200-day moving average and fewer than 70% are above their 50-day moving average, or
The 3-day EMA of the 200-day breadth falls below 80% of its 20-day SMA.
Purpose: Identifies weakening participation across the market.
Trailing Volatility (Risk 3)
Condition: The 30-day annualized volatility of the equal-weight S&P 500 (RSP) exceeds 35%.
Purpose: Highlights periods of heightened price instability.
Credit Spreads (Risk 4)
Condition: The price ratio of high-yield bonds (HYG) to Treasuries (TLT or IEF) is lower than it was 20 days ago, indicating widening credit spreads.
Purpose: Signals potential stress in credit markets.
The total risk score is the sum of these conditions (0 to 4). Additionally, the indicator tracks consecutive days with a score of 2 or lower to generate re-entry signals.
How to Read It Intraday
The Risk Meter is built on daily data but can be monitored intraday for real-time insights. Here’s how traders can interpret it:
Risk Score Plot:
Displayed as a step line ranging from 0 to 4.
Colors:
Red: High risk (score ≥ 3) – caution advised.
Green: Re-entry signal – score ≤ 2 for at least two consecutive days (triggered when the count increments from 1 to 2).
Blue: Neutral or low risk (score < 3 without a re-entry signal).
Threshold Lines:
Dashed Gray Line at 3: Marks the high-risk threshold.
Dotted Gray Line at 2: Indicates the low-risk threshold for re-entry signals.
Risk Component Table:
Located in the top-right corner, it lists:
VIX, Breadth, Volatility, and Credit Spreads.
Status: Shows "" (warning, red) if the risk condition is met, or "✓" (safe, blue) if not.
Helps traders pinpoint which factors are driving the score.
Alerts:
High Risk Alert: Triggers when the score moves from < 3 to ≥ 3.
Re-entry Signal Alert: Triggers when the score ≤ 2 for two consecutive days.
Intraday Usage Tips
Check the indicator throughout the day for early signs of risk shifts, especially if the score is near a threshold (e.g., 2 or 3).
Combine with other intraday tools (e.g., price action, volume) since the Risk Meter updates daily but reflects broader market conditions.
How Traders Can Use It
High-Risk Signal (Score ≥ 3):
Consider hedging positions (e.g., with options) or reducing equity exposure to protect against potential downturns.
Re-entry Signal (Score ≤ 2 for 2+ Days):
Look to re-enter the market or increase exposure, as it suggests stabilizing conditions.
Daily Risk Management:
Use the score and table to assess overall market health and adjust strategies accordingly.
Alert-Driven Trading:
Set up alerts to stay notified of critical risk changes without constant monitoring.
Why Use the Risk Meter?
This indicator offers a systematic, multi-factor approach to risk assessment, blending volatility, breadth, and credit market data into an easy-to-read score. Whether you’re an intraday trader or a longer-term investor, the Risk Meter helps you stay proactive, avoid surprises, and time your trades with greater confidence.
Financial Risk Disclaimer for the Risk Meter Tool
Important Notice: The Risk Meter is a market risk assessment tool designed to provide insights into current market conditions based on historical data and predefined indicators. It is intended for informational and educational purposes only and should not be considered financial advice, a recommendation to buy or sell any securities, or a guarantee of future market performance.
Key Considerations
No Guarantee of Accuracy: While the Risk Meter utilizes reliable data sources and established financial metrics, the creators do not guarantee the accuracy, completeness, or timeliness of the information provided. Financial markets are complex and subject to rapid, unpredictable changes, and the tool’s output may not fully reflect all market dynamics.
Market Risks: Trading and investing in financial markets carry significant risks, including the potential loss of principal. Market volatility, economic shifts, and other factors can lead to unexpected outcomes. Past performance is not a reliable indicator of future results, and the Risk Meter’s assessments are based on historical data, not future predictions.
Not a Substitute for Professional Advice: The Risk Meter is not intended to replace personalized financial guidance. Users are strongly encouraged to consult a qualified financial advisor, perform their own research, and evaluate their personal financial situation, risk tolerance, and investment objectives before making any trading or investment decisions.
Limitation of Liability: The creators of the Risk Meter, including any affiliates, developers, or contributors, are not liable for any direct, indirect, incidental, or consequential losses or damages arising from the use of this tool. This includes, but is not limited to, financial losses, missed opportunities, or decisions based on the tool’s output.
User Responsibility: By using the Risk Meter, you accept full responsibility for your trading and investment decisions. You acknowledge that you use the tool at your own risk and that the creators bear no responsibility for any outcomes resulting from its use.
Final Note
The Risk Meter is a supplementary tool designed to enhance your understanding of market risk. It is not a comprehensive solution for investment management. Approach trading and investing with caution, ensuring your decisions align with your personal financial strategy.
Trend with ADX/EMA - Buy & Sell SignalsThis script is designed to help traders make buy and sell decisions based on trend analysis using two key methods: ADX (Average Directional Index) and EMA (Exponential Moving Averages). Here's a breakdown in simple terms:
What Does It Do?
Identifies the Trend's Strength and Direction:
Uses the ADX indicator to determine how strong the trend is.
Compares two lines (DI+ and DI−) to identify whether the trend is moving up or down.
Generates Buy and Sell Signals:
Uses two EMAs (a fast one and a slow one) to check when the price crosses key levels, signaling a possible buy or sell opportunity.
Plots visual indicators (arrows and labels) for easy interpretation.
Color-Codes the Chart:
Highlights the background in green when the trend is bullish (uptrend).
Highlights the background in red when the trend is bearish (downtrend).
Alerts the User:
Creates alerts when specific conditions for buying or selling are met.
Key Components:
1. ADX (Trend Strength & Direction)
What is ADX?
ADX measures how strong the trend is (not the direction). Higher ADX means a stronger trend.
It also calculates two lines:
DI+: Measures upward movement strength.
DI−: Measures downward movement strength.
How It Works in the Script:
If DI+ is greater than DI−, it’s a bullish trend (upward).
If DI− is greater than DI+, it’s a bearish trend (downward).
The background turns green for an uptrend and red for a downtrend.
2. EMA (Buy and Sell Decisions)
What is EMA?
EMA is a moving average that gives more weight to recent prices. It’s used to smooth out price fluctuations.
How It Works in the Script:
The script calculates two EMAs:
Fast EMA (short-term average): Reacts quickly to price changes.
Slow EMA (long-term average): Reacts slower and shows overall trends.
When the Fast EMA crosses above the Slow EMA, it’s a signal to Buy.
When the Fast EMA crosses below the Slow EMA, it’s a signal to Sell.
These signals are marked on the chart as "Buy" and "Sell" labels.
3. Buy and Sell Alerts
The script sets up alerts for the user:
Buy Alert: When a crossover indicates a bullish signal.
Sell Alert: When a crossunder indicates a bearish signal.
Visual Elements on the Chart:
Background Colors:
Green: When the DI+ line indicates an uptrend.
Red: When the DI− line indicates a downtrend.
EMA Lines:
Green Line: Fast EMA.
Red Line: Slow EMA.
Buy/Sell Labels:
"Buy" label: Shown when the Fast EMA crosses above the Slow EMA.
"Sell" label: Shown when the Fast EMA crosses below the Slow EMA.
Why Use This Script?
Trend Analysis: Helps you quickly identify the strength and direction of the market trend.
Buy/Sell Signals: Gives clear signals to enter or exit trades based on trend and EMA crossovers.
Custom Alerts: Ensures you never miss a trading opportunity by notifying you when conditions are met.
Visual Simplicity: Makes it easy to interpret trading signals with color-coded backgrounds and labeled arrows.