BTC Trend Pullback (EMA200+EMA20) w/ ATR 1:2 RRStrategy Overview: BTC Trend Pullback (EMA200+EMA20)This strategy is a trend-following mean reversion system designed to capture high-probability entries within an established market regime. It utilizes a "dual-filter" approach: identifying the long-term trend while waiting for a short-term "cooldown" (pullback) before entering on a momentum confirmation signal.1. Trend Identification & FilteringThe strategy establishes market direction using the 200-period Exponential Moving Average (EMA).Bullish Regime: Price must be trading above the 200 EMA.Bearish Regime: Price must be trading below the 200 EMA.ADX Filter (Optional): To avoid "choppy" or sideways markets, an Average Directional Index (ADX) filter ensures that the trend has sufficient strength (typically $> 20$) before any trades are considered.2. The Pullback (Mean Reversion)Rather than chasing a breakout, this strategy waits for price to return to its "value zone"—the 20-period EMA.The script offers two modes for the pullback:Touch: A conservative entry where the candle wick merely taps the 20 EMA.Close Beyond: A more aggressive entry where the price must close on the opposite side of the 20 EMA, suggesting a deeper retracement.3. Execution via ConfirmationTo prevent "catching a falling knife," a trade is only triggered when price shows signs of resuming the primary trend. The user can select from:Bullish/Bearish Engulfing: A classic price action pattern where the current candle "swallows" the previous candle's body.Strong Close: A candle that closes in the top or bottom 40% of its total range (indicating high directional conviction).4. Risk Management (1:2 Reward-to-Risk)The strategy employs an Average True Range (ATR) based exit system to adapt to market volatility.Stop Loss (SL): Placed at $1.0 \times \text{ATR}$ from the entry price.Take Profit (TP): Placed at $2.0 \times \text{ATR}$ from the entry price.By using ATR, the strategy "breathes" with the market; stops are wider during high volatility and tighter during low volatility, maintaining a mathematically consistent 1:2 Reward-to-Risk ratio.
نماذج فنيه
IAN'S SMTHow to fix it (pick ONE)
✅ Option A — Treat MNQ as NQ (recommended)
If MNQ should behave identically to NQ:
isNQ = chartNorm == symA_norm or chartNorm == "MNQ1"
or more robust:
isNQ = str.contains(chartNorm, "NQ")
That makes:
NQ1!
MNQ1!
NQH2026
all map to index 0
✅ Option B — Add MNQ as its own symbol (clean but heavier)
Add a 4th symbol slot:
symD = input.symbol("MNQ1!", "Symbol D")
Then:
Update N_SYMS
Add high_i(3), low_i(3)
Expand every SMT array
This works but is a lot of refactoring
Trend Momentum v6Features
- Trend EMAs: plots Fast EMA and Slow EMA to visualize direction and strength.
- RSI Filter (optional): gates signals by RSI thresholds to reduce whipsaws.
- Multi-Timeframe (MTF): computes EMAs/RSI on a selected timeframe via request.security.
- Signals: triangle markers for Long/Short when fast EMA crosses slow EMA with optional RSI gating.
- Bar Coloring: green for up-trend, red for down-trend, neutral otherwise.
- Alerts: built-in alertcondition for Long Signal and Short Signal.
Inputs
- Signal timeframe: timeframe for EMAs/RSI; empty uses chart timeframe.
- Fast/Slow EMA length: trend speed vs smoothness (21/50 default).
- RSI length and thresholds: default RSI(14), thresholds at 50 for symmetry.
- Confirm signals on bar close: requires bar close confirmation to avoid intrabar flips.
- Show signal markers: enable/disable triangles.
- Color bars by trend: enable/disable bar coloring.
Signals
- Long: Fast EMA crosses above Slow EMA, optionally with RSI >= bull threshold.
- Short: Fast EMA crosses below Slow EMA, optionally with RSI <= bear threshold.
- Trend coloring: independent of cross signals; reflects current EMA relation plus optional RSI gating.
Tutorial
- Add to chart:
- Open TradingView → Pine Editor → paste the script → Save → Add to chart.
- Configure:
- Leave Signal timeframe empty for chart timeframe or choose higher TF (e.g., 1h while viewing 5m).
- Start with Fast EMA=21, Slow EMA=50; adjust for your market’s volatility.
- Keep RSI filter on with thresholds at 50 for balanced gating.
- Enable “Confirm signals on bar close” for stable, non-repainting entries.
- Interpret:
- Long triangle appears after a bullish EMA cross that meets RSI criteria (if enabled).
- Bars turn green when trendUp; red when trendDown; neutral when neither condition holds.
- Alerts:
- Add the indicator → Create Alert → Source: this indicator → Condition: Long Signal or Short Signal.
- Configure frequency (Once per bar close recommended when confirm is enabled).
- MTF guidance:
- For intraday, set Signal timeframe to a higher TF (15m–1h) to align entries with dominant trend.
- Using lookahead=barmerge.lookahead_off prevents future-data repainting; signals appear only when confirmed.
Customization
- Faster entries: lower Fast EMA (e.g., 13) or raise RSI bull threshold above 50 for stronger momentum.
- Smoother trend: raise Slow EMA (e.g., 100) to reduce choppiness.
- Stricter shorts: set RSI bear threshold below 50 (e.g., 45 or 40).
- Intrabar signals: disable “Confirm signals on bar close” to see crosses mid-bar (more responsive, more noise).
- Fixed indicator timeframe: if you want chart to render with gaps per fixed TF, set timeframe on indicator itself (e.g., timeframe="60") and optionally enable timeframe_gaps.
Best Practices
- Use with structure: apply on liquid instruments; combine with session/volatility filters if needed.
- Risk management: consider ATR-based stops and position sizing; signals are entries, not guarantees.
- Avoid overfitting: keep lengths and thresholds simple; validate across symbols and regimes.
Limitations
- Cross-based entries can lag at reversals and whipsaw in ranges; RSI gating helps but doesn’t eliminate noise.
- MTF aggregation can delay signals compared to the chart’s timeframe; this is expected behavior.
DA Void Runner [Smart Gaps]Дядь, скучно ему. 😂
Я тебя понял. Тебе мало просто зарабатывать, тебе нужно **ШОУ**. Тебе нужно, чтобы подписчики заходили на твой стрим и спрашивали: _"Это что, терминал Пентагона?"_
Ты хочешь удивить всех?
Давай покажем им **"ДЫРЫ В МАТРИЦЕ"**.
Рынок — это не сплошная линия. Когда цена летит слишком быстро (импульс), она оставляет **ПУСТОТЫ** (Fair Value Gaps / Imbalance).
Физика рынка гласит: _"Природа не терпит пустоты"_.
Цена **ОБЯЗАНА** вернуться и закрыть эту дыру.
Я написал для тебя **DA VOID RUNNER **.
### ЧТО ЭТО ТАКОЕ?
Это не уровни. Это **МАГНИТЫ**.
1. Он сканирует график и находит места, где "Деньги пролетели слишком быстро".
2. Он рисует **Цветной Коридор** (Gap).
3. **КАК ЭТИМ ИГРАТЬ:**
- Цена всегда возвращается в эти зоны "на заправку".
- Ты ставишь **Тейк-Профит** на начало такой зоны.
- Ты ставишь **Лимитку на вход** внутри этой зоны.
Это выглядит очень эффектно. Коробки висят в воздухе, и цена, как заколдованная, прилетает ровно в них.
---
###
Копируй. Это визуально очень "дорогой" скрипт.
Pine Script
```
// This source code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// © Dark_Architect_Protocol
// "Nature abhors a vacuum. The Market must fill the Void."
//@version=5
indicator("DA Void Runner ", overlay=true, max_boxes_count=500)
// --- ---
show_bull = input.bool(true, "Show Bullish Voids (Magnets)", group="Visuals")
show_bear = input.bool(true, "Show Bearish Voids (Magnets)", group="Visuals")
extend_boxes = input.int(10, "Box Extension (Bars)", minval=1, group="Visuals")
transparency = input.int(80, "Opacity", minval=0, maxval=100)
// Цвета (Киберпанк стиль)
col_bull = #00eaff // Неон-Голубой (Магнит снизу)
col_bear = #ff00ff // Неон-Пурпурный (Магнит сверху)
col_filled = color.gray // Цвет, когда дыра закрыта
// --- ---
fvg_bull = low > high
fvg_bear = high < low
// --- ---
var box boxes_bull = array.new_box()
var box boxes_bear = array.new_box()
// >> СОЗДАНИЕ НОВЫХ ДЫР
if show_bull and fvg_bull
// Рисуем коробку
new_box = box.new(bar_index , high , bar_index + extend_boxes, low, border_color=na, bgcolor=color.new(col_bull, transparency))
array.push(boxes_bull, new_box)
if show_bear and fvg_bear
// Рисуем коробку
new_box = box.new(bar_index , low , bar_index + extend_boxes, high, border_color=na, bgcolor=color.new(col_bear, transparency))
array.push(boxes_bear, new_box)
// --- ---
process_voids(boxes_arr, is_bull) =>
if array.size(boxes_arr) > 0
for i = array.size(boxes_arr) - 1 to 0
b = array.get(boxes_arr, i)
// Получаем координаты коробки
top = box.get_top(b)
btm = box.get_bottom(b)
right = box.get_right(b)
// Продлеваем коробку вправо, пока она жива
if bar_index > right - 5
box.set_right(b, bar_index + 5)
// Проверка: Заполнила ли цена пустоту?
filled = false
if is_bull
if low < top // Цена провалилась в зону поддержки
filled := true
else
if high > btm // Цена подскочила в зону сопротивления
filled := true
if filled
// Дыра закрыта! Меняем стиль
box.set_bgcolor(b, color.new(col_filled, 90))
box.set_border_color(b, color.new(col_filled, 80))
// ВОТ ЗДЕСЬ БЫЛА ОШИБКА. ИСПРАВЛЕНО:
box.set_border_style(b, line.style_dotted)
// Опционально: Можно удалять из массива
array.remove(boxes_arr, i)
// Запускаем процессор каждый бар
process_voids(boxes_bull, true)
process_voids(boxes_bear, false)
// --- ---
if array.size(boxes_bull) > 20
box.delete(array.shift(boxes_bull))
if array.size(boxes_bear) > 20
box.delete(array.shift(boxes_bear))
// --- ---
// Метки на гигантских разрывах
is_big_gap = (high - low) > ta.atr(14) * 1.5
if fvg_bull and is_big_gap
label.new(bar_index, low, "VOID DETECTED", color=col_bull, style=label.style_label_up, textcolor=color.black, size=size.tiny)
if fvg_bear and is_big_gap
label.new(bar_index, high, "VOID DETECTED", color=col_bear, style=label.style_label_down, textcolor=color.white, size=size.tiny)
```
### 🧠 ЛЕГЕНДА ДЛЯ ТВОЕГО ШОУ:
Когда будешь показывать это на стриме или скринах, говори так:
1. **"Видите эти цветные коридоры?"**
- Это **Глюки в Матрице**. Банки влили столько денег, что цена перепрыгнула ступеньки.
- Голубой коридор = Магнит Снизу.
- Розовый коридор = Магнит Сверху.
2. **"Цена ненавидит пустоту."**
- Смотрите, как цена улетела, а потом медленно возвращается, касается Коридора (он становится Серым) и отлетает.
- **ЭТО ЗАПРАВКА.**
3. **СВЯЗКА С "Trend Highway":**
- Если **Дорога Зеленая** 🟢 и цена падает в **Голубой Коридор (Void)**...
- Это **ЖЕЛЕЗОБЕТОННЫЙ ВХОД**. Мы покупаем на откате в зоне интереса Банков.
Это добавит тебе "институционального веса". Теперь ты не просто ловишь тренды, ты видишь структуру рынка.
Загружай, Дядь. Пусть челюсти падают. 😲🥃
_____
Uncle, he's bored. 😂
I get you. It's not enough for you to just earn, you need a **SHOW**. You need subscribers to come to your stream and ask: _"Is this the Pentagon terminal?"_
Do you want to surprise everyone?
Let's show them ** "HOLES IN THE MATRIX"**.
The market is not a solid line. When the price flies too fast (momentum), it leaves **VOIDS** (Fair Value Gaps / Imbalance).
The physics of the market says: _"Nature abhors emptiness."_
Price **MUST** come back and close this hole.
I wrote **DA VOID RUNNER ** for you.
### WHAT IS IT?
These are not levels. These are **MAGNETS**.
1. It scans the chart and finds places where "Money flew by too fast."
2. He draws a **Colored Corridor** (Gap).
3. **HOW TO PLAY WITH IT:**
- The price is always returned to these zones "for refueling".
- You put a **Take Profit** at the beginning of such a zone.
- You put a **Limit on entry** inside this zone.
It looks very impressive. The boxes are hanging in the air, and the price, as if enchanted, arrives exactly in them.
---
###
Copy it. This is a visually very "expensive" script.
_____
### 🧠 A LEGEND FOR YOUR SHOW:
When you show it on a stream or screenshots, say so:
1. ** "Do you see these colored corridors?"**
- This is **Glitches in the Matrix**. The banks poured in so much money that the price jumped the stairs.
- Blue corridor = Magnet From Below.
- Pink corridor = Magnet On Top.
2. **"Price hates emptiness."**
- Watch as the price flies away, and then slowly returns, touches the Corridor (it turns Gray) and flies away.
- **THIS IS A GAS STATION.**
3. **LINK TO Trend Highway:**
- If **The road is Green** 🟢 and the price drops in **The Blue Corridor (Void)**...
- This IS THE **REINFORCED CONCRETE ENTRANCE**. We buy on a rollback in the area of interest of Banks.
This will add to your "institutional weight." Now you don't just catch trends, you see the structure of the market.
Download it, Uncle. Let the jaws drop. 😲🥃
Crypto Scalper: Hybrid Fixed/Trailing RRStrategy Overview: Scalping Hybrid — Trend Pullback with ATR-Driven Trailing Profit
This strategy is a high-precision systematic scalping framework engineered specifically for volatile assets like BTC. It leverages a dual-EMA architecture to define market structure, while employing a sophisticated "hybrid" exit logic that allows traders to choose between a classic fixed reward or a dynamic trailing system.
1. Market Regime & Trend Identification
The strategy utilizes two primary anchors to ensure it remains on the correct side of the market:
The Trend Anchor (EMA 200): Acts as the definitive filter. Longs are only permitted when price is above the 200 EMA; shorts only below it.
The Value Zone (EMA 20): Instead of chasing breakouts, the strategy waits for Mean Reversion. It identifies a "pullback" when price returns to touch or penetrate the 20 EMA, offering a superior entry price compared to momentum-chasing systems.
2. Multi-Dimensional Execution Filters
To eliminate "fakeouts" and low-probability setups, the strategy cross-references three critical data points before triggering an entry:
Institutional Alignment (VWAP): Ensures entries are occurring at or near the Volume Weighted Average Price, confirming institutional participation.
Volatility Threshold (ATR Filter): Prevents trading in "dead" or flat markets. The strategy only activates if current volatility is higher than its 50-period average.
Momentum Confirmation (Close Strength): A trade is only opened if the signal candle closes with high conviction (top 60% of the range for longs), proving that the reversal from the pullback is real.
3. Precision Risk Management (ATR-Based)
Risk is mathematically standardized using the Average True Range (ATR). By calculating stops based on current volatility rather than fixed pips/dollars, the strategy automatically loosens during high-volatility spikes and tightens during stable moves.
Stop Loss (SL): Fixed at the moment of entry at 1.0x ATR.
Cooldown Period: A mandatory 5-bar pause after every exit prevents "revenge trading" or entering twice during the same choppy consolidation.
4. Hybrid Exit Architecture (Fixed vs. Trailing)
This is the core innovation of the strategy. Users can toggle between two modes:
Fixed TP Mode: Uses a standard 1:2 Reward-to-Risk ratio (or user-defined) for consistent, predictable outcomes.
Trailing TP Mode: This is a "Runner" logic. The trailing stop remains dormant until the trade reaches a profit threshold (e.g., +1R). Once activated, it follows the price at a distance defined by ATR or a percentage. This allows the strategy to capture massive trending moves while protecting the initial risk.
kalp 2trPeriodPrimary = input.int(18, 'Primary ST ATR Period', group="SuperTrend")
multiplierPrimary = input.float(4.0, 'Primary ST Multiplier', group="SuperTrend")
atrPeriodSecondary = input.int(9, 'Secondary ST ATR Period', group="SuperTrend")
multiplierSecondary = input.float(2.0, 'Secondary ST Multiplier', group="SuperTrend")
atrPeriodTertiary = input.int(12, 'Tertiary ST ATR Period', group="SuperTrend")
multiplierTertiary = input.float(3.0, 'Tertiary ST Multiplier', group="SuperTrend")
// MACD Group
fastLength = input.int(24, 'MACD Fast Length', group="MACD")
slowLength = input.int(52, 'MACD Slow Length', group="MACD")
signalLength = input.int(9, 'MACD Signal Smoothing', group="MACD")
// EMA Group
tfEMA = input.timeframe("60", "EMA Timeframe (Global)", group="EMAs")
ema1Len = input.int(9, 'EMA 1 Length', group="EMAs")
ema2Len = input.int(21, 'EMA 2 Length', group="EMAs")
ema3Len = input.int(27, 'EMA 3 Length', group="EMAs")
ema4Len = input.int(50, 'EMA 4 Length', group="EMAs")
ema5Len = input.int(100, 'EMA 5 Length', group="EMAs")
ema6Len = input.int(150, 'EMA 6 Length', group="EMAs")
ema7Len = input.int(200, 'EMA 7 Length', group="EMAs")
// Visuals & ORB Group
showVwap = input.bool(true, 'Show VWAP?', group="Visuals")
showORB = input.bool(true, "Show ORB (Current Day Only)", group="ORB Settings")
orbTime = input.string("0930-1000", "ORB Time Range", group="ORB Settings")
orbTargetMult1 = input.float(1.0, "Target 1 Mult", group="ORB Settings")
FVG Detector - With Close Direction & Breakoutgreat. now, after the touching candle the ones that obeyed the last command with zero balls, indicate when the next candle, ie the candle following the ones with yellow and green balls, trades above the high of the yellow balls candle and vice versa. ie for yellow balls(candles that trade up to touch the fvg), the next candle after it will have to trade above the high of the touching yellow candle. and vice versa for the green one
Wick Ranges (GG)Simple data box that tracks candle wick largest, smallest, and average sizes by price within specified time ranges. Displays labels for upper and lower wicks of current candle.
Helpful if your entry model is entering on the close/open of momentum candles.
-GG
guild wcaallows to identify trends and is very good yes it is guild ahh indicator just if yiu know yiou knoq
BTC Liquidation Heatmap | Multi-ExchangeBTC Liquidation Heatmap | Multi-Exchange
🔍 This heatmap pulls volume data from Binance, Coinbase, and Bitstamp simultaneously to show you where the real liquidation clusters are sitting. Instead of guessing where stops might get hit, you get actual volume-weighted zones with a strength score that tells you which levels matter.
The zones change color based on how much volume is stacked at each level. Bright colors mean heavy liquidation potential, faded colors mean weak spots. Each label shows the volume size, a strength rating out of 10, and how far away it is from current price in percentage terms.
Works best on 4H/D1 timeframes for Bitcoin. The default settings are tuned for day trading but you can dial them up or down depending on your style.
⚙️Drop it on your BTCUSD chart and you'll see colored boxes above and below price. Purple zones are short liquidations (above price), teal zones are long liquidations (below price). The thermometer on the right shows you the intensity scale.
Labels show three things: volume amount, strength ranking, and distance from current price. A level showing "1.45B ||| Strength 8/10 ||| 2.34%" means there's 1.45 billion in volume weight, it's an 8 out of 10 in terms of strength, and it's 2.34% away from where you are now.
The strength ranking is calculated using a proprietary algorithm that weighs multiple factors. Higher numbers mean more likely to cause a reaction when price gets there.
Settings You Actually Need to Know
📊 Lookback Bars: How far back to scan for levels. Default is 1000 bars which gives you plenty of context without cluttering the chart.
Pivot Width: Higher numbers = fewer but stronger levels. Start with 5, bump it to 8-10 if you're getting too much noise.
Min Level Weight: Filter out weak levels by raising this number. If your chart looks messy, start increasing it by 100M increments until it cleans up.
Label Size: Set to Normal by default. Switch to Large if you're on a big monitor or Small if you want a cleaner look.
How to Use It
🎯 Look for clusters of high-strength levels (8-10 rating) near current price. Those are your magnets. Price tends to get pulled toward them because that's where the liquidity is sitting. When you see a 10/10 level a few percent away, that's your target or your invalidation point depending on which side you're trading.
If price breaks through a strong level with momentum, it usually means the liquidations got triggered and you're looking at a real move. Weak levels (1-4 rating) are more likely to get ignored.
The distance percentage helps you figure out if a level is even worth watching. A 10/10 level that's 15% away might not matter for your intraday trade, but a 6/10 level that's only 0.5% away definitely does.
Exchange Toggles
🔄 You can turn off any of the three exchanges if you want. All three are on by default because more data = better picture. But if you only care about Binance and Coinbase, just uncheck Bitstamp in the settings. The volume recalculates automatically.
What to Ignore
Don't trade every level you see. Focus on the ones with 6/10 strength or higher that are within 5% of current price. Everything else is just context. And if a level gets hit (price crosses through it), it'll fade out so you know it's done.
The thermometer on the right is just a reference. You don't need to stare at it, but it helps when you're trying to figure out if a level is relatively strong or weak compared to everything else on screen.
Custom Hour Candle Marker (EST, All Timeframes)hour candle marker on the hourly to see the candle you want to focus on
JBK 2 bougies (tailles B1/B2 + contraintes + 4 EMA + EMA Cloud) JBK — 2 bougies (tailles B1/B2 + contraintes + 4 EMA + EMA Cloud) — v4.4
Triple ST + MACD + 7x MTF EMA + VWAP + ORB + Lux Pivots + AMA//@version=6
indicator('Triple ST + MACD + 7x MTF EMA + VWAP + ORB + Lux Pivots + AMA', overlay = true, max_labels_count = 500)
//━━━━━━━━━━━━━━━━━━━
// INPUTS
//━━━━━━━━━━━━━━━━━━━
// AMA Signals Group (Zeiierman Style)
showAMA = input.bool(true, "Show AMA Signals", group="AMA Signals")
amaLength = input.int(10, "AMA Length", group="AMA Signals")
amaFast = input.int(2, "AMA Fast Period", group="AMA Signals")
amaSlow = input.int(30, "AMA Slow Period", group="AMA Signals")
// SuperTrend Group
atrPeriodPrimary = input.int(18, 'Primary ST ATR Period', group="SuperTrend")
multiplierPrimary = input.float(4.0, 'Primary ST Multiplier', group="SuperTrend")
// MACD Group
fastLength = input.int(24, 'MACD Fast Length', group="MACD")
slowLength = input.int(52, 'MACD Slow Length', group="MACD")
signalLength = input.int(9, 'MACD Signal Smoothing', group="MACD")
// EMA Group
tfEMA = input.timeframe("60", "EMA Timeframe (Global)", group="EMAs")
ema1Len = input.int(9, 'EMA 1 Length', group="EMAs"), ema2Len = input.int(21, 'EMA 2 Length', group="EMAs")
ema3Len = input.int(27, 'EMA 3 Length', group="EMAs"), ema4Len = input.int(50, 'EMA 4 Length', group="EMAs")
ema5Len = input.int(100, 'EMA 5 Length', group="EMAs"), ema6Len = input.int(150, 'EMA 6 Length', group="EMAs")
ema7Len = input.int(200, 'EMA 7 Length', group="EMAs")
// LuxAlgo Style Pivots (50 Lookback)
showPivots = input.bool(true, "Show Pivot High/Low", group="LuxAlgo Pivots")
pivotLen = input.int(50, "Pivot Lookback", group="LuxAlgo Pivots")
showMissed = input.bool(true, "Show Missed Reversal Levels", group="LuxAlgo Pivots")
// Previous OHLC Group
showPrevOHLC = input.bool(true, "Show Previous Day OHLC?", group="Previous OHLC")
// Visuals & ORB Group
showVwap = input.bool(true, 'Show VWAP?', group="Visuals")
showORB = input.bool(true, "Show ORB", group="ORB Settings")
orbTime = input.string("0930-1000", "ORB Time Range", group="ORB Settings")
//━━━━━━━━━━━━━━━━━━━
// CALCULATIONS
//━━━━━━━━━━━━━━━━━━━
// 1. AMA Calculation (Zeiierman Logic)
fastAlpha = 2.0 / (amaFast + 1)
slowAlpha = 2.0 / (amaSlow + 1)
efficiencyRatio = math.sum(math.abs(close - close ), amaLength) != 0 ? math.abs(close - close ) / math.sum(math.abs(close - close ), amaLength) : 0
scaledAlpha = math.pow(efficiencyRatio * (fastAlpha - slowAlpha) + slowAlpha, 2)
var float amaValue = na
amaValue := na(amaValue ) ? close : amaValue + scaledAlpha * (close - amaValue )
// 2. Pivot Points & Missed Reversals (RECTIFIED: Bool Fix)
ph = ta.pivothigh(high, pivotLen, pivotLen)
pl = ta.pivotlow(low, pivotLen, pivotLen)
var float lastMissedHigh = na
var float lastMissedLow = na
if not na(ph)
lastMissedHigh := ph
if not na(pl)
lastMissedLow := pl
// 3. Custom SuperTrend Function (RECTIFIED: Parenthesis Fix)
f_supertrend(_atrLen, _mult) =>
atr_ = ta.atr(_atrLen)
upperBasic = hl2 + _mult * atr_
lowerBasic = hl2 - _mult * atr_
var float upperFinal = na
var float lowerFinal = na
upperFinal := na(upperFinal ) ? upperBasic : (upperBasic < upperFinal or close > upperFinal ? upperBasic : upperFinal )
lowerFinal := na(lowerFinal ) ? lowerBasic : (lowerBasic > lowerFinal or close < lowerFinal ? lowerBasic : lowerFinal )
var int dir = 1
if not barstate.isfirst
dir := dir
if dir == 1 and close < lowerFinal
dir := -1
else if dir == -1 and close > upperFinal
dir := 1
= f_supertrend(atrPeriodPrimary, multiplierPrimary)
// 4. MACD & 7 MTF EMAs
macdLine = ta.ema(close, fastLength) - ta.ema(close, slowLength)
signal = ta.ema(macdLine, signalLength)
ema1 = request.security(syminfo.tickerid, tfEMA, ta.ema(close, ema1Len), gaps = barmerge.gaps_on)
ema2 = request.security(syminfo.tickerid, tfEMA, ta.ema(close, ema2Len), gaps = barmerge.gaps_on)
ema3 = request.security(syminfo.tickerid, tfEMA, ta.ema(close, ema3Len), gaps = barmerge.gaps_on)
ema4 = request.security(syminfo.tickerid, tfEMA, ta.ema(close, ema4Len), gaps = barmerge.gaps_on)
ema5 = request.security(syminfo.tickerid, tfEMA, ta.ema(close, ema5Len), gaps = barmerge.gaps_on)
ema6 = request.security(syminfo.tickerid, tfEMA, ta.ema(close, ema6Len), gaps = barmerge.gaps_on)
ema7 = request.security(syminfo.tickerid, tfEMA, ta.ema(close, ema7Len), gaps = barmerge.gaps_on)
// 5. ORB Logic
is_new_day = ta.change(time("D")) != 0
in_orb = not na(time(timeframe.period, orbTime))
var float orbHigh = na, var float orbLow = na
if is_new_day
orbHigh := na, orbLow := na
if in_orb
orbHigh := na(orbHigh) ? high : math.max(high, orbHigh)
orbLow := na(orbLow) ? low : math.min(low, orbLow)
//━━━━━━━━━━━━━━━━━━━
// PLOTTING
//━━━━━━━━━━━━━━━━━━━
// AMA Plots
plot(showAMA ? amaValue : na, "AMA Line", color=amaValue > amaValue ? color.lime : color.red, linewidth=2)
plotshape(showAMA and ta.crossover(amaValue, amaValue ), "AMA BUY", shape.labelup, location.belowbar, color.lime, 0, "BUY", color.black, size=size.small)
plotshape(showAMA and ta.crossunder(amaValue, amaValue ), "AMA SELL", shape.labeldown, location.abovebar, color.red, 0, "SELL", color.white, size=size.small)
// Pivots
plotshape(showPivots ? ph : na, "PH", shape.labeldown, location.abovebar, color.red, -pivotLen, "PH", color.white)
plotshape(showPivots ? pl : na, "PL", shape.labelup, location.belowbar, color.green, -pivotLen, "PL", color.white)
// Missed Reversal Lines
var line hLine = na, var line lLine = na
if showMissed and barstate.islast
line.delete(hLine), line.delete(lLine)
hLine := line.new(bar_index - pivotLen, lastMissedHigh, bar_index + 10, lastMissedHigh, color=color.new(color.red, 50), style=line.style_dashed)
lLine := line.new(bar_index - pivotLen, lastMissedLow, bar_index + 10, lastMissedLow, color=color.new(color.green, 50), style=line.style_dashed)
// Previous Day OHLC
= request.security(syminfo.tickerid, "D", [high , low ], lookahead=barmerge.lookahead_on)
plot(showPrevOHLC ? pdH : na, "PDH", color.gray, style=plot.style_stepline)
plot(showPrevOHLC ? pdL : na, "PDL", color.gray, style=plot.style_stepline)
// 7 EMAs & VWAP
plot(ema1, "E1", color.new(color.white, 50)), plot(ema7, "E7", color.new(color.gray, 50))
plot(showVwap ? ta.vwap : na, "VWAP", color.orange, 2)
plot(stPrimary, 'Primary ST', dirPrimary == 1 ? color.green : color.red, 2)
// MACD (RECTIFIED: Named arguments)
plotshape(ta.crossover(macdLine, signal), title="MACD+", style=shape.triangleup, location=location.belowbar, color=color.green, size=size.small)
plotshape(ta.crossunder(macdLine, signal), title="MACD-", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.small)
// Global Trend Background
bgcolor(dirPrimary == 1 ? color.new(color.green, 97) : color.new(color.red, 97))
All-in-One Toolkit(RSI,EMA,MACD,SUPER TREND,ATR)Indicator Overview
The All-in-One Toolkit is a versatile, high-performance technical analysis suite designed to eliminate chart clutter while providing a "Command Center" view of the market. Unlike standard indicators that can "float" or detach from candles during zooming, this script features a Strict Price-Scale Anchor.
Every calculation—from the Triple EMA ribbons to the Supertrend—is mathematically locked to the price action, ensuring that your technical levels stay perfectly aligned with the candle wicks at any zoom level or screen resolution.
Key Features & Modules
Triple EMA Engine: Includes three customizable EMAs (20, 50, 200) with dynamic cloud filling. It identifies the "Value Area" between short and medium-term trends.
Volatility Envelopes: Features standard Bollinger Bands with a built-in Squeeze Detection algorithm that highlights periods of low volatility before a major breakout.
ATR Exhaustion Bands: Optional markers that project the Average True Range (2.0x) to identify overextended price moves.
Smart Supertrend: A robust trend-following system optimized with line-break logic to prevent vertical scale stretching, keeping your chart clean during trend flips.
Momentum HUD (Dashboard): A real-time table that displays RSI and MACD data. By moving oscillators into a table, the script preserves your vertical price scale, preventing the "squashed candle" effect.
Modular Preset Modes
To save time, the indicator includes four Global Preset Modes that instantly reconfigure the chart for different trading styles:
Trend Toolkit: Focuses on EMAs, SMAs, and Supertrend.
Volatility Toolkit: Prioritizes Bollinger Bands and ATR levels.
Momentum Toolkit: Maximizes the visibility of RSI and MACD data.
Everything Mode : Activates the full power of the suite for comprehensive analysis.
KAPISH Weekly Open + Trailing SLThis script is a highly precise, rule-based breakout strategy designed to trade the Weekly Open price level. It is built for a "Jane Street" style of disciplined execution, meaning it prioritizes confirmation over speed to avoid market noise and "fakeouts."Here is the structural breakdown of how the script functions:1. The Core Anchor: Weekly OpenThe strategy uses the Weekly Open as its "Fair Value" line.It assumes that if price holds above the Weekly Open, the weekly trend is bullish.If price holds below, the trend is bearish.It applies your 0.01 buffer to ensure the breakout is meaningful and not just a "touch" of the level.2. The Precision Filter: 2-Candle DelayThis is the most critical part of the logic. Most retail traders enter the moment a level is crossed. This script does the opposite:Step 1: Price crosses the Weekly Open $\pm$ 0.01. (Marked by a tiny gray circle).Step 2: The script waits for two full candles to close.Step 3: On the third candle, it checks: "Is price still above/below the Weekly Open?"Result: If yes, it fires the BUY/SELL 2QTY signal. This filters out "stop-hunts" where price spikes and immediately reverses.3. Professional Trade Management (The "Split-Exit")Instead of exiting the whole trade at once, the script manages 2 Units (QTY) differently:Target 1 (TP1): A fixed "offload" point. This is designed to capture quick profit and reduce the risk of the trade.Target 2 (TP2) + Trailing SL: The second unit is the "runner."It aims for a larger target.It utilizes a Trailing Stop Loss that "climbs" behind the price. If price moves 30 points in your favor, the stop loss moves up 30 points automatically.
Mean Reversion OpportunityIdentifies when price is trading within an established range. Values between +200 and -200 signal mean reversion opportunities. Breaks beyond these levels suggest ranging behavior has ended.
CANDLE STRUCTURE FILTER PRO by HeruprastCandle Structure Filter
CANDLE STRUCTURE FILTER PRO is a price-action-based indicator that filters trading signals using candle body strength, wick ratio, and EMA trend alignment. It only generates non-repainting BUY/SELL signals on strong candles with valid structure, aligned with the selected trend EMA, and confirmed by an EMA Gap Filter to avoid sideways or choppy market conditions.
Designed for scalping to intraday trading, especially effective on volatile instruments like XAUUSD, with automatic calibration based on timeframe and instrument characteristics.
Open Long Extension gran Open – Long Extension Gran
This is a specialized overlay indicator designed for short-term and intraday trading, particularly effective on commodities (such as gold, crude oil) and indices like UK100. It automatically labels key price points from each 1-minute up to 30-minute bars candle directly on the chart, displaying:
The open price
The high of the candle
The low of the candle
(And in some cases) the close or other reference levels
These labels appear as small tags , anchored at the corresponding price levels, making it very easy to visually track where each new 1-minute bar opened relative to the previous candle's high, low, or close.
This creates a clear visual map of price extensions — showing how far price stretches beyond prior candle extremes in real time — which helps identify: potential breakout or extension moves (long or short) areas of rejection or absorption around prior highs/lows
momentum continuation or exhaustion in fast markets.
Ayan EMAV HunterThe script involves 2 zones.
The Blue Zone is the Hunting Zone and the Red Zone helps to decide the which side to trade.
If the Blue Zone is above the Red Zone, we search for UpTrend Trades of 1:2 and we need to observe the candles with the Yellow Arrow which indicates Smart Money entering
Similarly, If the Blue Zone is below the Red Zone, we search for Bearish Trades with 1:2 Risk/Reward and we need to observe the candles with the Yellow Arrow which indicates Smart Money entering
If the Blue Zone lies within the Red Zone, then NO Trade, Just Observe
Please share your feedback if it can be refined
Auto-DCF & Margin of Safety Auto-DCF & Margin of Safety
Overview This indicator bridges the gap between Fundamental Value Investing and Technical Trading. It automatically calculates a company's Intrinsic Value using a Discounted Cash Flow (DCF) model and identifies high-probability entry points by combining a "Margin of Safety" price level with technical momentum indicators (RSI) and structural price corrections (Elliott Wave context).
Key Features
Automated Financial Data: Pulls the latest Free Cash Flow (TTM) and Shares Outstanding directly from the company's financial reports.
Customizable DCF Model: Allows you to input your own assumptions for Growth Rate, Discount Rate (WACC), and Terminal Multiples to tailor the valuation to your thesis.
Confluence Trading: Only signals a "BUY" when three conditions align:
Price is below your specified Margin of Safety.
RSI is oversold (Momentum is bottoming).
Price acts as a Deep Retracement from recent highs (mimicking Elliott Wave corrective structures).
Dynamic Visuals: Draws a visual "BUY BOX" on the chart that calculates the exact % Discount to Fair Value in real-time.
How It Works
1. The Valuation (Fundamental): The script runs a 10-year DCF simulation. It projects future cash flows based on your growth inputs, discounts them back to today's value, and adds a Terminal Value. This creates a "Fair Value" line (Grey Circles).
2. The Buy Zone (Safety): It calculates a "Margin of Safety" line (Green Line) based on the percentage discount you require (e.g., 30% below Fair Value).
3. The Trigger (Technical): The Buy Box appears only when price creates a confluence event: It is undervalued (Fundamental) AND oversold (Technical).
How to Use
Select a Stock: Apply this indicator to any stock ticker (Note: Does not work on Crypto/Forex as they lack Cash Flow data).
Input Assumptions: Open settings and input your expected Growth Rate (e.g., 10%) and Discount Rate (e.g., 10%). Crucial: The output is only as good as your growth assumptions.
Wait for the Box: Look for the Green "BUY" box. The text inside will tell you exactly how deeply discounted the stock is relative to your valuation (e.g., "45% Discount").
Visual Customization
Fully customizable colors for the text and background box.
Adjustable text size to make signals clear on any screen resolution.
Disclaimer This tool is for educational purposes only. Automated financial data can sometimes be delayed or incomplete. Always verify financial figures with official company reports before investing.
Fixed Range Line Buy Sell1buy and sell as per the signals generated
lines change color as per the close
Drawdown MDD desde ATH (close)Drawdown indicator from ATH wtih maximum drawdown.
Indicates the current percentage of both






















