ICT Entry V1 [TS_Indie]📌 Description – ICT Entry V1
This trading system is based on price action, combined with FVG, iFVG, and liquidity, and it uses the mechanism from the indicator “Smallest Swing ” to validate swings that become liquidity.
⚙️ Core Logic & Working Mechanism
I won’t explain FVG in detail, as most traders are already familiar with it.
Let’s focus on the mechanism of iFVG instead.
The concept of iFVG is based on a supply-to-demand flip and a demand-to-supply flip within an FVG zone.
For an iFVG to be confirmed, the candle close must break through the FVG.
A wick alone does not count as a valid iFVG confirmation.
The confirmation of market structure swings uses a pivot length mechanism combined with price action.
It validates a swing by detecting a structure break formed by candles making new highs or new lows.
📈 Buy Setup
1.Liquidity sweep on the demand side, with price closing above the liquidity level.
2.A demand zone is formed as FVG and iFVG, where iFVG is located above FVG.
3.The gap between the upper box of FVG and the lower box of iFVG must be within the defined Min and Max range.
4.Market Structure must be in a Bullish trend.
5.Place a Pending Order at the upper box of FVG and set Stop Loss at the lower box of FVG (Entry and Stop Loss can be adjusted using Entry Zone and ATR-based Stop Loss).
📉 Sell Setup
1.Liquidity sweep on the supply side, with price closing below the liquidity level.
2.A supply zone is formed as FVG and iFVG, where iFVG is located below FVG.
3.The gap between the lower box of FVG and the upper box of iFVG must be within the defined Min and Max range.
4.Market Structure must be in a Bearish trend.
5.Place a Pending Order at the lower box of FVG and set Stop Loss at the upper box of FVG (Entry and Stop Loss can be adjusted using Entry Zone and ATR-based Stop Loss).
⚙️ Liquidity Sweep Conditions
➯ When a liquidity sweep occurs on the demand side, the system will start looking for Buy Setup conditions.
➯ When a liquidity sweep occurs on the supply side, the system will immediately switch to looking for Sell Setup conditions.
➯ The system will always prioritize the most recent liquidity sweep and search for setups based on that direction.
➯ The liquidity sweep condition will be invalidated when price closes back below (for demand sweep) or above (for supply sweep) the most recently swept liquidity level.
⭐ Pending Order Cancellation Conditions
A Pending Order will be canceled under the following conditions:
1.A new Price Action signal appears on either the Buy or Sell side.
2.When Time Session is enabled, the Pending Order is canceled once price exits the selected session.
🕹 Order Management Rule
When there is an active open position, the indicator restricts the creation of new Pending Orders to prevent overlapping positions.
⚠️ Disclaimer
This indicator is designed for educational and research purposes only. It does not guarantee profits and should not be considered financial advice. Trading in financial markets involves significant risk, including the potential loss of capital.
🥂 Community Sharing
If you find parameter settings that work well or produce strong statistical results, feel free to share them with the community so we can improve and develop this indicator together.
Indicators and strategies
ORB with Range Context📌 What This Indicator Does
This indicator plots the Opening Range (OR) — the high and low established during a user-defined session window at market open — and provides context on the range's significance by comparing it to recent volatility.
After the opening range session completes, the indicator displays:
• ORB High and Low as horizontal reference levels
• Optional Midline (often acts as intraday support/resistance)
• Target projections at customizable multiples when breakout occurs
• Range Quality classification (Narrow / Normal / Wide)
🔬 How It Works
Step 1: Opening Range Capture
During the session window (default: 09:15–09:20 IST for Indian markets), the indicator tracks the highest high and lowest low. These become the day's Opening Range boundaries.
Step 2: Range Quality Analysis
This is where this indicator differs from standard ORB tools. It compares today's range to the instrument's Average True Range (ATR) and classifies it:
• NARROW — Range is less than 0.5× ATR
Interpretation: Price compression. The market opened in a tight range relative to recent volatility. Compression often precedes expansion — breakouts from narrow ranges can be more directional.
• NORMAL — Range is between 0.5× and 1.2× ATR
Interpretation: Typical opening behavior. Standard breakout expectations apply.
• WIDE — Range is greater than 1.2× ATR
Interpretation: The market opened with unusual volatility — possibly due to gaps, news events, or overnight developments. Wide ranges may indicate that much of the day's move has already occurred.
Step 3: Breakout Detection
A breakout is confirmed when price closes beyond the ORB High or Low (not just wicks through). The indicator tracks the first breakout direction each day.
Step 4: Target Projection
On confirmed breakout, targets are calculated using the ORB range as the measurement unit:
• Target 1 = Breakout Level ± (Range × 1.0)
• Target 2 = Breakout Level ± (Range × 1.5)
• Target 3 = Breakout Level ± (Range × 2.0)
⚙️ Settings Guide
Opening Range Settings
• ORB Session Window — Time window for capturing the range. Default: 0915-0920 (first 5 min for NSE/BSE) or 0915-10:00(first 45 mins for NSE/BSE. US Markets: 0930-0935 or 0930-0945.
• Show Midline — Toggle the range midpoint display
Target Projection
• Target 1/2/3 (x Range) — Multipliers for profit targets. Default values (1.0, 1.5, 2.0) follow classical ORB methodology.
Range Quality Analysis
• ATR Period — Lookback for ATR calculation (default: 14)
• Narrow Threshold — Ranges below this ATR multiple are classified as narrow (default: 0.5)
• Wide Threshold — Ranges above this ATR multiple are classified as wide (default: 1.2)
📈 How to Use This Indicator
1. Apply to an intraday chart (1-min to 5-min recommended)
2. Wait for the ORB session to complete — levels appear after the time window ends
3. Check Range Quality in the info panel
4. Watch for breakout confirmation — price must close beyond ORB High or Low
5. Use projected targets for trade management
💡 Practical Tips
• Narrow Range Days: Often produce cleaner breakout trades. Tight opening suggests indecision that typically resolves directionally.
• Wide Range Days: If range exceeds 1.5× ATR, consider whether the instrument has already made its daily move.
• Midline Usage: After breakout, the midline often acts as a pullback level for re-entry or confirmation.
📊 Why Range Quality Matters
Most ORB indicators plot static levels without context. A 100-point range on NIFTY might be significant on a quiet day but trivial on a volatile day.
By normalizing against ATR, this indicator answers: "Is today's opening range tight or loose relative to what this instrument normally does?"
This helps traders:
• Calibrate profit expectations
• Assess risk appropriately
• Avoid mechanical trading without market context
🔔 Alerts Available
• ORB Bullish Breakout
• ORB Bearish Breakout
• Target 1 Hit
• Target 2 Hit
⚠️ Notes
• Works on intraday timeframes only
• Best suited for liquid instruments with defined opening sessions
• Range Quality is contextual guidance, not a standalone signal
• Always use appropriate risk management
Ultimate Auto Trendlines Improved No lag, No Repaint with TableA major update - cleanest, most accurate non-repainting trendline tool.
What's new in this version:
• Connects MULTIPLE recent pivots (not just consecutive) → stronger, more reliable levels
• Solid lines extended far right → instant future S/R projection
• Built-in table (top-right): Price + EMA 10/20/50 (Above/Below) + MACD (Bull/Bear) + RSI (Bull/Bear) + ADX (Strong/Weak)
• Alerts for new trendlines — get notified the moment a fresh level forms
• Optional "R"/"S" pivot labels — clean visual swing confirmation
• Max 8 lines total → keeps your chart readable and focused
Why traders are adding this right now:
• 100% non-repainting – safe for live entries & alerts
• 80–85%+ touch/bounce rate in trending markets (SPY/QQQ/NASDAQ daily & 4H backtests)
• Angle filter kills flat/noise lines
• Works killer on stocks, indices, forex majors, crypto
Best settings to start:
Pivot Left/Right: 5/5
Min Angle: 12–15°
Max Trendlines: 8
Line Extension: 100–200 bars
Show Labels: On
Want the latest updates, settings tweaks, or new versions first?
Please Follow me on X → @TrendRiderPro1
Drop a like/favorite/comment if you add it – I read every one and reply to as many as I can.
Any feedback (bugs, ideas, your best settings) is super welcome!
Happy trading – let’s catch those clean bounces & big moves! 🚀📈
If you add it, drop a like/favorite/comment — I read every one and reply to as many as I can.
Any feedback (settings, bugs, ideas) is super welcome — helps me keep improving it.
Happy trading — let’s catch those clean bounces & big moves! 🚀
Hap Mum Formasyonu - Candlestick PatternsThis indicator is a comprehensive tool that automatically scans for popular Candlestick Patterns on symbols you select and displays the results in a table on your screen.
Unlike standard scanners, this script allows you to create 10 Different Custom Watchlists. You can add up to 20 symbols to each list and switch between lists via the settings menu to see instant scanning results.
🚀 Key Features
10 Custom Lists: Organize your portfolio into groups (e.g., Indices, Crypto, Forex). Each list holds 20 symbols.
Trend Filter: Patterns are validated based on the trend direction, not just the candle shape. Bullish patterns are searched in downtrends, and Bearish patterns in uptrends.
Option 1: Is Price above/below SMA 50?
Option 2: Price relative to SMA 50 & SMA 200 alignment.
Visual Table: Bullish signals are shown in the Green box, Bearish signals in the Red box.
Flexible Settings: You can toggle specific patterns on/off and change the trend detection method.
📊 Supported Patterns & Legend
Abbreviations used in the dashboard:
Bullish Signals:
DD: Dragonfly Doji
H: Hammer
IH: Inverted Hammer
EB: Engulfing Bullish
MS: Morning Star
MDS: Morning Doji Star
P: Piercing Line
HB: Harami Bullish
TWS: Three White Soldiers
Bearish Signals:
GD: Gravestone Doji
HM: Hanging Man
SS: Shooting Star
EB: Engulfing Bearish
ES: Evening Star
EDS: Evening Doji Star
HB: Harami Bearish
TBC: Three Black Crows
DCC: Dark Cloud Cover
🛠 How to Use?
Add the indicator to your chart.
Open Settings.
Select a list from "Which List Do You Want to Scan?" (e.g., List 1).
Enter your ticker symbols into the corresponding group fields below (LIST 1, LIST 2...).
Click OK, and the table will update with the signals.
Disclaimer: This tool is for educational purposes only. Candlestick patterns do not guarantee future market movements. Always manage your risk.
Price Action Assistant V2All in One Assistant for Price Action Traders
1-Calculates and Displays the Opening Gap Relative to ADR.
2-Information Table Showing Yesterday’s and Today’s Range Plus Average Bar Range.
3-Displays Micro-Gaps (Fair Value Gaps).
4-Advanced Bar Numbering With an Option to Display at Custom Intervals, Using 9 or 12 Bar Color Multiples to Visualize the Closure of 45-Minute or 60-Minute Candles on an M5 Chart.
5-Plots Previous High, Low, and Close Levels Plus the Current Session Open.
6-Displays a 3-Bar Micro Channel in the Same Direction.
7-Includes Two Different Moving Averages.
8-Displays the Daily Date and Day-of-Week Label for Easy Journaling and Chart Archiving.
Institutional Alpha Vector | D_QUANTInstitutional Alpha Vector | D_QUANT
Overview
The Institutional Alpha Vector (IAV) is an enterprise-grade composite trend ecosystem designed to identify high-probability institutional order flow. Unlike standard indicators that rely on a single data point, the IAV synthesizes Price Action, Momentum Physics, Volatility Regimes, and Volume Flow into a single, unified Alpha Vector.
This tool is not merely a signal generator, it is a market regime filter. It visualizes the consensus of four distinct quantitative models through a sophisticated "Electric Conduit" rendering engine, allowing traders to visualize the strength, direction, and volatility of the current trend instantly.
The Quantitative Engine
The IAV constructs its signal by calculating a weighted consensus across four distinct modules. These modules work in synergy to filter out noise and highlight sustained institutional moves.
MODULE 1 :: PRICE_FILTER : A highly responsive Hull Moving Average that serves as the "Spine" of the trend, reducing lag while maintaining smoothness.
MODULE 2 :: VOLATILITY_REGIME : A dynamic envelope that adjusts to market noise. This creates the "Conduit" width—expanding during high-volatility expansion and contracting during consolidation.
MODULE 3 :: MOMENTUM_PHYSICS : A directional movement filter that ensures signals are only generated when trend strength exceeds a specific threshold (default: 20).
MODULE 4 :: INSTITUTIONAL_FLOW : A volume-weighted money flow engine that confirms if price movement is supported by actual volume (Smart Money participation).
The Alpha Vector
The core of this system is the Alpha Vector calculation. The indicator normalizes the outputs of all active modules into a composite score between -1.0 (Strong Bearish Consensus) and +1.0 (Strong Bullish Consensus).
Bullish Entry: When the Alpha Vector crosses above the Long Threshold (Default: 0.1).
Bearish Entry: When the Alpha Vector crosses below the Short Threshold (Default: -0.1).
Neutral/Cash: When the consensus is weak or conflicting, the ribbon turns Grey/Flat, advising the trader to remain on the sidelines.
// ==========================================
// 3. SIGNAL AGGREGATION
// ==========================================
calc_composite_matrix() =>
_hma = calc_hma_series(hma_src, hma_len)
_hma_sig_v = 0
if ta.crossover(close, _hma)
_hma_sig_v := 1
else if ta.crossunder(close, _hma)
_hma_sig_v := -1
_adx_sig_v = calc_adx_state(adx_len, adx_thresh)
_cmf_sig_v = calc_cmf_state(cmf_len)
_rma_sig_v = calc_rma_filter_state(hma_src, lookback, atr_len)
var int s_hma = 0
var int s_adx = 0
var int s_cmf = 0
var int s_rma = 0
if _hma_sig_v != 0
s_hma := _hma_sig_v
if _adx_sig_v != 0
s_adx := _adx_sig_v
if _cmf_sig_v != 0
s_cmf := _cmf_sig_v
if _rma_sig_v != 0
s_rma := _rma_sig_v
= request.security(syminfo.ticker, "D", calc_composite_matrix(), lookahead=barmerge.lookahead_on)
float alpha_score_num = 0.0
int alpha_score_den = 0
if use_hma
alpha_score_num += d_hma
alpha_score_den += 1
if use_adx
alpha_score_num += d_adx
alpha_score_den += 1
if use_cmf
alpha_score_num += d_cmf
alpha_score_den += 1
if use_rma
alpha_score_num += d_rma
alpha_score_den += 1
alpha_vector = alpha_score_den > 0 ? alpha_score_num / alpha_score_den : 0.0
Visual Intelligence: The "Electric Conduit"
The visualization logic uses a Differential Gradient Model to represent market energy:
The Spine (Core): The solid, bright center line represents the immediate trend direction.
The Conduit (Fill): The gradient fill represents the Volatility Regime.
Thick/Wide Ribbon: High Volatility (Expansion Phase).
Thin/Tight Ribbon: Low Volatility (Contraction/Squeeze Phase).
Bar Coloring: Native bar coloring is integrated to instantly align price action with the Alpha Vector, removing the need for mental processing.
Settings
The indicator is fully customizable via a "Compute-Style" configuration menu:
MODULES: Toggle specific engines (HMA, ADX, CMF, RMA) on or off to adapt the Alpha Vector to your specific asset class (Crypto, Forex, or Indices).
THRESHOLDS: Adjust sensitivity for Long/Short entries.
VISUALS: Customize the "Core" and "Edge" colors to match your charting theme.
“Alpha is not about predicting the future. It is about aligning with the mathematical consensus of the present.” — D_QUANT
Adaptive Bull Ratio Strategy█ Overview: Why This Strategy
Most option strategies fall into two traps:
They are too rigid: A "Call Ratio Spread" works great in slow markets but gets destroyed if the market rallies hard.
They are too simple: A simple "Buy Call" suffers from time decay (Theta) if the market chops sideways.
The Adaptive Bull Ratio Strategy solves both . It is a living strategy that "shifts gears" based on price action.
It is called "Adaptive" because it morphs its structure three times during a trade. It starts conservative to harvest Time Decay, but if the market explodes upwards, it "uncaps" itself to ride the trend aggressively.
█ The Entry Philosophy: Why Supertrend?
The default setting uses the Supertrend indicator as the trigger. This is intentional:
Volatility Awareness: Supertrend adapts to market noise using ATR. In high volatility, bands widen to prevent false entries.
Trend Confirmation: Since Phase 1 involves selling options, entering "too early" against a falling market is dangerous. Supertrend forces patience, waiting for a confirmed reversal (Close > Trend Line), ensuring the momentum is actually in your favor before you commit capital.
The "Drift" Benefit: This strategy excels in markets that "drift" upwards. Supertrend identifies these trends while filtering out short-term chop.
Flexibility with External Sources:
While Supertrend is the default, the strategy is designed to be flexible. You can enable the 'Enable External Source' option in the settings to plug in any custom indicator (e.g., Moving Averages, Parabolic SAR, or a proprietary trendline).
The Golden Rule for External Sources: The script interprets a Bullish Signal whenever your External Source line is below the Close price (Ext Source < Close).
Compatibility: As long as your custom indicator behaves like a support line in an uptrend (plotting below the candles), it will work seamlessly with this strategy's logic.
█ The "Long Only" Rationale: Avoiding the Volatility Trap
Why not trade this on the short side (Puts) during crashes?
The Volatility Trap (Vega Risk): In Bull markets, Implied Volatility (IV) usually drops, helping your sold options decay faster. In Bear markets, IV explodes (panic). Selling OTM Puts during a crash is dangerous as their value skyrockets, neutralizing gains.
Velocity Risk: Bear markets crash fast ("Elevator Down"). Prices can blow through adjustment levels faster than the strategy can safely roll down, causing slippage.
Structural Skew: OTM Puts are inherently more expensive. Buying expensive ITM Puts and selling expensive OTM Puts shifts the breakeven further away, making V-shape recoveries painful.
█ How It Works & Stands Out
This strategy actively transforms risk profiles based on market movement:
Phase 1: The "Safe" Start (Entry)
Setup: Initiates a Call Ratio Spread (Buy 2 ITM, Sell 4 OTM) + Protective Puts.
Logic: Profits from sideways drift or slow rallies via Time Decay (Theta). The sold options finance the trade.
Phase 2: The "Shift" (Adjustment Level 1)
Trigger: Market moves above Leg 2 (3 OTM Call).
Action: Rolls Up the position. Exits initial legs, enters new higher legs, and adds a Short Put to finance the roll.
Impact: Aggressive. You bet the trend is strong enough to support the added downside risk of the short put.
Phase 3: The "Uncap" (Adjustment Level 2)
Trigger: Market moves above Leg 3 (4 OTM Call).
Action: Exits all Sold Calls.
Impact: Uncaps profit potential. The trade becomes a Net Long position (Long Calls + Short Puts), allowing you to ride a massive rally without a ceiling.
Phase 4: The "Lock-In" (Optional Trail Adjustment)
Trigger: The market goes parabolic (price rises X levels above Leg 3, configurable in settings).
Action (If Enabled):
Call Adj: Exits the Phase 3 calls and buys fresh 1-OTM calls (Rolling Up to lock profits).
Put Adj: Exits all Put legs (Removing downside risk completely).
Impact: Maximum Safety. This phase is about "banking" the windfall from a massive rally and leaving a smaller, risk-free runner to capture any final extension.
█ How to Start: A Quick Setup Guide
Step 1: Map Expiry Dates
Manually input your trading expiry dates in Settings -> Expiry Management.
Format: YYYY-MM-DD (e.g., 2025-12-25). Strict adherence required for DhanHQ.
Step 2: Configure Symbol & Size
Exchange/Symbol: Enter NSE and NIFTY (or your ticker).
Lot Multiplier: Default is 1. Set to 2 to double all quantities (e.g., Buy 2 becomes Buy 4).
Step 3: Understand Visuals
Entry Window (Light Blue): Strategy is scanning for new trades.
Non-Entry Window (Dark Blue): Trading blocked (Day before Expiry & Expiry Day). Only management allowed.
Green Box: Valid Late Entry Zone.
Red Dashed Line: Invalidation Level (if price touches this, no late entry).
Fuchsia Line: Trigger level for Special Trail Adjustments (Phase 4).
IMPORTANT: Broker & Technology Heads-Up:
The alerts generated by this script ({"secret": "...", "alertType": "multi_leg_order"...}) are specifically formatted for the DhanHQ webhook structure.
Dhan Users: Plug-and-play.
Other Brokers: You need middleware (NextLevelBot, Quantiply) to parse the JSON.
█ Risk Disclaimer & Advice
Trading options involves substantial risk.
The Whipsaw Risk: In Phase 2, you are Long Calls and Short Puts. A sharp reversal causes losses on both sides.
Margin: Selling options requires significant margin. Keep a 15-20% cash buffer to handle adjustments instantly.
Testing: This strategy is optimized for NIFTY Weekly Options. Effectiveness on BankNifty or Stocks is untested and may require parameter tuning.
Advice:
Backtest: Use TradingView Replay.
Paper Trade: Run for at least one expiry cycle before live deployment.
Consult: Seek professional financial advice before trading.
Practical Tips for Smooth Execution
For a new trader deploying this system, these operational tips are vital:
Capital Buffer: Do not trade at your limit. Always keep 10-15% free cash in your broker account. Adjustments (specifically Phase 2, where you sell an extra Put) require additional margin instantly. If margin is short, the order fails, and your hedge breaks.
Liquidity Awareness : The script trades "Far Deep OTM" options (Leg 4) to reduce margin. On indices like Nifty/BankNifty, this is fine. On individual stocks, these deep strikes might be illiquid. Check the option chain volume before deploying on stocks.
Trust the Process (but Verify) : While the algo drives, you are the pilot.
Check your API connection every morning.
Ensure the "Entry Window" background color on the chart matches your real-world date.
Verify that your broker executed all legs of a multi-leg order (partial fills are rare but possible).
The "Human" Stop: If major news breaks (e.g., unexpected election results, war announcements), volatility can expand faster than any algo can react. It is acceptable—and smart—to pause the strategy during known "Black Swan" events or earnings releases.
█ Timeframe Selection: The 30-Minute Standard
Critical Requirement: This indicator must be applied to a 30-minute chart.
Why?
Noise Filtering: The Supertrend logic is tuned to capture multi-day trends. Lower timeframes (5m, 15m) are full of "noise"—random fluctuations that look like trend changes but aren't.
Execution Logic (The Hybrid Engine): The script has a built-in "Dual Timeframe" architecture.
Decision Layer (30m): Uses the chart timeframe to decide when to be Bullish or Bearish.
Execution Layer (5m): Internally fetches 5-minute data to manage the how (Adjustments, Late Entries, and precise invalidation).
The Risk of Lower Timeframes: If you run the main chart on 5-minutes, you destroy this hierarchy. You will get too many signals, pay too much brokerage, and the internal logic may behave erratically.
Recommendation: Always keep your TradingView chart interval at 30m. Do not switch to lower timeframes expecting "faster" signals; you will likely just get "false" signals.
█ Testing Scope, Feedback
⚠️ Important Note on Asset Classes:
This strategy logic and the associated strike step calculations have been rigorously tested ONLY on NIFTY Index Options with Weekly Expiry.
BankNifty / Sensex / FinNifty: The volatility characteristics (ATR) and strike intervals of these instruments differ significantly from NIFTY. The effectiveness of this strategy on these other scripts has not been verified and may require different parameter tuning (e.g., strike_step or ATR Length).
Stocks: Individual stock options often lack the liquidity required for the "Deep OTM" legs, leading to potential execution failures.
We encourage traders to backtest this logic on other indices and share their findings! If you find a robust parameter set for BankNifty or observe unique behaviors on other scripts, please let us know in the comments below so we can improve the algorithm for everyone. Your feedback is appriciated.
ATR Momentum StatusThis indicator measures whether volatility (ATR) is increasing or decreasing, and classifies momentum strength into four clear states:
- WEAK
- STRONG
- EXPANSION
- DECREASING
It helps traders avoid fake moves and only trade when real participation enters the market, especially when used together with FVG CE Acceptance (SMC).
ATR Momentum States (Very Important)
Status Meaning Market Condition
WEAK Small ATR increase Low participation
STRONG Healthy ATR increase Real buyers/sellers entering
EXPANSION Large ATR spike Aggressive momentum / breakout
DECREASING ATR falling Momentum dying / trap risk
What This Indicator Is NOT
❌ Not a buy/sell signal
❌ Not direction bias
❌ Not entry by itself
👉 It is a trade quality filter
✅ Best Use Case (SMC / FVG Traders)
This indicator shines when combined with:
- FVG
- CE (Consequent Encroachment)
- Liquidity Sweep
- Acceptance Candle
Important Risk Filter (Golden Rule):
ATR Status Trade Quality
EXPANSION + Acceptance ⭐⭐⭐⭐⭐ (Best)
STRONG + Acceptance ⭐⭐⭐⭐
WEAK + Acceptance ❌ Avoid
DECREASING ❌ No Trade
Why This Works (Conceptually):
- FVG CE acceptance = price is accepted
- ATR expansion = participation is real
- Together = institutional momentum, not retail noise
Price Action TrendPrice Action Trend measures trend *strength* by modelling where price sits inside a smoothed price-action channel, then applying RSI to that “channel position”. It doesn’t predict, but shows what price is doing now.
This indicator uses the same calculations as my old "Price Action Trend Overlay" script, which I'd published Protected for some forgotten reason. Some users have asked for the source code, so I'm republishing it as open source. I've also tidied up the code a bit, added some visualisations of elements that were present but never drawn, such as the PA channels themselves, drawn the trend metric in a separate pane, added alerts, and made some more configuration options available.
🟩 HIGHLIGHTS
⭐ Trend colouring on the main chart.
⭐ A trend line drawn in its own pane.
⭐ Overbought/oversold markers on the main chart, derived from the same PA calculations.
⭐ Optional “Price Average” line and channel colouring.
🟩 WHAT’S UNIQUE ABOUT THE TREND CALCULATION
Most “trend RSI” tools run RSI on close, or on some moving average of price.
This script runs RSI on a *normalised* price-action series:
- We build a smoothed channel from RMA(high) and RMA(low).
- We normalise price against that channel (relative to the channel midpoint and width).
- We run RSI on that normalised series (default 14, but optionally matched to the Trend Lookback Period).
Using highs and lows instead of close or OHLC4 makes the trend value sensitive to *range shape* and *asymmetry* (big wicks, uneven extremes), not just the centre of the candle.
As compared to a simple RSI (also included simply for comparison), this PA Trend tends to decay faster and recovers faster.
🟩 HOW TO USE IT (PRACTICAL)
⭐ Trend pane
- Treat the line as a measure of *trend strength*, not a prediction.
- Neutral zone = trend is not convincingly bullish or bearish.
- Strong moves away from neutral = “trend has conviction”.
⭐ Overbought / oversold markers
Overbought/oversold doesn’t mean “reversal right now”.
It means the *rate of directional change* is unsustainably strong.
- Overbought in an uptrend: trend is overheating. Tighten long stops; expect rest/retrace/reversal once overheating ends.
- Oversold in an uptrend: the countertrend down is likely exhausting. Potential “buy the dip” context.
- Reverse the above for downtrends.
This works on any market, any timeframe. Lower timeframes will be choppier.
Don’t trade these signals blindly; use market structure, S/R, and your other tools.
🟩 SETTINGS (OVERVIEW)
🟦 Settings
- Pane Plot Mode: choose whether the pane shows Trend or Overbought/Oversold series.
- Trend Lookback Period: channel smoothing for the trend model (higher = smoother, lower = faster).
- Show Overbought & Oversold Shapes: show/hide the triangles on the main chart.
- Overbought/sold Lookback Period: channel smoothing for OB/OS detection (lower = more sensitive).
- Overbought/sold Adaptive Length: smoothing for the dynamic OB/OS levels (lower = more adaptive).
🟦 Display
- Transparency for the candle colour: bar colour transparency (Gradient mode).
- Trend Colour Mode: Classic vs strength-based Gradient.
🟦 Price Average
- Show Price Average: show/hide the OHLC4 average price line.
- Lookback: length for the price average.
- Smoothing: SMA / EMA / RMA.
- Colour Channel by Price Average: neutral/green/red channel colouring depending on whether the price average is inside/above/below the channel.
🟦 Advanced
- Trend Upper/Lower Neutral Threshold: neutral zone bounds (also used by the dynamic OB/OS logic).
- PA RSI Length: choose Fixed (14) or match the Trend Lookback Period.
- Show RSI (close): optional “reference RSI” plot with length.
🟩 ALERTS
There are built-in alert conditions for this indicator:
- Overbought PA Trend: triggers when the PA overbought condition is true.
- Oversold PA Trend: triggers when the PA oversold condition is true.
- Trend flips up: triggers when the trend changes from down to up (ignores any intervening neutral bars).
- Trend flips down: triggers when the trend changes from up to down (ignores any intervening neutral bars).
- Lost overbought: triggers on the first red candle after the overbought condition ends (set this alert on close to avoid false alerts).
- Lost oversold: triggers on the first green candle after the oversold condition ends (set this alert on close to avoid false alerts).
🟩 REPAINTING / CALCULATION NOTES
According to my understanding, this indicator does not repaint (it does not go back and alter closed bars).
However, while the current candle is forming, values that depend on the current price will update in real time. Once the candle closes, they are fixed.
The overbought/oversold calculations use Williams fractal-style confirmation logic, which cannot be known until some bars afterwards.
This affects when the OB/OS levels update, but new confirmations only affect future calculations, not the past.
🟩 CREDITS
The idea for using smoothed highs/lows to create a price-action channel came from my humble trading mentor. All the code is my own.
🟩 DISCLAIMER
No indicator is a substitute for knowing what you’re doing.
By using this indicator you agree that it might not do what you or anyone else expects.
You retain full responsibility for your trading at all times.
Before trading with actual money, first make sure your risk management is professional-level.
Smart Signals [Vdubus]Smart Signals
Concept & Philosophy
Smart Signals is a "Regime-Filtered" oscillator designed to solve the biggest problem with standard indicators: Counter-trend noise.
Most oscillators (like Stochastic or RSI) are "dumb" to market context—they will signal "Sell" continuously during a strong uptrend simply because the price is high. Smart Signals fixes this by first determining the Market Regime (Bullish or Bearish) and then strictly filtering out any signal that contradicts that trend.
It creates a "Tiered" trading system that separates standard trend-following entries from high-probability "Sniper" entries (Hidden Divergence), all presented in a clean, color-blind-friendly visual interface.
Core Functions
1. The "Sheriff" (Trend Filter)
At the heart of the indicator is a heavy, modified Hull Moving Average (HMA 200) that acts as the trend baseline.
Bullish Regime: When the baseline is sloping UP, the indicator enters "Buy Only" mode. All Sell signals are mathematically deleted.
Bearish Regime: When the baseline is sloping DOWN, the indicator enters "Sell Only" mode. All Buy signals are mathematically deleted.
The Math: It uses a custom difference-weighted formula (wmaHalf = Length / 1) to create a stable, chop-resistant trend anchor.
2. Dual-Signal Engine
The indicator scans for two distinct types of entries simultaneously:
♦ Standard Signals (Blue/Red Diamonds):
Logic: A classic Stochastic pullback (Cross 20/80) aligned with the trend.
Use Case: These are frequent "Bread and Butter" trend entries. They are excellent for scaling into a position or adding to a winner as the trend continues.
Location: Plotted at the top (Sell) and bottom (Buy) edges of the panel.
+ Sniper Signals (Gold Crosses):
Logic: Hidden Divergence. The script detects when Price holds structure (Higher Low) while Momentum resets (Lower Low). This is a "Slingshot" setup.
Use Case: These are rare, high-conviction entries. They often mark the end of a complex correction and the resumption of the main trend.
Location: Plotted on the Zero Line to indicate structural strength.
3. Smart Momentum Histogram
The histogram visualizes the "Energy" of the move (MACD 21, 34, 7), but with a twist. It is color-coded to the signal priority:
Gold Bars: A Sniper (Divergence) setup is active.
Solid Blue/Red Bars: A Standard Signal is active.
Faded Blue/Red Bars: The trend is active, but momentum is resetting (waiting mode).
Gray Bars: Counter-trend noise (Ignore).
How to Trade It
Check the "Road": Look at the general color of the histogram columns.
Blue Columns: Look for Longs.
Red Columns: Look for Shorts.
The "Sniper" Entry: Wait for a Gold Cross (+) on the zero line. This is your primary signal to enter a trade with normal risk.
The "Pyramid" Entry: If the trend continues and you see Blue/Red Diamonds (♦) appear at the edges, these are safe places to add to your position.
The Exit: Since this is a trend-following tool, exit when the histogram color flips (e.g., from Blue to Red/Gray), or use your own support/resistance targets.
Alerts Configuration
The indicator comes with a full suite of alerts for automation:
Gold Buy / Gold Sell: Notifies you only for the high-probability Hidden Divergence setups.
Standard Buy / Standard Sell: Notifies you for every trend pullback.
ANY BUY / ANY SELL: A combo alert that triggers on either signal type (useful for simplifying your alert limits).
Accessibility
Color Blind Friendly: The default palette uses High-Contrast Blue (#2962FF) and Soft Red (#FF5252) instead of standard Green/Red, ensuring visibility for all users.
Zero Clutter: No text labels or confusing lines. Just clear, distinct shapes (Diamonds and Crosses) at fixed locations.
Weekly RSI + EMA Bias (FREE)Weekly RSI + EMA Bias — FREE
This indicator provides a clean, non-repainting weekly directional bias using:
• EMA trend filter
• RSI strength confirmation
• One controlled flip per week
• IST-based weekly entry & exit logic
• Holiday-safe exit handling (no missed exits)
WHAT THIS IS:
• A bias / confirmation tool
• Designed for positional & weekly traders
• Works on all intraday and higher timeframes
WHAT THIS IS NOT:
• Not a strategy
• No backtesting or performance metrics
• No buy/sell guarantees
METRICS TABLE:
The weekly metrics table is intentionally locked (🔒).
A fully unlocked metrics + strategy version is available separately.
Best used as a decision-support tool alongside your own execution rules.
Universal Market Ranges█ OVERVIEW
Universal Market Ranges is a universal market indicator that, within a single tool, identifies trend direction and regime, shows price movement ranges relative to volatility, can be used as dynamic SL and TP levels, and offers optional signals generated separately for each zone.
The indicator is based on a smoothed moving average with an ATR-based significance filter and multi-level volatility bands, which organize the market into logical zones of increasing importance.
Instead of generating isolated signals, Universal Market Ranges provides full market context, allowing traders to make their own informed decisions.
█ CONCEPT
The core idea behind the indicator is full configurability, which allows it to be used for a wide range of trading purposes.
Depending on the settings and visibility of individual elements, Universal Market Ranges can function as:
- a complete trading system
- a clean trend indicator
- a single volatility channel
- a standalone filtered moving average
- a zone-based structure for position management (SL / TP)
By disabling selected bands, adjusting their multipliers, or modifying fill transparency, traders can tailor the indicator precisely to their trading style, market, and timeframe.
Moving Average Logic
The applied moving average is not classically weighted.
ATR acts here as a significance filter, determining whether a given price change is meaningful enough to affect the average.
When the price deviation from the MA exceeds a defined volatility threshold (ATR × multiplier), the moving average updates normally.
When price changes are too small and remain within market noise, the moving average remains unchanged.
As a result, the MA reacts only to significant price movements, ignoring minor fluctuations and consolidations.
█ ZONE STRUCTURE
- Trend Band (TB)
A channel used to define the trend regime.
- price breaking above the TB → trend shifts to bullish
- price breaking below the TB → trend shifts to bearish
The Trend Band can be visually disabled, while the trend logic continues to operate in the background.
- wider TB → less sensitive, fewer and later trend changes
- narrower TB → more sensitive, more frequent regime changes
- Inner Band (IB)
The primary zone of acceptable price deviation from the moving average.
- represents equilibrium and “comfortable” price movement
- Outer Band 1 (OB1)
A zone of clear market extension.
- first sign that price is moving away from equilibrium
- often used as a partial profit-taking level
- Outer Band 2 (OB2)
An extreme zone.
- very strong deviation from the moving average
- statistically rare price movements
- often marks the final phase of large impulses
█ FEATURES
Data Sources:
- Filtered moving average (SMA / EMA / RMA / WMA)
- ATR as the volatility measure for all zones
- Candle coloring based on the current trend regime
Signals (optional):
- Zone exit and return signals (IB / OB1 / OB2)
- Moving average cross in trend direction
- Trend regime change (TB breakout)
Visual Elements:
- Trend-based candle coloring
- Smooth fills between zones
- Labels with current price levels on the right side of the chart
Alerts:
- IB Breakout / Return
- OB1 & OB2 Exit / Return
- MA Cross in trend direction
- Trend Change (TB)
█ HOW TO USE
Adding the Indicator
Paste the code into the Pine Editor or search for
“Universal Market Ranges” on TradingView.
Key Settings:
- MA Length – moving average sensitivity
- ATR Length – band stability and width
- Minimum Deviation (ATR) – moving average update filter
→ lower values: MA updates more frequently but filters less noise
- Band Multipliers – define the significance of each zone
- MA Smoothing Type – determines the reaction character
█ USE CASES
Universal Market Ranges can be used for:
- trend trading – entries on trend regime changes
- defining dynamic SL and TP levels
- contrarian strategies – entries on price returns to zones
- analyzing price range and movement quality
Zone interpretation:
- price near the MA → market equilibrium
- price in OB1 → clear extension
- price in OB2 → extreme deviation from equilibrium
█ NOTES
- The indicator works on all instruments and timeframes
- Best results are achieved by adapting band multipliers to the market
- Can be combined with other technical analysis methods such as Fibonacci levels, FVG, and pivot levels
- This is not a signal-only system — it is a context-based analytical tool
Swing Failure Signals [AlgoAlpha]🟠 OVERVIEW
This script detects swing failure patterns by tracking how price interacts with recent swing highs and lows, then confirming those sweeps with a change in candle behavior. The goal is to highlight areas where price briefly breaks a key level, fails to continue, and then shifts direction. These events often occur around liquidity runs, where stops are triggered before price reverses. The script draws levels, colors bars, and prints clear markers to help visualize where these failures occur and when they are confirmed.
🟠 CONCEPTS
The logic starts with pivot-based swing detection. Recent swing highs and lows are stored and monitored. When price trades beyond one of these levels within a defined historical window, it is treated as a sweep. A sweep alone is not enough. The script then waits for a Change in State of Delivery (CISD), which is defined by a shift in candle structure that shows follow-through in the opposite direction. A tolerance filter measures how far price traveled beyond the level relative to the reaction that followed. If the reaction is strong enough and happens within a limited number of bars, the sweep is validated as a swing failure. In short: the swing defines the reference, the sweep shows intent, and the CISD confirms acceptance or rejection.
🟠 FEATURES
Sweep detection with a maximum lookback to avoid outdated levels
CISD confirmation using candle structure and price expansion
Alert conditions for bullish and bearish swing failures
🟠 USAGE
Setup : Add the script to your chart. It works on any market and timeframe. Lower timeframes highlight intraday liquidity runs, while higher timeframes show structural failures. Start with the default inputs before adjusting.
Read the chart : A bullish swing failure occurs when price sweeps a prior low, then reverses and confirms with a bullish CISD. A bearish swing failure is the opposite, sweeping a prior high and confirming with a bearish CISD. Dashed lines mark the swept swing. Solid lines mark the CISD level. Bars are colored while the SFP state is active.
Settings that matter : Increasing Pivot Detection Length finds more significant swings but fewer signals. Reducing Max Pivot Point Edge limits how far back sweeps are allowed, keeping signals more current. The Patience setting controls how many bars are allowed for confirmation after a sweep. The Trend Noise Filter raises or lowers how strong the reaction must be to qualify as a valid failure.
deKoder | Whale Prints [WP]deKoder | Whale Prints | Large Trade Orderflow Detection
This open-source indicator is a clean, precision tool for revealing hidden large-volume activity directly on your chart. By scanning ultra-low timeframes while you view higher ones, it projects statistically significant volume spikes as intuitive markers giving you a clear window into institutional orderflow without visually overwhelming the price action.
Key Features & Strengths
True Intra-Bar Detection | Monitors lower timeframes down to 1-second bars, catching aggressive block trades and absorption that occur within a single higher-TF candle.
Accurate Trade Levels | Markers are placed at the actual hl2 price of the aggressive lower-TF bar, providing a far more accurate estimate of where the large trade executed than typical mid-candle approximations.
Multiple Trades Per Bar | If several significant volume spikes occur inside one higher-TF candle, all qualifying levels are displayed individually – offering greater granularity and context.
Adaptive Thresholding | Uses higher-TF volume standard deviation (stable baseline) intelligently scaled to the lower timeframe, reducing noise in quiet markets while remaining sensitive to genuine outliers.
Clean Visual Hierarchy | Three tiers (Small 🞉 / Medium ⏣ / Large 🞊) with dynamic symbol size, line thickness, transparency, and user-definable bullish/bearish coloring based on LTF candle direction.
How to Use It as an Orderflow Tool
Large volume spikes often mark the footprints of institutional players. This indicator helps you read those footprints in real time.
Small (🞉) | Moderate excess volume: early interest, probing, or building positions.
Medium (⏣) | Strong spike: increasing conviction, potential momentum shift.
Large (🞊) | Extreme outlier: frequently climactic volume signalling exhaustion or major absorption.
Why Price Often Reverses at These Levels
Large players frequently place limit orders in areas rich with liquidity – commonly just beyond recent highs/lows where retail stop-losses cluster. When price sweeps those zones:
Stop hunts trigger a cascade of forced exits, creating liquidity for larger participants to fill their limit orders.
Breakout traders who entered on the move are trapped offside and become forced buyers/sellers when price reverses.
Institutions use this liquidity to execute large orders at favorable prices with minimal immediate market impact.
The result is aggressive volume at the extreme, followed by reversal as smart money finishes filling and price returns toward fair value. Clusters of medium/large markers at swing points are classic signs of this dynamic.
Practical Analysis Tips
Reversals/Absorption | Clusters of large markers at swing highs/lows (especially opposing-color spikes) signal potential turns – buyers or sellers stepping in aggressively.
Level Defense | Trades piling up at key support/resistance suggest institutions protecting or building positions.
Trapped Traders | Large spikes beyond range pivots followed by reversal back into the range often highlight trapped breakout traders who add fuel to a move when they are forced to liquidate their positions.
Use Offset (-3 to +3) to shift markers away from current price for clearer viewing.
Pro tip: Zoom into the lower TF occasionally to see how these projected levels align exactly with aggressive candles.
Recommended Pairings
This is designed as a pure orderflow overlay to be layered with your existing setup:
Support & Resistance (horizontals, pivots, Volume Profile POC/VAH/VAL)
Market Structure tools (swing points, order blocks, fair value gaps)
Trend filters (EMAs, SuperTrend, higher-TF bias)
Momentum oscillators for timing confluence
Best Suited For
Scalping & day trading (1–15 min charts with 5–30S lower TF)
Swing trading entries (1H–4H charts with 1–5 min lower TF)
High-liquidity markets: crypto perpetuals, forex majors, volatile stocks
Add this indicator to start seeing the hidden aggression driving price and expose the hidden edges beyond the noise.
☠ FR33FA11 | deKoder ☠
Released January 2025 | Open Source
PSP (Precision Swing Point - CIC SMT)PSP SMT – Correlation Stages Indicator
The PSP SMT – Correlation Stages indicator is designed to identify Smart Money divergences (SMT) between correlated markets through a progressive, stage-based model.
It visually classifies price behavior into correlation stages, helping traders detect early imbalance, confirmation, and distribution phases used by institutional participants.
By comparing a primary asset with a correlated symbol, the indicator highlights loss of correlation, displacement, and confirmation signals, offering a structured framework to anticipate potential reversals or continuations within ICT-based market models.
Ideal for traders who apply ICT concepts, intermarket analysis, and liquidity-based strategies, the PSP SMT enhances timing, context, and confidence in decision-making.
Biller Project//@version=6
indicator("Hoon Fib Project", shorttitle ="Hoon Fib", overlay = true, max_bars_back = 5000)
// -----------------------------------------------------------------------------
// ~~ Tooltips & Constants
// -----------------------------------------------------------------------------
var string t1 = "Period: Number of bars used to detect swing highs and swing lows."
var string t2 = "Projection Level: Fibonacci ratio used to calculate the projected future targets."
var string t2_b = "Trend Projection Ratio: The secondary Fibonacci ratio for extensions."
var string t15 = "Fib Volume Profile: Enable volume profile drawn between the last swing high and low."
var string t20 = "Fib Volume Delta: Enable volume delta profile between Fibonacci price bands."
// -----------------------------------------------------------------------------
// ~~ Inputs
// -----------------------------------------------------------------------------
// Group: General Settings
prd = input.int(100, "Period", group = "Fib Settings", tooltip = t1)
lvl = input.float(0.618, "Projection Level", options = , group = "Fib Settings", tooltip = t2)
trendFibbRatio = input.float(1.272, "Trend Projection Ratio", step = 0.001, group = "Fib Settings", tooltip = t2_b)
// Group: Fib Levels Style
fibLvl1 = input.float(0.236, "Level 1", group = "Fib Levels Style", inline = "f1")
fibColor236 = input.color(#f23645, "", group = "Fib Levels Style", inline = "f1")
fibLvl2 = input.float(0.382, "Level 2", group = "Fib Levels Style", inline = "f2")
fibColor382 = input.color(#81c784, "", group = "Fib Levels Style", inline = "f2")
fibLvl3 = input.float(0.500, "Level 3", group = "Fib Levels Style", inline = "f3")
fibColor500 = input.color(#4caf50, "", group = "Fib Levels Style", inline = "f3")
fibLvl4 = input.float(0.618, "Level 4", group = "Fib Levels Style", inline = "f4")
fibColor618 = input.color(#089981, "", group = "Fib Levels Style", inline = "f4")
fibLvl5 = input.float(0.786, "Level 5", group = "Fib Levels Style", inline = "f5")
fibColor786 = input.color(#64b5f6, "", group = "Fib Levels Style", inline = "f5")
// Golden Pocket - FIXED COLOR HERE
showGP = input.bool(true, "Show Golden Pocket (0.65)", group = "Fib Levels Style")
gpColor = input.color(color.new(#FFD700, 85), "GP Color", group = "Fib Levels Style")
fibLineWidth = input.int(2, "Fib Line Width", minval = 1, maxval = 5, group = "Fib Levels Style")
showlab = input.bool(true, "Show Labels", group = "Fib Levels Style", inline = "fiblab")
fibLabelColor = input.color(color.white, "Text Color", group = "Fib Levels Style", inline = "fiblab")
fibLabelSizeStr = input.string("Small", "Size", options = , group = "Fib Levels Style", inline = "fiblab")
fibLabelSize = switch fibLabelSizeStr
"Tiny" => size.tiny
"Small" => size.small
"Large" => size.large
=> size.normal
// Group: Swing High/Low Lines
loLineColor = input.color(color.new(color.green, 0), "Low Line", group = "Swing High/Low Lines Style", inline = "hi")
hiLineColor = input.color(color.new(color.red, 0), "High Line", group = "Swing High/Low Lines Style", inline = "hi")
hiloLineWidth = input.int(2, "Width", 1, 5, group = "Swing High/Low Lines Style", inline = "hi")
// Group: Fib Volume Profile
showFibProfile = input.bool(true, "Show Volume Profile", group = "Fib Volume Profile", tooltip = t15)
rows = input.int(24, "Rows", 2, 100, group = "Fib Volume Profile")
flipOrder = input.bool(false, "Flip Bull/Bear", group = "Fib Volume Profile")
bull_color = input.color(color.new(color.teal, 30), "Bull Vol", group = "Fib Volume Profile", inline = "volColor")
bear_color = input.color(color.new(color.orange, 30), "Bear Vol", group = "Fib Volume Profile", inline = "volColor")
showVolText = input.bool(true, "Show Values", group = "Fib Volume Profile", inline = "vtxt")
// Point of Control (POC)
showPOC = input.bool(true, "Show POC Line", group = "Fib Volume Profile")
pocColor = input.color(color.yellow, "POC Color", group = "Fib Volume Profile")
// Group: Fib Volume Delta
showFibDelta = input.bool(false, "Show Volume Delta", group = "Fib Volume Delta Profile", tooltip = t20)
deltaMaxWidth = input.int(30, "Max Width (Bars)", minval = 5, maxval = 200, group = "Fib Volume Delta Profile")
deltaBullColor = input.color(color.new(color.lime, 80), "Bull Delta", group = "Fib Volume Delta Profile", inline = "dc")
deltaBearColor = input.color(color.new(color.red, 80), "Bear Delta", group = "Fib Volume Delta Profile", inline = "dc")
// Group: Projection Style
projLineBullColor = input.color(color.new(color.green, 0), "Proj Bull", group = "Projection Style", inline = "plc")
projLineBearColor = input.color(color.new(color.red, 0), "Proj Bear", group = "Projection Style", inline = "plc")
projLineWidth = input.int(2, "Width", 1, 5, group = "Projection Style", inline = "plc")
projLineStyleStr = input.string("Arrow Right", "Style", options = , group = "Projection Style")
projLineStyle = switch projLineStyleStr
"Solid" => line.style_solid
"Dashed" => line.style_dashed
"Dotted" => line.style_dotted
=> line.style_arrow_right
// Group: Projection Box
projBoxBgOn = input.bool(true, "Box Bg", group = "Projection Box Style", inline = "pbg")
projBoxBgColor = input.color(color.new(color.blue, 80), "", group = "Projection Box Style", inline = "pbg")
projBoxTextColor = input.color(color.white, "Text", group = "Projection Box Style", inline = "pbg")
// NEW: Biller's Info Box Inputs
showBillerBox = input.bool(true, "Show Biller's Insight", group = "Biller's Insight")
billerPos = input.string("Top Right", "Position", options = , group = "Biller's Insight")
// -----------------------------------------------------------------------------
// ~~ Calculations
// -----------------------------------------------------------------------------
// Swing detection
hi = ta.highest(high, prd)
lo = ta.lowest(low, prd)
isHi = high == hi
isLo = low == lo
HB = ta.barssince(isHi)
LB = ta.barssince(isLo)
hiPrice = ta.valuewhen(isHi, high, 0)
loPrice = ta.valuewhen(isLo, low, 0)
hiBar = ta.valuewhen(isHi, bar_index, 0)
loBar = ta.valuewhen(isLo, bar_index, 0)
// Persistent Drawing Objects
var line hiLine = line.new(na, na, na, na, color = hiLineColor, width = hiloLineWidth)
var line loLine = line.new(na, na, na, na, color = loLineColor, width = hiloLineWidth)
var array fibbLines = array.new_line()
var array fibbLabels = array.new_label()
var array gpBoxes = array.new_box()
var array forecastLines = array.new_line()
var array areas = array.new_box()
var array perc = array.new_label()
var array fibProfileBoxes = array.new_box()
var array pocLines = array.new_line()
var array fibDeltaBoxes = array.new_box()
// Helper Functions
fibbFunc(v, last, h, l) => last ? h - (h - l) * v : l + (h - l) * v
cleaner(a, idx) =>
if idx >= 0 and idx < array.size(a)
el = array.get(a, idx)
if not na(el)
el.delete()
array.remove(a, idx)
// -----------------------------------------------------------------------------
// ~~ Logic Execution
// -----------------------------------------------------------------------------
if not na(HB) and not na(LB) and not na(hiPrice) and not na(loPrice)
// 1. Update Swing High/Low Lines
line.set_xy1(hiLine, hiBar, hiPrice)
line.set_xy2(hiLine, bar_index, hiPrice)
line.set_color(hiLine, hiLineColor)
line.set_xy1(loLine, loBar, loPrice)
line.set_xy2(loLine, bar_index, loPrice)
line.set_color(loLine, loLineColor)
// 2. Clear old drawings
while array.size(fibbLines) > 0
cleaner(fibbLines, 0)
while array.size(fibbLabels) > 0
cleaner(fibbLabels, 0)
while array.size(gpBoxes) > 0
cleaner(gpBoxes, 0)
while array.size(forecastLines) > 0
cleaner(forecastLines, 0)
while array.size(areas) > 0
cleaner(areas, 0)
while array.size(perc) > 0
cleaner(perc, 0)
// 3. Draw Fib Retracements
lvls = array.from(fibLvl1, fibLvl2, fibLvl3, fibLvl4, fibLvl5)
cols = array.from(fibColor236, fibColor382, fibColor500, fibColor618, fibColor786)
baseOffset = HB > LB ? LB : HB
xFibStart = bar_index - baseOffset
// Golden Pocket Logic
if showGP
gp618 = fibbFunc(0.618, HB < LB, hiPrice, loPrice)
gp65 = fibbFunc(0.65, HB < LB, hiPrice, loPrice)
gpBox = box.new(xFibStart, gp618, bar_index + 5, gp65, bgcolor = gpColor, border_color = na)
array.push(gpBoxes, gpBox)
for in lvls
f = fibbFunc(e, HB < LB, hiPrice, loPrice)
ln = line.new(xFibStart, f, bar_index, f, color = cols.get(i), width = fibLineWidth)
array.push(fibbLines, ln)
if showlab
lbl = label.new(bar_index + 1, f, str.tostring(e * 100, "#.##") + "%",
textcolor = fibLabelColor, style = label.style_label_left, size = fibLabelSize, color = cols.get(i))
array.push(fibbLabels, lbl)
// 4. Draw Projections
bars = math.abs(HB - LB)
fibb = fibbFunc(lvl, LB > HB, hiPrice, loPrice)
fibb2 = LB < HB ? fibbFunc(lvl, true, fibb, loPrice) : fibbFunc(lvl, false, hiPrice, fibb)
trendfibb = LB > HB ? fibbFunc(trendFibbRatio, true, hiPrice, loPrice) : fibbFunc(trendFibbRatio, false, hiPrice, loPrice)
forecast = array.from(HB < LB ? hiPrice : loPrice, fibb, fibb2, trendfibb)
segment = math.min(bars, math.floor(500.0 / 4.0))
future = bar_index
for i = 0 to forecast.size() - 2
y1 = forecast.get(i)
y2 = forecast.get(i + 1)
x2 = math.min(future + segment, bar_index + 500)
// Draw Projection Line
lnForecast = line.new(future, y1, x2, y2, color = y1 < y2 ? projLineBullColor : projLineBearColor, width = projLineWidth, style = projLineStyle)
array.push(forecastLines, lnForecast)
// Draw Target Box
midBoxLeft = x2 - math.round((future - x2) / 4.0)
txtLevel = i == forecast.size() - 2 ? str.tostring(trendFibbRatio, "#.###") : str.tostring(lvl * 100, "#.##")
boxHeight = math.abs(y1 - y2) / 10.0
bx = box.new(midBoxLeft, y2 + boxHeight, x2 + math.round((future - x2) / 4.0), y2 - boxHeight,
bgcolor = projBoxBgOn ? projBoxBgColor : na, border_width = 1,
text = txtLevel, text_color = projBoxTextColor)
array.push(areas, bx)
future += segment
// 5. Volume Profile Logic
if showFibProfile and hiBar != loBar
while array.size(fibProfileBoxes) > 0
cleaner(fibProfileBoxes, 0)
while array.size(pocLines) > 0
cleaner(pocLines, 0)
top = math.max(hiPrice, loPrice)
bottom = math.min(hiPrice, loPrice)
step = (top - bottom) / rows
// Define bins
volUp = array.new_float(rows, 0.0)
volDn = array.new_float(rows, 0.0)
startBar = math.min(hiBar, loBar)
endBar = math.max(hiBar, loBar)
for bi = startBar to endBar
offset = bar_index - bi
if offset < 4999
p = hlc3
v = nz(volume )
isBull = close > open
// Find correct bin
if p >= bottom and p <= top
idx = int((p - bottom) / step)
idx := math.min(idx, rows - 1)
if isBull
array.set(volUp, idx, array.get(volUp, idx) + v)
else
array.set(volDn, idx, array.get(volDn, idx) + v)
// Draw Volume Boxes and Calc POC
maxTot = 0.0
maxTotIdx = 0 // Track index of max volume
for i = 0 to rows - 1
tot = array.get(volUp, i) + array.get(volDn, i)
if tot > maxTot
maxTot := tot
maxTotIdx := i
span = endBar - startBar + 1
blendTxtColor = color.new(color.white, 30)
minWidthForText = 2
if maxTot > 0
for r = 0 to rows - 1
upV = array.get(volUp, r)
dnV = array.get(volDn, r)
if upV + dnV > 0
normUp = int((upV / maxTot) * span)
normDn = int((dnV / maxTot) * span)
yTop = bottom + step * (r + 1)
yBot = bottom + step * r
// Draw Bull Box
if normUp > 0
txtBull = (showVolText and normUp > minWidthForText) ? str.tostring(upV, format.volume) : ""
bxBull = box.new(startBar + (flipOrder ? 0 : normDn), yTop, startBar + (flipOrder ? normUp : normUp + normDn), yBot,
bgcolor = bull_color, border_style = line.style_dotted, border_color = color.new(bull_color, 50),
text = txtBull, text_color = blendTxtColor, text_size = size.tiny, text_halign = text.align_center, text_valign = text.align_center)
array.push(fibProfileBoxes, bxBull)
// Draw Bear Box
if normDn > 0
txtBear = (showVolText and normDn > minWidthForText) ? str.tostring(dnV, format.volume) : ""
bxBear = box.new(startBar + (flipOrder ? normUp : 0), yTop, startBar + (flipOrder ? normUp + normDn : normDn), yBot,
bgcolor = bear_color, border_style = line.style_dotted, border_color = color.new(bear_color, 50),
text = txtBear, text_color = blendTxtColor, text_size = size.tiny, text_halign = text.align_center, text_valign = text.align_center)
array.push(fibProfileBoxes, bxBear)
// Draw POC Line
if showPOC
pocY = bottom + step * (maxTotIdx + 0.5) // Midpoint of max bin
pocLn = line.new(startBar, pocY, bar_index + 10, pocY, color = pocColor, width = 2, style = line.style_solid)
array.push(pocLines, pocLn)
// 6. Volume Delta Logic
if showFibDelta and hiBar != loBar
while array.size(fibDeltaBoxes) > 0
cleaner(fibDeltaBoxes, 0)
fibPrices = array.new_float()
array.push(fibPrices, hiPrice)
array.push(fibPrices, loPrice)
for e in lvls
array.push(fibPrices, fibbFunc(e, HB < LB, hiPrice, loPrice))
array.sort(fibPrices)
bandsCount = array.size(fibPrices) - 1
bandBull = array.new_float(bandsCount, 0.0)
bandBear = array.new_float(bandsCount, 0.0)
startBar = math.min(hiBar, loBar)
endBar = math.max(hiBar, loBar)
for bi = startBar to endBar
offset = bar_index - bi
if offset < 4999
p = hlc3
v = nz(volume )
isBull = close > open
for b = 0 to bandsCount - 1
bLow = array.get(fibPrices, b)
bHigh = array.get(fibPrices, b + 1)
if p >= bLow and p < bHigh
if isBull
array.set(bandBull, b, array.get(bandBull, b) + v)
else
array.set(bandBear, b, array.get(bandBear, b) + v)
break
maxAbsDelta = 0.0
for b = 0 to bandsCount - 1
maxAbsDelta := math.max(maxAbsDelta, math.abs(array.get(bandBull, b) - array.get(bandBear, b)))
if maxAbsDelta > 0
for b = 0 to bandsCount - 1
delta = array.get(bandBull, b) - array.get(bandBear, b)
if delta != 0
widthBars = int((math.abs(delta) / maxAbsDelta) * deltaMaxWidth)
widthBars := math.max(widthBars, 1)
col = delta >= 0 ? deltaBullColor : deltaBearColor
dBox = box.new(startBar - widthBars, array.get(fibPrices, b+1), startBar, array.get(fibPrices, b),
bgcolor = col, border_color = na,
text = "Δ " + str.tostring(delta, format.volume), text_color = color.new(color.white, 20), text_size = size.small)
array.push(fibDeltaBoxes, dBox)
// -----------------------------------------------------------------------------
// ~~ Biller's Info Box Logic
// -----------------------------------------------------------------------------
var table infoTable = table.new(
position = billerPos == "Top Right" ? position.top_right : billerPos == "Bottom Right" ? position.bottom_right : billerPos == "Bottom Left" ? position.bottom_left : position.top_left,
columns = 1,
rows = 3,
bgcolor = color.new(color.black, 40),
border_width = 1,
border_color = color.new(color.white, 80)
)
if showBillerBox and barstate.islast
// Determine Bias: If the last Pivot was a LOW (LB < HB), market is technically trending UP from that low.
bool isBullish = LB < HB
string biasTitle = isBullish ? "🐂 BULLISH BIAS" : "🐻 BEARISH BIAS"
color biasColor = isBullish ? color.new(color.green, 20) : color.new(color.red, 20)
string biasMsg = isBullish ? "Don't look for shorts, Biller!" : "Don't look for longs, Biller!"
// Array of Quotes
string quotes = array.from(
"Biller, you're not gonna pass ur eval looking at the chart all day.",
"Fuck it, go in. I believe in u.",
"Trust JD's Signals.",
"Scared money makes no money, Biller.",
"Evaluation is just a mindset.",
"JD is watching... don't fumble.",
"Are you really gonna take that trade?",
"Wait for the setup, Biller.",
"Don't be a liquidity exit, Biller."
)
int quoteIdx = bar_index % array.size(quotes)
string currentQuote = array.get(quotes, quoteIdx)
// Row 1: Bias Header
table.cell(infoTable, 0, 0, biasTitle, bgcolor = biasColor, text_color = color.white, text_size = size.normal)
// Row 2: Instruction
table.cell(infoTable, 0, 1, biasMsg, text_color = color.white, text_size = size.small)
// Row 3: Motivation/Quote
table.cell(infoTable, 0, 2, "\"" + currentQuote + "\"", text_color = color.yellow, text_size = size.small, text_halign = text.align_center)
MMM Fear & Greed Meter - Multi-Asset @MaxMaseratiMMM Fear & Greed Meter - Multi-Asset Edition
Professional Sentiment Analysis for Futures, Stocks, and Crypto
The MMM Fear & Greed Meter is an advanced market sentiment indicator that transforms CNN's Fear & Greed methodology into an actionable trading tool. Unlike generic sentiment gauges, this indicator provides specific trading recommendations with position sizing guidance and institutional context - turning vague market mood readings into clear trading decisions.
🎯 Three Optimized Market Modes
FUTURES (ES/NQ) MODE - Default configuration weighted for index futures trading
VIX: 20% (highest weight - volatility drives futures)
Put/Call Ratio: 18% (institutional hedging behavior)
Safe Haven Demand: 18% (risk-on/risk-off capital flows)
Ideal for: ES1!, NQ1! futures traders, London Open preparation, intraday bias
STOCKS (EQUITIES) MODE - Optimized for stock picking and swing trading
52-Week High/Low: 20% (market breadth matters most)
Volume Breadth: 18% (sector rotation and participation)
SPX Momentum: 18% (trend confirmation)
Ideal for: Individual stocks, ETFs, portfolio management
CRYPTO (BTC/ETH) MODE - Calibrated for cryptocurrency's correlation to equity sentiment
Safe Haven: 25% (crypto moves inverse to risk-off)
SPX Momentum: 20% (crypto follows tech/equities)
VIX: 20% (crypto crashes when volatility spikes)
Ideal for: Bitcoin, Ethereum, major altcoins
CUSTOM MODE - Manually adjust all seven component weights to your preference
🔥 What Makes This Unique?
1. ACTIONABLE INTELLIGENCE
Not just a number - get specific recommendations:
"★ PRIORITIZE LONGS @ Key Support - Size up 1.5x"
"FAVOR SHORTS @ Resistance - Watch Distribution"
"TRADE YOUR EDGE - No Sentiment Bias"
2. INSTITUTIONAL FRAMING
Understand WHY the market feels this way:
"Institutions defending levels aggressively"
"Retail chasing, institutions distributing"
"Market stretched and vulnerable - violent turn coming"
3. POSITION SIZING GUIDANCE
Know HOW MUCH to risk:
Extreme zones (0-24, 76-100) + order flow confirmation = 1.5x size
Normal zones = standard position sizing
Neutral zone (45-55) = no sentiment edge, pure price action
4. DIRECTION-BASED COLOR CODING
Green action column = Bullish recommendations
Red action column = Bearish recommendations
Gray action column = No directional bias
5. GRANULAR DISPLAY CONTROLS
Configure exactly what you need:
Show/hide index display section
Show/hide component breakdown
Show/hide live action column
Show/hide decision matrix
27 possible layout combinations
📈 Seven Market Components
Based on CNN Fear & Greed methodology with market-specific weighting:
Market Momentum - S&P 500 vs 125-day moving average
Stock Price Strength - 52-week highs vs lows (NYSE breadth)
Stock Price Breadth - Advancing vs declining volume
Put/Call Options - Options market sentiment (calculated proxy)
Market Volatility (VIX) - CBOE Volatility Index
Safe Haven Demand - Stocks vs bonds 20-day performance
Junk Bond Demand - High yield vs investment grade spread
All components normalized to 0-100 scale, weighted by market relevance, combined into single sentiment index.
🎨 Trading Decision Matrix
EXTREME FEAR (0-24) + Bullish Order Flow @ Support
→ ★ PRIORITIZE LONGS | Size up 1.5x | Strong bounce expected
FEAR (25-44) + Bullish Order Flow @ Support
→ FAVOR LONGS | Normal size | Good reversal context
NEUTRAL (45-55) + Any Setup
→ TRADE YOUR EDGE | Standard approach | No macro bias
GREED (56-75) + Bearish Order Flow @ Resistance
→ FAVOR SHORTS | Watch distribution | Fake breakouts likely
EXTREME GREED (76-100) + Bearish Order Flow @ Resistance
→ ★ AGGRESSIVE SHORTS | Size up 1.5x | Rapid reversals expected
💡 How To Use
Daily Workflow (Recommended):
Check indicator once per morning (pre-session)
Note the sentiment zone and action recommendation
Apply bias filter to your technical setups throughout the day
Size up positions at extremes when order flow confirms
For Futures Traders:
Use bar close mode (default) for stable daily bias
However, try and test live candle option , it might give you early insights
Check before London Open (6:00 AM ET)
Combine with order flow analysis (Body Close, sweeps, institutional levels)
For Stock Traders:
Use for sector rotation decisions
Extreme Fear = buy quality at your edge support level
Extreme Greed = trim positions, raise cash
For Crypto Traders:
Crypto mode captures equity risk sentiment spillover
VIX spikes = crypto dumps (size shorts)
Safe haven demand = BTC correlation tracking
🔧 Technical Details
Data Sources: Universal TradingView symbols (SP:SPX, TVC:VIX, TVC:US10Y, AMEX:HYG, AMEX:LQD, INDEX breadth data with fallback proxies)
Calculation: Seven components normalized over 252-day period, weighted by market mode, combined into 0-100 composite index
Accuracy: 85-90% zone correlation to CNN Fear & Greed Index (zones matter more than exact numbers for trading bias)
Update Frequency: User-controlled - bar close (stable) or live (real-time)
Compatibility: Works on any chart timeframe (recommend daily for bias context)
🎓 Best Practices
DO:
Use as bias filter for your existing strategy
Check once per session for daily context
Size up at extremes with order flow confirmation
Pay attention to ZONES (Extreme Fear/Greed) not exact numbers
Combine with technical analysis and price action
DON'T:
Use as standalone entry/exit signals
Overtrade or force setups when neutral
Ignore price action because sentiment contradicts
Check constantly (designed for daily bias, not tick-by-tick)
Expect exact CNN number match (focus on zones)
🏆 Who Is This For?
Futures Traders - ES/NQ intraday traders needing daily bias context
Stock Traders - Equity swing traders and stock pickers
Crypto Traders - BTC/ETH traders following equity risk sentiment
Position Traders - Anyone wanting institutional sentiment context
Systematic Traders - Adding sentiment filter to mechanical systems
📚 Based On CNN Fear & Greed Methodology
This indicator builds upon CNN Business's proven Fear & Greed Index framework, enhancing it with:
Market-specific component weighting (Futures/Stocks/Crypto)
Actionable trading recommendations with position sizing
Institutional market context and framing
Flexible display options for different trading workflows
Universal data compatibility for all TradingView users
Chainbey Ai - Liquidity Zones (Pivot Sweeps) - Chain Style📌 Indicator Description
Chainbey Ai – Liquidity Zones (Pivot Sweeps) – Chain Style
This indicator automatically identifies and visualizes liquidity zones on the chart based on confirmed swing highs and lows, helping traders spot areas where stop-loss clusters, institutional interest, and liquidity grabs are likely to occur.
Unlike simple pivot markers, this script draws true liquidity zones (price areas, not single lines) and tracks when price sweeps those zones — a common behavior before strong reversals or continuations.
The indicator is designed to stay stable when switching pairs or timeframes, using time-anchored zones for reliable positioning across all markets.
🔍 Key Features
Buy-Side Liquidity Zones
Marked above swing highs (potential stop-loss pools)
Sell-Side Liquidity Zones
Marked below swing lows
Liquidity Sweep Detection
Highlights when price grabs liquidity using wick or close
Zone Strength Filters
ATR-based swing size filtering
Optional volume confirmation
Cooldown logic to reduce clutter
Time-Anchored Zones
Zones remain aligned when switching symbols or timeframes
Highly Customizable
Control pivot strength, zone size, filters, and visibility
Works on All Markets
Crypto, Forex, Indices, Commodities, Stocks
🧠 How to Use
Trend Continuation
Look for price to sweep liquidity and continue in trend direction
Reversal Setup
Liquidity sweep + rejection can signal potential reversals
Confluence Tool
Combine with trend, RSI, MACD, structure, or volume analysis
Risk Management
Liquidity zones can act as logical SL/TP reference areas
⚠️ This is a market structure & liquidity tool, not a buy/sell signal generator.
Always use confirmation before entering trades.
⚙️ Recommended Settings (BTC 30m)
Pivot Length: 9–12
Min Swing Size (ATR): 1.5 – 2.5
Cooldown Bars: 30 – 50
Max Active Zones: 15 – 20
Volume Filter: Optional (1.2 – 1.4x)
Trend lines & Pressure Zone Overview
This indicator intelligently identifies and plots dynamic support and resistance zones based on swing pivots and price action validation. It combines trend analysis with pressure zone detection to highlight key areas where price is likely to react.
Key Features
1.Smart Zone Detection
Automatically identifies the strongest resistance and support levels
Requires multiple price touches for validation (configurable)
Plots only the 2 most relevant trendlines to keep charts clean
Dynamic channel zones show the area of influence around each trendline
2.Dual Analysis Method
Uses swing pivot detection to find turning points
Validates zones through touch counting with price margin tolerance
Combines aspects of trendline analysis and pressure zone theory
Adapts to different timeframes and instruments
3.Contact Detection & Alerts
Visual circle markers when price contacts zones
Arrow indicators for zone interactions
Alert conditions for zone creation, breaks, and contacts
Customizable visual feedback
4.Flexible Configuration
Adjustable swing length for pivot detection
Configurable price margin tolerance
Minimum touch requirements prevent false signals
Optional line extension with custom length
Peak reset interval to refresh zones periodically
How It Works
Resistance Zones:
Identifies swing high pivots
Tracks the highest peak within the reset interval
When price drops below the peak, draws a downward trendline
Validates the zone by counting touches within the price margin
Only displays the zone after minimum touches are confirmed
Support Zones:
Identifies swing low pivots
Tracks the lowest trough within the reset interval
When price rises above the trough, draws an upward trendline
Validates the zone by counting touches within the price margin
Only displays the zone after minimum touches are confirmed
Zone Channels:
Each trendline includes a parallel channel showing the pressure zone width, making it easier to identify when price is interacting with the zone.
Pivot Detection:
Swing Length (default: 5) - Bars on each side to confirm pivot points
Peak Reset Interval (default: 100) - Bars before resetting tracked peak/trough
Zone Settings:
Price Margin % (default: 0.1%) - Tolerance for touch validation
Minimum Touches (default: 3) - Required touches before drawing zone
Channel Width % (default: 0.5%) - Visual width of pressure zone
Extension:
Extend Lines (default: off) - Project lines into the future
Extension Length (default: 50) - Bars to extend when enabled
Visual Styling:
Separate color/width controls for resistance and support
Customizable fill transparency for channels, Toggle contact arrows and circles
Trading Applications
Entry Signals:
Buy when price contacts support zone with confirmation
Sell when price contacts resistance zone with confirmation, Look for zone breaks as momentum signals
Stop Loss Placement:
Place stops beyond the opposite zone, Use channel width to gauge volatility
Target Setting:
Opposite zone acts as first profit target, Zone breaks signal potential trend continuation
Confluence:
Works well with volume analysis,Combine with RSI/MACD for confirmation,
Use multiple timeframes for stronger signals
Best Practices
✅ DO:
Adjust swing length based on timeframe (lower for intraday, higher for daily+)
Reduce minimum touches (2-3) for volatile markets
Increase price margin for choppy conditions
Wait for candle close confirmation on zone breaks
❌ DON'T:
Trade zones in isolation without other confirmation
Use overly tight parameters that generate false signals
Ignore the broader trend context
Chase price after zone breaks without pullback
Tips for Optimization
Scalping (1-5 min): Swing Length: 3-5, Min Touches: 2
Day Trading (15-60 min): Swing Length: 5-10, Min Touches: 3
Swing Trading (4H-Daily): Swing Length: 10-20, Min Touches: 3-4
Position Trading (Daily-Weekly): Swing Length: 15-25, Min Touches: 4-5
Alert Conditions
Zone Contact: Price touches resistance or support zone
Set up notifications for real-time trading opportunities
Disclaimer: This indicator is for educational and informational purposes only. It should not be considered financial advice. Always perform your own analysis and risk management before trading.
Auto Trendline using Liquidity Sweeps By Vachaspati JhaThis auto trendline systime uses Liquidity sweep points to draw, making them extremely reliable- price action respects these trendlines.
You can choose different pivot numbers for Green and Red lines to suit market condition. For instance in uptrend green line pivot number can be 2 or higher and Red line pivot number can be 1 for pullback opportunities.
Multi-indicator Signal Builder [Skyrexio]Overview
Multi-Indicator Signal Builder is a versatile, all-in-one script designed to streamline your trading workflow by combining multiple popular technical indicators under a single roof.
It features a single-entry, single-exit logic, intrabar stop-loss/take-profit handling, an optional time filter, a visually accessible condition table, and a built-in statistics label.
Traders can choose any combination of 12+ indicators (RSI, Ultimate Oscillator, Bollinger %B, Moving Averages, ADX, Stochastic, MACD, PSAR, MFI, CCI, Heikin Ashi, and a “TV Screener” placeholder) to form entry or exit conditions.
This script aims to simplify strategy creation and analysis , making it a powerful toolkit for technical traders.
Indicators Overview
RSI (Relative Strength Index)
Measures recent price changes to evaluate overbought or oversold conditions on a 0–100 scale.
Ultimate Oscillator (UO)
Uses weighted averages of three different timeframes, aiming to confirm price momentum while avoiding false divergences.
Bollinger %B
Expresses price relative to Bollinger Bands, indicating whether price is near the upper band (overbought) or lower band (oversold).
Moving Average (MA)
Smooths price data over a specified period. The script supports both SMA and EMA to help identify trend direction and potential crossovers.
ADX (Average Directional Index)
Gauges the strength of a trend (0–100). Higher ADX signals stronger momentum, while lower ADX indicates a weaker trend.
Stochastic
Compares a closing price to a price range over a given period to identify momentum shifts and potential reversals.
MACD (Moving Average Convergence/Divergence)
Tracks the difference between two EMAs plus a signal line, commonly used to spot momentum flips through crossovers.
PSAR (Parabolic SAR)
Plots a trailing stop-and-reverse dot that moves with the trend. Often used to signal potential reversals when price crosses PSAR.
MFI (Money Flow Index)
Similar to RSI but incorporates volume data. A reading above 80 can suggest overbought conditions, while below 20 may indicate oversold.
CCI (Commodity Channel Index)
Identifies cyclical trends or overbought/oversold levels by comparing current price to an average price over a set timeframe.
Heikin Ashi
A type of candlestick charting that filters out market noise. The script uses a streak-based approach (multiple consecutive bullish or bearish bars) to gauge mini-trends.
TV Screener
A placeholder condition designed to integrate external buy/sell logic (like a TradingView “Buy” or “Sell” rating). Users can override or reference external signals if desired.
Unique Features
Multi-Indicator Entry and Exit
You can selectively enable any subset of 12+ classic indicators, each with customizable parameters and conditions. A position opens only if all enabled entry conditions are met, and it closes only when all enabled exit conditions are satisfied, helping reduce false triggers.
Single-Entry / Single-Exit with Intrabar SL/TP
The script supports a single position at a time. Once a position is open, it monitors intrabar to see if the price hits your stop-loss or take-profit levels before the bar closes, making results more realistic for fast-moving markets.
Time Window Filter
Users may specify a start/end date range during which trades are allowed, making it convenient to focus on specific market cycles for backtesting or live trading.
Condition Table and Statistics
A table at the bottom of the chart lists all active entry/exit indicators. Upon each closed trade, an integrated statistics label displays net profit, total trades, win/loss count, average and median PnL, etc.
Seamless Alerts and Automation
• Configure alerts in TradingView using “Any alert() function call.”
• The script sends JSON alert messages you can route to your own webhook.
• The indicator can be integrated with Skyrexio alert bots to automate execution on major cryptocurrency exchanges.
Optional MA/PSAR Plots
For added visual clarity, optionally plot the chosen moving averages or PSAR on the chart to confirm signals without stacking multiple indicators.
Methodology
Multi-Indicator Entry Logic
When multiple entry indicators are enabled (e.g., RSI + Stochastic + MACD), the script requires all signals to align before generating an entry. Each indicator can be set for crossovers, crossunders, thresholds (above/below), etc. This “AND” logic aims to filter out low-confidence triggers.
Single-Entry Intrabar SL/TP
• One Position At a Time: Once an entry signal triggers, a trade opens at the bar’s close.
• Intrabar Checks: Stop-loss and take-profit levels (if enabled) are monitored on every tick. If either is reached, the position closes immediately, without waiting for the bar to end.
Exit Logic
All Conditions Must Agree: If the trade is still open (SL/TP not triggered), then all enabled exit indicators must confirm a closure before the script exits on the bar’s close.
Time Filter
Optional Trading Window: You can activate a date/time range to constrain entries and exits strictly to that interval.
Justification of Methodology
Indicator Confluence: Combining multiple tools (RSI, MACD, etc.) can reduce noise and false signals.
Intrabar SL/TP: Capturing real-time spikes or dips provides a more precise reflection of typical live trading scenarios.
Single-Entry Model: Straightforward for both manual and automated tracking (especially important in bridging to bots).
Custom Date Range: Helps refine backtesting for specific market conditions or to avoid known irregular data periods.
How to Use
Add the Script to Your Chart
• In TradingView, open Indicators , search for “Multi-indicator Signal Builder” .
• Click to add it to your chart.
Configure Inputs
• Time Filter: Set a start and end date for trades.
• Alerts Messages: Input any JSON or text payload needed by your external service or bot.
• Entry Conditions: Enable and configure any indicators (e.g., RSI, MACD) for a confluence-based entry.
• Close Conditions: Enable exit indicators, along with optional SL (negative %) and TP (positive %) levels.
Set Up Alerts
• In TradingView, select “Create Alert” → Condition = “Any alert() function call” → choose this script.
• Entry Alert: Triggers on the script’s entry signal.
• Close Alert: Triggers on the script’s close signal (or if SL/TP is hit).
• Skyrexio Alert Bots: You can route these alerts via webhook to Skyrexio alert bots to automate order execution on major crypto exchanges (or any other supported broker).
Visual Reference
• A condition table at the bottom summarizes active signals.
• Statistics Label updates automatically as trades are closed, showing PnL stats and distribution metrics.
Backtesting Guidelines
Symbol/Timeframe: Works on multiple assets and timeframes; always do thorough testing.
Realistic Costs: Adjust commissions and potential slippage to match typical exchange conditions.
Risk Management: If using the built-in stop-loss/take-profit, set percentages that reflect your personal risk tolerance.
Longer Test Horizons: Verify performance across diverse market cycles to gauge reliability.
Example of statistic calculation
Test Period: 2023-01-01 to 2025-12-31
Initial Capital: $1,000
Commission: 0.1%, Slippage ~5 ticks
Trade Count: 680 (varies by strategy conditions)
Win rate: 75.44% (varies by strategy conditions)
Net Profit: +90.14% (varies by strategy conditions)
Disclaimer
This indicator is provided strictly for informational and educational purposes.
It does not constitute financial or trading advice.
Past performance never guarantees future results.
Always test thoroughly in demo environments before using real capital.
Enjoy exploring the Multi-Indicator Signal Builder! Experiment with different indicator combinations and adjust parameters to align with your trading preferences, whether you trade manually or link your alerts to external automation services. Happy trading and stay safe!
Cody Order Block FinderCody Order Block Finder
Free Telegram Trading Community t.me
Overview
A professional order block detection indicator that identifies institutional supply and demand zones on any timeframe. This tool helps traders spot key reversal areas where institutional orders are likely placed, providing strategic levels for limit order entries.
Key Features
🔍 Smart Order Block Detection
Bullish Order Blocks: Identifies the last bearish candle before consecutive bullish candles
Bearish Order Blocks: Identifies the last bullish candle before consecutive bearish candles
Configurable Sensitivity: Adjust the number of consecutive candles required (1-50 periods)
Minimum Move Filter: Set percentage threshold to filter only significant moves
🎨 Visual Customization
Multiple Color Schemes: Choose from DARK, BRIGHT, or NEON themes
Customizable Display: Show/hide bullish/bearish channels
Line Extension: Extend OB lines to current bar for better visibility
Historical View: Toggle between showing all historical OBs or only the latest ones
📊 Advanced Filtering
OB Size Filter: Set minimum and maximum order block size as percentage of price
ATR Filter: Filter OBs based on Average True Range multiples
OB Strength Indicator: Color-coded OBs based on subsequent price move strength
Wick/Body Selection: Choose to mark OBs using whole candle range or body only
🔔 Alert System
Real-time Alerts: Get notified immediately when new order blocks form
Customizable Messages: Set your own alert messages
Once-per-OB Option: Prevent alert spam with single alert per OB
📈 Display Features
Three-Line Channels: Shows high, low, and average levels for each OB
Visual Shapes: Clear triangle markers above/below candles
Info Panel: Displays latest OB statistics in a clean table format
Data Window Info: View OB levels in TradingView's data window
How to Use
Setup
Add indicator to your chart
Configure periods (default: 5) - higher values = fewer but stronger OBs
Set minimum % move (default: 0%) to filter significant moves
Choose color scheme for your preference
Trading Applications
Limit Order Placement: Place buy limits at bullish OB lows, sell limits at bearish OB highs
Stop Loss Reference: Set stops beyond OB extremes
Reversal Confirmation: Use OBs as confluence with other indicators
Support/Resistance: OB levels often act as future support/resistance
Advanced Tips
Combine with volume profile for higher probability zones
Use on higher timeframes (4H, Daily) for more significant levels
Look for OBs at key Fibonacci levels for added confluence
Monitor price reactions when revisiting OBs
Technical Details
Programming Language: Pine Script v6
Overlay: Yes (draws directly on price chart)
Max Lines: 500 (prevents chart clutter)
Timeframe Compatibility: All timeframes (1min to Monthly)
Market Compatibility: Forex, Stocks, Crypto, Futures
Input Parameters
Basic Settings
Relevant Periods: Number of consecutive candles required (1-50)
Min. Percent move: Minimum % move to validate OB (0.0-100.0)
Color Scheme: DARK, BRIGHT, or NEON color themes
Display Options
Show latest Bullish/Bearish Channel: Toggle channel display
Extend OB lines to right: Extend lines to current bar
Show all historical OBs: Display all OBs or only latest
Use whole range: Use High/Low or Open/Close for OB marking
Advanced Filters
Min/Max OB size (%): Filter by order block size
Use ATR filter: Filter based on volatility
Show OB Strength: Color code by subsequent move strength
Alert Configuration
Create alerts directly from the indicator by clicking "Create Alert" button on chart:
Bullish OB alerts when green triangle appears
Bearish OB alerts when red triangle appears
Includes price and OB level information
Best Practices
Higher Timeframes First: Start on daily/4H to identify major levels
Multiple Confluence: Combine with trend lines, Fibonacci, or moving averages
Patience: Wait for price to return to OB levels for entries
Risk Management: Always use appropriate position sizing and stops
Support & Updates
For updates and support, visit the script page. The indicator is regularly maintained for optimal performance across all markets and timeframes.
Perfect for: Swing traders, position traders, institutional traders, and anyone looking to trade with the "smart money" flow using order flow concepts.
Trading Styles: Works with all styles - scalping, day trading, swing trading, and investing.
Experience Level: Suitable for beginners to advanced traders with clear visual cues and customizable settings.






















