FVG Scanner CareCA Fair Value Gap detection indicator that identifies institutional order flow imbalances by highlighting price gaps where buyers or sellers overwhelmingly dominated. It marks bullish FVGs (green gaps where buyers controlled) and bearish FVGs (red gaps where sellers controlled), providing clear visual zones for potential support/resistance retests and institutional entry points.
Perfect for identifying smart money footprints and combining with other indicators to find high-probability reversal zones during scalping.
Educational
ICT Liquidity + BOS + FVG + Entries (NY)ICT Liquidity + BOS + FVG + Entries (NY Session)
This indicator is designed for ICT / Smart Money Concepts traders, focusing on high-probability New York session setups, especially for Gold (XAUUSD) on lower timeframes like M5.
It automates the classic ICT execution model:
Liquidity → Break of Structure → Fair Value Gap → Entry
DAS Levels and BoxesTrading levels mainly used to trade MNQ Futures plus 1-Hour & 4-Hour price range boxes. I define the day trading range from 6:30AM PST to 1PM PST. I define the overnight range from midnight PST to 6:30AM PST. I define the futures market entire range as starting at 3PM PST going overnight and ending at 2PM PST the following day.
The 1-hour box is for scalping and catching smaller moves and are more risky. Enter long or short trade upon 1-hour candle close above & below the mid-line, respectively.
The 4-hour box is for catching larger moves and require more patience. Enter long or short trade upon 4-hour candle close above & below the mid-line, respectively. This is my first indicator so be patient. These are the lines and boxes that I use to trade so I thought it would save time to have them all present in one indicator. This is set up with Pacific Standard Time as default. I may need to adjust later for day light savings time.
Levels include:
Previous Day Low (PDL)
Previous Day High (PDH)
Overnight Low (ONL)
Overnight High (ONH)
Open AM Price
Open PM Price
Pullback Finder CareCA multi-timeframe pullback detection indicator that identifies optimal entry points during trend corrections. It combines daily trend analysis with intraday momentum, volume, and RSI conditions to pinpoint high-probability reversal points when price pulls back against the primary trend direction.
Perfect for traders looking to buy dips in uptrends or sell rallies in downtrends with precise timing and trend confirmation.
Multi-Filter Slope Master CareEA professional-grade momentum indicator that combines smart EMA slope calculations with multiple confirmation filters to deliver clean, actionable trading signals. It analyzes the rate of change of key EMAs (9, 20, 50) using advanced slope calculations, filters out noise with customizable thresholds, and adds multi-timeframe trend alignment, volume confirmation, and session-based filters to ensure you only trade high-probability setups.
Perfect for scalpers and swing traders who want to catch momentum shifts while avoiding false signals during choppy markets.
EMA Slope CheckerWhat it does: Shows slope/angle of EMA 9, 20, and 50 simultaneously on separate lines.
What it tells you:
EMA 50 slope = Trend direction (bullish/bearish)
EMA 20 slope = Setup strength at FVG zones
EMA 9 slope = Entry timing/momentum
Key feature: Table with arrows showing if each EMA is rising (↑) or falling (↓).
For your FVG system: Tells you if all 3 EMAs are aligned before entering a trade.
PDH/PDL + PSH/PSL + Session Opens (UTC+10)PDH / PDL (Previous Day High/Low)
“Day” = your trade day that starts at Asia open 09:00 Brisbane.
At each new Asia open, it:
Locks yesterday’s high/low as PDH/PDL
Draws two horizontal lines labeled PDH and PDL
PSH / PSL (Previous Session High/Low)
Tracks the High/Low of each session:
Asia 09:00–17:00
London 18:00–23:00
NY Futures 23:00–00:30
NYSE 00:30–01:00
When a session ends, it stores that high/low.
At the next session open, it prints the previous session levels:
At London open → shows PSH/PSL ASIA
At NY Futures open → shows PSH/PSL LON
At NYSE open → shows PSH/PSL NY
At Asia open → shows PSH/PSL NYSE
Session open markers (vertical lines)
Draws an opaque-ish vertical line + tiny label at:
09:00 “ASIA 09:00”
18:00 “LON 18:00”
23:00 “NY 23:00”
00:30 “NYSE 00:30”
Line behavior
Horizontal lines extend to the right by extendBars (default 500 bars).
Labels are small and minimal (left-anchored on the line).
ADX MomentumBlue: ADX is Rising (Strong Buy Zone).
White: ADX is Falling (Fade/Take Profit Zone).
Red: Bears are in control
Live Position Sizer (LPS)Description (EN)
(Magyar leíráshoz görgess lejjebb!)
Live Position Sizer (LPS) is a discretionary trading utility designed to visualize risk, reward, and position size directly on the chart in real time.
The indicator draws a TradingView-style long or short position box and calculates the required position size based on your defined capital, maximum risk, stop-loss distance, and a user-defined lot conversion factor.
LPS is intended strictly as a decision-support and risk management tool. It does not place trades or generate automated signals.
Core features:
Automatic Long / Short position visualization
Dynamic Entry, Stop Loss, and Take Profit levels
Real-time position size calculation
Configurable Risk/Reward ratio
Fully customizable colors, transparency, and line styles
Clean, minimal on-chart labels showing direction, RR, and lot size
Only one active position box at a time for a clutter-free chart
Position sizing logic:
TradingView internally calculates position size in units, not broker-specific lots.
To bridge this difference, LPS uses a user-defined “Units per 1 Lot” multiplier.
Examples:
Forex (standard lot): 100000
Gold (XAUUSD): 1 or 100 (broker dependent)
Indices (e.g. NAS100): 1
The indicator first calculates the position size in TradingView units and then converts it to lots using this multiplier.
The displayed lot size is rounded to 0.01 lots.
Stop Loss logic:
The Stop Loss level is derived from the High or Low of a selectable previous candle.
Increasing the bar-back value places the Stop Loss further away, which:
increases stop distance
reduces position size for the same risk
Intended use:
Manual / discretionary trading
Risk management and position sizing
Trade planning and visualization
Educational purposes
Important notes:
This indicator does not execute trades
No alerts or automation by default
Lot size and contract specifications vary by broker
Always verify the exact lot or contract size with your broker before trading
------------------------------------
Description (HU)
A Live Position Sizer (LPS) egy diszkrecionális kereskedést támogató segédindikátor, amely valós időben jeleníti meg a kockázatot, a célárat és a pozícióméretet közvetlenül a charton.
Az indikátor TradingView-stílusú long vagy short pozíció boxot rajzol, és kiszámolja a szükséges pozícióméretet a megadott tőke, maximális kockázat, stop-loss távolság és egy felhasználó által definiált LOT szorzó alapján.
Az LPS nem stratégia, kizárólag döntéstámogató és kockázatkezelési eszköz.
Fő funkciók:
Automatikus Long / Short pozíció megjelenítés
Entry, Stop Loss és Take Profit szintek vizuális ábrázolása
Valós idejű pozícióméret számítás
Állítható Risk/Reward arány
Teljesen testreszabható színek, átlátszóság és vonalstílus
Letisztult chart label (irány, RR, lot méret)
Egyszerre csak egy aktív pozíció box
Pozícióméretezési logika:
A TradingView belsőleg egységekben (units) számol, nem bróker-specifikus LOT-okban.
Ennek kezelésére az LPS egy „Units per 1 Lot” beállítást használ.
Példák:
Forex standard lot: 100000
Arany (XAUUSD): 1 vagy 100 (brókertől függ)
Indexek (pl. NAS100): 1
Az indikátor először TradingView egységekben számol, majd ezt átváltja LOT-ra a megadott szorzó segítségével.
A kijelzett LOT méret 0.01-re van kerekítve.
Stop Loss logika:
A Stop Loss szint a kiválasztott korábbi gyertya high vagy low értékéből kerül meghatározásra.
Nagyobb bar-back érték:
távolabb helyezi a stopot
azonos kockázat mellett kisebb pozícióméretet eredményez
Ajánlott felhasználás:
Manuális, diszkrecionális kereskedés
Kockázatkezelés és pozícióméretezés
Trade tervezés
Oktatási célok
Fontos megjegyzések:
Az indikátor nem köt automatikusan
Alapértelmezetten nincs alert vagy automatizmus
A LOT és contract méret brókerenként eltérhet
Kereskedés előtt mindig ellenőrizd a pontos LOT / contract specifikációt a brókerednél
Pullback Master Pro CareCThe "Pullback Master Pro" indicator identifies strategic pullback trading opportunities by analyzing price retracements within established trends, using a multi-timeframe approach with customizable higher-timeframe filtering to ensure alignment with the dominant market direction. It detects pullback depth, momentum through RSI oversold/overbought conditions, and volume analysis (spikes and dry-ups) to confirm entries, while providing real-time visual signals and a highly configurable information table that users can position in six different screen locations (corners and mid-sides), choose from three size layouts (small, medium, large), adjust font sizes, and personalize with five color themes (dark, light, blue, green, red) for optimal chart integration and readability.
Multi-Filter Slope Master Pro CareC v2This advanced multi-timeframe indicator analyzes EMA slope trends with customizable filtering to identify high-probability trading opportunities. It calculates slope momentum for EMA 9, 20, and 50 using three different methods (Linear Regression, Weighted, or Simple), applies higher timeframe trend filtering and volume confirmation, and presents signals in a highly configurable data table with five color themes and six positioning options. The indicator visualizes filtered slope values while offering comprehensive trend strength analysis through real-time table displays that adapt to different screen sizes and user preferences.
Dual VWAP + Dual ATR % BandsScript is adjusted for 5min time frame, can play around setting to adjust accordingly.
It has
Vwap regular
Vwap with adjustable time period
Bands based on ATR value, ie (if ATR is 10, one can adjust band to VWap+ATR %( adjustable)
ATR% can be adjusted to include daily ATR values in addition to current day ATR based on chart time frame.
The bands can be tied to regular VWAP or period VWAP
Regards
SPX Iron Fly Session TrackerOverview
This indicator provides visual tracking for iron fly option structures designed for SPX 0-day-to-expiration (0DTE) intraday trading. It implements a two-phase position management system that adapts to different market conditions throughout the trading day.
This is a visualization and tracking tool only. It does not execute trades, access real options data, or calculate actual profit and loss. All displayed positions are theoretical representations based on underlying price movement.
Strategy Goal and Context
The Core Objective:
The strategy aims to have SPX price expire within your iron fly positions at end of day. When price expires inside a fly's profit zone (between the wings), that position captures maximum premium. The challenge is that price moves throughout the day, so static positioning rarely succeeds.
The Solution: Active Management
Rather than setting positions and hoping price cooperates, this approach continuously manages and repositions flies to keep price centered within your profit zones. As SPX drifts during the trading session, you add new flies at current price levels and close flies that price has moved away from.
The Goal: Multiple Profitable Expirations
By session end, you want as many flies as possible to have price expire within their center zones. This requires:
Adding new flies as price moves away from existing positions
Closing flies when price crosses beyond their optimal range
Building layered coverage in the afternoon to increase probability of capture
Adapting wing widths to time of day and volatility
The Reality: Capital and Time Intensive
This is not a passive strategy. Successful implementation requires:
Substantial capital (each fly requires margin, multiple flies compound this)
Active monitoring throughout trading sessions
Quick decision-making as positions trigger
Multiple position adjustments per session
Disciplined adherence to management rules
How This Indicator Helps:
For backtesting:
Use replay mode to study how positions would have managed on historical sessions
Test different parameter combinations to find optimal settings
Observe position behavior during various market conditions
Understand timing and frequency of position adds and closes
Validate whether your capital can support the required position count
For live session support:
Real-time visual tracking shows current position coverage
Alerts notify you immediately when new positions should be added
Position closure alerts help you manage exits promptly
Reference strike tracking shows where you're measuring movement from
History table provides audit trail of all position activity
The indicator handles the complex tracking and rule application, allowing you to focus on execution and risk management.
Key Use Cases
1. Replay Mode - Backtest and Study
Use TradingView's replay feature to validate the strategy on historical sessions:
Step through past SPX sessions bar-by-bar
See exactly when positions would have opened and closed
Count how many flies would have expired profitably
Analyze different parameter settings on the same historical data
Study position behavior during trending vs ranging conditions
Calculate approximate capital requirements for your setup
Refine your parameters before risking real capital
2. Live Session Alerts
Set up real-time notifications for active trading sessions:
Get alerted immediately when new positions trigger
Receive notifications when positions close
Alerts include strike level, wing width, and closure reason
Works on mobile, desktop, email, or webhook
Never miss a position signal during active trading
Maintain awareness even when away from screens briefly
3. Fully Customizable Parameters
Adapt every aspect to your risk tolerance and capital:
Adjust trigger distances for more or fewer position adds
Modify wing widths for different volatility environments
Change session timing to match your trading schedule
Set maximum concurrent positions to your capital limits
Fine-tune spacing to match available strike increments
Iron Fly Structure
An iron fly is a neutral options strategy with four legs:
- Short 1 ATM Call
- Short 1 ATM Put
- Long 1 OTM Call (upper wing protection)
- Long 1 OTM Put (lower wing protection)
The structure creates a defined risk zone. Maximum profit occurs when price expires at the center strike. Loss increases as price moves toward the wings (breakeven points). Maximum loss is defined and occurs beyond the wings.
Expiration Goal:
You want SPX to close inside the fly's wings. If SPX expires at the strike, you capture maximum premium. If SPX expires between the strike and either wing, you still profit (reduced). If SPX expires beyond the wings, you realize a loss (but it's defined and limited by the wings).
Two-Phase Management System
The indicator tracks positions across two distinct trading phases with different management rules:
Phase 1: TWO_GLASS - Morning Session (Default 10am-1pm ET)
Conservative positioning with active repositioning:
- Trigger new positions when price moves 7.5 points from reference strike (configurable)
- Maintain maximum 2 concurrent positions (configurable)
- 10-point spacing between position strikes (configurable)
- 40-point wing width (configurable)
- Exit rule: When two positions are active and price crosses to one strike level, close the OTHER position
This phase uses a "follow the price" approach. You're not trying to stack multiple positions yet - you're maintaining one or two flies centered on wherever price currently is. As price drifts, you add a new fly at the current level and close the old one when price moves too far away.
Phase 2: THREE_GLASS - Afternoon Session (Default 1pm-4pm ET)
Accumulation mode with layered coverage:
- Trigger new positions every 2.5 points of price movement (configurable)
- Maintain maximum 6 concurrent positions (configurable)
- 5-point spacing between strikes (configurable)
- 20-point wings early, reducing to 10 points after 3pm (configurable)
- Exit rule: Positions only close when price reaches wing extremes
This phase builds a stacked profit zone. Instead of swapping positions, you accumulate multiple flies as price moves. The goal is to have several flies active at expiration, creating a wider net to capture price. Tighter spacing and more frequent triggers create this layered coverage.
Why Two Different Phases?
Morning (Phase 1):
Earlier in the day, price has more time to move substantially. Maintaining many concurrent positions is riskier because price could trend and hit multiple wings. The strategy uses selective positioning with wider wings and active replacement.
Afternoon (Phase 2):
Closer to expiration, price movements typically compress. Time for large moves decreases. The strategy shifts to accumulation, building a net of positions to increase probability that final expiration price falls within at least one (ideally several) of your flies. Tighter wings and more positions become appropriate.
Exit Mechanisms
Strike Cross Exit (Phase 1 Only)
When two positions are active, if price moves to or beyond one position's strike level, the OTHER position closes. This keeps your coverage centered on current price action rather than maintaining positions price has moved away from.
Example: Flies at 5900 and 5910 are open. Price moves to 5910. The fly at 5900 closes because price has moved to the 5910 level. You're now positioned at current price (5910) rather than maintaining coverage at old price (5900).
Wing Extreme Exit (Both Phases)
Any position closes immediately when price touches its upper or lower wing boundary. This represents the breakeven/maximum loss point, so the position is closed to prevent further deterioration.
Dynamic Wing Adjustment
Wing widths automatically adjust based on time of day:
- Phase 1 (Morning): 40 points (customizable)
- Phase 2 Early (1pm-3pm): 20 points (customizable)
- Phase 2 Late (3pm-4pm): 10 points (customizable)
This progressive tightening reflects decreasing price movement potential as expiration approaches. Wider wings earlier provide more protection when price could move substantially. Tighter wings later allow more precise positioning when price movements typically compress.
All values are fully adjustable to match your risk parameters and observed market volatility.
Customization Guide
Every parameter can be modified to suit your trading style, risk tolerance, and capital:
Session Timing
- TWO_GLASS Start Hour: When Phase 1 begins (default: 10am ET)
- THREE_GLASS Start Hour: When Phase 2 begins (default: 1pm ET)
- Wing Width Change Hour: When wings tighten (default: 3pm ET)
- Session End Hour: When tracking stops (default: 4pm ET)
Phase 1 Parameters (Fully Adjustable)
- Trigger Distance: How far price must move from reference strike to add new position (default: 7.5, range: 0.1+)
- Fly Spacing: Distance between position strikes (default: 10, range: 1.0+)
- Wing Width: Distance from strike to wings (default: 40, range: 5.0+)
- Max Flies: Maximum concurrent positions (default: 2, range: 1-10)
Phase 2 Early Parameters (Fully Adjustable)
- Trigger Distance: Movement needed to add new position (default: 2.5, range: 0.1+)
- Fly Spacing: Distance between strikes (default: 5, range: 1.0+)
- Wing Width: Strike to wing distance (default: 20, range: 5.0+)
- Max Flies: Maximum concurrent positions (default: 6, range: 1-20)
Phase 2 Late Parameters
- Wing Width: Reduced width after 3pm (default: 10, range: 5.0+)
General Settings
- Strike Rounding: Round strikes to nearest multiple (default: 5.0, range: 1.0+)
- Bars Before Check: Bars to wait before allowing closure (default: 2, prevents premature exits)
Display Options
- Show History Table: Toggle detailed position log (default: on)
- History Table Rows: Number of positions displayed (default: 15, range: 5-30)
Alert Settings
- Enable Alerts: Toggle notifications for opens/closes (default: on)
How to Use
For Backtesting in Replay Mode:
Select a historical SPX trading session
Apply indicator to 1-5 minute timeframe
Configure your preferred parameters
Activate TradingView's replay feature
Play through the session (step-by-step or continuous)
Observe when positions open (green boxes appear)
Watch position closures (boxes turn gray)
Count how many flies would have expired with price inside (green at session end)
Note total number of position adds throughout session
Calculate approximate capital needed (positions × margin per fly)
Test different parameter combinations on same historical data
Study position behavior during trending vs ranging sessions
For Live Trading Sessions:
Apply indicator to SPX on 1-5 minute timeframe
Configure parameters based on your backtest results
Create alerts for "Iron Fly Opened" and "Iron Fly Closed"
Set alert frequency to "Once Per Bar Close"
Choose notification method (popup, mobile app, email, webhook)
Monitor the status table (top-right) for current session and reference strike
Review history table (bottom-right) for position log with timestamps
When alert triggers, use visual cues to manually place actual option orders
Execute position adds and closes as indicated by the tracker
Visual Interpretation:
Green boxes = Active positions (theoretical profit zones)
White lines (Phase 1) / Aqua lines (Phase 2) = Strike levels
Red/Blue dotted lines = Wing boundaries (breakeven/risk limits)
Gray boxes = Closed positions (historical reference)
Current SPX price line = Shows where price is relative to positions
Top-right table = Current session status, reference strike, open/closed counts
Bottom-right table = Complete position history with open/close timestamps
Alert System Details
The indicator generates detailed alert messages for position management:
Position Opened:
- Strike level where fly should be placed
- Wing width (±points from strike)
- Session phase (Phase 1 or Phase 2)
- Alert format example: "Iron Fly OPENED | Strike: 5900 | Wings: ±40 | Session: TWO_GLASS"
Position Closed:
- Strike level of fly being closed
- Closure reason (strike cross, wing extreme, etc.)
- Session phase
- Alert format example: "Iron Fly CLOSED | Strike: 5900 | Reason: Price crossed to lower fly | Session: TWO_GLASS"
Configure alerts once before market open, then receive automatic notifications as positions trigger throughout the trading session.
Parameter Optimization Suggestions
For Higher Volatility Environments:
- Increase trigger distances (e.g., Phase 1: 10-15 points, Phase 2: 3-5 points)
- Widen wing widths (e.g., Phase 1: 50-60 points, Phase 2: 25-30 points early, 15-20 late)
- Increase strike spacing to reduce position frequency
For Lower Volatility Environments:
- Decrease trigger distances (e.g., Phase 1: 5-7 points, Phase 2: 1.5-2 points)
- Tighten wing widths (e.g., Phase 1: 30-35 points, Phase 2: 15-18 points early, 8-10 late)
- Reduce strike spacing for more granular coverage
For Conservative Risk Management:
- Reduce maximum concurrent positions (Phase 1: 1, Phase 2: 3-4)
- Widen wing widths for more breathing room
- Increase bars before check to avoid whipsaws
- Use wider trigger distances to reduce position frequency
For Aggressive Positioning:
- Increase maximum concurrent positions (Phase 2: 8-10)
- Tighten trigger distances for more frequent adds
- Reduce bars before check for faster responses
- Use tighter spacing to create denser coverage
Capital Considerations:
Remember that each fly requires margin. If Phase 2 allows 6 concurrent flies and each requires $10,000 margin, you need $60,000 in available capital just for position requirements, plus additional cushion for adverse movement.
Use replay mode to count maximum concurrent positions that would have occurred on historical sessions with your parameters, then calculate total capital needed.
Practical Application
This tool provides visual guidance and management support. To implement the strategy:
Backtest thoroughly in replay mode first
Validate capital requirements for your parameter settings
Confirm you can actively monitor positions during trading hours
Use displayed positions as reference for manual order placement
Match indicator parameters to your actual option contracts
Account for real-world factors: commissions, slippage, bid-ask spreads, option availability
Implement proper position sizing based on available capital
Set up alerts before market open to catch all signals
Execute actual trades manually in your brokerage platform
Track actual results versus indicator expectations
Important Limitations
Theoretical tracking only - not an automated trading system
No access to real option prices, Greeks, or implied volatility
No profit/loss calculations or risk metrics
Does not account for time decay (theta), delta, gamma, vega changes
Assumes continuous price action - gaps or halts not handled
Designed for 0DTE SPX options - not suitable for other timeframes or instruments
Assumes option availability at all strike levels - may not reflect reality
Does not model actual option bid/ask spreads or liquidity
Assumes instant execution at desired strikes - slippage not considered
Historical replay shows theoretical behavior only - actual market conditions may differ
Does not adjust for changing implied volatility throughout session
Position count and timing may not match what's executable in real markets
Capital and Time Requirements
This strategy is resource-intensive:
Capital Requirements:
Each iron fly requires margin (varies by broker and strike width)
Multiple concurrent positions multiply capital needs
Example: 6 flies at $10,000 each = $60,000 minimum
Additional cushion needed for adverse movement
Pattern Day Trader rules may apply (requires $25,000 minimum)
Time Requirements:
Active monitoring during trading hours (typically 10am-4pm ET)
Quick response to position add/close signals
Multiple position adjustments per session possible
Cannot be passive or set-and-forget
Requires ability to place orders promptly when alerted
Use replay mode to understand the commitment level before attempting live implementation.
Risk Considerations
Iron fly trading involves substantial risk. This indicator provides visualization and management support only - it does not constitute financial advice or trading recommendations.
Options trading can result in total loss of capital. The indicator's theoretical positions do not reflect actual trading results. Backtest analysis and historical visualization do not guarantee similar future outcomes. Multiple concurrent positions multiply both profit potential and loss risk.
Always conduct independent research, understand all risks, validate capital requirements, and never trade with funds you cannot afford to lose. Consider starting with paper trading to validate execution capability before risking real capital.
Technical Notes
The indicator uses price-based triggers only. It does not:
Connect to options data feeds
Calculate theoretical option values or Greeks
Execute trades automatically
Provide specific trading signals or recommendations
Account for option-specific factors (implied volatility, time decay, bid/ask spreads)
All displayed information represents theoretical position placement based solely on underlying SPX price movement and user-configured parameters. The tool helps visualize the management framework but requires the trader to handle all actual execution and risk management decisions.
This is an educational and analytical tool for understanding iron fly position management concepts. It requires active interpretation, backtesting validation, and manual implementation by the user.
FVG Scanner CareCA Fair Value Gap detection indicator that identifies institutional order flow imbalances by highlighting price gaps where buyers or sellers overwhelmingly dominated. It marks bullish FVGs (green gaps where buyers controlled) and bearish FVGs (red gaps where sellers controlled), providing clear visual zones for potential support/resistance retests and institutional entry points.
Perfect for identifying smart money footprints and combining with other indicators to find high-probability reversal zones during scalping.
QQQ 2025 Bucket ATR (Price & Volume) + Today ComparisonHow to interpret the table
For each bucket row (e.g. 09:30–10:30):
Price ATR (Y) → typical price move for that bucket across all 2025 sessions
Vol ATR (Y) → typical change in that bucket’s volume vs the previous day
Avg Vol (Y) → average total volume traded in that bucket
Today Price TR → today’s actual true range move in that bucket
Today Vol ATR → today’s volume change vs yesterday’s volume in that bucket
Today Vol → today’s raw volume for that bucket
So you can eyeball stuff like:
“9:30–10:30 today did 1.5× its usual range and 2× its usual volume, but midday buckets were dead.”
Last Swing Anchor Zones - EnhancedLast Swing Anchor Zones automatically identifies major swing highs and lows on your chart and draws shaded reaction zones around them. These zones represent potential support and resistance areas where price may react.
How It Works:
• Detects pivot points using a customizable lookback period (default: 6 bars)
• Creates semi-transparent zones around each swing point
• Displays up to 3 most recent zones (configurable)
• Shows price labels for quick reference
• Zones extend forward to highlight future price interaction areas
How to Use:
• Teal/cyan zones = resistance levels (swing highs)
• Red/pink zones = support levels (swing lows)
• Look for price reactions when approaching these zones
• Use as confluence with your existing trading strategy
• Adjust zone width % to match your timeframe and volatility
Customizable Settings:
• Pivot Lookback: Change sensitivity (lower = more zones, higher = fewer major swings)
• Zone Width %: Adjust zone thickness
• Max Zones: Display 1-10 recent zones
• Colors: Customize zone and label colors
• Show Labels: Toggle price labels on/off
QUARTERLY THEORY TRUE OPENSQUARTERLY THEORY TRUE OPENS
Multi-cycle True Open indicator based on quarterly cycle theory, with precise cycle-begin termination logic.
OVERVIEW
TRUE OPENS (Cycle Q2) plots the True Open (Q2 open) across multiple market cycles and extends each level only until the next cycle begins.
This mirrors how price actually respects quarterly structure: a True Open is relevant only within its active cycle.
The indicator uses New York (exchange) time, is DST-aware, and relies on a 1-minute event engine to ensure accuracy and visibility across all intraday and higher timeframes — even when candle opens do not align with exact timestamps (e.g., 4H, Daily, Weekly charts).
WHAT IS A TRUE OPEN?
In quarterly cycle theory, each cycle is divided into four quarters (Q1–Q4).
The Q2 opening price — the True Open — often acts as:
A gravitational price level
A premium/discount reference
A mean price the market revisits during the cycle
This indicator tracks those Q2 opens across Micro, Session, Daily, Weekly, Monthly, and Yearly cycles, while respecting each cycle’s actual beginning and end.
CYCLES & DEFINITIONS
All times are New York (Exchange Time).
Micro Cycle
True Opens (Q2):
:22:30 and :52:30
Automatically rounded down on the 1-minute chart (:22, :52)
Cycle Begins:
18:45, 19:30, 20:15, 21:00
Repeats every 45 minutes, anchored at 18:45
Session Cycle (6-Hour)
True Opens (Q2):
19:30, 01:30, 07:30, 13:30
Cycle Begins:
18:00, 00:00, 06:00, 12:00
Daily Cycle
True Open (Q2):
00:00
Cycle Begins:
18:00
Weekly Cycle
True Open (Q2):
Monday 18:00
Cycle Begins:
Sunday 18:00
Monthly Cycle
True Open (Q2):
Second Monday of the month at 00:00
Cycle Begins:
First Sunday of the month at 18:00
Yearly Cycle
True Open (Q2):
First weekday of April at 00:00
Cycle Begins:
First Sunday of the year at 18:00
VISUAL LOGIC
Each True Open is plotted as a horizontal dotted line
The line:
Starts exactly at the True Open candle
Ends automatically when the next cycle begins
When a cycle ends, its line is finalized (solid)
Each cycle is handled independently
Optional labels are placed just after the line end, aligned mid-right
LABELS
Optional, concise labels for clarity:
TMSO — Micro True Open
TSO — Session True Open
TDO — Daily True Open
TWO — Weekly True Open
TMO — Monthly True Open
TYO — Yearly True Open
Text size is fully configurable (Tiny → Large).
TIMEFRAME VISIBILITY (AUTO MODE)
To keep charts clean and relevant, cycles auto-hide above sensible timeframes:
Micro: ≤ 1-minute
Session: ≤ 5-minute
Daily: ≤ 15-minute
Weekly: ≤ 1-hour
Monthly: ≤ 4-hour
Yearly: ≤ Weekly
A Custom mode allows full manual control.
TECHNICAL FEATURES
Pine Script v6
No repainting
No future leakage
No bar-index assumptions
DST-aware New York time handling
1-minute event engine ensures:
Monthly levels appear on 4H charts
Yearly levels appear correctly when history exists
Performance-safe (no loops, no heavy arrays)
HOW TO USE
Use Micro & Session True Opens for precision intraday entries
Use Daily & Weekly True Opens for bias and mean-reversion context
Look for confluence when multiple True Opens align near the same price
Respect cycle boundaries — once a cycle begins, its prior True Open loses relevance
IMPORTANT NOTES
Yearly True Opens require chart history that includes April
Continuous contracts (e.g., ES1!, NQ1!) are recommended for futures
Works on Forex, Futures, Indices, Crypto, and Stocks
DISCLAIMER
This indicator is for educational and informational purposes only.
It does not constitute financial advice. Past performance is not indicative of future results.
Always manage risk responsibly.
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
DI +/- Breakout SignalBreakout Signals based on the DI+ and DI- values cross and pass the treshold. Signals will be displayed when bullish and bearish momentum start building, move the mouse over the signal for explanation. For better results use along with other confirmation indicators like MACD and VWAP.
ICT CISD+FVG+OBThis script is a high-performance ICT suite designed for traders who want a professional, "noise-free" chart. It identifies core institutional patterns—Order Blocks, Fair Value Gaps, and Changes in State of Delivery (CISD)—across multiple timeframes.
The script features a proprietary Proximity Cleanup Engine that automatically deletes old or broken levels, keeping your workspace focused only on price action that is currently tradeable. It strictly follows directional delivery rules for CISD and includes a 50-candle "freshness" limit to ensure you never have to manually clear old data from your past bars.
Core Features
Intelligent CISD: Only triggers Bullish CISD on green candles and Bearish CISD on red candles.
Proximity Filter: Automatically wipes away any levels that are "miles away" from the current price.
Clean Workspace: Removes broken session highs/lows and mitigated zones instantly.
Full Customization: Toggle visibility and colors for every component via the settings menu.
Multiple SMA (5, 8, 13, 21) with LabelsThis setup (5–8–13–21) SMA is popular for short-term / intraday trend structure
Labels appear only on the latest candle
No syntax errors, no repainting






















