Third eye Strategy v3.1 DogeThird eye • Strategy v3.1 Doge Third eye • Strategy v3.1 Doge Third eye • Strategy v3.1 Doge
Indicators and strategies
krishnadeshmukh/NIFTY50 Micro Sentiment Part 1📘 Script Description: NIFTY50 Micro Sentiment — Part 1
This indicator tracks real-time micro sentiment across the top 25 weighted stocks of the NIFTY50 index using a volume-based distribution model.
🔍 How it works:
Scans last N bars (configurable) for each stock.
Divides each stock’s price range into equal bins.
Measures bullish vs bearish volume in each bin based on:
Candle Color (Close > Open) or
Close Near High (Close > Midpoint).
Assigns a sentiment value:
+1 → Bullish dominance
-1 → Bearish dominance
0 → Neutral
📊 Each stock's sentiment is weighted by its contribution to the index.
🧮 Displays:
Weighted Sentiment Score
Bullish / Bearish / Neutral Components
Updated every 5 bars with an easy-to-read table.
Use this to gauge underlying micro shifts in sentiment before broader market moves.
MACD + Divergence Indicator [Dynamic Filter]Title: MACD + Divergence
Description: This is an enhanced momentum analysis suite based on the classic Moving Average Convergence Divergence (MACD). It addresses the common weakness of the standard MACD—false signals during low-volatility consolidation—by integrating a Dynamic Volatility Filter and a Multi-Timeframe (MTF) Dashboard.
The Problem It Solves: Standard MACD indicators often generate "whipsaw" crossovers when the market is ranging (moving sideways). Traders often struggle to identify these consolidation zones until it is too late. This script solves this by calculating a dynamic "Consolidation Zone" based on Standard Deviation, visually warning traders when momentum is too weak to be reliable.
Key Features:
1. Dynamic Consolidation Filter (The Grey Zone)
The script calculates Upper and Lower bands around the MACD line using Standard Deviation (Volatility).
Grey Fill: When the MACD line is inside the grey bands, the market is in a "Squeeze" or low-volatility consolidation. Crossovers in this zone are often lower probability.
Breakout: When the MACD line exits the bands, it indicates a volatility expansion and a potentially stronger trend.
2. Automated Divergence Detection
Automatically scans for both Regular (Reversal) and Hidden (Continuation) divergences between Price and Momentum.
Bullish: Marked with Green lines/labels.
Bearish: Marked with Red lines/labels.
Customization: You can choose to calculate divergence based on the MACD Line or the Histogram via settings.
3. Multi-Timeframe (MTF) Dashboard
A customizable information table (optional) displays the MACD state across 4 different timeframes (e.g., 15m, 1H, 4H, Daily).
It checks for Trend Alignment (e.g., are all timeframes Bullish?) to help you trade in the direction of the higher timeframes.
4. Enhanced Visuals
4-Color Histogram: Visualizes momentum growing (bright) vs. momentum fading (pale) for both bullish and bearish phases.
Line Highlights: The MACD and Signal lines are clearly distinct, with configurable smoothing options (EMA/SMA).
Settings Guide:
Consolidation Filter: Increase the Dynamic Filter Multiplier (Default: 0.5) to widen the grey zone if you want to filter out more noise.
Oscillator Source: Switch between "MACD Line" or "Histogram" for divergence detection depending on your strategy.
Table: You can toggle the dashboard on/off or change its position to fit your chart layout.
Credits: Base MACD logic derived from standard technical analysis concepts. Dynamic filtering logic adapted from volatility band theories.
Zero Lag MACD and EMA 200 with SignalsZero Lag MACD with EMA Filter and Smart Signals
This indicator is an enhanced version of the traditional MACD that uses Zero Lag EMA calculations to provide faster and more responsive signals for scalping and day trading.
Key Features:
🎯 Zero Lag Technology - Uses double-smoothed EMA calculations to eliminate lag and provide earlier signals compared to standard MACD
📊 Clean Visualization - Displays histogram with MACD and Signal lines for clear trend analysis
🔍 Smart Signal Logic - Only shows valid trading signals based on strict conditions:
Buy Signal (Green dot at bottom): Triggers when price is above 200 EMA AND MACD crosses Signal line from below AND crossover occurs below zero line
Sell Signal (Red dot at top): Triggers when price is below 200 EMA AND MACD crosses Signal line from above AND crossover occurs above zero line
🔔 Built-in Alerts - Easy alert setup for both buy and sell signals so you never miss a trading opportunity
📈 200 EMA Filter - Incorporates trend filter to avoid counter-trend trades and improve signal quality
⚙️ Fully Customizable - Adjust all parameters:
Fast EMA Length (default: 12)
Slow EMA Length (default: 26)
Signal Length (default: 9)
EMA Filter Length (default: 200)
How to Use:
-Add the indicator to your chart
-Look for green dots (buy signals) when price is in an uptrend above 200 EMA
-Look for red dots (sell signals) when price is in a downtrend below 200 EMA
-Set up alerts by clicking "Create Alert" and selecting "Buy Signal" or "Sell Signal"
-Use signals in conjunction with your trading strategy and risk management
Best Practices:
-Works best on 1-15 minute timeframes for scalping
-Combine with support/resistance levels for confirmation
-Use proper stop-loss and take-profit levels
-Not all signals will be profitable - use proper risk management
-Signals are filtered to reduce noise and false entries
Color Scheme:
Histogram: Red (bearish) / Cyan (bullish)
MACD Line: Fuchsia/Pink
Signal Line: Lime/Green
Buy Signal: Green dot (bottom)
Sell Signal: Red dot (top)
This indicator is perfect for traders who want a cleaner, faster-responding MACD with built-in trend filtering and clear entry signals. Free to use and customize!
TrentTrades-Options Momentum & ConfidenceThis indicator calculates a confidence score based on RSI momentum, EMA trend slope, price volatility, and trading volume to identify strong potential entries for options trades. Signals are only generated when momentum, trend, and confidence align, providing clear long (green triangle) and short (red triangle) signals directly on the chart. Fully customizable inputs allow traders to adjust sensitivity for different strategies and timeframes. Perfect for options traders looking for structured, high-probability setups while reducing false signals.
Approved Engulfing - Confirmed Close Triggerengulfing tak respek atau king CMS, guna cs sebelum engulfing ni sebagai area entry, bila prce kembali ke area ini, tunggu rejection baru boleh entry, andai tak ada rejection tak boleh entry
the Engulfing is not respected or fails to hold (King CMS), use the candle prior to this engulfing as your entry area. When price returns to this zone, wait for a clear rejection before entering. If there is no rejection, do not enter the trade."
MTF RSI + Stoch RSI Panel RogmanThis script shows RSI and Stoch RSI values to assist with timing scalps
Dipy the MFT Super OscillatorDipy the MFT Super Oscillator
A multi-timeframe bandpass oscillator for mean-reversion and "buy the dip" strategies.
🎯 What It Does
Isolates market cycles within a specific frequency range to identify overbought/oversold conditions and reversal points.
⏱️ Multi-Timeframe
Set Signal Timeframe to calculate signals on higher TF while viewing lower TF chart. Example: 5min chart + 1H signals = noise reduction with precise timing.
⚙️ Key Settings
Bandwidth/BandEdge: Define the cycle range to capture
Cloud Type: None for thresholds, others for consensus cloud
Thresholds: Overbought/oversold levels for signals
💡 Best Use
Combine with trend indicator (only buy dips in uptrend)
Higher Signal Timeframe = cleaner signals
Cloud mode = more conservative entries
🔔 Alerts
Create ONE alert for all signals.
Derived from TASC 2025.04 Ultimate Oscillator by John Ehlers.
History Trading SessionsThis indicator helps visually structure the trading day by highlighting custom time zones on the chart.
It is designed for historical analysis, trading discipline, and clear separation between analysis time, active trading, and no-trade periods.
Recommended to use on 4h and below time frames.
Tradegrill: Dollar Value TradedTraditional volume shows the number of shares/contracts traded, but it doesn't account for price differences. A $100 stock trading 1 million shares represents far more capital commitment than a $10 stock trading the same amount.
Volume MAs Oscillator | Lyro RS// This Pine Script® code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © LyroRS
//@version=6
indicator("Volume MAs Oscillator | Lyro RS")
import LyroRS/LMAs/1 as DynamicMAs
//─────────────────────────────────────────────────────────────────────────────────────────────────────────────
//─██████─────────████████──████████─████████████████───██████████████───────████████████████───██████████████─
//─██░░██─────────██░░░░██──██░░░░██─██░░░░░░░░░░░░██───██░░░░░░░░░░██───────██░░░░░░░░░░░░██───██░░░░░░░░░░██─
//─██░░██─────────████░░██──██░░████─██░░████████░░██───██░░██████░░██───────██░░████████░░██───██░░██████████─
//─██░░██───────────██░░░░██░░░░██───██░░██────██░░██───██░░██──██░░██───────██░░██────██░░██───██░░██─────────
//─██░░██───────────████░░░░░░████───██░░████████░░██───██░░██──██░░██───────██░░████████░░██───██░░██████████─
//─██░░██─────────────████░░████─────██░░░░░░░░░░░░██───██░░██──██░░██───────██░░░░░░░░░░░░██───██░░░░░░░░░░██─
//─██░░██───────────────██░░██───────██░░██████░░████───██░░██──██░░██───────██░░██████░░████───██████████░░██─
//─██░░██───────────────██░░██───────██░░██──██░░██─────██░░██──██░░██───────██░░██──██░░██─────────────██░░██─
//─██░░██████████───────██░░██───────██░░██──██░░██████─██░░██████░░██───────██░░██──██░░██████─██████████░░██─
//─██░░░░░░░░░░██───────██░░██───────██░░██──██░░░░░░██─██░░░░░░░░░░██───────██░░██──██░░░░░░██─██░░░░░░░░░░██─
//─██████████████───────██████───────██████──██████████─██████████████───────██████──██████████─██████████████─
//─────────────────────────────────────────────────────────────────────────────────────────────────────────────
// LyroRS v1.0
// Groups
ma_g = "𝗠𝗢𝗩𝗜𝗡𝗚 𝗔𝗩𝗘𝗥𝗔𝗚𝗘"
bands_g = "𝗕𝗔𝗡𝗗"
display_g = '𝗗𝗜𝗦𝗣𝗟𝗔𝗬'
// Inputs
// -- Moving Average
source = input.source(close, "Source", group= ma_g, tooltip= "Select where the data originates (open, high, low, close, etc..).")
ma_type = input.string("EMA", "Select Moving Average", options= , group=ma_g, tooltip="Choose a moving average type to apply to the price multiplied by volume. VWMA already incorporates volume directly.")
ma_length = input.int(30, "Moving Average Length", group= ma_g, tooltip= "Defines the length or period of the selected moving average.")
// -- Bands
band_length = input.int(27, "Band Length", group=bands_g, tooltip="Number of bars used to calculate standard deviation.")
band_smoothing = input.float(0.8, "Band Smoothing", group=bands_g, minval=0, tooltip="Smooths the band edges to reduce noise.")
pbm = input.float(1.8, "Positive Band Multiplier", group=bands_g, minval=0, tooltip="Multiplier for the upper band distance.")
nbm = input.float(-0.85, "Negative Band Multiplier", group=bands_g, maxval=0, tooltip="Multiplier for the lower band distance.")
// Color Inputs
signal_type = input.string("Trend", "Select Signal Type", options= , group=display_g, tooltip="Select which way to use the indicator.")
ColMode = input.string("Mystic", "Custom Color Palette", inline="drop", options= , display=display.none, group= display_g, tooltip="Select a predefined color scheme for the indicator display. (Major Themes color mode automatically switches colors based on the major asset you picked for valuation analysis.)")
cpyn = input.bool (true, "Use Custom Palette", group= display_g, display=display.none, tooltip="Enables custom color selection for signals.")
cp_UpC = input.color (#00ff00, "Custom Up", inline = "Custom Palette", group= display_g, display=display.none, tooltip="")
cp_DnC = input.color (#ff0000, "Custom Down", inline = "Custom Palette", group= display_g, display=display.none, tooltip="User specifed bullish and bearish colors.")
d_obos_sigs = input.bool (true, "Display Oversold/Overbought Signs", group= display_g, display=display.none, tooltip="Enables triangle signs to be displayed.")
d_signs = input.bool (true, "Display Signs", group= display_g, display=display.none, tooltip="Enables signs for Trend mode.")
d_bgcol = input.bool (true, "Display Background Color", group= display_g, display=display.none, tooltip="Enables background color for Reversion & Valuation mode.")
// Colors
color UpC = na
color DnC = na
// -- Predefined Colors
switch ColMode
"Classic" =>
UpC := #00E676
DnC := #880E4F
"Mystic" =>
UpC := #30FDCF
DnC := #E117B7
"Accented" =>
UpC := #9618F7
DnC := #FF0078
"Royal" =>
UpC := #FFC107
DnC := #673AB7
// -- Custom Colors
if cpyn
UpC := cp_UpC
DnC := cp_DnC
// Coloring Function for Valuation
coloring(src) =>
color.from_gradient(src, ta.lowest(src, band_length), ta.highest(src, band_length), UpC, DnC)
// Moving Average Switch
float ma = na
switch ma_type
"SMA" => ma := DynamicMAs.SMA(source * volume, ma_length) / DynamicMAs.SMA(volume, ma_length)
"EMA" => ma := DynamicMAs.EMA(source * volume, ma_length) / DynamicMAs.EMA(volume, ma_length)
"WMA" => ma := DynamicMAs.WMA(source * volume, ma_length) / DynamicMAs.WMA(volume, ma_length)
"VWMA" => ma := DynamicMAs.VWMA(source, volume, ma_length) // Already Volume Based MA
"DEMA" => ma := DynamicMAs.DEMA(source * volume, ma_length) / DynamicMAs.DEMA(volume, ma_length)
"TEMA" => ma := DynamicMAs.TEMA(source * volume, ma_length) / DynamicMAs.TEMA(volume, ma_length)
"RMA" => ma := DynamicMAs.RMA(source * volume, ma_length) / DynamicMAs.RMA(volume, ma_length)
"HMA" => ma := DynamicMAs.HMA(source * volume, ma_length) / DynamicMAs.HMA(volume, ma_length)
"LSMA" => ma := DynamicMAs.LSMA(source * volume, ma_length, 0) / DynamicMAs.LSMA(volume, ma_length, 0)
"SMMA" => ma := DynamicMAs.SMMA(source * volume, ma_length) / DynamicMAs.SMMA(volume, ma_length)
"ALMA" => ma := DynamicMAs.ALMA(source * volume, ma_length, 0, 20) / DynamicMAs.ALMA(volume, ma_length, 0, 20)
"ZLSMA" => ma := DynamicMAs.ZLSMA(source * volume, ma_length) / DynamicMAs.ZLSMA(volume, ma_length)
"FRAMA" => ma := DynamicMAs.FRAMA(source * volume, ma_length) / DynamicMAs.FRAMA(volume, ma_length)
"KAMA" => ma := DynamicMAs.KAMA(source * volume, ma_length) / DynamicMAs.KAMA(volume, ma_length)
"JMA" => ma := DynamicMAs.JMA(source * volume, ma_length, 0) / DynamicMAs.JMA(volume, ma_length, 0)
"T3" => ma := DynamicMAs.T3(source * volume, ma_length, 0.5) / DynamicMAs.T3(volume, ma_length, 0.5)
price_diff = ((source - ma) / ma) * 100 // Percentage Difference between Source and the Moving Average of the source
// Calculations for the Bands
std = ta.stdev(price_diff, band_length)
upperBandRaw = std * pbm
lowerBandRaw = std * nbm
var float upperBand = na
var float lowerBand = na
// Smooth
upperBand := upperBandRaw * band_smoothing + nz(upperBand ) * (1 - band_smoothing)
lowerBand := lowerBandRaw * band_smoothing + nz(lowerBand ) * (1 - band_smoothing)
// Plot Color
var color pc = na
var color uB_color = na
var color lB_color = na
var int signal = 0
if signal_type == "Trend"
uB_color := UpC
lB_color := DnC
if price_diff > upperBand
pc := UpC
signal := 1
if price_diff < lowerBand
pc := DnC
signal := -1
if signal_type == "Reversion"
uB_color := DnC
lB_color := UpC
if price_diff > upperBand
pc := DnC
signal := -1
else if price_diff < lowerBand
pc := UpC
signal := 1
else
pc := color.gray
signal := 0
if signal_type == "Valuation"
uB_color := UpC
lB_color := DnC
pc := coloring(price_diff)
// Plot
plot(price_diff, color= pc, linewidth = 2, title= "Volume MAs Oscillator")
plot(upperBand, color= color.new(uB_color, 50), title= "Upper Band")
plot(lowerBand, color= color.new(lB_color, 50), title= "Lower Band")
plot(0, color= color.new(pc, 60), linewidth = 2, display= display.pane, title= "Mid Line")
plot(0, color= color.new(pc, 75), linewidth = 5, display= display.pane, title= "Mid Line Glow 1")
plot(0, color= color.new(pc, 85), linewidth = 10, display= display.pane, title= "Mid Line Glow 2")
plotchar(upperBand + 0.5, char='▼', color= ta.crossunder(price_diff, upperBand) ? DnC : na, location=location.absolute, title= "Overbought Signal", display= d_obos_sigs ? display.pane : display.none, size= size.tiny)
plotchar(lowerBand - 0.5, char='▲', color= ta.crossover(price_diff, lowerBand) ? UpC : na, location=location.absolute, title= "Oversold Signal", display= d_obos_sigs ? display.pane : display.none, size= size.tiny)
reversion_enable = signal_type == "Reversion"
valuation_enable = signal_type == "Valuation"
bgcolor(d_bgcol and ((valuation_enable and price_diff > upperBand) or (reversion_enable and ta.crossunder(price_diff, upperBand))) ? color.new(DnC, 85) : na, title= "BG Color OB")
bgcolor(d_bgcol and ((valuation_enable and price_diff > upperBand) or (reversion_enable and ta.crossunder(price_diff, upperBand))) ? color.new(DnC, 85) : na, title= "BG Color OB Overlay", force_overlay = true)
bgcolor(d_bgcol and ((valuation_enable and price_diff < lowerBand) or (reversion_enable and ta.crossover(price_diff, lowerBand))) ? color.new(UpC, 85) : na, title= "BG Color OS")
bgcolor(d_bgcol and ((valuation_enable and price_diff < lowerBand) or (reversion_enable and ta.crossover(price_diff, lowerBand))) ? color.new(UpC, 85) : na, title= "BG Color OS Overlay", force_overlay = true)
plotshape(ta.crossover(signal, 0), title="Buy Signal", location=location.belowbar,
style=shape.labelup, text="𝓛𝓸𝓷𝓰", textcolor=#000000, size=size.small,
color=UpC, force_overlay=true, display= signal_type == "Trend" and d_signs == true ? display.pane : display.none)
plotshape(ta.crossunder(signal, 0), title="Sell Signal", location=location.abovebar,
style=shape.labeldown, text="𝓢𝓱𝓸𝓻𝓽", textcolor=#000000, size=size.small,
color=DnC, force_overlay=true, display= signal_type == "Trend" and d_signs == true ? display.pane : display.none)
plotcandle(open, high, low, close, color= pc, wickcolor = pc, bordercolor = pc, force_overlay = true, display= display.pane, title= "Plot Candle")
barcolor(pc, title= "Barcolor")
// ==========================================================================================
// === Dashboard with Telegram Link ===
var table myTable = table.new(position.top_center, 1, 1, border_width=1, frame_color=color.black, bgcolor=color.white)
// Add Telegram Message to Dashboard
table.cell(myTable, 0, 0, "Join Telegram @mrexpert_ai", bgcolor=color.blue, text_color=color.white, text_size=size.normal)
VWAP based long only- AdamMancini//@version=6
indicator("US500 Levels Signal Bot (All TF) v6", overlay=true, max_labels_count=500, max_lines_count=500)
//====================
// Inputs
//====================
levelsCSV = input.string("4725,4750,4792.5,4820", "Key Levels (CSV)")
biasMode = input.string("Auto", "Bias Timeframe", options= )
emaLen = input.int(21, "Bias EMA Length", minval=1)
rsiLen = input.int(14, "RSI Length", minval=1)
atrLen = input.int(14, "ATR Length", minval=1)
proxATR = input.float(0.35, "Level Proximity (x ATR)", minval=0.05, step=0.05)
slATR = input.float(1.30, "SL (x ATR)", minval=0.1, step=0.05)
tp1ATR = input.float(1.60, "TP1 (x ATR)", minval=0.1, step=0.05)
tp2ATR = input.float(2.80, "TP2 (x ATR)", minval=0.1, step=0.05)
useTrend = input.bool(true, "Enable Trend Trigger (Break & Close)")
useMeanRev = input.bool(true, "Enable Mean-Reversion Trigger (Sweep & Reclaim)")
showLevels = input.bool(true, "Plot Levels")
//====================
// Bias TF auto-mapping
//====================
f_autoBiasTf() =>
sec = timeframe.in_seconds(timeframe.period)
string out = "240" // default H4
if sec > 3600 and sec <= 14400
out := "D" // 2H/4H -> Daily bias
else if sec > 14400 and sec <= 86400
out := "W" // D -> Weekly bias
else if sec > 86400
out := "W"
out
biasTF = biasMode == "Auto" ? f_autoBiasTf() :
biasMode == "H4" ? "240" :
biasMode == "D" ? "D" :
biasMode == "W" ? "W" : "Off"
//====================
// Parse levels CSV + plot lines (rebuild on change)
//====================
var float levels = array.new_float()
var line lvlLines = array.new_line()
f_clearLines() =>
int n = array.size(lvlLines)
if n > 0
// delete from end to start
for i = n - 1 to 0
line.delete(array.get(lvlLines, i))
array.clear(lvlLines)
f_parseLevels(_csv) =>
array.clear(levels)
parts = str.split(_csv, ",")
for i = 0 to array.size(parts) - 1
s = str.trim(array.get(parts, i))
v = str.tonumber(s)
if not na(v)
array.push(levels, v)
f_drawLevels() =>
f_clearLines()
if showLevels
int n = array.size(levels)
if n > 0
for i = 0 to n - 1
lv = array.get(levels, i)
array.push(lvlLines, line.new(bar_index, lv, bar_index + 1, lv, extend=extend.right))
if barstate.isfirst or levelsCSV != levelsCSV
f_parseLevels(levelsCSV)
f_drawLevels()
// Nearest level
f_nearestLevel(_price) =>
float best = na
float bestD = na
int n = array.size(levels)
if n > 0
for i = 0 to n - 1
lv = array.get(levels, i)
d = math.abs(_price - lv)
if na(bestD) or d < bestD
bestD := d
best := lv
best
//====================
// Bias filter (higher TF) - Off supported
//====================
bool biasBull = true
bool biasBear = true
if biasTF != "Off"
b_close = request.security(syminfo.tickerid, biasTF, close, barmerge.gaps_off, barmerge.lookahead_off)
b_ema = request.security(syminfo.tickerid, biasTF, ta.ema(close, emaLen), barmerge.gaps_off, barmerge.lookahead_off)
b_rsi = request.security(syminfo.tickerid, biasTF, ta.rsi(close, rsiLen), barmerge.gaps_off, barmerge.lookahead_off)
biasBull := (b_close > b_ema) and (b_rsi > 50)
biasBear := (b_close < b_ema) and (b_rsi < 50)
//====================
// Execution logic = chart timeframe (closed candle only)
//====================
atr1 = ta.atr(atrLen)
rsi1 = ta.rsi(close, rsiLen)
c1 = close
c2 = close
h1 = high
l1 = low
// Manual execution reference: current bar open (next-bar-open proxy)
entryRef = open
lvl = f_nearestLevel(c1)
prox = proxATR * atr1
nearLevel = not na(lvl) and (math.abs(c1 - lvl) <= prox or (l1 <= lvl and h1 >= lvl))
crossUp = (c2 < lvl) and (c1 > lvl)
crossDown = (c2 > lvl) and (c1 < lvl)
sweepDownReclaim = (l1 < lvl) and (c1 > lvl)
sweepUpReject = (h1 > lvl) and (c1 < lvl)
momBull = rsi1 > 50
momBear = rsi1 < 50
buySignal = nearLevel and biasBull and momBull and ((useTrend and crossUp) or (useMeanRev and sweepDownReclaim))
sellSignal = nearLevel and biasBear and momBear and ((useTrend and crossDown) or (useMeanRev and sweepUpReject))
//====================
// SL/TP (ATR-based)
//====================
slBuy = entryRef - slATR * atr1
tp1Buy = entryRef + tp1ATR * atr1
tp2Buy = entryRef + tp2ATR * atr1
slSell = entryRef + slATR * atr1
tp1Sell = entryRef - tp1ATR * atr1
tp2Sell = entryRef - tp2ATR * atr1
//====================
// Plot signals
//====================
plotshape(buySignal, title="BUY", style=shape.labelup, text="BUY", location=location.belowbar, size=size.tiny)
plotshape(sellSignal, title="SELL", style=shape.labeldown, text="SELL", location=location.abovebar, size=size.tiny)
//====================
// Alerts (Dynamic) - set alert to "Any alert() function call"
//====================
if buySignal
msg = "US500 BUY | TF=" + timeframe.period + " | Bias=" + biasTF +
" | Lvl=" + str.tostring(lvl) +
" | EntryRef=" + str.tostring(entryRef) +
" | SL=" + str.tostring(slBuy) +
" | TP1=" + str.tostring(tp1Buy) +
" | TP2=" + str.tostring(tp2Buy)
alert(msg, alert.freq_once_per_bar_close)
if sellSignal
msg = "US500 SELL | TF=" + timeframe.period + " | Bias=" + biasTF +
" | Lvl=" + str.tostring(lvl) +
" | EntryRef=" + str.tostring(entryRef) +
" | SL=" + str.tostring(slSell) +
" | TP1=" + str.tostring(tp1Sell) +
" | TP2=" + str.tostring(tp2Sell)
alert(msg, alert.freq_once_per_bar_close)
TASC 2026.01 The Reversion Index█ OVERVIEW
This script implements the Reversion Index as presented by John F. Ehlers in the January 2026 edition of the TASC Traders' Tips , "Identifying Peaks And Valleys In Ranging Markets”. This indicator was created to provide timely buy and sell signals for mean reversion strategies.
█ CONCEPTS
Ehlers came up with the idea for the Reversion Index following the development of the "Continuation Index" (featured in the September 2025 edition). While the Continuation Index provides indications for trend onset, continuation, and exhaustion; the Reversion Index serves as its counterpart for mean-reversion trading.
The raw Reversion Index value is calculated as the net change in price normalized to the sum of the absolute value of change in price over the same period; for clarity, it is then smoothed using Ehlers' SuperSmoother.
The Smooth Reversion Index value is led by a "Trigger" line, which is created by smoothing the raw data to half the smoothing period of the smoothed index.
Note: Ehlers suggests the smoothing lengths be left at 8 and 4 (Reversion Index & Trigger). For this reason these lengths are hard-coded in the script but can be easily modified in the code.
█ USAGE
In order to identify peaks and valleys effectively, the "Length" should ideally be set to half of that of the expected cycle of the data. If the expected cycle of your trading data is 20 bars, a 10 bar length should be set.
Note: The Reversion Index is intended to identify peaks and valleys within a cycle, not over a large sample period. Ehlers suggests that this would create an estimation of trend, which is not the goal here.
Once the length is set, peaks and valleys are interpreted as the cross of the "Trigger" and "Smooth" lines.
A program written by a beginner# TXF Choppy Market Detector (Whipsaw Filter)
## Introduction
This project is a technical indicator developed in **Pine Script v5**, specifically optimized for **Taiwan Index Futures (TXF)** intraday trading.
The TXF market is known for its frequent periods of low-volatility consolidation following sharp moves, often resulting in "whipsaws" (double-loss scenarios for trend followers). This script utilizes **volatility analysis** and **trend efficiency metrics** to filter out noise and detect potential "Stop Hunting" or "Liquidity Sweep" setups within range-bound markets.
## Methodology & Algorithms
The strategy operates on the principle of **Mean Reversion**, combining two core components:
### 1. Market Regime Filter: Choppiness Index (CHOP)
We use the Choppiness Index (originally developed by E.W. Dreiss) to determine if the market is trending or consolidating based on **Fractal Dimension** theory.
* **Logic**:
The index ranges from 0 to 100. Higher values indicate low trend efficiency (consolidation), while lower values indicate strong directional trends.
* **Condition**: `CHOP > Threshold` (Default: 50).
* **Application**: When this condition is met, the background turns **gray**, signaling a "No-Trade Zone" for trend strategies and activating the Mean Reversion logic.
### 2. Whipsaw Detection: Bollinger Bands
Bollinger Bands are used to define the dynamic statistical extremities of price action.
* **Logic**:
We identify **Fakeouts** (False Breakouts) that occur specifically during the choppy regime identified above. This is often where institutional traders hunt for liquidity (stops) before reversing the price.
#### Signal Algorithms (Pseudocode)
**A. Bull Trap (Washout High)**
A false upside breakout designed to trap long traders.
```pine
Condition:
1. Is_Choppy == true (Market is sideways)
2. High > Upper_Bollinger_Band (Price pierces the upper band)
3. Close < Upper_Bollinger_Band (Price fails to hold and closes back inside)
Tamil, Buy/Sell Signal for Day Trade and Swing TradeTamil – Buy/Sell Signal for Day Trade and Swing Trade is a price-action style indicator that prints Long and Short signals and automatically projects a full trade plan on the chart: Entry (EP), Stop-Loss (SL), and up to 5 Take-Profit levels (TP1–TP5).
It combines multiple momentum/overextension filters (Keltner Channel bands, CCI, ROC, RSI, Parabolic SAR, and Balance of Power) to detect oversold dips for longs and overbought spikes for shorts. When a signal triggers, the script:
• Draws a signal label showing EP/SL/TP1–TP5 values.
• Plots step lines for EP, SL, and TP levels so you can manage the trade visually.
• Marks TP hits and Stop hits with shapes + background highlights.
• Includes a 200-length DEMA plot for higher-timeframe trend context (optional visual filter).
How signals work (high level):
• Long Signal: price pushes below a deeper Keltner lower band (mean-reversion setup) + bearish momentum extremes (CCI/BOP/ROC) with SAR/median conditions confirming a dip setup.
• Short Signal: price pushes into upper Keltner expansion + bullish momentum extremes (CCI/RSI/ROC) with SAR/median conditions confirming a spike setup.
Best use: intraday scalps or swing entries where you want clear, pre-defined levels for scaling out (TP1→TP5) and strict risk control (SL).
Note: This is an indicator (not a strategy backtest). Always validate on your instrument/timeframe and use risk management
UT Bot + SMC PRO (PROP) + VISUAL SIGNALS-DE ALEJANDRO PONCEHOW TO USE THEM TOGETHER (GOLDEN RULE)
Reading Sequence
UT → without B Bounce / pullback
B → without UT Weak break
UT → B (same direction) ✅ Valid setup
UT ↔ Opposite Bs Noise / range
Goldbach Timing Model This indicator is designed as a simple visual framework rather than a rigid signal system. It highlights time-based structure and key alignment zones to help identify when price behavior is more likely to be active or responsive. The logic is intentionally flexible, allowing the user to apply their own discretion instead of relying on strict conditions. Its primary value is visual clarity and context, not automatic entries or exits.
Yearly VWAPIn this update, I’ve enhanced the Yearly VWAP script so that it now works reliably on all timeframes starting from the 5-minute chart and higher. Previously, the monthly reset logic caused inconsistencies on lower timeframes. Now, the indicator uses a yearly reset based on the calendar year, ensuring stable and accurate VWAP calculations without issues.
In short, you can confidently apply this Yearly VWAP to any timeframe from 5 minutes upwards and get consistent results.
QuantLabs The MTF Nasdaq 30 Scanner [Capital Flow and Pressure]Trading the QQQ (Nasdaq) without knowing what the Generals (Apple, Nvidia, Microsoft) are doing is like driving at night with your headlights off. You might see the road right in front of you, but you'll miss the turn coming up.
The QuantLabs MTF Nasdaq 30 Scanner is not just a trend indicator, it is a professional-grade Market Dashboard that visualizes the heartbeat of the entire Nasdaq 100.
Why You Need This
Standard indicators lag. They tell you what happened after the move. This Heatmap tracks the Real-Time Capital Flow of the Top 30 companies that actually move the index ($Trillions in Market Cap).
Key Features
1. The "Spectacular" Precision Heatmap
Organized by Market Cap Size (AAPL/NVDA first).
Instantly spot divergent behavior. Is the market rallying, or is it just Nvidia holding everything up? The Heatmap reveals the truth instantly.
Colors: Neon Cyan (Bullish) vs Hot Pink (Bearish).
2. Triple Spectrum Technology (3-in-1 Timeframes) Why look at one timeframe when you can see three? Every cell in the dashboard displays the trend distance for:
8h (Fast): For scalping entries.
16h (Mid): For swing trends.
24h (Slow): For the major "Big Picture" bias.
Values denote % distance from the Flux Ribbon.
3. The "Net Pressure" Gauge (The Speedometer) A predictive summary footer that calculates the Weighted Pressure of the entire market.
HEAVY (> 0.5%): Strong Trend / Breakout Mode.
MODERATE (0.2% - 0.5%): Healthy, sustained move.
FLAT: Chop / Noise. Stay out.
It also shows exactly how much Capital ($Trillions) is sitting Bullish vs Bearish.
How to Trade with It
Check the "Net Pressure": If it says MODERATE BULLISH, you are looking for Longs only.
Scan the Top Row: Are the "Big 5" (AAPL, NVDA, MSFT...) aligned with the pressure?
Wait for Alignment: If the 8h, 16h, and 24h metrics all turn Cyan, that is a "Quantum Lock"—a high probability breakout signal.
Simple. Powerful. Neon. Add it to your chart and stop guessing the direction.
Credits: Built with 💜 by David James @ QuantLabs
USD Liquidity Regime for BTC Perps (Dual) V1USD Liquidity Regime for BTC Perps (Dual)
This intents to be a BTC Perps USD Liquidity Regime macro indicator.
As it names states it is designed for BTCUSDT perpetual futures traders.
It attempts to tracks USD strength (DXY, UUP, yields, VIX composite) as liquidity proxy:
Lower index = weak USD = Risk-On (green background/histogram = long tailwind for BTC).
Higher = strong USD = Risk-Off (red = caution longs, shorts favor).
How to use:
Green background/histogram: Favor longs — rallies likely, dips bought.
Red: Caution longs — corrections hurt, short bias possible.
Blue line (index) vs red SMA: Crosses signal regime shifts.
Histogram strength: Bigger bars = stronger bias.
This is not intended as financial advise or trigger signal tool.
This is a work in progress
Its value is limited, if you do not understand any or some of the words above please do not use this indicator. If you did, then you understand you are not supposed to use this alone to make decisions.
Feel free to ask any questions, this is a work in progress.
Feel free to suggest improvements.
Educational macro context tool — not signals/advice.
Ok for avoiding going against the USD trend dominance by following liquidity.
By @frank_vergaram






















