Advanced custom multi MA signals (EMA/SMA/VWMA/VWAP) Features of Multi Moving Averages
The biggest enemy in trading is "Noise." If you get swayed by minute fluctuations on the chart, you end up missing the forest for the trees.
This indicator (Advanced Custom Multi MA Signals) is not just a simple line. By combining the three core elements of Price, Time, and Volume, it acts as a navigation system that visualizes the market's "true trend." In particular, the ability to analyze 5 moving averages simultaneously across various timeframes is akin to viewing a 3D map of the battlefield.
Understanding Core Concepts
This indicator supports 4 types of moving averages. It is crucial to clearly understand the nature of each tool.
SMA (Simple Moving Average): The most basic average value. Since it produces fewer whipsaws (false signals), it is used as a baseline to judge the "long-term trend."
EMA (Exponential Moving Average): Places more weight on recent prices. It reacts sensitively to market changes, making it advantageous for identifying "entry points."
VWMA (Volume Weighted Moving Average): Incorporates "volume" into the price calculation. It acts as a "false signal filter," weeding out price moves that aren't backed by trading volume.
VWAP (Volume Weighted Average Price): The benchmark price used by institutional investors for daily trading. It is calculated based on the session, regardless of the period settings. It is considered the "lifeline" of day trading.
Indicator Settings Guide
Open the settings window and tune it to fit your trading style.
MA 01 ~ 05 (Moving Average Settings)
MA Type: Select according to your purpose. (Generally, EMA is recommended for short-term analysis, SMA/VWMA for long-term).
Length: Enter the period you wish to analyze (e.g., 20, 60, 120, 200).
Timeframe: This is the core feature. It allows you to overlay moving averages from a higher timeframe (e.g., 4-hour, Daily) onto the chart you are currently viewing (e.g., 15-minute).
Signal Option (Trading Signals)
Golden Cross (GC) / Death Cross (DC): Captures the moment the short-term line breaks through the long-term line. You can run up to 3 strategies simultaneously.
Ribbon Gradient (Trend Visualization)
Represents the gap between two moving averages with color. As the color deepens and the width expands, it indicates a powerful trend; if the width narrows, it suggests a high probability of a trend reversal.
5 Usage Strategies
The highlight of this indicator is the cross strategy utilizing the "Multi-Timeframe (MTF)" feature. Familiarize yourself with the 5 example strategies below and set up your own strategy based on your expertise.
💡 Tip 1. Do not go against the "Major Trend" (The Authority of the Weekly Candle)
Settings: Set MA5 to .
Interpretation: The Weekly 50 line is the "major trend line" managed by institutions and market makers. If the current price is above this line, maintain only a "Buy (Long)" bias; if below, maintain only a "Sell (Short)" bias. Adhering to this rule alone can help you avoid massive losses.
💡 Tip 2. Highly Reliable "Swing Signal" (Daily Golden Cross)
Settings: In Signal 1, configure the Short MA to and the Long MA to .
Interpretation: A Golden Cross where the 4-Hour 50 EMA breaks above the Daily 50 EMA often signifies a major "trend reversal" rather than a temporary rebound. This provides an ideal entry signal for office workers or swing traders who need high reliability.
💡 Tip 3. 4-Hour Candle as the Standard for "Precision Entry"
Situation: When the Daily trend is rising (Bullish alignment).
Strategy: While watching the 15-minute or 1-hour chart, set the indicator's Signal 2 to the cross of and .
Interpretation: When the Daily chart is in an uptrend, a Golden Cross occurring on the 4-Hour chart marks "the point where a correction (pullback) ends and the rise resumes." This is the entry point with the best risk-to-reward ratio.
💡 Tip 4. Filtering Out "Fake Signals" (The Secret of Volume)
Strategy: When creating a cross signal, try using VWMA (Volume Weighted) for the Long MA, even if you use EMA for the Short MA.
Reason: A Golden Cross caused simply by a rise in price can be a trap. However, if it breaks through the heavy VWMA line accompanied by volume, it is strong evidence that "genuine liquidity" has entered.
💡 Tip 5. Remember the "Hierarchy" (Higher Timeframe Priority Rule)
Principle: If a Golden Cross (Buy Signal) appears on the 4-Hour chart, but the Daily chart is in a Death Cross (Sell Signal) state, do not enter.
Interpretation: A signal from a lower timeframe cannot overcome the power of a higher timeframe. The professional approach is to trade with significant volume only when signals align (Sync) in the order of Weekly > Daily > 4-Hour. Keep this indicator's dashboard feature on and always check the status of higher timeframes.
Signal Generation Principle (Operating Mechanism)
Signals are generated when the set short-term moving average and long-term moving average cross each other.
📈 1. Golden Cross (BUY = Buy Signal)
Situation: The moment the short-term MA crosses upward from below the long-term MA.
Principle: It implies that recent buying pressure has broken through the resistance level accumulated over a long period.
📉 2. Death Cross (SELL = Sell Signal)
Situation: The moment the short-term MA crosses downward from above the long-term MA.
Principle: It implies that recent selling pressure has collapsed the long-term support line.
※ If the candles are not displaying correctly or are flickering, please set the indicator's 'Visual order' to 'Bring to front' as shown in the image below.
Investment Caution and Disclaimer
Before using this indicator for actual trading, please strictly read the contents below.
① Auxiliary indicators are a "Compass," not a "Book of Prophecy."
This indicator is merely a tool that mathematically calculates and visualizes past price data. A "magic indicator" that predicts future price fluctuations 100% accurately or guarantees profit does not exist. The signals provided are for reference only and must never be the sole basis for entry/exit decisions.
② The responsibility for all investments lies with "Yourself."
Financial investment (Cryptocurrencies, Stocks, Futures, etc.) involves high volatility and is a risky activity that can result in the loss of some or all of the principal. The final responsibility for all trading results (profits and losses) incurred by utilizing this indicator lies entirely with the investor. The distributor and developer accept no legal responsibility for investment results under any circumstances.
③ Past data does not guarantee the future.
Even a Golden Cross that fit perfectly in backtesting or past charts may operate differently in tomorrow's market situation (News, Macroeconomics, Unexpected Variables, etc.). Do not rely solely on technical analysis; you must conduct fundamental analysis and risk management in parallel.
④ Risk management is the top priority.
No matter how promising a signal appears, "all-in trading" (investing all assets in a single trade) is a shortcut to bankruptcy. More important than the indicator itself is adhering to the principles of strict scaling in (split buying) and Stop-Loss.
图表形态
Quasimodo (QML) Pattern [Kodexius]Quasimodo (QML) Pattern is a market structure indicator that automatically detects Bullish and Bearish Quasimodo formations using confirmed swing pivots, then visualizes the full structure directly on the chart. The script focuses on the classic liquidity-grab narrative of the QML: a sweep beyond a prior swing (the Head) followed by a decisive market structure break (MSB), leaving behind a clearly defined reaction zone between the Left Shoulder and the Head.
Detection is built on pivot highs and lows, so patterns are evaluated only after swing points are validated. Once a valid 4 pivot sequence is identified, the indicator draws the pattern legs, highlights the internal triangle area to emphasize the grab, marks the MSB leg, and projects a QML zone that can be used as a potential area of interest for retests.
This tool is designed for traders who work with structure, liquidity concepts, and reversal/continuation triggers, and who want a clean, repeatable QML visualization without manually marking swings.
🔹 Features
🔸 Confirmed Pivot Based Structure Mapping
The script uses classic built-in pivot logic to detect swing highs and swing lows.
🔸 Automatic Bullish and Bearish QML Detection
The indicator evaluates the most recent 4 pivots and checks for a valid alternating sequence (High-Low-High-Low or Low-High-Low-High). When the sequence matches QML requirements, the script classifies the setup as bullish or bearish:
Bullish logic (structure reversal up):
- Left Shoulder is a pivot Low
- Head is a lower Low than the Left Shoulder (liquidity sweep)
- MSB pivot exceeds the Reaction pivot
Bearish logic (structure reversal down):
- Left Shoulder is a pivot High
- Head is a higher High than the Left Shoulder (liquidity sweep)
- MSB pivot breaks below the Reaction pivot
🔸 Full Pattern Visualization (Legs + Highlighted Core)
When a pattern triggers, the script draws:
Three main legs: Left Shoulder to Reaction, Reaction to Head, Head to MSB
A shaded triangular highlight over the internal structure to make the liquidity-grab shape easy to spot at a glance
🔸 QML Zone Projection
A QML Zone box is drawn using the price range defined between the Left Shoulder and the Head, then extended to the right to remain visible as price develops. This zone is intended to act as a practical reference area for potential retests and reaction planning after MSB confirmation.
🔸 MSB Emphasis
A dotted MSB line is drawn between the Reaction point and the MSB point to visually emphasize the confirmation leg that completes the pattern logic.
🔸 Clean Point Tagging and Directional Labeling
Key points are labeled directly on the chart:
- “LS” at the Left Shoulder
- “Head” at the sweep pivot
- “MSB” at the break pivot
A directional label (“Bullish QML” or “Bearish QML”) is also printed to quickly identify the detected bias.
🔸 Configurable Visual Style
All main visual components are user configurable:
- Bullish and bearish colors
- Line width
- Label size
🔸 Efficient Update Logic
Pattern checks are only performed when a new pivot is confirmed, avoiding unnecessary repeated calculations on every bar. The most recent pattern’s projected elements (zone and label positioning) are updated as new bars print to keep the latest setup readable.
🔹 Calculations
This section summarizes the core logic used for detection and plotting.
1. Pivot Detection (Swing Highs and Lows)
The script relies on confirmed pivots using the user inputs:
Left Bars: how many bars must exist to the left of the pivot
Right Bars: how many bars must exist to the right to confirm it
float ph = ta.pivothigh(leftLen, rightLen)
float pl = ta.pivotlow(leftLen, rightLen)
When a pivot is confirmed, its true bar index is the pivot bar, not the current bar, so the script stores:
bar_index
2. Pivot Storage and History Window
Each pivot is stored as a structured object containing:
- price
- index
- isHigh (true for pivot high, false for pivot low)
A rolling history is maintained (up to 50 pivots) to keep processing stable and memory usage controlled.
3. Sequence Validation (Alternation Check)
The pattern evaluation always uses the latest 4 pivots:
p0: Left Shoulder candidate
p1: Reaction candidate
p2: Head candidate
p3: MSB candidate
Before checking bullish/bearish rules, the script enforces alternating pivot types:
bool correctSequence =
(p0.isHigh != p1.isHigh) and
(p1.isHigh != p2.isHigh) and
(p2.isHigh != p3.isHigh)
This prevents invalid structures like consecutive highs or consecutive lows from being interpreted as QML.
4. Bullish QML Conditions
A bullish QML is evaluated when the Left Shoulder is a Low:
Head must be lower than Left Shoulder (sweep)
MSB must be higher than Reaction (break)
if not p0.isHigh
if p2.price < p0.price and p3.price > p1.price
// Bullish QML confirmed
Interpretation:
p2 < p0 represents the liquidity grab below the prior swing low
p3 > p1 represents the market structure break above the reaction high
5. Bearish QML Conditions
A bearish QML is evaluated when the Left Shoulder is a High:
Head must be higher than Left Shoulder (sweep)
MSB must be lower than Reaction (break)
if p0.isHigh
if p2.price > p0.price and p3.price < p1.price
// Bearish QML confirmed
Interpretation:
p2 > p0 represents the liquidity grab above the prior swing high
p3 < p1 represents the market structure break below the reaction low
6. Drawing Logic (Structure, Highlight, Zone, Labels)
When confirmed, the script draws:
Three connecting legs (LS to Reaction, Reaction to Head, Head to MSB)
A shaded triangle using a transparent “ghost” line to enable filling
A dotted MSB emphasis line between Reaction and MSB
A QML Zone box spanning the LS to Head price range and projecting to the right
Point labels: LS, Head, MSB
A direction label: “Bullish QML” or “Bearish QML”
7. Latest Pattern Extension
To keep the newest setup readable, the script updates the most recently detected pattern by extending its projected elements as new bars print:
QML zone right edge is pushed forward
The main label x position is pushed forward
This keeps the last identified QML zone visible as price evolves, without having to redraw historical patterns on every bar.
HMA vs Candle True CloudHMA vs Candle – Trend Cloud Indicator (Brief Note)
This indicator compares price (candle source) with a long-period Hull Moving Average (HMA) to identify trend direction, momentum shifts, and regime changes.
The HMA, being momentum-sensitive, reacts to changes in price speed, while price itself represents real-time market action.
A dynamic two-way cloud is drawn between price and HMA:
Green cloud when price is above HMA → bullish dominance and accumulation
Red cloud when price is below HMA → bearish control and distribution
The width of the cloud reflects the strength of momentum:
Narrow cloud → compression / consolidation
Expanding cloud → impulse move or trend acceleration
This setup is especially effective on short timeframes with long HMA periods, where it filters noise while preserving early trend signals.
Overall, the indicator acts as a visual trend-momentum framework, highlighting early warnings, trend confirmation, and exhaustion zones in a single view.
GS Tactical Overlay (SMC + Squeeze)designed to sit atop the 6 pillar commander. it will tell you signs for puts and calls
ICT Unicorn Model [Kodexius]ICT Unicorn Model is a market structure and imbalance confluence tool that automatically detects high probability “Unicorn” setups by combining three key elements into a single, clean script:
-A first, clean break of that swing level (displacement style break)
-A Fair Value Gap that overlaps a breaker candle body range
Instead of plotting every pivot or every imbalance independently, the script waits for a specific sequence: price establishes a valid swing, breaks that swing for the first time, and prints a setup only when the resulting context aligns with a valid, volatility filtered FVG and a clearly defined breaker range.
Each detected setup is drawn directly on the chart with labeled zones (Breaker and FVG) and is then actively monitored. If price violates the breaker boundary based on your chosen invalidation basis (Close or Wick), the setup is marked inactive and can optionally be removed to keep the chart clean.
This indicator is designed for traders who work with ICT style concepts such as liquidity runs, displacement, breaker blocks, and imbalance reversion, and who want a structured, rules based visualization rather than discretionary drawing.
🔹 Features
🔸 Fair Value Gap Detection With Volatility Filtering
Bullish and bearish FVGs are detected using classic three candle imbalance logic. To avoid low quality gaps during compression, the script applies an ATR based minimum size filter using the “FVG Min Size (ATR Multiplier)” input. Only gaps larger than ATR * threshold are considered valid.
🔸 First Break Validation (Clean Break Logic)
A key part of the model is identifying a “first break” of a swing level. The script checks whether the swing price has already been invalidated between the swing bar and the current bar. If it has, the swing is ignored. This helps reduce repeated signals and focuses on fresh structural breaks.
🔸 Breaker and FVG Confluence With Overlap Requirement
After a valid break occurs, the script defines a breaker range using the body of the swing candle (open and close). A setup is only created if this breaker body range overlaps the detected FVG price range. This overlap requirement is what filters many “almost” conditions and keeps signals more selective.
Bullish Unicorn:
Bearish Unicorn:
🔸 Configurable Invalidation Basis (Close or Wick)
You can choose how a setup fails:
-Close: invalidation requires a candle close beyond the breaker boundary
-Wick: invalidation occurs as soon as any wick crosses beyond the breaker boundary
This allows the tool to adapt to different trading styles, from conservative confirmation to more sensitive risk control.
🔸 Automatic Cleanup of Failed Setups
If “Delete Invalidated Setups” is enabled, the script removes the breaker box, FVG box, and label as soon as the setup is invalidated. If disabled, the zones remain visible for review while the setup is marked inactive internally.
🔸 Clear Chart Visuals
Each setup plots:
-A labeled Breaker zone box
-A labeled FVG zone box
-A directional Unicorn label (Bull or Bear) that updates position as the chart advances
Colors for bullish and bearish structures are fully configurable.
🔸 Alert Conditions
Two alert conditions are provided:
-Bullish Unicorn Setup Detected
-Bearish Unicorn Setup Detected
Alerts trigger only on the bar a new setup is created.
🔹 Calculations
This section summarizes the main computations used internally. The goal here is to explain the model mechanics rather than reproduce every implementation detail.
1. Swing Detection (Pivot High / Pivot Low)
Swing levels are detected using a symmetric pivot definition with “Swing Length” bars on both sides:
float ph = ta.pivothigh(high, swingLength, swingLength)
float pl = ta.pivotlow(low, swingLength, swingLength)
When a pivot is confirmed, its price and originating bar index are stored:
-Swing High: price = pivot high, isHigh = true
-Swing Low: price = pivot low, isHigh = false
The script keeps a limited history (most recent swings) to stay efficient.
2. Fair Value Gap Detection
FVGs use the classic three candle displacement imbalance:
Bullish FVG condition
bool isBullFVG = high < low
Bullish gap range is defined as:
-Top = low
-Bottom = high
Bearish FVG condition
bool isBearFVG = low > high
Bearish gap range is defined as:
-Top = low
-Bottom = high
3. ATR Based Minimum Gap Filter
ATR is computed (length 14), then the gap size is compared against a user threshold:
float atr = ta.atr(14)
bool validBullFVG = isBullFVG and (bullFvgTop - bullFvgBot) > (atr * fvgThreshold)
bool validBearFVG = isBearFVG and (bearFvgTop - bearFvgBot) > (atr * fvgThreshold)
This prevents very small imbalances from generating setups in low volatility conditions.
4. “First Break” Check Using Level Invalidation Scan
Before accepting a swing break, the script scans forward from the swing bar to the current bar to confirm the level has not already been breached. The scan can be based on wick or close:
-Wick mode: uses high or low
-Close mode: uses close
Conceptually:
priceToCheck = mode == "Wick" ? (checkBelow ? low : high) : close
If a prior breach is found, the swing is treated as already invalidated and is ignored for setup creation.
5. Break Of Structure Condition
Bullish break requirement
A bullish setup requires breaking a stored swing high with bullish body intent:
-close > swingHighPrice
-open < close
Bearish break requirement
A bearish setup requires breaking a stored swing low with bearish body intent:
-close < swingLowPrice
-open > close
An additional proximity filter is applied in the bearish branch to reduce weak or overly extended breaks by requiring the prior close to be reasonably near the swing level.
6. Breaker Range Construction
Once a qualifying swing is found, the breaker range is derived from the body of the swing candle (the candle at the swing bar index). The body boundaries are:
float breakerTop = math.max(bOpen, bClose)
float breakerBot = math.min(bOpen, bClose)
This models the breaker as the candle body range rather than full wick range, which typically produces more practical invalidation boundaries.
7. Overlap Test Between Breaker and FVG
A setup is only created if the breaker body overlaps the FVG zone. Conceptually the script rejects cases where one range is fully above or fully below the other:
-If there is no overlap, no setup is created
-If overlap exists, the Unicorn setup is valid
8. Active Monitoring and Invalidation
Each setup remains active until invalidated. Invalidation is evaluated every bar using your selected basis:
-Close basis: compares close to breaker boundary
-Wick basis: compares high or low to breaker boundary
Bullish invalidation
Setup fails if price crosses below breaker bottom.
Bearish invalidation
Setup fails if price crosses above breaker top.
If deletion is enabled, all drawings related to that setup are removed immediately on invalidation.
9. Drawing Updates and Object Lifecycle
Breaker and FVG boxes are extended to the right while the setup is active to keep zones visible into the near future. The Unicorn label is also repositioned as new bars print so the most recent context stays readable.
Unmitigated MTF High Low Pro - Cave Diving Bookmap Heatmap Plot
Unmitigated MTF High Low Pro - Cave Diving Bookmap Heatmap Plot
---
## 📖 Table of Contents
1. (#what-this-indicator-does)
2. (#core-concepts)
3. (#visual-components)
4. (#the-cave-diving-framework)
5. (#how-to-use-it-for-trading)
6. (#settings--customization)
7. (#best-practices)
8. (#common-scenarios)
---
## What This Indicator Does
The **Unmitigated MTF High Low v2.0** tracks unmitigated (untouch) high and low levels across multiple timeframes, helping you identify key support and resistance zones that the market hasn't revisited yet. Think of it as a sophisticated memory system for price action - it remembers where price has been, and more importantly, where it *hasn't been back to*.
### Why "Unmitigated" Matters
In futures trading, especially on instruments like NQ and ES, the market has a tendency to revisit levels where liquidity was left behind. An "unmitigated" level is one that hasn't been touched since it was formed. These levels often act as magnets for price, and understanding their age and proximity gives you a significant edge in:
- **Entry timing** - Waiting for price to approach tested levels
- **Exit planning** - Taking profits before ancient resistance/support
- **Risk management** - Avoiding entries when approaching multiple old levels
- **Liquidity mapping** - Visualizing where orders likely cluster
---
## Core Concepts
### 1. **Sessions & Age**
The indicator uses **New York trading sessions** (6:00 PM to 5:59 PM NY time) as the primary time measurement. This aligns with how futures markets naturally segment their activity.
**Age Categories:**
- 🟢 **New (0-1 sessions)** - Fresh levels, recently formed
- 🟡 **Medium (2-3 sessions)** - Tested by time, gaining significance
- 🔴 **Old (4-6 sessions)** - Highly significant, survived multiple days
- 🟣 **Ancient (7+ sessions)** - Extreme significance, major support/resistance
The longer a level remains unmitigated, the more significant it becomes. Think of it like compound interest - time adds weight to these zones.
### 2. **Multi-Timeframe Tracking**
You can set the indicator to track high/low levels from any timeframe (default is 15 minutes). This means you're watching for unmitigated 15-minute highs and lows while trading on, say, a 1-minute or 5-minute chart.
**Why this matters:**
- Higher timeframe levels have more weight
- You can see multiple timeframe structure simultaneously
- Helps you avoid fighting larger timeframe momentum
### 3. **Mitigation**
A level becomes "mitigated" (deactivated) when price touches it:
- **High levels** are mitigated when price reaches or exceeds them
- **Low levels** are mitigated when price reaches or goes below them
Once mitigated, the level disappears from view. The indicator only shows you the untouch levels that still matter.
---
## Visual Components
### 📊 The Dashboard Table
Located in the corner of your chart (configurable), the table shows:
```
┌─────────┬───────────┬────────┬─────┬───────┐
│ Level │ Price │ Points │ Age │ % │
├─────────┼───────────┼────────┼─────┼───────┤
│ ↑↑↑↑↑ │ 21,450.25 │ +45.50 │ 8 │ +0.21%│ ← 5th High (Ancient)
│ ↑↑↑↑ │ 21,430.00 │ +25.25 │ 5 │ +0.12%│ ← 4th High (Old)
│ ↑↑↑ │ 21,420.50 │ +15.75 │ 3 │ +0.07%│ ← 3rd High (Medium)
│ ↑↑ │ 21,412.00 │ +7.25 │ 1 │ +0.03%│ ← 2nd High (New)
│ ↑ ⚠️ │ 21,408.25 │ +3.50 │ 0 │ +0.02%│ ← 1st High (Proximity Alert!)
├─────────┼───────────┼────────┼─────┼───────┤
│ 15 mins │ 🟢 │ Δ 8.75 │ 2U │ │ ← Status Row
├─────────┼───────────┼────────┼─────┼───────┤
│ ↓ ⚠️ │ 21,399.50 │ -5.25 │ 0 │ -0.02%│ ← 1st Low (Proximity Alert!)
│ ↓↓ │ 21,395.00 │ -9.75 │ 2 │ -0.05%│ ← 2nd Low (Medium)
│ ↓↓↓ │ 21,385.25 │ -19.50 │ 4 │ -0.09%│ ← 3rd Low (Old)
│ ↓↓↓↓ │ 21,370.00 │ -34.75 │ 6 │ -0.16%│ ← 4th Low (Old)
│ ↓↓↓↓↓ │ 21,350.75 │ -54.00 │ 9 │ -0.25%│ ← 5th Low (Ancient)
├─────────┼───────────┼────────┼─────┼───────┤
│ 📊 15↑ / 12↓ │ ← Statistics (optional)
└─────────┴───────────┴────────┴─────┴───────┘
```
**Reading the Table:**
- **Level Column**: Number of arrows indicates position (1-5), color shows age
- **Price**: The actual price level
- **Points**: Distance from current price (+ for highs, - for lows)
- **Age**: Number of full sessions since creation
- **%**: Percentage distance from current price
- **⚠️**: Proximity alert - price is within threshold distance
- **Status Row**: Shows timeframe, direction (🟢 bullish/🔴 bearish), tunnel width (Δ), and Strat pattern
### 📈 Visual Elements on Chart
**1. Level Lines**
- Horizontal lines showing each unmitigated level
- **Color-coded by age**: Bright colors = new, darker = older, deep purple/teal = ancient
- **Line style**: Customizable (solid, dashed, dotted)
- Automatically turn **yellow** when price gets close (proximity alert)
**2. Price Labels**
- Show the exact price and age: "21,450.25 (8d)"
- Fixed at small size for clean readability
- Positioned with configurable offset from current bar
**3. Bands (Optional)**
- Shaded zones between pairs of unmitigated levels
- Default: Between 1st and 2nd levels (the "tunnel")
- Can switch to 1st-3rd, 2nd-3rd, or disable entirely
- **Upper band** (pink/maroon) - Between unmitigated highs
- **Lower band** (blue/teal) - Between unmitigated lows
- These represent the "no man's land" or consolidation zones
---
## The Cave Diving Framework
This indicator is designed around the **Cave Diving Trading Framework** - a psychological and technical approach that maps cave diving safety protocols to futures trading risk management.
### 🤿 The Core Metaphor
**Cave diving has clear danger zones based on depth and overhead environment. Your trading should too.**
#### Shallow Water (New Levels, 0-1 Sessions)
- **Light**: Bright colors (bright red highs, bright green lows)
- **Psychology**: Fresh territory, recently tested
- **Trading**: Be aware but not overly concerned
- **Cave Diving Parallel**: You can see the surface, easy exit
#### Penetration Depth (Medium Levels, 2-3 Sessions)
- **Light**: Medium intensity colors
- **Psychology**: Building significance, market memory forming
- **Trading**: Start respecting these levels for entries/exits
- **Cave Diving Parallel**: Deeper in, need to track your line back
#### Deep Dive Zone (Old Levels, 4-6 Sessions)
- **Light**: Dark colors (deep maroon, dark blue)
- **Psychology**: Highly tested support/resistance
- **Trading**: Major decision points, plan accordingly
- **Cave Diving Parallel**: Significant overhead, careful navigation required
#### Overhead Environment (Ancient Levels, 7+ Sessions)
- **Light**: Very dark, purple/deep teal
- **Psychology**: Extreme caution required, major liquidity zones
- **Trading**: These are your "turn back" signals - don't fight ancient levels
- **Cave Diving Parallel**: Maximum danger, no room for error
### 🎯 The Proximity Alert System
Just like a cave diver's depth gauge that warns at critical thresholds, the proximity alerts (⚠️) tell you when you're entering a danger zone. When price gets within your configured threshold (default 5 points), the indicator:
- Highlights the level in **yellow** on the chart
- Shows **⚠️** in the table
- Signals: "You're entering a high-significance zone - adjust your position accordingly"
This prevents the trading equivalent of going deeper into a cave without checking your air supply.
---
## How to Use It for Trading
### 🎯 Entry Strategies
**1. The "Bounce Setup" (Mean Reversion)**
- Wait for price to approach an old or ancient unmitigated level
- Look for confluence: multiple levels nearby, bands narrowing
- Enter when price shows rejection (reversal candle patterns)
- **Example**: Price drops to a 6-session-old low, shows bullish engulfing → Long entry
**2. The "Break and Retest" (Trend Following)**
- Wait for price to break through an unmitigated level (mitigates it)
- Enter on the retest of the newly broken level
- **Example**: Price breaks above 4-session-old high → Wait for pullback to that level → Long entry
**3. The "Tunnel Trade" (Range Trading)**
- When bands are active, trade the range between 1st-2nd levels
- Short near upper band resistance, long near lower band support
- Exit at opposite side or when bands break
### 🚨 Risk Management Rules
**The Ancient Level Rule**
> Never fight ancient levels (7+ sessions). If you're long and approaching an ancient high, take profits. If you're short and approaching an ancient low, take profits.
These levels have survived a full trading week without being touched - there's likely significant liquidity and institutional interest there.
**The Proximity Exit Rule**
> When you see ⚠️ proximity alerts on multiple levels above/below your position, tighten stops or scale out.
This is your "overhead environment" warning. You're in dangerous territory.
**The New Level Filter**
> Be cautious taking positions based solely on new levels (0-1 sessions). Wait for them to age or combine with other confluence.
Fresh levels haven't been tested by time. They're like unconfirmed support/resistance.
### 📊 Reading Market Structure
**Bullish Structure (🟢 in status row)**
- Unmitigated lows are aging and holding
- Price respecting the lower band
- Old lows below acting as strong support
- **Bias**: Look for long entries at lower levels
**Bearish Structure (🔴 in status row)**
- Unmitigated highs are aging and holding
- Price respecting the upper band
- Old highs above acting as strong resistance
- **Bias**: Look for short entries at higher levels
**The Tunnel Compression**
- When the Δ (delta) in the status row is small, levels are tight
- This often precedes a breakout
- **Trading**: Wait for breakout direction, then trade the break
### 🔄 Strat Integration
The indicator shows Strat patterns in the status row:
- **1** - Inside bar (consolidation)
- **2U** - Broke high only (bullish)
- **2D** - Broke low only (bearish)
- **3** - Broke both (wide range, volatility)
Use these with the unmitigated levels:
- **2U near old high** → Potential resistance, watch for rejection
- **2D near old low** → Potential support, watch for bounce
- **3 pattern** → High volatility, respect wider stops
---
## Settings & Customization
### 📅 Session & Timeframe Settings
**HL Interval** (Default: 15 minutes)
- The timeframe for high/low calculation
- **Lower (1m, 5m)**: More levels, more noise, good for scalping
- **Higher (30m, 1H, 4H)**: Fewer levels, stronger significance, good for swing trading
- **Recommendation for NQ/ES**: 15m or 30m for day trading, 1H for swing trading
**Session Age Threshold** (Default: 2)
- How many sessions before a level is considered "old"
- Lower = more levels classified as old
- Higher = stricter definition of significance
### 📊 Level Display Options
**Show Level Lines**
- Toggle: Display horizontal lines for each level
- **Turn off** if you prefer a cleaner chart and only want the table
**Show Level Labels**
- Toggle: Display price labels on the chart
- **Turn off** for minimal visual clutter
**Label Offset**
- Distance (in bars) from current price bar to place labels
- Increase if labels overlap with price action
**Level Line Width & Style**
- Customize visual appearance
- **Thin solid**: Minimal distraction
- **Thick dashed**: High visibility
### 🎨 Age-Based Color Coding
Customize colors for each age category (high and low separately):
- **New (0-1 sessions)**: Default bright red/green
- **Medium (2-3 sessions)**: Default medium intensity
- **Old (4+ sessions)**: Default dark red/blue
- **Ancient (7+ sessions)**: Default deep purple/teal
**Color Strategy Tips:**
- Keep ancient levels in highly contrasting colors
- Use opacity (transparency) if you want subtler lines
- Match your chart's color scheme for aesthetic coherence
### 🎯 Band Settings
**Band Mode**
- **1st-2nd** (Default): The primary "tunnel" between most recent levels
- **1st-3rd**: Wider band, more room for price action
- **2nd-3rd**: Band between less immediate levels
- **Disabled**: No bands, lines only
**Band Colors & Borders**
- Customize fill color and border separately
- **Tip**: Keep bands very transparent (90-95% transparency) to avoid obscuring price action
### ⚠️ Proximity Alert Settings
**Enable Proximity Alerts**
- Toggle: Turn on/off the warning system
- When enabled, levels within threshold distance show ⚠️ and turn yellow
**Alert Threshold** (Default: 5.0 points)
- Distance in points to trigger the alert
- **For NQ**: 5-10 points is reasonable
- **For ES**: 2-5 points is reasonable
- **For MES/MNQ**: Scale down proportionally
**Alert Highlight Color**
- The color lines/labels turn when proximity is triggered
- Default: Yellow (high visibility)
### 📋 Table Settings
**Show Table**
- Toggle: Display the dashboard table
**Table Location**
- Top Left, Top Right, Bottom Left, Bottom Right
- Choose based on your chart layout and other indicators
**Text Size**
- Tiny, Small, Normal, Large
- **Recommendation**: Normal for 1080p monitors, Small for 4K
**Show % Distance**
- Toggle: Add percentage distance column to table
- Useful for comparing relative distances across different price ranges
**Show Statistics Row**
- Toggle: Show total count of unmitigated highs/lows
- Format: "📊 15↑ / 12↓" (15 unmitigated highs, 12 unmitigated lows)
- Useful for gauging overall market structure
### ⚡ Performance Settings
**Enable Level Cleanup**
- Automatically remove very old levels to maintain performance
- **Keep on** unless you want unlimited history
**Max Lookback Levels** (Default: 10,000)
- Maximum number of levels to track
- 10,000 ≈ 6+ months of 15-minute bars
- **Increase** if you want more history
- **Decrease** if experiencing performance issues
**Max Boxes Per Band** (Default: 245)
- TradingView limit is 500 total boxes
- With 2 bands, 245 each = 490 total (safe maximum)
---
## Best Practices
### 🎯 Position Management
**1. Scaling In Near Old Levels**
```
Price approaching 5-session-old low:
- First position: 30% size at proximity alert (⚠️)
- Second position: 40% size at exact level
- Third position: 30% size if it shows strong rejection
```
**2. Scaling Out Near Ancient Levels**
```
Holding long position, approaching 8-session-old high:
- Exit 50% at proximity alert (⚠️)
- Exit 30% at exact level
- Trail stop on remaining 20%
```
### 🧠 Trading Psychology Integration
Drawing from principles in *The Mountain Is You*, this indicator helps you:
**1. Recognize Self-Sabotage Patterns**
- **The Premature Entry**: Entering before price reaches your planned level
- **Solution**: Set alerts at unmitigated levels, wait for proximity warnings
- **The Profit-Taking Problem**: Exiting too early from fear
- **Solution**: Identify the next unmitigated level and commit to holding until proximity alert
- **The Loss Holding**: Refusing to exit losing trades
- **Solution**: When price breaks through and mitigates your entry level, it's telling you the structure changed
**2. Building Better Habits**
The color-coded age system trains your brain to:
- Respect levels that have proven themselves over time
- Distinguish between noise (new levels) and structure (old levels)
- Make decisions based on objective data, not fear or greed
**3. Emotional Regulation**
The proximity alerts serve as:
- **Circuit breakers** - Forcing you to re-evaluate before dangerous zones
- **Permission to act** - Giving you objective signals to exit without second-guessing
- **Validation** - Confirming when you're in alignment with market structure
### 📝 Pre-Market Routine
**Daily Setup Checklist:**
1. ✅ Identify the 3 nearest unmitigated highs above current price
2. ✅ Identify the 3 nearest unmitigated lows below current price
3. ✅ Note which are ancient (7+) - these are your "no-go" zones
4. ✅ Check the tunnel width (Δ in status row) - tight or wide?
5. ✅ Set alerts at the 1st high and 1st low for proximity warnings
6. ✅ Plan: "If we go up, I exit at ___. If we go down, I enter at ___."
### 🔄 Timeframe Confluence
**Multi-Timeframe Strategy:**
Run the indicator on **three instances**:
- **15-minute** (short-term structure)
- **1-hour** (intermediate structure)
- **4-hour** (major structure)
**Strong Setup**: When all three timeframes show unmitigated levels converging at the same price zone.
**Example:**
- 15m: Old low at 21,400
- 1H: Ancient low at 21,398
- 4H: Ancient low at 21,395
- **Result**: 21,395-21,400 is a monster support zone
### ⚠️ What This Indicator Doesn't Do
**Not a Crystal Ball**
- It doesn't predict where price will go
- It shows you where price *hasn't been* and how long it's been avoided
- The trading decisions are still yours
**Not an Entry Signal Generator**
- It provides context and structure
- You need to combine it with your entry methodology (price action, indicators, order flow, etc.)
**Not Foolproof**
- Ancient levels get broken
- Proximity alerts can trigger early in strong trends
- The market doesn't "owe" you a reversal at any level
---
## Common Scenarios
### Scenario 1: "Level Cluster Ahead"
**Situation**: You're long at 21,400. The table shows:
- 1st High: 21,425 (2 sessions old)
- 2nd High: 21,428 (3 sessions old)
- 3rd High: 21,435 (6 sessions old)
**Interpretation**: There's a resistance cluster just 25-35 points away. The 6-session-old level is particularly significant.
**Action**:
- Set first profit target at 21,420 (before the cluster)
- Set second target at 21,426 (between 1st and 2nd)
- Trail remaining position, but be ready to exit on rejection at 21,435
**Cave Diving Analogy**: You're approaching an overhead section with limited clearance. Lighten your load (reduce position) before entering.
---
### Scenario 2: "Ancient Level Approaches"
**Situation**: The market is grinding higher. You see ⚠️ appear next to a 9-session-old high at 21,500.
**Interpretation**: This level has survived over a week without being touched. Massive potential liquidity zone.
**Action**:
- If long, this is your absolute exit zone. Take profits before or at level.
- If looking to short, wait for clear rejection (price taps and reverses)
- Don't try to buy the breakout until it clearly breaks and retests
**Cave Diving Analogy**: Your dive computer is beeping - you've reached your planned turn-back depth. No matter how interesting it looks ahead, honor your plan.
---
### Scenario 3: "Mitigated Levels Create New Structure"
**Situation**: Price breaks and mitigates the 1st High. The previous 2nd High becomes the new 1st High.
**Interpretation**: The structure just shifted. What was the 2nd level is now most relevant.
**Action**:
- Watch how price reacts to the newly-mitigated level
- If it holds below (acts as resistance), bearish
- If it reclaims and holds above (acts as support), bullish
- The NEW 1st High is your next target/resistance
**Cave Diving Analogy**: You've passed through a restriction - the cave layout ahead is different now. Update your mental map.
---
### Scenario 4: "Tight Tunnel, Upcoming Breakout"
**Situation**: The Δ in the status row shows 3.25 points (very tight). Bands are converging.
**Interpretation**: Price is consolidating between very close unmitigated levels. Breakout likely.
**Action**:
- Don't try to predict direction
- Set alerts above 1st High and below 1st Low
- When break occurs, trade the retest
- Expect volatility - use wider stops
**Cave Diving Analogy**: You're in a narrow passage. Movement will be sudden and directional once it starts.
---
### Scenario 5: "Imbalanced Structure"
**Situation**: The statistics row shows "📊 22↑ / 7↓"
**Interpretation**: There are many more unmitigated highs than lows. This suggests:
- Price has been declining (hitting lows, leaving highs behind)
- Potential bullish reversal zone (lots of overhead supply mitigated)
- Or continued bearish structure (resistance everywhere above)
**Action**:
- Look at the age of those 22 highs
- If mostly new (0-2 sessions): Just a recent downmove, not significant yet
- If many old/ancient: Strong overhead resistance, be cautious on longs
- Compare to price action: Is price respecting the remaining lows?
**Cave Diving Analogy**: You've swam deeper than your starting point - most of your markers are above you now. Are you planning the ascent or going deeper?
---
## Final Thoughts: The Philosophy
This indicator is built on a simple but powerful principle: **The market has memory, and that memory has weight.**
Every unmitigated level represents:
- Liquidity left behind
- Orders waiting to be filled
- Institutional interest potentially parked
- Psychological significance for participants
The longer a level remains unmitigated, the more "charged" it becomes. When price finally revisits it, something significant usually happens - either a strong reversal or a definitive break.
Your job as a trader isn't to predict which outcome will occur. Your job is to:
1. **Recognize** when you're approaching these charged zones
2. **Respect** them by adjusting position size and risk
3. **React** appropriately based on how price behaves at them
4. **Remember** that ancient levels (like ancient wisdom) deserve extra reverence
The Cave Diving Framework embedded in this indicator serves as a constant reminder: Trading, like cave diving, requires rigorous respect for environmental hazards, meticulous planning, and the discipline to turn back when your limits are reached.
**Every proximity alert is the market asking you**: *"Do you really want to go deeper?"*
Sometimes the answer is yes - when your setup, confluence, and risk management all align.
Often, the answer should be no - and that's the trader avoiding the accident that would have happened to the gambler.
---
### 🎯 Quick Reference Card
**Color System:**
- 🟢 Bright colors = New (0-1 sessions) = Shallow water
- 🟡 Medium colors = Medium (2-3 sessions) = Penetration depth
- 🔴 Dark colors = Old (4-6 sessions) = Deep dive zone
- 🟣 Deep dark colors = Ancient (7+ sessions) = Overhead environment
**Symbols:**
- ↑ ↑↑ ↑↑↑ ↑↑↑↑ ↑↑↑↑↑ = High levels (1st through 5th)
- ↓ ↓↓ ↓↓↓ ↓↓↓↓ ↓↓↓↓↓ = Low levels (1st through 5th)
- ⚠️ = Proximity alert (danger zone)
- 🟢 = Bullish structure
- 🔴 = Bearish structure
- Δ = Tunnel width (distance between 1st high and 1st low)
**Critical Rules:**
1. Never fight ancient levels (7+ sessions)
2. Respect proximity alerts (⚠️)
3. Scale out near old/ancient resistance
4. Wait for confluence when entering
5. Let mitigated levels prove their new role
---
**Remember**: The indicator gives you structure. The trading edge comes from your discipline in respecting that structure.
Trade safe, trade smart, and always know your exit before your entry. 🎯
---
*"You don't become your best self by denying your patterns. You become your best self by recognizing them, understanding them, and choosing differently." - Adapted from The Mountain Is You*
In trading: You don't become profitable by ignoring market structure. You become profitable by recognizing it, understanding it, and choosing your entries accordingly.
Zone Eleven HTF Gate SweepThis indicator is designed as a simple visual framework rather than a rigid signal system. It highlights time-based structure and key alignment zones to help identify when price behavior is more likely to be active or responsive. The logic is intentionally flexible, allowing the user to apply their own discretion instead of relying on strict conditions. Its primary value is visual clarity and context, not automatic entries or exits.
Power Law of Diminishing Returns for BTC:USDTThis is a script to see if the Law of Diminshining Returns is applicable to BTC/USD
Gold Smart Scalper AI V21. The "Red Zone" (News Management)
The strategy logic does not "know" when the Federal Reserve is speaking.
Rule: Disable the strategy or stop taking signals 15 minutes before and after high-impact news (CPI, NFP, FOMC).
Why: During these times, Gold can move $30 in seconds. Slippage will cause your $1.50 Stop Loss to execute much further away, leading to massive drawdown.
2. Session Selection
Gold "Scalping" requires high liquidity and tight spreads.
Discretionary Filter: Only trade during the London/New York overlap (13:00 – 17:00 UTC).
Avoid: The late Asian session or Sunday market open. Spreads often widen to $0.50–$1.00, meaning you are already down 30-50% of your Stop Loss the moment you enter.
3. Market "Mood" (Trend vs. Range)
Trend Context: If the 50 EMA (the White line) is completely flat, the market is in a "Bracket." In this state, EMA crossovers generate many false signals.
The Adjustment: Discretionary traders wait for the 50 EMA to show a clear slope (up or down) before trusting the 9/21 crossover signals.
Heikin Ashi Color Flip StrategyManual HA calculation → no repainting
✔ Entry on first green after red
✔ Exit on first red after green
✔ process_orders_on_close = false → orders execute on next bar open
✔ Logic is clean and readable
How to make it your kind of strategy (next step)
Given your past preferences, the best upgrade is:
• Trade only when price > EMA 21
• Or only when SPY > EMA 50 & VIX < 20
• Exit on price close below EMA 21 (your preferred rule)
Consider the following to increase win rate and decrease drawdown:
• Add EMA-21 exit instead of HA red
• Add SPY/VIX regime filter
• Give you real QQQ daily backtest metrics
• Convert this into a scan/alert-only indicator
Disclaimer:
This indicator is provided for educational and informational purposes only and does not constitute financial, investment, or trading advice. The signals generated by this indicator are not guaranteed to be accurate or profitable. Past performance is not indicative of future results. Trading and investing involve substantial risk, and you should perform your own analysis and consult a qualified financial professional before making any trading decisions. The author is not responsible for any financial losses incurred from the use of this indicator.
AI PRE-MARKET PRO - True/Fake Gap Classification-Version 1.0## **AI PRE-MARKET PRO: QUICK START GUIDE**
This indicator classifies market gaps by comparing the **Current Price** to yesterday’s **High (PDH)**, **Low (PDL)**, and **Close (PDC)**.
### **1. GAP CLASSIFICATIONS**
* **🔥 TRUE GAPS (High Momentum)**
* **True Gap Up:** Price is above PDH. The market is in "Discovery Mode." High probability of trend continuation.
* **True Gap Down:** Price is below PDL. Significant bearish sentiment. High probability of further selling.
* **⚠️ FAKE GAPS (Mean Reversion)**
* **Fake Gap Up:** Above PDC but below PDH. Price is "trapped" in yesterday's value. Often reverts to the Close (PDC).
* **Fake Gap Down:** Below PDC but above PDL. Price is "trapped." Often bounces back toward the Close (PDC).
### **2. TRADING STRATEGY CHEAT SHEET**
| Scenario | Primary Play | Entry Logic |
| --- | --- | --- |
| **True Gap Up** | **Continuation** | Wait for a pullback to **PDH**; buy the hold. |
| **True Gap Down** | **Continuation** | Wait for a rally to **PDL**; short the rejection. |
| **Fake Gap Up** | **Fade/Range** | Short the rejection of **PDH** or **ONH**; target **PDC**. |
| **Fake Gap Down** | **Fade/Range** | Buy the bounce at **PDL** or **ONL**; target **PDC**. |
### **3. CRITICAL LEVELS ON YOUR CHART**
* **PDH / PDL:** The "Line in the Sand." Breaking these turns a Fake Gap into a True Gap.
* **ONH / ONL:** Overnight High/Low. These are your immediate support/resistance targets for the first 30 minutes of trading.
* **PDC:** Previous Day Close. The "Magnet." If the market doesn't trend, it usually returns here.
### **4. HOW TO READ THE AI TABLES**
* **Left Table:** Shows real-time distance (RT Δ) to key levels and whether they have been hit yet (**Mitigated**).
* **Bottom Tables:** Provide a probability-based "Game Plan" and specific execution rules (e.g., "Wait for 15-minute confirmation").
---
**Next Step:** Would you like me to show you how to set up an alert for when the price crosses the **PDH** or **PDL** to catch a True Gap breakout?
EURUSD Pre-London Open Range MarkerEURUSD Pre-London Open Range Marker
This script marks the high and low formed in the pre-London open period on EURUSD, and extends those levels forward once London opens.
It is intended as a neutral reference tool for traders who pay attention to time-based structure around the London session.
What it does
Automatically tracks London time, including daylight-saving changes
Identifies the pre-London open range
Plots the high and low of that range
Extends those levels forward from the London open
Displays the range size (pips)
What it does not do
No trade signals
No alerts
No entries, stops, or targets
No performance claims
This script provides structure only. Interpretation and execution are left to the user.
Intended use
This tool is for traders who:
Trade EURUSD
Care about London session behaviour
Prefer simple, time-based reference levels over indicators
Scope and design
Hard-coded for EURUSD
Pre-London open window is fixed and not user-configurable
Built to prioritise consistency and repeatability over flexibility
Additional context
I use this pre-London range as part of a fully documented, rules-based EURUSD trading system focused on risk management and repeatable execution which I have traded for two years.
The strategy itself is not included here.
Disclaimer
This script is provided for educational and reference purposes only.
All trading involves risk. You are responsible for your own decisions.
One-line link
For those interested in how this range is used within a complete, rules-based EURUSD trading system, further documentation is available here:
Multi-Timeframe High Low Marking LinesThis indicator automatically draws clean horizontal lines at the high and low of the previous 10 periods (adjustable) for four different timeframes simultaneously: Daily, Weekly, Monthly, and Quarterly.
Perfect for marking key support/resistance levels across multiple timeframes on any chart.
Key features:
• Shows previous 10 highs and lows per timeframe (change to 5, 15, 20 etc. in settings)
• Lines extend 20 bars to the right so they remain visible (adjustable)
• Individual on/off switch for each timeframe
• Clean blue lines, max 500 lines limit respected
• Works perfectly on any chart timeframe (1-minute to monthly)
• No repainting – lines only appear after the period has closed
Use cases:
Spot major daily/weekly/monthly support & resistance at a glance
Trade breakouts and reversals with higher-timeframe confirmation
Combine with your existing strategy (ICT, SMC, price action)
Ideal for stocks, forex, crypto and futures
Settings explained:
Timeframe 1–4 → Choose any timeframe (D, W, M, 3M already preset)
Show/Hide → Turn any timeframe on or off instantly
Periods to show → How many previous highs/lows you want visible
Extend lines → How far right each line continues (default 20 bars)
Completely free to use.
If you like it, please add to favorites and leave a comment – it helps other traders find it!
Enjoy cleaner charts and stronger confluence.
Happy trading!
Multi Hourly ATP (Average Trade Price)"Multi-timeframe average trade price" analysis combines two concepts: using the Average Trade Price (ATP) as a benchmark and applying a multi-timeframe analysis (MTFA) trading strategy. The benefits stem from using the ATP for position management and MTFA for better-informed trading decisions.
Benefits of Averaging the Trade Price
Averaging the trade price (using methods like "averaging down" or "averaging up," or the Volume-Weighted Average Price - VWAP) helps investors manage their positions and costs.
Better Cost Basis Assessment: The ATP provides a clear benchmark for your overall cost per share, including fees. This helps you understand your true breakeven point and accurately assess whether a position is currently profitable or at a loss.
Risk Mitigation: In a falling market, buying more shares at a lower price (averaging down) reduces the average purchase price, which means the stock does not have to recover to its initial price for you to break even or make a profit.
Profit Accumulation: In a rising market, buying more shares as the price increases (averaging up or pyramiding) allows you to accumulate more profits if the upward trend continues, increasing your overall position size in a winning trade.
Emotional Discipline: By following a predefined averaging strategy, traders can reduce the impact of emotional decisions like panic selling or holding onto losing trades for too long.
Managing Volatility: Averaging helps smooth out the impact of short-term price fluctuations on your overall portfolio performance, which is particularly useful in volatile markets.
SMA vs Candle True CloudSMA vs Candle – Trend Cloud Indicator (Brief Note)
This indicator compares price (candle source) with a long-period Hull Moving Average (SMA) to identify trend direction, momentum shifts, and regime changes.
The SMA, being momentum-sensitive, reacts to changes in price speed, while price itself represents real-time market action.
A dynamic two-way cloud is drawn between price and SMA:
Green cloud when price is above SMA → bullish dominance and accumulation
Red cloud when price is below SMA → bearish control and distribution
The width of the cloud reflects the strength of momentum:
Narrow cloud → compression / consolidation
Expanding cloud → impulse move or trend acceleration
This setup is especially effective on short timeframes with long SMA periods, where it filters noise while preserving early trend signals.
Overall, the indicator acts as a visual trend-momentum framework, highlighting early warnings, trend confirmation, and exhaustion zones in a single view.
Custom ORB (Adjustable Time + Alerts)Opening range Breakout for the current day only. Time frame and be adjusted for first 15 min, 30 min, e.g., 9:30 am to 9:45 am or to 10 am, etc. You can add price alerts for high and low. You can also change the color of solid lines.
AlphaTrend_TC// This source code is subject to the terms of the Mozilla Public License 2.0 at mozilla.org
// author © KivancOzbilgic
// developer © KivancOzbilgic
// I'm just playing with it.... Jake Ryan
//@version=5
indicator('AlphaTrend', shorttitle='AT', overlay=true, format=format.price, precision=2, timeframe='')
coeff = input.float(1, 'Multiplier', step=0.1)
AP = input(14, 'Common Period')
ATR = ta.sma(ta.tr, AP)
src = input(close)
showsignalsk = input(title='Show Signals?', defval=true)
novolumedata = input(title='Change calculation (no volume data)?', defval=false)
upT = low - ATR * coeff
downT = high + ATR * coeff
AlphaTrend = 0.0
AlphaTrend := (novolumedata ? ta.rsi(src, AP) >= 50 : ta.mfi(hlc3, AP) >= 50) ? upT < nz(AlphaTrend ) ? nz(AlphaTrend ) : upT : downT > nz(AlphaTrend ) ? nz(AlphaTrend ) : downT
color1 = AlphaTrend > AlphaTrend ? #00E60F : AlphaTrend < AlphaTrend ? #80000B : AlphaTrend > AlphaTrend ? #00E60F : #80000B
k1 = plot(AlphaTrend, color=color.new(#0022FC, 0), linewidth=3)
k2 = plot(AlphaTrend , color=color.new(#FC0400, 0), linewidth=3)
fill(k1, k2, color=color1)
buySignalk = ta.crossover(AlphaTrend, AlphaTrend )
sellSignalk = ta.crossunder(AlphaTrend, AlphaTrend )
// Calculate Bollinger Bands around AlphaTrend
length = input(20, title="Bollinger Bands Length")
mult = input(2.0, title="Bollinger Bands Multiplier")
basis = ta.sma(AlphaTrend, length)
dev = mult * ta.stdev(AlphaTrend, length)
upperBand = basis + dev
lowerBand = basis - dev
// Plot Bollinger Bands
plot(upperBand, color=#2962FF, linewidth=1, title="Upper Bollinger Band")
plot(lowerBand, color=#2962FF, linewidth=1, title="Lower Bollinger Band")
// Rest of the code remains the same for generating signals and plotting arrows
K1 = ta.barssince(buySignalk)
K2 = ta.barssince(sellSignalk)
O1 = ta.barssince(buySignalk )
O2 = ta.barssince(sellSignalk )
plotshape(buySignalk and showsignalsk and O1 > K2 ? AlphaTrend * 0.9999 : na, title='BUY', text='BUY', location=location.absolute, style=shape.labelup, size=size.tiny, color=color.new(#0022FC, 0), textcolor=color.new(color.white, 0))
plotshape(sellSignalk and showsignalsk and O2 > K1 ? AlphaTrend * 1.0001 : na, title='SELL', text='SELL', location=location.absolute, style=shape.labeldown, size=size.tiny, color=color.new(color.maroon, 0), textcolor=color.new(color.white, 0))
alertcondition(buySignalk and O1 > K2, title='Potential BUY Alarm', message='BUY SIGNAL!')
alertcondition(sellSignalk and O2 > K1, title='Potential SELL Alarm', message='SELL SIGNAL!')
alertcondition(buySignalk and O1 > K2, title='Confirmed BUY Alarm', message='BUY SIGNAL APPROVED!')
alertcondition(sellSignalk and O2 > K1, title='Confirmed SELL Alarm', message='SELL SIGNAL APPROVED!')
alertcondition(ta.cross(close, AlphaTrend), title='Price Cross Alert', message='Price - AlphaTrend Crossing!')
alertcondition(ta.crossover(low, AlphaTrend), title='Candle CrossOver Alarm', message='LAST BAR is ABOVE ALPHATREND')
alertcondition(ta.crossunder(high, AlphaTrend), title='Candle CrossUnder Alarm', message='LAST BAR is BELOW ALPHATREND!')
alertcondition(ta.cross(close , AlphaTrend ), title='Price Cross Alert After Bar Close', message='Price - AlphaTrend Crossing!')
alertcondition(ta.crossover(low , AlphaTrend ), title='Candle CrossOver Alarm After Bar Close', message='LAST BAR is ABOVE ALPHATREND!')
alertcondition(ta.crossunder(high , AlphaTrend ), title='Candle CrossUnder Alarm After Bar Close', message='LAST BAR is BELOW ALPHATREND!')
//from AlphaTrend
Double Cross Strategy - directional color plus golden crossCandle color changes to dark green when opening below 9/20 SMAs when 9 is below the 20 and closes above.
Candle color changes to dark red when opening above the 9/20 SMAs when the 9 is above the 20 and closes below.
Candle color changes to yellow when either of the above occurs plus crosses the vwap.
SUPER SPX T.SHere is the professional English description for your indicator. You can use this if you want to save the script in your TradingView library or share it with others.
### **Indicator Name:** `SPX Pro: EMA Crossover with RSI Filter`
### **Description:**
This indicator is specifically optimized for **SPX (S&P 500)** trading, particularly for options traders (CALL/PUT). It combines trend-following moving averages with a momentum filter to identify high-probability entry points.
---
### **Key Features:**
* **Dual EMA Engine:** Uses a **9-period Exponential Moving Average (Fast)** and a **21-period Exponential Moving Average (Slow)**. These are the standard benchmarks for identifying short-term momentum on the SPX.
* **RSI Momentum Filter:** Unlike standard crossover indicators, this script includes a built-in **Relative Strength Index (RSI)** filter.
* **CALL signals** are only generated if the RSI is below 65 (preventing buying at the absolute peak).
* **PUT signals** are only generated if the RSI is above 35 (preventing selling at the absolute bottom).
* **Visual Signals:** * **Green Triangle + "CALL":** Triggered when the 9 EMA crosses above the 21 EMA while the RSI allows for more upside.
* **Red Triangle + "PUT":** Triggered when the 9 EMA crosses below the 21 EMA while the RSI allows for more downside.
* **Clean Interface:** Displays the EMAs clearly on the chart to help identify dynamic support and resistance levels.
---
### **How to Use:**
1. **Timeframe:** Recommended for **5-minute** and **15-minute** charts for day trading.
2. **Confirmation:** Look for the signal to appear after the candle closes to ensure the crossover is confirmed.
3. **Strategy:** This indicator works best when the SPX is trending. During a "sideways" or "choppy" market, the RSI filter will help eliminate many false signals that standard crossovers usually fail to catch.
---
**Next Step:**
Would you like me to add a **"Table"** on the corner of the screen that shows the current RSI value and the trend status (Bullish/Bearish) so you don't have to keep looking at the bottom of the chart?
EURUSD | Yield Curve Flip Strategy (2s10s State Flips)Strategy Core (Concept)
The strategy trades EURUSD exclusively when the US yield curve regime (2Y/10Y) flips into a new, clearly bullish or bearish regime. The core assumption is that re-pricing in the US yield curve (rather than individual data points) is a robust driver of USD strength or weakness and can act as a structural trigger for trend changes.
⸻
Data Basis
• Uses US 2Y Yield (TVC:US02Y) and US 10Y Yield (TVC:US10Y).
• The 2s10s curve is calculated as:
curveUS = US10Y – US2Y
• Regime assessment is based on the N-day change (default: 5 days), calculated on true rates bars (not intraday noise).
⸻
Regime Detection (Correct Bond Logic)
First, the strategy checks whether the curve has significantly steepened or flattened over the lookback period:
• Steepener if Δ(2s10s) > thrCurve (default: +0.10 percentage points = 10 bp)
• Flattener if Δ(2s10s) < −thrCurve
Next, a leg confirmation determines the specific type of steepener/flattener (default thrLeg = 5 bp):
Bull Steepener
• Curve steepens because yields fall, with the 2Y falling more (risk-off / rate-cut pricing)
Bear Steepener
• Curve steepens because yields rise, with the 10Y rising more (reflation / term-premium move)
Bull Flattener
• Curve flattens because yields fall, with the 10Y falling more (growth shock / long-end rally)
Bear Flattener
• Curve flattens because yields rise, with the 2Y rising more (hawkish repricing / front-end up)
Important: By default, a Bear Steepener is not treated as a bearish signal, unless allowBearSteepForShort is enabled.
⸻
State Machine (Memory + Flip Triggers)
The strategy maintains a persistent state variable curveState:
• +1 = bullish
• −1 = bearish
• 0 = neutral
The state is updated only on a new rates bar (daily rates when tfRates = "D"), avoiding intraday noise.
A trade is generated only on a true regime flip:
• flipToBull: new state turns bullish and the previous state was bearish (or neutral, if allowed)
• flipToBear: new state turns bearish and the previous state was bullish (or neutral, if allowed)
The option enterFromNeutral controls whether the first clear regime emerging from neutral is traded.
The option onlyOnNewRatesBar ensures signals occur only when a new rates bar is printed, providing clean timing.
⸻
Trading Rules (Entry / Exit)
There are no stops, targets, or trailing mechanisms. The strategy is a pure regime-switching / reversal system:
• On flipToBull
• Close short (“S”)
• Open long (“L”)
• On flipToBear
• Close long (“L”)
• Open short (“S”)
Positions are therefore held until the next regime flip.
⸻
Parameter Interpretation
• N: Smoothing / inertia. Smaller = faster but noisier; larger = more stable but later.
• thrCurve: Minimum curve move required to define a regime.
• thrLeg: Minimum move of the confirming leg (2Y or 10Y) to reduce misclassification.
• allowBearSteepForShort: Makes the system more aggressive (more bearish signals), but represents a different macro case.
• enterFromNeutral: Increases trade frequency by trading the first regime impulse.
⸻
What You See on the Chart
• Background shading:
• Green for bullish state
• Red for bearish state
• The curve and Δ-curve are plotted but hidden (display=none), mainly for debugging and analysis.






















