Trend Table ZeeZeeMonMulti-Timeframe Trend Indicator
Overview
This indicator identifies trends across multiple higher timeframes and displays them in a widget on the right side of the chart. It serves as an alternative trend-filtering tool, helping traders align with the dominant market direction. Unlike traditional moving average-based trend detection (e.g., price above/below a 200 MA), this indicator assesses whether higher timeframes are genuinely trending by analyzing swing highs and lows.
Trend Definition
Uptrend: Higher highs and higher lows.
Downtrend: Lower highs and lower lows.
A trend reversal occurs when a prior high/low is breached (e.g., in a downtrend, breaking the last high signals an uptrend).
Customization Options
Lookback Period: Adjusts the sensitivity for identifying swing highs/lows (pivot points). A shorter lookback detects more frequent pivots.
Historical Pivot Visibility: Toggle to display past swing highs/lows for verification.
Support/Resistance Lines: Show dynamic levels from recent pivots on higher timeframes. Breaching these lines indicates potential trend changes.
Purpose
Helps traders:
Confirm higher timeframe trends before entering trades.
Monitor proximity to trend reversals.
Fine-tune pivot sensitivity for optimal trend detection.
Note: Works best as a supplementary trend filter alongside other trading strategies.
Cerca negli script per "high low"
ICT Turtle Soup (Liquidity Reversal)ICT Turtle Soup — Liquidity Reversal Detection
Trap the Trap: A Precision Reversal Strategy from the Inner Circle Trader Playbook
This indicator implements the Turtle Soup liquidity reversal setup — a widely used ICT (Inner Circle Trader) concept that targets false breakouts beyond recent swing highs or lows. These patterns typically occur when price grabs liquidity above or below a known level, then snaps back, trapping retail traders and creating a high-probability reversal scenario.
🔍 What This Script Does:
Detects Liquidity Sweeps Above/Below Key Swing Levels
Uses a customizable swing lookback to identify recent swing highs and lows.
Triggers a Bearish Turtle Soup when price runs above a previous swing high and closes back below.
Triggers a Bullish Turtle Soup when price sweeps below a prior swing low and closes back above.
Plots Clear Visual Signals
Reversal signals appear as 🐢🔻 (Bearish) or 🐢🔺 (Bullish) markers directly on your chart.
Optional labels can be enabled for enhanced journaling and review.
Real-Time Alerts
Receive alert notifications when a Turtle Soup setup is detected — ideal for scalpers or intraday traders watching for reversals around liquidity pools.
⚙️ Customization Options:
Set the swing lookback sensitivity (default: 5)
Enable or disable labels
Choose label font size
Customize colors for bullish and bearish signals
💡 How to Use:
Deploy on intraday timeframes (e.g. 5m–15m) for high-resolution liquidity analysis.
Watch for signals at key highs/lows, session extremes, or zones where liquidity is likely resting.
Combine with tools like FVGs, Order Blocks, and OTE zones for layered confirmation.
🔗 Combine With These Tools for a Complete SMC Edge:
✅ First FVG — Opening Range Fair Value Gap Detector
✅ ICT SMC Liquidity Grabs + OB + Fibonacci OTE Levels
✅ Liquidity Levels — Smart Swing Lows
Together, these tools form a high-precision Smart Money toolkit — helping traders map, anticipate, and act on institutional-level liquidity events with clarity and confidence.
Combined ATR + VolumeOverview
The Combined ATR + Volume indicator (C-ATR+Vol) is designed to measure both price volatility and market participation by merging the Average True Range (ATR) and trading volume into a single normalized value. This provides traders with a more comprehensive tool than ATR alone, as it highlights not only how much price is moving, but also whether there is sufficient volume behind those moves.
Originality & Utility
Two Key Components
ATR (Average True Range): Measures price volatility by analyzing the range (high–low) over a specified period. A higher ATR often indicates larger price swings.
Volume: Reflects how actively traders are participating in the market. High volume typically indicates strong buying or selling interest.
Normalized Combination
Both ATR and volume are independently normalized to a 0–100 range.
The final output (C-ATR+Vol) is the average of these two normalized values. This makes it easy to see when both volatility and market participation are relatively high.
Practical Use
Above 80: Signifies elevated volatility and strong volume. Markets may experience significant moves.
Around 50–80: Indicates moderate activity. Price swings and volume are neither extreme nor minimal.
Below 50: Suggests relatively low volatility and lower participation. The market may be ranging or consolidating.
This combined approach can help filter out situations where volatility is high but volume is absent—or vice versa—providing a more reliable context for potential breakouts or trend continuations.
Indicator Logic
ATR Calculation
Uses Pine Script’s built-in ta.tr(true) function to measure true range, then smooths it with a user-selected method (RMA, SMA, EMA, or WMA).
Key Input: ATR Length (default 14).
Volume Calculation
Smooths the built-in volume variable using the same selectable smoothing methods.
Key Input: Volume Length (default 14).
Normalization
For each metric (ATR and Volume), the script finds the lowest and highest values over the lookback period and converts them into a 0–100 scale:
normalized value
=(current value−min)(max−min)×100
normalized value= (max−min)(current value−min) ×100
Combined Score
The final plot is the average of Normalized ATR and Normalized Volume. This single value simplifies the process of identifying high-volatility, high-volume conditions.
How to Use
Setup
Add the indicator to your chart.
Adjust ATR Length, Volume Length, and Smoothing to match your preferred time horizon or chart style.
Interpretation
High Values (above 80): The market is experiencing significant price movement with high participation. Potential for strong trends or breakouts.
Moderate Range (50–80): Conditions are active but not extreme. Trend setups may be forming.
Low Values (below 50): Indicates quieter markets with reduced liquidity. Expect ranging or less decisive moves.
Strategy Integration
Use C-ATR+Vol alongside other trend or momentum indicators (e.g., Moving Averages, RSI, MACD) to confirm potential entries/exits.
Combine it with support/resistance or price action analysis for a broader market view.
Important Notes
This script is open-source and intended as a community contribution.
No Future Guarantee: Past market behavior does not guarantee future results. Always use proper risk management and validate signals with additional tools.
The indicator’s performance may vary depending on timeframes, asset classes, and market conditions.
Adjust inputs as needed to suit different instruments or personal trading styles.
By adhering to TradingView’s publishing rules, this script is provided with sufficient detail on what it does, how it’s unique, and how traders can use it. Feel free to customize the settings and experiment with other technical indicators to develop a trading methodology that fits your objectives.
🔹 Combined ATR + Volume (C-ATR+Vol) 지표 설명
이 인디케이터는 ATR(Average True Range)와 거래량(Volume)을 결합하여 시장의 변동성과 유동성을 동시에 측정하는 지표입니다.
ATR은 가격 변동성의 크기를 나타내며, 거래량은 시장 참여자의 활동 수준을 반영합니다. 보통 높은 ATR은 가격 변동이 크다는 의미이고, 높은 거래량은 시장에서 적극적인 거래가 이루어지고 있음을 나타냅니다.
이 두 지표를 각각 0~100 범위로 정규화한 후, 평균을 구하여 "Combined ATR + Volume (C-ATR+Vol)" 값을 계산합니다.
이를 통해 단순한 가격 변동성뿐만 아니라 거래량까지 고려하여, 더욱 신뢰성 있는 변동성 판단을 할 수 있도록 도와줍니다.
📌 핵심 개념
1️⃣ ATR (Average True Range)란?
시장의 변동성을 측정하는 지표로, 일정 기간 동안의 고점-저점 변동폭을 기반으로 계산됩니다.
ATR이 높을수록 가격 변동이 크며, 낮을수록 횡보장이 지속될 가능성이 큽니다.
하지만 ATR은 방향성을 제공하지 않으며, 단순히 변동성의 크기만을 나타냅니다.
2️⃣ 거래량 (Volume)의 역할
거래량은 시장 참여자의 관심과 유동성을 반영하는 중요한 요소입니다.
높은 거래량은 강한 매수 또는 매도세가 존재함을 의미하며, 낮은 거래량은 시장 참여가 적거나 관심이 줄어들었음을 나타냅니다.
3️⃣ ATR + 거래량의 결합 (C-ATR+Vol)
단순한 ATR 값만으로는 변동성이 커도 거래량이 부족할 수 있으며, 반대로 거래량이 많아도 변동성이 낮을 수 있습니다.
이를 해결하기 위해 ATR과 거래량을 각각 0~100으로 정규화하여 균형 잡힌 변동성 지표를 만들었습니다.
두 지표의 평균값을 계산하여, 가격 변동과 거래량이 동시에 높은지를 측정할 수 있도록 설계되었습니다.
📊 사용법 및 해석
80 이상 → 강한 변동성 구간
가격 변동성이 크고 거래량도 높은 상태
강한 추세가 진행 중이거나 큰 변동이 일어날 가능성이 큼
상승/하락 방향성을 확인한 후 트렌드를 따라가는 전략이 유리
50~80 구간 → 보통 수준의 변동성
가격 움직임이 일정하며, 거래량도 적절한 수준
점진적인 추세 형성이 이루어질 가능성이 있음
시장이 점진적으로 상승 혹은 하락할 가능성이 크므로, 보조지표를 활용하여 매매 타이밍을 결정하는 것이 중요
50 이하 → 낮은 변동성 및 유동성 부족
가격 변동이 적고, 거래량도 낮은 상태
시장이 횡보하거나 조정 기간에 들어갈 가능성이 큼
박스권 매매(지지/저항 활용) 또는 돌파 전략을 고려할 수 있음
💡 활용 방법 및 전략
✅ 1. 트렌드 판단 보조지표로 활용
단독으로 사용하는 것보다는 RSI, MACD, 이동평균선(MA) 등의 지표와 함께 활용하는 것이 효과적입니다.
예를 들어, MACD가 상승 신호를 주고, C-ATR+Vol 값이 80을 초과하면 강한 상승 추세로 해석할 수 있습니다.
✅ 2. 변동성 돌파 전략에 활용
C-ATR+Vol이 80 이상인 구간에서 가격이 특정 저항선을 돌파한다면, 강한 추세의 시작을 의미할 수 있습니다.
반대로, C-ATR+Vol이 50 이하에서 가격이 저항선에 가까워지면 돌파 가능성이 낮아질 수 있습니다.
✅ 3. 시장 참여도와 변동성 확인
단순히 ATR만 높아서는 신뢰하기 어려운 경우가 많습니다. 예를 들어, 급등 후 거래량이 급감하면 상승 지속 가능성이 낮아질 수도 있습니다.
하지만 C-ATR+Vol을 사용하면 거래량이 함께 증가하는지를 확인하여 보다 신뢰할 수 있는 분석이 가능합니다.
🚀 결론
🔹 Combined ATR + Volume (C-ATR+Vol) 인디케이터는 단순한 ATR이 아니라 거래량까지 고려하여 변동성을 측정하는 강력한 도구입니다.
🔹 시장이 큰 움직임을 보일 가능성이 높은 구간을 찾는 데 유용하며, 80 이상일 경우 강한 변동성이 있음을 나타냅니다.
🔹 단독으로 사용하기보다는 보조지표와 함께 활용하여, 트렌드 분석 및 돌파 전략 등에 효과적으로 적용할 수 있습니다.
📌 주의사항
변동성이 크다고 해서 반드시 가격이 급등/급락한다는 보장은 없습니다.
특정한 매매 전략 없이 단순히 이 지표만 보고 매수/매도를 결정하는 것은 위험할 수 있습니다.
시장 상황에 따라 변동성의 의미가 다르게 작용할 수 있으므로, 반드시 다른 보조지표와 함께 활용하는 것이 중요합니다.
🔥 이 지표를 활용하여 시장의 변동성과 거래량을 보다 효과적으로 분석해보세요! 🚀
TrendPredator FOTrendPredator Fakeout Highlighter (FO)
The TrendPredator Fakeout Highlighter is designed to enhance multi-timeframe trend analysis by identifying key market behaviors that indicate trend strength, weakness, and potential reversals. Inspired by Stacey Burke’s trading approach, this tool focuses on trend-following, momentum shifts, and trader traps, helping traders capitalize on high-probability setups.
At its core, this indicator highlights peak formations—anchor points where price often locks in trapped traders before making decisive moves. These principles align with George Douglas Taylor’s 3-day cycle and Steve Mauro’s BTMM method, making the FO Highlighter a powerful tool for reading market structure. As markets are fractal, this analysis works on any timeframe.
How It Works
The TrendPredator FO highlights key price action signals by coloring candles based on their bias state on the current timeframe.
It tracks four major elements:
Breakout/Breakdown Bars – Did the candle close in a breakout or breakdown relative to the last candle?
Fakeout Bars (Trend Close) – Did the candle break a prior high/low and close back inside, but still in line with the trend?
Fakeout Bars (Counter-Trend Close) – Did the candle break a prior high/low, close back inside, and against the trend?
Switch Bars – Did the candle lose/ reclaim the breakout/down level of the last bar that closed in breakout/down, signalling a possible trend shift?
Reading the Trend with TrendPredator FO
The annotations in this example are added manually for illustration.
- Breakouts → Strong Trend
Multiple candles closing in breakout signal a healthy and strong trend.
- Fakeouts (Trend Close) → First Signs of Weakness
Candles that break out but close back inside suggest a potential slowdown—especially near key levels.
- Fakeouts (Counter-Trend Close) → Stronger Reversal Signal
Closing against the trend strengthens the reversal signal.
- Switch Bars → Momentum Shift
A shift in trend is confirmed when price crosses back through the last closed breakout candles breakout level, trapping traders and fuelling a move in the opposite direction.
- Breakdowns → Trend Reversal Confirmed
Once price breaks away from the peak formation, closing in breakdown, the trend shift is validated.
Customization & Settings
- Toggle individual candle types on/off
- Customize colors for each signal
- Set the number of historical candles displayed
Example Use Cases
1. Weekly Template Analysis
The weekly template is a core concept in Stacey Burke’s trading style. FO highlights individual candle states. With this the state of the trend and the developing weekly template can be evaluated precisely. The analysis is done on the daily timeframe and we are looking especially for overextended situations within a week, after multiple breakouts and for peak formations signalling potential reversals. This is helpful for thesis generation before a session and also for backtesting. The annotations in this example are added manually for illustration.
📈 Example: Weekly Template Analysis snapshot on daily timeframe
2. High Timeframe 5-Star Setup Analysis (Stacey Burke "ain't coming back" ACB Template)
This analysis identifies high-probability trade opportunities when daily breakout or down closes occur near key monthly levels mid-week, signalling overextensions and potentially large parabolic moves. Key signals for this are breakout or down closes occurring on a Wednesday. This is helpful for thesis generation before a session and also for backtesting. The annotations in this example are added manually for illustration. Also an indicator can bee seen on this chart shading every Wednesday to identify the signal.
📉 Example: High Timeframe Setup snapshot
3. Low Timeframe Entry Confirmation
FO helps confirm entry signals after a setup is identified, allowing traders to time their entries and exits more precisely. For this the highlighted Switch and/ or Fakeout bars can be highly valuable.
📊 Example (M15 Entry & Exit): Entry and Exit Confirmation snapshot
📊 Example (M5 Scale-In Strategy): Scaling Entries snapshot
The annotations in this examples are added manually for illustration.
Disclaimer
This indicator is for educational purposes only and does not guarantee profits.
None of the information provided shall be considered financial advice.
Users are fully responsible for their trading decisions and outcomes.
Triple CCI Strategy MFI Confirmed [Skyrexio]Overview
Triple CCI Strategy MFI Confirmed leverages 3 different periods Commodity Channel Index (CCI) indicator in conjunction Money Flow Index (MFI) and Exponential Moving Average (EMA) to obtain the high probability setups. Fast period CCI is used for having the high probability to enter in the direction of short term trend, middle and slow period CCI are used for confirmation, if market now likely in the mid and long-term uptrend. MFI is used to confirm trade with the money inflow/outflow with the high probability. EMA is used as an additional trend filter. Moreover, strategy uses exponential moving average (EMA) to trail the price when it reaches the specific level. More information in "Methodology" and "Justification of Methodology" paragraphs. The strategy opens only long trades.
Unique Features
Dynamic stop-loss system: Instead of fixed stop-loss level strategy utilizes average true range (ATR) multiplied by user given number subtracted from the position entry price as a dynamic stop loss level.
Configurable Trading Periods: Users can tailor the strategy to specific market windows, adapting to different market conditions.
Four layers trade filtering system: Strategy utilizes two different period CCI indicators, MFI and EMA indicators to confirm the signals produced by fast period CCI.
Trailing take profit level: After reaching the trailing profit activation level scrip activate the trailing of long trade using EMA. More information in methodology.
Methodology
The strategy opens long trade when the following price met the conditions:
Fast period CCI shall crossover the zero-line.
Slow and Middle period CCI shall be above zero-lines.
Price shall close above the EMA. Crossover is not obligatory
MFI shall be above 50
When long trade is executed, strategy set the stop-loss level at the price ATR multiplied by user-given value below the entry price. This level is recalculated on every next candle close, adjusting to the current market volatility.
At the same time strategy set up the trailing stop validation level. When the price crosses the level equals entry price plus ATR multiplied by user-given value script starts to trail the price with EMA. If price closes below EMA long trade is closed. When the trailing starts, script prints the label “Trailing Activated”.
Strategy settings
In the inputs window user can setup the following strategy settings:
ATR Stop Loss (by default = 1.75)
ATR Trailing Profit Activation Level (by default = 2.25)
CCI Fast Length (by default = 14, used for calculation short term period CCI)
CCI Middle Length (by default = 25, used for calculation short term period CCI)
CCI Slow Length (by default = 50, used for calculation long term period CCI)
MFI Length (by default = 14, used for calculation MFI
EMA Length (by default = 50, period of EMA, used for trend filtering EMA calculation)
Trailing EMA Length (by default = 20)
User can choose the optimal parameters during backtesting on certain price chart.
Justification of Methodology
Before understanding why this particular combination of indicator has been chosen let's briefly explain what is CCI, MFI and EMA.
The Commodity Channel Index (CCI) is a momentum-based technical indicator that measures the deviation of a security's price from its average price over a specific period. It helps traders identify overbought or oversold conditions and potential trend reversals.
The CCI formula is:
CCI = (Typical Price − SMA) / (0.015 × Mean Deviation)
Typical Price (TP): This is calculated as the average of the high, low, and closing prices for the period.
Simple Moving Average (SMA): This is the average of the Typical Prices over a specific number of periods.
Mean Deviation: This is the average of the absolute differences between the Typical Price and the SMA.
The result is a value that typically fluctuates between +100 and -100, though it is not bounded and can go higher or lower depending on the price movement.
The Money Flow Index (MFI) is a technical indicator that measures the strength of money flowing into and out of a security. It combines price and volume data to assess buying and selling pressure and is often used to identify overbought or oversold conditions. The formula for MFI involves several steps:
1. Calculate the Typical Price (TP):
TP = (high + low + close) / 3
2. Calculate the Raw Money Flow (RMF):
Raw Money Flow = TP × Volume
3. Determine Positive and Negative Money Flow:
If the current TP is greater than the previous TP, it's Positive Money Flow.
If the current TP is less than the previous TP, it's Negative Money Flow.
4. Calculate the Money Flow Ratio (MFR):
Money Flow Ratio = Sum of Positive Money Flow (over n periods) / Sum of Negative Money Flow (over n periods)
5. Calculate the Money Flow Index (MFI):
MFI = 100 − (100 / (1 + Money Flow Ratio))
MFI above 80 can be considered as overbought, below 20 - oversold.
The Exponential Moving Average (EMA) is a type of moving average that places greater weight and significance on the most recent data points. It is widely used in technical analysis to smooth price data and identify trends more quickly than the Simple Moving Average (SMA).
Formula:
1. Calculate the multiplier
Multiplier = 2 / (n + 1) , Where n is the number of periods.
2. EMA Calculation
EMA = (Current Price) × Multiplier + (Previous EMA) × (1 − Multiplier)
This strategy leverages Fast period CCI, which shall break the zero line to the upside to say that probability of short term trend change to the upside increased. This zero line crossover shall be confirmed by the Middle and Slow periods CCI Indicators. At the moment of breakout these two CCIs shall be above 0, indicating that there is a high probability that price is in middle and long term uptrend. This approach increases chances to have a long trade setup in the direction of mid-term and long-term trends when the short-term trend starts to reverse to the upside.
Additionally strategy uses MFI to have a greater probability that fast CCI breakout is confirmed by this indicator. We consider the values of MFI above 50 as a higher probability that trend change from downtrend to the uptrend is real. Script opens long trades only if MFI is above 50. As you already know from the MFI description, it incorporates volume in its calculation, therefore we have another one confirmation factor.
Finally, strategy uses EMA an additional trend filter. It allows to open long trades only if price close above EMA (by default 50 period). It increases the probability of taking long trades only in the direction of the trend.
ATR is used to adjust the strategy risk management to the current market volatility. If volatility is low, we don’t need the large stop loss to understand the there is a high probability that we made a mistake opening the trade. User can setup the settings ATR Stop Loss and ATR Trailing Profit Activation Level to realize his own risk to reward preferences, but the unique feature of a strategy is that after reaching trailing profit activation level strategy is trying to follow the trend until it is likely to be finished instead of using fixed risk management settings. It allows sometimes to be involved in the large movements. It’s also important to make a note, that script uses another one EMA (by default = 20 period) as a trailing profit level.
Backtest Results
Operating window: Date range of backtests is 2022.04.01 - 2024.11.25. It is chosen to let the strategy to close all opened positions.
Commission and Slippage: Includes a standard Binance commission of 0.1% and accounts for possible slippage over 5 ticks.
Initial capital: 10000 USDT
Percent of capital used in every trade: 50%
Maximum Single Position Loss: -4.13%
Maximum Single Profit: +19.66%
Net Profit: +5421.21 USDT (+54.21%)
Total Trades: 108 (44.44% win rate)
Profit Factor: 2.006
Maximum Accumulated Loss: 777.40 USDT (-7.77%)
Average Profit per Trade: 50.20 USDT (+0.85%)
Average Trade Duration: 44 hours
These results are obtained with realistic parameters representing trading conditions observed at major exchanges such as Binance and with realistic trading portfolio usage parameters.
How to Use
Add the script to favorites for easy access.
Apply to the desired timeframe and chart (optimal performance observed on 2h BTC/USDT).
Configure settings using the dropdown choice list in the built-in menu.
Set up alerts to automate strategy positions through web hook with the text: {{strategy.order.alert_message}}
Disclaimer:
Educational and informational tool reflecting Skyrex commitment to informed trading. Past performance does not guarantee future results. Test strategies in a simulated environment before live implementation
nPOC Levels by Tyler### Explanation of the Pine Script
This Pine Script identifies and displays weekly naked Points of Control (nPOCs) on a TradingView chart. An nPOC represents a Point of Control (POC) from a previous week that has not been revisited by price action in subsequent weeks. These nPOCs are extended to the right as horizontal lines, indicating potential support or resistance levels.
#### Script Overview
1. **Indicator Declaration:**
```pinescript
//@version=5
indicator("Weekly nPOCs", overlay=true)
```
- The script is defined as a version 5 Pine Script.
- The `indicator` function sets the script's name ("Weekly nPOCs") and specifies that the indicator should be overlaid on the price chart (`overlay=true`).
2. **Function to Calculate POC:**
```pinescript
f_poc(_hl2, _vol) =>
var float vol_profile = na
if (na(vol_profile))
vol_profile := array.new_float(100, 0.0)
_bin_size = (high - low) / 100
for i = 0 to 99
if _hl2 >= low + i * _bin_size and _hl2 < low + (i + 1) * _bin_size
array.set(vol_profile, i, array.get(vol_profile, i) + _vol)
max_volume = array.max(vol_profile)
poc_index = array.indexof(vol_profile, max_volume)
poc_price = low + poc_index * _bin_size + _bin_size / 2
poc_price
```
- The function `f_poc` calculates the Point of Control (POC) for a given period.
- It takes two parameters: `_hl2` (the average of the high and low prices) and `_vol` (volume).
- A volume profile array (`vol_profile`) is initialized to store volume data across different price bins.
- The price range between the high and low is divided into 100 bins (`_bin_size`).
- The function iterates over each bin, accumulating the volumes for prices within each bin.
- The bin with the maximum volume is identified as the POC (`poc_price`).
3. **Variables to Store Weekly Data:**
```pinescript
var float poc = na
var float prev_poc = na
var line poc_lines = na
if na(poc_lines)
poc_lines := array.new_line(0)
```
- `poc` stores the current week's POC.
- `prev_poc` stores the previous week's POC.
- `poc_lines` is an array to store lines representing nPOCs. The array is initialized if it is `na` (not initialized).
4. **Calculate Weekly POC:**
```pinescript
is_new_week = ta.change(time('W')) != 0
if (is_new_week)
prev_poc := poc
poc := f_poc(hl2, volume)
if not na(prev_poc)
line new_poc_line = line.new(x1=bar_index, y1=prev_poc, x2=bar_index + 100, y2=prev_poc, color=color.red, width=2)
label.new(x=bar_index, y=prev_poc, text="nPOC", style=label.style_label_down, color=color.red, textcolor=color.white)
array.push(poc_lines, new_poc_line)
```
- `is_new_week` checks if the current bar is the start of a new week using the `ta.change(time('W'))` function.
- If it's a new week, the previous week's POC is stored in `prev_poc`, and the current week's POC is calculated using `f_poc`.
- If `prev_poc` is not `na`, a new line (`new_poc_line`) representing the nPOC is created, extending it to the right (for 100 bars).
- A label is created at the `prev_poc` level, marking it as "nPOC".
- The new line is added to the `poc_lines` array.
5. **Remove Old Lines:**
```pinescript
if array.size(poc_lines) > 52
line.delete(array.shift(poc_lines))
```
- This section ensures that only the last 52 weeks of nPOCs are kept to avoid cluttering the chart.
- If the `poc_lines` array contains more than 52 lines, the oldest line is deleted using `array.shift`.
6. **Plot the Current Week's POC as a Reference:**
```pinescript
plot(poc, title="Current Weekly POC", color=color.blue, linewidth=2, style=plot.style_line)
```
- The current week's POC is plotted as a blue line on the chart for reference.
#### Summary
This script calculates and identifies weekly Points of Control (POCs) and marks them as nPOCs if they remain untouched by subsequent price action. These nPOCs are displayed as horizontal lines extending to the right, providing traders with potential support or resistance levels. The script also manages the number of lines plotted to maintain a clear and uncluttered chart.
SuperTrend with Chebyshev FilterModified Super Trend with Chebyshev Filter
The Modified Super Trend is an innovative take on the classic Super Trend indicator. This advanced version incorporates a Chebyshev filter, which significantly enhances its capabilities by reducing false signals and improving overall signal quality. In this post, we'll dive deep into the Modified Super Trend, exploring its history, the benefits of the Chebyshev filter, and how it effectively addresses the challenges associated with smoothing, delay, and noise.
History of the Super Trend
The Super Trend indicator, developed by Olivier Seban, has been a popular tool among traders since its inception. It helps traders identify market trends and potential entry and exit points. The Super Trend uses average true range (ATR) and a multiplier to create a volatility-based trailing stop, providing traders with a dynamic tool that adapts to changing market conditions. However, the original Super Trend has its limitations, such as the tendency to produce false signals during periods of low volatility or sideways trading.
The Chebyshev Filter
The Chebyshev filter is a powerful mathematical tool that makes an excellent addition to the Super Trend indicator. It effectively addresses the issues of smoothing, delay, and noise associated with traditional moving averages. Chebyshev filters are named after Pafnuty Chebyshev, a renowned Russian mathematician who made significant contributions to the field of approximation theory.
The Chebyshev filter is capable of producing smoother, more responsive moving averages without introducing additional lag. This is possible because the filter minimizes the worst-case error between the ideal and the actual frequency response. There are two types of Chebyshev filters: Type I and Type II. Type I Chebyshev filters are designed to have an equiripple response in the passband, while Type II Chebyshev filters have an equiripple response in the stopband. The Modified Super Trend allows users to choose between these two types based on their preferences.
Overcoming the Challenges
The Modified Super Trend addresses several challenges associated with the original Super Trend:
Smoothing: The Chebyshev filter produces a smoother moving average without introducing additional lag. This feature is particularly beneficial during periods of low volatility or sideways trading, as it reduces the number of false signals.
Delay: The Chebyshev filter helps minimize the delay between price action and the generated signal, allowing traders to make timely decisions based on more accurate information.
Noise Reduction: The Chebyshev filter's ability to minimize the worst-case error between the ideal and actual frequency response reduces the impact of noise on the generated signals. This feature is especially useful when using the true range as an offset for the price, as it helps generate more reliable signals within a reasonable time frame.
The Great Replacement
The Modified Super Trend with Chebyshev filter is an excellent replacement for the original Super Trend indicator. It offers significant improvements in terms of signal quality, responsiveness, and accuracy. By incorporating the Chebyshev filter, the Modified Super Trend effectively reduces the number of false signals during low volatility or sideways trading, making it a more reliable tool for identifying market trends and potential entry and exit points.
In-Depth Guide to the Modified Super Trend Settings
The Modified Super Trend with Chebyshev filter offers a wide range of settings that allow traders to fine-tune the indicator to suit their specific trading styles and objectives. In this section, we will discuss each setting in detail, explaining its purpose and how to use it effectively.
Source
The source setting determines the price data used for calculations. The default setting is hl2, which calculates the average of the high and low prices. You can choose other price data sources such as close, open, or ohlc4 (average of open, high, low, and close prices) based on your preference.
Up Color and Down Color
These settings control the color of the trend line when the market is in an uptrend (up_color) and a downtrend (down_color). You can customize these colors to your liking, making it easier to visually identify the current market trend.
Text Color
This setting controls the color of the text displayed on the chart when using labels to indicate trend changes. You can choose any color that contrasts well with your chart background for better readability.
Mean Length
The mean_length setting determines the length (number of bars) used for the Chebyshev moving average calculation. A shorter length will make the moving average more responsive to price changes, while a longer length will produce a smoother moving average. It is crucial to find the right balance between responsiveness and smoothness, as a too-short length may generate false signals, while a too-long length might produce lagging signals. The default value is 64, but you can experiment with different values to find the optimal setting for your trading strategy.
Mean Ripple
The mean_ripple setting influences the Chebyshev filter's ripple effect in the passband (Type I) or stopband (Type II). The ripple effect represents small oscillations in the frequency response, which can impact the moving average's smoothness. The default value is 0.01, but you can experiment with different values to find the best balance between smoothness and responsiveness.
Chebyshev Type: Type I or Type II
The style setting allows you to choose between Type I and Type II Chebyshev filters. Type I filters have an equiripple response in the passband, while Type II filters have an equiripple response in the stopband. Depending on your preference for smoothness and responsiveness, you can choose the type that best fits your trading style.
ATR Style
The atr_style setting determines the method used for calculating the Average True Range (ATR). By default (false), it uses the traditional high-low range. When set to true, it uses the absolute difference between the open and close prices. You can choose the method that works best for your trading strategy and the market you are trading.
ATR Length
The atr_length setting controls the length (number of bars) used for calculating the ATR. Similar to the mean_length, a shorter length will make the ATR more responsive to price changes, while a longer length will produce a smoother ATR. The default value is 64, but you can experiment with different values to find the optimal setting for your trading strategy.
ATR Ripple
The atr_ripple setting, like the mean_ripple, influences the ripple effect of the Chebyshev filter used in the ATR calculation. The default value is 0.05, but you can experiment with different values to find the best balance between smoothness and responsiveness.
Multiplier
The multiplier setting determines the factor by which the ATR is multiplied before being added
Super Trend Logic and Signal Optimization
The Modified Super Trend with Chebyshev filter is designed to minimize false signals and provide a clear indication of market trends. It does so by using a combination of moving averages, Average True Range (ATR), and a multiplier. In this section, we will discuss the Super Trend's logic, its ability to prevent false signals, and the early warning crosses added to the indicator.
Super Trend Logic
The Super Trend's logic is based on a combination of the Chebyshev moving average and ATR. The Chebyshev moving average is a smooth moving average that effectively filters out market noise, while the ATR is a measure of market volatility.
The Super Trend is calculated by adding or subtracting a multiple of the ATR from the Chebyshev moving average. The multiplier is a user-defined value that determines the distance between the trend line and the price action. A larger multiplier results in a wider channel, reducing the likelihood of false signals but potentially missing out on valid trend changes.
Preventing False Signals
The Super Trend is designed to minimize false signals by maintaining its trend direction until a significant change in the market occurs. In a downtrend, the trend line will only decrease in value, and in an uptrend, it will only increase. This helps prevent false signals caused by temporary price fluctuations or market noise.
When the price crosses the trend line, the Super Trend does not immediately change its direction. Instead, it employs a safety logic to ensure that the trend change is genuine. The safety logic checks if the new trend line (calculated using the updated moving average and ATR) is more extreme than the previous one. If it is, the trend line is updated; otherwise, the previous trend line is maintained. This mechanism further reduces the likelihood of false signals by ensuring that the trend line only changes when there is a significant shift in the market.
Early Warning Crosses
To provide traders with additional insight, the Modified Super Trend with Chebyshev filter includes early warning crosses. These crosses are plotted on the chart when the price crosses the trend line without the safety logic. Although these crosses do not necessarily indicate a trend change, they can serve as a valuable heads-up for traders to monitor the market closely and prepare for potential trend reversals.
In conclusion, the Modified Super Trend with Chebyshev filter offers a significant improvement over the original Super Trend indicator. By incorporating the Chebyshev filter, this modified version effectively addresses the challenges of smoothing, delay, and noise reduction while minimizing false signals. The wide range of customizable settings allows traders to tailor the indicator to their specific needs, while the inclusion of early warning crosses provides valuable insight into potential trend reversals.
Ultimately, the Modified Super Trend with Chebyshev filter is an excellent tool for traders looking to enhance their trend identification and decision-making abilities. With its advanced features, this indicator can help traders navigate volatile markets with confidence, making more informed decisions based on accurate, timely information.
Higher Timeframe Market StructureHTF Market Structure – ZigZag, Break of Structure & Supply/Demand
This powerful indicator is designed to identify higher-timeframe market structure using a combination of ZigZag patterns, Break of Structure (BOS) signals, and Supply/Demand zones.
Key Features:
Automatic detection of Higher Highs (HH), Higher Lows (HL), Lower Lows (LL), and Lower Highs (LH)
Internal structure shifts based on Open or High/Low logic
Supply and Demand zones plotted on the chart
Break of Structure (BOS) lines with optional alerts
Mitigation logic to mark or delete invalidated order blocks
Customizable aggregation factor to view higher time frame structure on lower time frames
How to Use:
Focus on market structure and BOS to understand the current trend.
Watch for internal shifts as early signals of potential reversals.
Use ZigZag lines to connect swing highs and lows to visualize market rhythm.
Supply zones (red) and Demand zones (green) are automatically drawn after structure breaks:
Use Demand Zones in Bullish Markets for the highest probability entries.
Use Supply Zones in Bearish Markets to align with the prevailing trend.
Best Practices:
Only use Demand Zones in Bullish markets and Supply Zones in Bearish markets for optimal results.
Look for price action or reversal signals within these zones to refine your entries.
Enable alerts to get notified on:
New order blocks
Internal shifts
BOS events
HH, HL, LL, LH formations
Liquidity sweeps
Customization Options:
Aggregation Factor: Control how many candles are grouped for structure analysis.
Zone Duration: Define how length of plotted zones.
Mitigation Settings: Automatically delete or fade zones after mitigation.
Colors: Choose custom colors for bullish and bearish zones and structure markers.
This tool is ideal for traders who rely on price action, structure, and smart money concepts. Combine it with your own S&D strategy or integrate it with other confluence tools for even better precision.
Enhanced Stock Ticker with 50MA vs 200MADescription
The Enhanced Stock Ticker with 50MA vs 200MA is a versatile Pine Script indicator designed to visualize the relative position of a stock's price within its short-term and long-term price ranges, providing actionable bullish and bearish signals. By calculating normalized indices based on user-defined lookback periods (defaulting to 50 and 200 bars), this indicator helps traders identify potential reversals or trend continuations. It offers the flexibility to plot signals either on the main price chart or in a separate lower pane, leveraging Pine Script v6's force_overlay functionality for seamless integration. The indicator also includes a customizable ticker table, visual fills, and alert conditions for automated trading setups.
Key Features
Dual Lookback Indices: Computes short-term (default: 50 bars) and long-term (default: 200 bars) indices, normalizing the closing price relative to the high/low range over the specified periods.
Flexible Signal Plotting: Users can toggle between plotting crossover signals (triangles) on the main price chart (location.abovebar/belowbar) or in the lower pane (location.top/bottom) using the Plot Signals on Main Chart option.
Crossover Signals: Generates bullish (Golden Cross) and bearish (Death Cross) signals when the short or long index crosses above 5 or below 95, respectively.
Visual Enhancements:
Plots short-term (blue) and long-term (white) indices in a separate pane with customizable lookback periods.
Includes horizontal reference lines at 0, 20, 50, 80, and 100, with green and red fills to highlight overbought/oversold zones.
Dynamic fill between indices (green when short > long, red when long > short) for quick trend visualization.
Displays a ticker and legend table in the top-right corner, showing the symbol and lookback periods.
Alert Conditions: Supports alerts for bullish and bearish crossovers on both short and long indices, enabling integration with TradingView's alert system.
Technical Innovation: Utilizes Pine Script v6's force_overlay parameter to plot signals on the main chart from a non-overlay indicator, combining the benefits of a separate pane and chart-based signals in a single script.
Technical Details
Calculation Logic:
Uses confirmed bars (barstate.isconfirmed) to calculate indices, ensuring reliability by avoiding real-time bar fluctuations.
Short-term index: (close - lowest(low, lookback_short)) / (highest(high, lookback_short) - lowest(low, lookback_short)) * 100
Long-term index: (close - lowest(low, lookback_long)) / (highest(high, lookback_long) - lowest(low, lookback_long)) * 100
Signals are triggered using ta.crossover() and ta.crossunder() for indices crossing 5 (bullish) and 95 (bearish).
Signal Plotting:
Main chart signals use force_overlay=true with location.abovebar/belowbar for precise alignment with price bars.
Lower pane signals use location.top/bottom for visibility within the indicator pane.
Plotting is controlled by boolean conditions (e.g., bullishLong and plot_on_chart) to ensure compliance with Pine Script's global scope requirements.
Performance Considerations: Optimized for efficiency by calculating indices only on confirmed bars and using lightweight plotting functions.
How to Use
Add to Chart:
Copy the script into TradingView's Pine Editor and add it to your chart.
Configure Settings:
Short Lookback Period: Adjust the short-term lookback (default: 50 bars) to match your trading style (e.g., 20 for shorter-term analysis).
Long Lookback Period: Adjust the long-term lookback (default: 200 bars) for broader market context.
Plot Signals on Main Chart: Check this box to display signals on the price chart; uncheck to show signals in the lower pane.
Interpret Signals:
Golden Cross (Bullish): Green (long) or blue (short) triangles indicate the index crossing above 5, suggesting a potential buying opportunity.
Death Cross (Bearish): Red (long) or white (short) triangles indicate the index crossing below 95, signaling a potential selling opportunity.
Set Alerts:
Use TradingView's alert system to create notifications for the four alert conditions: Long Index Valley, Long Index Peak, Short Index Valley, and Short Index Peak.
Customize Visuals:
The ticker table displays the symbol and lookback periods in the top-right corner.
Adjust colors and styles via TradingView's settings if desired.
Example Use Cases
Swing Trading: Use the short-term index (e.g., 50 bars) to identify short-term reversals within a broader trend defined by the long-term index.
Trend Confirmation: Monitor the fill between indices to confirm whether the short-term trend aligns with the long-term trend.
Automated Trading: Leverage alert conditions to integrate with bots or manual trading strategies.
Notes
Testing: Always backtest the indicator on your chosen market and timeframe to validate its effectiveness.
Optional Histogram: The script includes a commented-out histogram for the index difference (index_short - index_long). Uncomment the plot(index_diff, ...) line to enable it.
Compatibility: Built for Pine Script v6 and tested on TradingView as of May 27, 2025.
Acknowledgments
This indicator was inspired by the need for a flexible tool that combines lower-pane analysis with main chart signals, made possible by Pine Script's force_overlay feature. Share your feedback or suggestions in the comments below, and happy trading!
GCM Centre Line Candle MarkerGCM Centre Line Candle Marker (GCM-CLCM) - Descriptive Notes
Indicator Overview:
The "GCM Centre Line Candle Marker" is a versatile TradingView overlay indicator designed to enhance chart analysis by drawing short horizontal lines at user-defined "centre" points of candles. These lines provide a quick visual reference to key price levels within each candle, such as midpoints, open, close, or typical prices. The indicator offers extensive customization for line appearance, positioning, and conditional display, including an option to highlight only bullish engulfing patterns.
Key Features:
1. Customizable Line Position:
o Users can choose from various methods to calculate the "centre" price for the line:
(High + Low) / 2 (Default)
(Open + Close) / 2
Close
Open
(Open + High + Low + Close) / 4 (HLCO/4)
(Open + High + Close) / 3 (Typical Price HLC/3 variation)
(Open + Close + Low) / 3 (Typical Price OCL/3 variation)
2. Line Appearance Customization:
o Visibility: Toggle lines on/off.
o Style: Solid, dotted, or dashed lines.
o Width: Adjustable line thickness (1 to 5).
o Length: Defines how many candles forward the line extends (1 to 10).
o Color: Lines are colored based on candle type (bullish/bearish), with user-selectable base colors.
o Dynamic Opacity: Line opacity is dynamically adjusted based on the candle's size relative to recent candles. Larger candles produce more opaque lines (up to the user-defined maximum opacity), while smaller candles result in more transparent lines. This helps significant candles stand out.
3. Price Labels:
o Show Labels: Option to display price labels at the end of each center line.
o Label Background Color: Customizable.
o Dynamic Text Color: Label text color can change based on the movement of the center price:
Green: Current center price is higher than the previous.
Red: Current center price is lower than the previous.
Gray: No change or first label.
o Static Text Color: Alternatively, a fixed color can be used for all labels.
4. Conditional Drawing - Bullish Engulfing Filter:
o Users can enable an option to Only Show Bullish Engulfing Candles. When active, center lines will only be drawn for candles that meet bullish engulfing criteria (current bull candle's body engulfs the previous bear candle's body).
5. Performance Management:
o Max Lines to Show: Limits the number of historical lines displayed on the chart to maintain clarity and performance. Older lines are automatically removed as new ones are drawn.
6. Alert Condition:
o Includes a built-in alert: Big Bullish Candle. This alert triggers when a bullish candle's range (high - low) is greater than the 20-period simple moving average (SMA) of candle ranges.
How It Works:
• For each new candle, the script calculates the "center" price based on the user's Line Position selection.
• If showLines is enabled and (if applicable) the bullish engulfing condition is met, a new line is drawn from the current candle's bar_index at the calculated _center price, extending lineLength candles forward.
• The line's color is determined by whether the candle is bullish (close > open) or bearish (close < open).
• Opacity is calculated dynamically: scaledOpacity = int((100 - maxUserOpacity) * (1 - dynamicFactor) + maxUserOpacity), where dynamicFactor is candleSize / maxSize (current candle size relative to the max size in the last 20 candles). This means maxUserOpacity is the least transparent the line will be (for the largest candles), and smaller candles will have lines approaching full transparency.
• Optional price labels are added at the end of these lines.
• The script manages an array of drawn lines, removing the oldest ones if the maxLines limit is exceeded.
Potential Use Cases:
• Visualizing Intra-Candle Levels: Quickly see midpoints or other key price points without manual drawing.
• Short-Term Reference Points: The extended lines can act as very short-term dynamic support/resistance or points of interest.
• Pattern Recognition: Highlight bullish engulfing patterns or simply emphasize candles based on their calculated center.
• Volatility Indication: The dynamic opacity can subtly indicate periods of larger or smaller candle ranges.
• Confirmation Tool: Use in conjunction with other indicators or trading strategies.
User Input Groups:
• Line Settings: Controls all aspects of the line's appearance and calculation.
• Label Settings: Manages the display and appearance of price labels.
• Other Settings: Contains options for line management and conditional filtering (like Bullish Engulfing).
This indicator provides a clean and customizable way to mark significant price levels within candles, aiding traders in their technical analysis.
Custom Session Tracker (KN)**Custom Session Tracker (KN)**
Visually highlight any intraday session’s high, low, and midpoint on your chart with full styling control.
**Description**
Custom Session Tracker (KN) lets you define any trading session (e.g. 09:30–16:00 NY time) and automatically draws:
* A translucent box spanning the session’s High and Low
* A horizontal line marking the session midpoint
All elements update in real time and persist after session close.
**Features**
* **Session Range Box**: Plots from session open through close
* **Mid-Price Line**: Marks the exact midpoint of High/Low
* **Timezone Input**: Aligns session to any GMT offset
* **Custom Colors**: Fill, border, and mid-line colors
* **Line & Border Styles**: Choose solid or dashed
**Inputs**
* **Timezone** – GMT offset for your market
* **Session** – Hours in `HHMM-HHMM` format
* **Fill Color** – Box interior transparency
* **Border Color** – Box outline
* **Box Border Style** – Solid or dashed
* **Midline Color** – Mid-price line color
* **Mid Price Line Style** – Solid or dashed
**How to Use**
1. Add the script to your chart.
2. Set your session hours and timezone.
3. Customize colors and styles.
4. Watch each session’s high, low, and midpoint appear automatically.
Perfect for session-overlap strategies, mean-reversion signals, or simply keeping key levels in view.
SMCFunctionsLibrary "SMCFunctions"
findSwingPoints(high, low, swing_size)
Parameters:
high (float)
low (float)
swing_size (int)
detectBOS(close, high, low, prevHigh, prevLow, highActive, lowActive, bos_conf_type)
Parameters:
close (float)
high (float)
low (float)
prevHigh (float)
prevLow (float)
highActive (bool)
lowActive (bool)
bos_conf_type (string)
getBOSDetails(highBroken, lowBroken, prevHigh, prevLow, prevSwing, prevHighIndex, prevLowIndex, input_show_choch)
Parameters:
highBroken (bool)
lowBroken (bool)
prevHigh (float)
prevLow (float)
prevSwing (int)
prevHighIndex (int)
prevLowIndex (int)
input_show_choch (bool)
calculateRetracementLevels(start_price, end_price)
Parameters:
start_price (float)
end_price (float)
Color Coded Volume IndicatorColor Coded Volume Indicator
Overview
Splits each bar’s total volume into estimated buy-side vs. sell-side components and displays them as stacked two-tone columns (red = sell, green = buy). Axis labels and tooltips use “K”/“M” formatting.
Features
Stacked Two-Tone Columns
Red Base : estimated sell volume (50% opacity)
Green Top : remaining buy volume (50% opacity)
Automatic K/M Formatting via format=format.volume
Zero Baseline for clean reference at zero
Positive-Only Bars (no negatives)
How It Works
True-Range Guard
Skips bars where high == low to avoid divide-by-zero.
Volume Split
BuyVol = Volume × (Close − Low) / (High − Low)
SellVol = Volume × (High − Close) / (High − Low)
Both series clamped ≥ 0.
Layered Plot
Draw semi-transparent green at full height, then overlay red sell portion.
Usage
Open TradingView’s Pine Editor
Paste in the full script
Click “Save & Add to Chart”
In the Publish dialog, title it “Color Coded Volume Indicator” and paste this description.
Interpretation
Green-dominant bars → strong buying pressure
Red-dominant bars → strong selling pressure
Equal halves → balanced activity
Opening Range Breakout Cloud Indicator by TenAMTraderOpening Range Breakout Cloud Indicator – by TenAMTrader
This indicator visually maps out the Opening Range of the trading day — the price high and low between a configurable start and end time (default: 9:30 AM–10:00 AM EST). It helps traders identify breakout levels, key intraday zones, and price behavior relative to the early range.
🔹 What It Shows:
Opening High, Low, and Midpoint lines for each day.
Clouds between the midpoint and high/low for visual clarity.
Optional Second Range (e.g., 9:30–9:45 AM) for more aggressive early signals.
Historical Ranges are preserved, allowing you to view previous days' levels on the chart.
Custom Alerts when price crosses the Opening High, Low, or Midpoint.
Full customization: colors, range times, and display toggles.
🔔 Use It For:
Spotting breakouts or rejections at key levels.
Finding early support/resistance zones.
Planning trades using intraday structure.
⚠️ Use this tool as part of a broader trading strategy. No indicator guarantees results — always trade at your own discretion.
Higher Timeframe TrendMap [BigBeluga]🔵HTF TrendMap
A powerful visual overlay that brings higher timeframe market structure directly onto your intraday chart.
This tool maps directional bias, trend strength, and dynamic range boundaries from a user-selected HTF (like Daily or 4H), offering a real-time confluence layer for scalpers, day traders, and swing traders.
By plotting the evolving average (HL2), it acts as a volatility-weighted trend anchor, allowing you to align lower timeframe entries with higher timeframe intent.
Technical Overview:
At the close of each higher timeframe (HTF) candle, the indicator stores the high, low, and calculates the HL2 midpoint. These values are then referenced on the lower timeframe chart to plot trend direction and price boundaries.
🔵 KEY FEATURES
Maps the selected higher timeframe (HTF) (e.g., Daily) onto your current chart.
At the close of each HTF candle , it starts to calculate and store the highest, lowest, and average (HL2) price levels .
The average (HL2) value is treated as the HTF trend baseline —plotted in orange for uptrend , blue for downtrend .
Visual curve thickens and fades to show progress through the HTF period (stronger color = fresher data).
Horizontal dashed lines show HTF high and low levels that persist until the next period closes.
On every HTF close, two price labels are printed for the high and low levels.
Vertical separators visually mark the start of each HTF candle for easy structural recognition.
A real-time dashboard shows selected HTF, current trend direction (🢁/🢃), and updates dynamically.
🔵 HOW TO USE
Use the HTF average line as a bias filter —only long when the trend is up (orange), short when down (blue).
HTF high/low labels help identify key breakout or rejection zones .
Combine with intraday systems or reversal tools for multi-timeframe confluence setups .
Ideal for scalpers and swing traders who rely on HTF momentum shifts .
🔵 CONCLUSION
HTF TrendMap provides a clean, data-rich layer of higher timeframe context to any chart. With adaptive trend coloring, volatility mapping, and real-time data labeling, it enables traders to stay in sync with macro structure while executing on the micro.
nineLivesUtilLibLibrary "nineLivesUtilLib"
isDateInRange(currentTime, useTimeFilter, startDate, endDate)
Checks if the current time is within the specified date range.
Parameters:
currentTime (int) : The current bar's time (time).
useTimeFilter (bool) : Bool 📅: Enable the date range filter.
startDate (int) : Timestamp 📅: The start date for the filter.
endDate (int) : Timestamp 📅: The end date for the filter.
Returns: True if the current time is within the range or filtering is disabled, false otherwise.
@example
inDateRange = nineLivesUtilLib.isDateInRange(time, useTimeFilter, startDate, endDate)
if inDateRange
// Execute trading logic
checkVolumeCondition(currentVolume, useVolumeFilter, volumeThresholdMultiplier, volumeLength)
Checks if the current volume meets the threshold condition.
Parameters:
currentVolume (float) : The current bar's volume (volume).
useVolumeFilter (bool) : Bool 📊: Enable the volume filter.
volumeThresholdMultiplier (float) : Float 📊: Volume threshold relative to average (e.g., 1.5 for 1.5x average).
volumeLength (int) : Int 📊: Lookback length for the volume average.
Returns: True if the volume condition is met or filtering is disabled, false otherwise.
@example
volumeOk = nineLivesUtilLib.checkVolumeCondition(volume, useVolumeFilter, volumeThreshold, volumeLength)
if volumeOk
// Proceed with trading logic
checkMultiTimeframeCondition(currentClose, currentOpen, htfClose, htfOpen, useMultiTimeframe, alignment)
Checks alignment with higher timeframe direction.
Parameters:
currentClose (float) : Float: The current bar's closing price (close).
currentOpen (float) : Float: The current bar's opening price (open).
htfClose (float) : Float: The closing price from the higher timeframe (must be fetched by the calling script using request.security).
htfOpen (float) : Float: The opening price from the higher timeframe (must be fetched by the calling script using request.security).
useMultiTimeframe (bool) : Bool ⏱️: Enable multi-timeframe analysis.
alignment (string) : String ⏱️: Desired alignment ("same", "opposite", "any").
Returns: True if the timeframe alignment condition is met or analysis is disabled, false otherwise.
@example
// In the calling script:
= request.security(syminfo.tickerid, higherTimeframe, )
tfOk = nineLivesUtilLib.checkMultiTimeframeCondition(close, open, htfClose, htfOpen, useMultiTimeframe, tfAlignment)
if tfOk
// Proceed with trading logic
checkMarketRegime(useMarketRegime, regimeIndicator, regimeThreshold, regimeLength, regimeMode)
Detects the market regime (trending or ranging) and checks if trading is allowed.
Parameters:
useMarketRegime (bool) : Bool 🔍: Enable market regime detection.
regimeIndicator (string) : String 🔍: Indicator to use ("ADX" or "Volatility").
regimeThreshold (int) : Int 🔍: Threshold for trend strength/volatility.
regimeLength (simple int) : Int 🔍: Lookback length for the indicator.
regimeMode (string) : String 🔍: Trading mode based on regime ("trend_only", "range_only", "adaptive").
Returns: A tuple containing:
: conditionMet (bool) - True if trading is allowed based on the regime mode and detection, false otherwise.
: inTrendingRegime (bool) - True if the current regime is trending based on the indicator and threshold.
@example
= nineLivesUtilLib.checkMarketRegime(useMarketRegime, regimeIndicator, regimeThreshold, regimeLength, regimeMode)
if regimeOk
// Proceed with trading logic
applyCooldown(buySignal, sellSignal, cooldownBars)
Applies a cooldown period after a signal.
Parameters:
buySignal (bool) : Bool: Buy signal (potentially after primary entry logic).
sellSignal (bool) : Bool: Sell signal (potentially after primary entry logic).
cooldownBars (int) : Int ⏳: The number of bars to wait after a signal before allowing another.
Returns: A tuple containing:
: cooldownFilteredBuy (bool) - Buy signal after cooldown filter.
: cooldownFilteredSell (bool) - Sell signal after cooldown filter.
@example
= nineLivesUtilLib.applyCooldown(rawBuySignal, rawSellSignal, iCool)
applyAllFilters(rawBuy, rawSell, inDateRange, tradeDirection, volumeOk, tfOk, regimeOk, drawdownOk, cooldownOkBuy, cooldownOkSell)
Applies all filtering conditions to the buy and sell signals.
Parameters:
rawBuy (bool) : Bool: The initial buy signal candidate (from primary entry logic, e.g., after cooldown).
rawSell (bool) : Bool: The initial sell signal candidate (from primary entry logic, e.g., after cooldown).
inDateRange (bool) : Bool 📅: Result from isDateInRange.
tradeDirection (string) : String 🔄: Overall trade direction preference ("longs_only", "shorts_only", "both").
volumeOk (bool) : Bool 📊: Result from checkVolumeCondition.
tfOk (bool) : Bool ⏱️: Result from checkMultiTimeframeCondition.
regimeOk (bool) : Bool 🔍: Result from checkMarketRegime.
drawdownOk (bool) : Bool 📉: Result from checkDrawdownExceeded (or equivalent).
cooldownOkBuy (bool) : Bool ⏳: Result from applyCooldown for buy.
cooldownOkSell (bool) : Bool ⏳: Result from applyCooldown for sell.
Returns: A tuple containing:
: finalBuySignal (bool) - The final buy signal after all filters.
: finalSellSignal (bool) - The final sell signal after all filters.
@example
= nineLivesUtilLib.applyAllFilters(cooldownBuy, cooldownSell, inDateRange, tradeDirection, volumeOk, tfOk, regimeOk, !drawdownExceeded, cooldownBuy, cooldownSell)
NOTE: This function filters signals generated by your primary entry logic (e.g., EMA crossover).
checkDrawdownExceeded(currentEquity, useMaxDrawdown, maxDrawdownPercent)
Tracks maximum equity and checks if current drawdown exceeds a threshold.
Parameters:
currentEquity (float) : Float: The strategy's current equity (strategy.equity).
useMaxDrawdown (bool) : Bool 📉: Enable max drawdown protection.
maxDrawdownPercent (float) : Float 📉: The maximum allowed drawdown as a percentage.
Returns: True if drawdown protection is enabled and the current drawdown exceeds the threshold, false otherwise.
@example
drawdownExceeded = nineLivesUtilLib.checkDrawdownExceeded(strategy.equity, useMaxDrawdown, maxDrawdownPercent)
if drawdownExceeded
// Consider stopping entries or exiting positions in the strategy script
calculateExitPrice(positionAvgPrice, percentage, isStop, isLong)
Calculates a stop loss or take profit price based on a percentage from the average entry price.
Parameters:
positionAvgPrice (float) : Float: The average price of the current position (strategy.position_avg_price).
percentage (float) : Float: The stop loss or take profit percentage (e.g., 2.0 for 2%).
isStop (bool) : Bool: True if calculating a stop loss price, false if calculating a take profit price.
isLong (bool) : Bool: True if the position is long, false if short.
Returns: The calculated stop price or take profit price, or na if no position or percentage is invalid.
@example
longSL = nineLivesUtilLib.calculateExitPrice(strategy.position_avg_price, stopLossPercent, true, true)
shortTP = nineLivesUtilLib.calculateExitPrice(strategy.position_avg_price, takeProfitPercent, false, false)
calculateTrailingStopLevel(positionAvgPrice, trailOffsetPercent, trailPercent, currentHigh, currentLow, isLong)
Calculates the current trailing stop level for a position.
Parameters:
positionAvgPrice (float) : Float: The average price of the current position (strategy.position_avg_price).
trailOffsetPercent (float) : Float 🔄: The percentage price movement to activate the trailing stop.
trailPercent (float) : Float 🔄: The percentage distance the stop trails behind the price.
currentHigh (float) : Float: The current bar's high (high).
currentLow (float) : Float: The current bar's low (low).
isLong (bool) : Bool: True if the position is long, false if short.
Returns: The calculated trailing stop price if active, otherwise na.
@example
longTrailStop = nineLivesUtilLib.calculateTrailingStopLevel(strategy.position_avg_price, trailOffset, trailPercent, high, low, true)
shortTrailStop = nineLivesUtilLib.calculateTrailingStopLevel(strategy.position_avg_price, trailOffset, trailPercent, high, low, false)
if not na(longTrailStop)
strategy.exit("Long Trail", from_entry="Long", stop=longTrailStop)
Weekly Open Range [BigBeluga]
A precision weekly range tracker that captures early market positioning from the first moments of the trading week.
By dynamically measuring the highest and lowest points from the first three candles after the Sunday 21:00 UTC open, the indicator builds a reactive support and resistance framework for the week ahead.
It also visualizes the active range with a dynamic box and provides live updates of the current price movement against the established range boundaries.
🔵 KEY FEATURES
Automatically marks the weekly open range starting at Sunday 21:00 UTC .
Identify maximum high and minimum low from the first 3 candles after the weekly open.
if isWeeklyOpen or isWeeklyOpen or isWeeklyOpen or isWeeklyOpen
h = math.max(high, range_box.get_top())
l = math.min(low, range_box.get_bottom())
Draws two horizontal lines from the range extremes, acting as dynamic support/resistance zones throughout the week.
Visualizes the range with a semi-transparent box for clear zone identification.
Includes a compact dashboard panel with:
- Symbol and current price with bullish or bearish bar indication with ▲ / ▼
- Current weekly high/low range values
🔵 USAGE
Treat the high and low of the range as support/resistance zones for the week.
Combine with volume analysis or liquidity tools for entry confirmation .
Refresh your key levels every week as the indicator resets each Sunday night .
Works great alongside Smart Money Concepts (ICT) strategies and weekly planning.
Weekly Open Range gives traders a reliable structure to anchor their week. With clear range mapping, breakout signals, and intuitive visuals, it becomes a valuable part of any strategic trading approach—especially when precision timing around liquidity zones is key.
Weekday Colors with Time Highlighting by NabojeetThis script is a Pine Script (version 6) indicator called "Weekday Colors with Time Highlighting" designed for TradingView charts. It has several key functions:
1. **Weekday Color Coding**:
- Assigns different background colors to each trading day (Monday through Friday)
- Allows users to customize the color for each day
- Includes toggles to enable/disable colors for specific days
2. **Time Range Highlighting**:
- Highlights a specific time period (e.g., 18:15-18:30) on every trading day
- Uses a custom color that can be adjusted by the user
- The time range is specified in HHMM-HHMM format
3. **High/Low Line Drawing**:
- Automatically identifies the highest high and lowest low points within the specified time range
- Draws horizontal lines at these levels when the time period ends
- Lines extend forward in time to serve as support/resistance references
- Users can customize the line color, width, and style (solid, dotted, or dashed)
The script is organized into logical sections with input parameters grouped by function (Weekday Colors, Weekday Display, Time Highlighting, and Horizontal Lines). Each section's inputs are customizable through the indicator settings panel.
This indicator would be particularly useful for traders who:
- Want visual distinction between different trading days
- Focus on specific time periods each day (like market opens, closes, or specific sessions)
- Use intraday support/resistance levels from key time periods
- Want to quickly identify session highs and lows
The implementation resets tracking variables at the beginning of each new time range and draws the lines once the time period ends, ensuring accurate high/low marking for each day's specified time window.
Author - Nabojeet
RSI Candlestick Oscillator [LuxAlgo]The RSI Candlestick Oscillator displays a traditional Relative Strength Index (RSI) as candlesticks. This indicator references OHLC data to locate each candlestick point relative to the current RSI Value, leading to a more accurate representation of the Open, High, Low, and Close price of each candlestick in the context of RSI.
In addition to the candlestick display, Divergences are detected from the RSI candlestick highs and lows and can be displayed over price on the chart.
🔶 USAGE
Translating candlesticks into the RSI oscillator is not a new concept and has been attempted many times before. This indicator stands out because of the specific method used to determine the candlestick OHLC values. When compared to other RSI Candlestick indicators, you will find that this indicator clearly and definitively correlates better to the on-chart price action.
Traditionally, the RSI indicator is simply one running value based on (typically) the close price of the chart. By introducing high, low, and open values into the oscillator, we can better gauge the specific price action throughout the intrabar movements.
Interactions with the RSI levels can now take multiple forms, whether it be a full-bodied breakthrough or simply a wick test. Both can provide a new analysis of price action alongside RSI.
An example of wick interactions and full-bodied interactions can be seen below.
As a result of the candlestick display, divergences become simpler to spot. Since the candlesticks on the RSI closely resemble the candlesticks on the chart, when looking for divergence between the chart and RSI, it is more obvious when the RSI and price are diverging.
The divergences in this indicator not only show on the RSI oscillator, but also overlay on the price chart for clearer understanding.
🔹 Filtering Divergence
With the candlesticks generating high and low RSI values, we can better sense divergences from price, since these points are generally going to be more dramatic than the (close) RSI value.
This indicator displays each type of divergence:
Bullish Divergence
Bearish Divergence
Hidden Bullish Divergence
Hidden Bearish Divergence
From these, we get many less-than-useful indications, since every single divergence from price is not necessarily of great importance.
The Divergence Filter disregards any divergence detected that does not extend outside the RSI upper or lower values.
This does not replace good judgment, but this filter can be helpful in focusing attention towards the extremes of RSI for potential reversal spotting from divergence.
🔶 DETAILS
In order to get the desired results for a display that resembles price action while following RSI, we must scale. The scaling is the most important part of this indicator.
To summarize the process:
Identify a range on Price and RSI
Consider them as equal to create a scaling factor
Use the scaling factor to locate RSI's "Price equivalent" Upper, Lower, & Mid on the Chart
Use those prices (specifically the RSI Mid) to check how far each OHLC value lies from it
Use those differences to translate the price back to the RSI Oscillator, pinning the OHLC values at their relative location to our anchor (RSI Mid)
🔹 RSI Channel
To better understand, and for your convenience, the indicator includes the option to display the RSI Channel on the chart. This channel helps to visualize where the scaled RSI values are relative to price.
If you analyze the RSI channel, you are likely to notice that the price movement throughout the channel matches the same movement witnessed in the RSI Oscillator below. This makes sense since they are the exact same thing displayed on different scales.
🔹 Scaling the Open
While the scaling method used is important, and provides a very close view of the real price bar's relative locations on the RSI oscillator… It is designed for a single purpose.
The scaling does NOT make the price candles display perfectly on the RSI oscillator.
The largest place where this is noticeable is with the opening of each candle.
For this reason, we have included a setting that modifies the opening of each RSI candle to be more accurate to the chart's price candles.
This setting positions the current bar's opening RSI candlestick value accurately relative to the price's open location to the previous closing price. As seen below.
🔶 SETTINGS
🔹 RSI Candles
RSI Length: Sets the Length for the RSI Oscillator.
Overbought/Oversold Levels: Sets the Overbought and Oversold levels for the RSI Oscillator.
Scale Open for Chart Accuracy: As described above, scales the open of each candlestick bar to more accurately portray the chart candlesticks.
🔹 Divergence
Show on Chart: Choose to display divergence line on the chart as well as on the Oscillator.
Divergence Length: Sets the pivot width for divergence detection. Normal Fractal Pivot Detection is used.
Divergence Style: Change color and line style for Regular and Hidden divergences, as well as toggle their display.
Divergence Filter: As described above, toggle on or off divergence filtering.
🔹 RSI Channel
Toggle: Display RSI Channel on Chart.
Color: Change RSI Channel Color
Easy MA SignalsEasy MA Signals
Overview
Easy MA Signals is a versatile Pine Script indicator designed to help traders visualize moving average (MA) trends, generate buy/sell signals based on crossovers or custom price levels, and enhance chart analysis with volume-based candlestick coloring. Built with flexibility in mind, it supports multiple MA types, crossover options, and customizable signal appearances, making it suitable for traders of all levels. Whether you're a day trader, swing trader, or long-term investor, this indicator provides actionable insights while keeping your charts clean and intuitive.
Configure the Settings
The indicator is divided into three input groups for ease of use:
General Settings:
Candlestick Color Scheme: Choose from 10 volume-based color schemes (e.g., Sapphire Pulse, Emerald Spark) to highlight high/low volume candles. Select “None” for TradingView’s default colors.
Moving Average Length: Set the MA period (default: 20). Adjust for faster (lower values) or slower (higher values) signals.
Moving Average Type: Choose between SMA, EMA, or WMA (default: EMA).
Show Buy/Sell Signals: Enable/disable signal plotting (default: enabled).
Moving Average Crossover: Select a crossover type (e.g., MA vs VWAP, MA vs SMA50) for signals or “None” to disable.
Volume Influence: Adjust how volume impacts candlestick colors (default: 1.2). Higher values make thresholds stricter.
Signal Appearance Settings:
Buy/Sell Signal Shape: Choose shapes like triangles, arrows, or labels for signals.
Buy/Sell Signal Position: Place signals above or below bars.
Buy/Sell Signal Color: Customize colors for better visibility (default: green for buy, red for sell).
Custom Price Alerts:
Custom Buy/Sell Alert Price: Set specific price levels for alerts (default: 0, disabled). Enter a non-zero value to enable.
Set Up Alerts
To receive notifications (e.g., sound, popup, email) when signals or custom price levels are hit:
Click the Alert button (alarm clock icon) in TradingView.
Select Easy MA Signals as the condition and choose one of the four alert types:
MA Crossover Buy Alert: Triggers on MA crossover buy signals.
MA Crossover Sell Alert: Triggers on MA crossover sell signals.
Custom Buy Alert: Triggers when price crosses above the custom buy price.
Custom Sell Alert: Triggers when price crosses below the custom sell price.
Enable Play Sound and select a sound (e.g., “Bell”).
Set the frequency (e.g., Once Per Bar Close for confirmed signals) and create the alert.
Analyze the Chart
Moving Average Line: Displays the selected MA with color changes (green for bullish, red for bearish, gray for neutral) based on price position relative to the MA.
Buy/Sell Signals: Appear as shapes or labels when crossovers or custom price levels are hit.
Candlestick Colors: If a color scheme is selected, candles change color based on volume strength (high, low, or neutral), aiding in trend confirmation.
Why Use Easy MA Signals?
Easy MA Signals is designed to simplify technical analysis while offering advanced customization. It’s ideal for traders who want:
A clear visualization of MA trends and crossovers.
Flexible signal generation based on MA crossovers or custom price levels.
Volume-enhanced candlestick coloring to identify market strength.
Easy-to-use settings with tooltips for beginners and pros alike.
This script is particularly valuable because it combines multiple features into one indicator, reducing chart clutter and providing actionable insights without overwhelming the user.
Benefits of Easy MA Signals
Highly Customizable: Supports SMA, EMA, and WMA with adjustable lengths.
Offers multiple crossover options (VWAP, SMA10, SMA20, etc.) for tailored strategies.
Custom price alerts allow precise targeting of key levels.
Volume-Based Candlestick Coloring: 10 unique color schemes highlight volume strength, helping traders confirm trends.
Adjustable volume influence ensures adaptability to different markets.
Flexible Signal Visualization: Choose from various signal shapes (triangles, arrows, labels) and positions (above/below bars).
Customizable colors improve visibility on any chart background.
Alert Integration: Built-in alert conditions for crossovers and custom prices support sound, email, and app notifications.
Easy setup for real-time trading decisions.
User-Friendly Design: Organized input groups with clear tooltips make configuration intuitive.
Suitable for beginners and advanced traders alike.
Example Use Cases
Swing Trading with MA Crossovers:
Scenario: A trader wants to trade Bitcoin (BTC/USD) on a 4-hour chart using an EMA crossover strategy.
Setup:
Set Moving Average Type to EMA, Length to 20.
Set Moving Average Crossover to “MA vs SMA50”.
Enable Show Buy/Sell Signals and choose “arrowup” for buy, “arrowdown” for sell.
Select “Emerald Spark” for candlestick colors to highlight volume surges.
Usage: Buy when the EMA20 crosses above the SMA50 (green arrow appears) and volume is high (dark green candles). Sell when the EMA20 crosses below the SMA50 (red arrow). Set alerts for real-time notifications.
Scalping with Custom Price Alerts:
Scenario: A day trader monitors Tesla (TSLA) on a 5-minute chart and wants alerts at specific support/resistance levels.
Setup:
Set Custom Buy Alert Price to 150.00 (support) and Custom Sell Alert Price to 160.00 (resistance).
Use “labelup” for buy signals and “labeldown” for sell signals.
Keep Moving Average Crossover as “None” to focus on price alerts.
Usage: Receive a sound alert and label when TSLA crosses 150.00 (buy) or 160.00 (sell). Use volume-colored candles to confirm momentum before entering trades.
When NOT to Use Easy MA Signals
High-Frequency Trading: Reason: The indicator relies on moving averages and volume, which may lag in ultra-fast markets (e.g., sub-second trades). High-frequency traders may need specialized tools with real-time tick data.
Alternative: Use order book or market depth indicators for faster execution.
Low-Volatility or Sideways Markets:
Reason: MA crossovers and custom price alerts can generate false signals in choppy, range-bound markets, leading to whipsaws.
Alternative: Use oscillators like RSI or Bollinger Bands to trade within ranges.
This indicator is tailored more towards less experienced traders. And as always, paper trade until you are comfortable with how this works if you're unfamiliar with trading! We hope you enjoy this and have great success. Thanks for your interested in Easy MA Signals!
Multitimeframe Fair Value Gap – FVG (Zeiierman)█ Overview
The Multitimeframe Fair Value Gap – FVG (Zeiierman) indicator provides a dynamic and customizable visualization of institutional imbalances (Fair Value Gaps) across multiple timeframes. Built for traders who seek to analyze price inefficiencies, this tool helps highlight potential entry points, unmitigated gaps, and directional bias using smart volume logic and adaptive visual elements.
A Fair Value Gap (FVG) forms when there's a three-candle sequence in which a market imbalance leaves a "gap" between the wicks of candle 1 and candle 3. These areas are often considered footprints of institutional activity, and this indicator gives you the tools to track them with surgical precision across any timeframe you choose—regardless of the one you're viewing.
This indicator also includes a trend filter powered by a low-pass Butterworth filter, enabling traders to distinguish between countertrend vs. trend-aligned FVGs for more intelligent decision-making. On top of that, it features a dynamic FVG table for live tracking and bull/bear volume power visualization inside each gap, adding powerful clarity to market intent.
█ How It Works
The indicator analyzes the open, high, low, close, and volume of candles from a user-selected timeframe. It identifies Fair Value Gaps based on wick logic and only confirms those that meet customizable strength criteria. Once detected, the indicator visualizes each FVG with dynamically extending boxes, optional buy/sell volume bars, and a real-time mitigation check.
⚪ Multitimeframe Logic
Users can analyze FVGs from a higher or lower timeframe regardless of their current chart.
This is achieved using request.security() to fetch OHLCV data from the chosen timeframe.
⚪ Wick Sensitivity & Impulse Filter
The script measures the wick size of potential FVG candles and compares them to a running average. Only FVGs with wick sizes above a certain sensitivity threshold (user-controlled) are plotted. This ensures only meaningful price dislocations (e.g., strong impulsive moves) are shown, reducing noise.
⚪ Midpoint Mitigation Logic
FVGs are marked as "mitigated" when the price revisits the gap area. Traders can choose whether full gap closure or just a midpoint touch is required. This allows faster reactivity in real-time trading environments.
⚪ Bull & Bear Power – Volume-Weighted Visualization
Every Fair Value Gap box includes sub-bars representing the estimated buy and sell effort that created the gap. These are calculated using the candle's close in relation to its high/low range and volume:
Buy Volume % ≈ effort from low to close
Sell Volume % ≈ effort from high to close
Each sub-bar inside the FVG:
Is color-coded (UpCol for bullish, DnCol for bearish)
Is drawn proportionally to the strength of buyers or sellers
Visually displays who was in control during the imbalance
⚪ FVG Table – Dynamic On-Chart Overview
The indicator includes an optional on-chart table that displays all currently active (unmitigated) FVGs in a side panel format:
Automatic updates as gaps are formed and mitigated
Color-coded rows to show bullish vs. bearish FVGs
Timestamps to know precisely when the gap formed
User-controlled position via Table Left and Table Right
This is a gap watchlist overlay, giving traders a concise view of current inefficiencies without manually scanning the chart.
⚪ FVG Trend Filter (Butterworth Smoother)
Using a two-pole Butterworth low-pass filter, the indicator computes a trendline based on average FVG values, offering a smooth but responsive directional signal.
Passband Ripple (dB): Controls sensitivity and overshoot tolerance
Cutoff Frequency (0–0.5): Sets how quickly the trendline reacts
The trendline helps categorize each FVG:
Trend up → favor bullish FVGs
Trend down → favor bearish FVGs
It adds an extra dimension to FVG entries, helping distinguish between trend-aligned and countertrend signals.
█ How to Use
⚪ Identify Institutional Gaps
Use this tool to identify areas where institutions may have left imbalances behind quickly.
These areas often become:
Strong support/resistance zones
Areas where price might react sharply
Targets for liquidity sweeps or retracements
⚪ React to Trend or Countertrend
The built-in trendline helps categorize each FVG:
Trend up → Bullish FVGs have higher validity
Trend down → Bearish FVGs have higher validity
⚪ Volume Context via Bull/Bear Power
Each Fair Value Gap is more than just a price imbalance — it’s a story of effort and intent. The Bull/Bear Power feature visualizes the buy and sell pressure behind each FVG, helping you understand how the gap was formed and who was in control.
A bullish FVG with a strong buy effort suggests continuation potential — buyers dominated the move.
A bullish FVG with a dominant sell effort could signal a trap or reversal — sellers may have overwhelmed the breakout.
These insights allow you to confirm imbalance strength, spot traps early, and add confidence to entries based on dominant volume profiles.
Instead of viewing gaps as static zones, this feature turns each into a live volume map — a visual breakdown of who moved the market and whether that move had conviction.
⚪ Plan with the FVG Table
The FVG Table acts as your on-chart control center for tracking active imbalances. When enabled, it provides a clear summary of all unmitigated Fair Value Gaps, helping you stay organized and focused during fast-moving sessions.
Track live and historical gaps: See exactly when and where each FVG formed.
Monitor older, still-valid zones: Gaps off-screen but not mitigated remain in play — perfect for anticipating future reactions.
Gauge market bias at a glance: The balance of bullish vs. bearish FVGs helps you understand overall directional pressure.
Plan entries confidently: Use the table to reference all zones for risk management, confluence stacking, or layered execution strategies.
Instead of manually scanning your chart, the FVG Table offers a clean, at-a-glance overview of the market’s inefficiencies — giving you the structure needed to act with precision.
█ Settings
FVG Timeframe
Select any timeframe to source FVGs independent of your current chart.
Sensitivity
Filter FVGs by how impulsive the move is — it helps you eliminate weak gaps.
Mitigated on Mid
Control whether gaps are removed at midpoint touch or full fill.
Table Settings
Control the table position and width. Cleanly view all active FVGs.
FVG Style
Customize gap box colors, length, and bullish/bearish overlays.
Trend Filter
Enable or disable the smoothed FVG-based trendline with customizable smoothing controls.
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Math by Thomas FVG📌 Math by Thomas FVG – Fair Value Gap Detector
Overview:
The Math by Thomas FVG indicator automatically detects Fair Value Gaps (FVGs) using a three-candle logic. FVGs represent price inefficiencies where the first candle’s high/low does not overlap with the third candle’s low/high, creating a gap. This tool helps traders identify potential reversal or continuation zones, providing valuable insights into market structure and price action.
🔹 How It Works:
Bullish FVG:
Occurs when the current candle’s low is above the high of the candle two bars ago.
A green-shaded box marks the bullish FVG, highlighting a potential support zone.
Bearish FVG:
Occurs when the current candle’s high is below the low of the candle two bars ago.
A red-shaded box marks the bearish FVG, indicating a potential resistance zone.
Gap Filling Logic:
The indicator automatically removes FVGs once they are filled by price action, keeping the chart clean and relevant.
Bullish FVGs are removed when close ≤ the box's top.
Bearish FVGs are removed when close ≥ the box's bottom.
⚙️ Customization Options:
Bullish FVG Color: Choose the color for bullish FVGs.
Bearish FVG Color: Choose the color for bearish FVGs.
Max Box Count: The indicator dynamically manages up to 50 FVG boxes, ensuring optimal chart performance.
✅ Use Cases:
Identify price inefficiencies for potential entries and exits.
Combine with Order Blocks, support/resistance, or volume analysis for confirmation.
Useful for Smart Money Concept (SMC) and price action traders.
🔥 Enhance your trading accuracy with the Math by Thomas FVG indicator and gain insights into price inefficiencies! 🚀
Trendline Breakout Navigator [LuxAlgo]The Trendline Breakout Navigator indicator shows three trendlines, representing trends of different significance between Swing Points.
Dots highlight a Higher Low (HL) or Lower High (LH) that pierces through the Trendline without the closing price breaking the Trendline.
A bar color and background color option is included, which offers insights into the price against the trendlines.
🔶 USAGE
Trendlines (TL) are drawn, starting as a horizontal line from a Swing Point.
When an HL (in the case of a bullish TL) or an LH (bearish TL) is found, this Swing Point is connected to the first Swing Point. In both cases, the TL can be optimized when one or more historical close prices breach the TL (see DETAILS).
A solid-styled long-term trendline represents the overall market direction, while a dashed-styled medium-term trendline captures medium-term movements within the long-term trend. Finally, a dotted-styled short-term trendline tracks short-term fluctuations.
🔹 Swing Points vs. Trend
A "Higher High" (HH) or "Lower Low" (LL) will initialize a new trendline, respectively, starting from the previous "Swing Low" or Swing High".
To spot the trend shift, "HH/LL" labels and an optional background color are included. They can be enabled/disabled or set at "Long, Medium, or Short" term TL (Settings—"MS", "HH/LL" and "Background Color").
These features are linked to one Trendline of choice only.
Where the "HH/LL" labels can show a potential trend shift, the background color is:
Green from the moment the close price breaks above a bearish trendline or when an HH occurs
Red from the moment the close price breaks below a bullish trendline or when an LL occurs
🔹 Bar Color
The bar color will depend on the location of the closing price against the three trendlines. When a trendline is unavailable (for example, if the close price breaks the TL and there is no HH/LL), the last known trendline value will be considered.
All three trendlines influence the bar color.
If the close price is above the "Long Term" TL, the bar color will show a gradient of green, darker when the close price is below the "Medium Term" and/or "Short Term" TLs.
On the other hand, when the close price is below the "Long Term" TL, the bar color will show a gradient of red, which becomes darker when the close price is above the "Medium Term" and/or "Short Term" TLs.
To keep the above example simple, only the "Long Term" TL is considered. The white line (not included in the script) resembles the actual value of the TL at each bar, where you can see the effect on the bar color.
Combined with the trendlines and dots, the bar color can provide extra depth and insights into the underlying trends.
🔹 Tested Trendlines
If a new HL/LH pierces the Trendline without the close price breaking the Trendline, the Trendline will be updated.
The exact location where the price exceeded the Trendline is visualized by a dot, colored blue on a bullish trendline and orange when bearish.
These dots can be indicative of a potential trend continuation or reversal.
🔹 Higher TimeFrame Option
The "Period" setting enables users to visualize higher-timeframe trendlines as long as the line length doesn't exceed 5000 bars.
🔶 DETAILS
When a new trendline is drawn, the script first draws a preliminary line and then checks whether a historical close price exceeded this line above (in the case of a bearish TL) or below (in a bullish case).
Subsequently, the most valid point in between is chosen as the starting point of the Trendline.
🔶 SETTINGS
Period: Choose "chart" for trendlines from the current chart timeframe, or choose a higher timeframe
🔹 Swing Length
Toggle and Swing Length for three trendlines: Period used for the swing detection, with higher values returning longer-term Swing Levels.
🔹 Style
Trendline: color for bullish/bearish Trendline
Wick Dot: color for bullish/bearish trendline test
Term: Long-, medium- or short-term
HH/LL: Show HH/LL labels (with or without previous Swing High/Low) of chosen Term
Background Color: Green when the closing price is above the trendline of choice, red otherwise
Bar Color