OBV + WaveTrend Volume Scalper [GratefulFutures]This script is a combination script of three different strategies that provides buy and sell signals based on the change of volume with momentum confirmations.
Sources used:
This script relies on the outstanding scripts of the great script writer LazyBear: LazyBear
The following scripts were used in this publication:
1. A modified "On-Balance Volume Oscillator" modified from LazyBear's original script:
2. Wavetrend Oscillator with crosses, Author: LazyBear
3. Squeeze Momentum Oscillator, Author: LazyBear
This script functions based on the following criteria being true:
1. On balance volume oscillator turning from negative to positive (buy) or positive to negative (sell)
2. Squeeze Momentum value is increasing (buy) or decreasing (sell)
3. Wavetrend 1 (wt1) is greater than wavetrend 2 (wt2) (buy)/ Wavetrend 1 (wt1) is less than wavetrend 2 (wt2) (sell)
By combining these factors the indicator is able to signal exactly when net buying turns to net selling (OBV) and when this change is most advantageous to continue based on the momentum and price action of the underlying asset (SQMOMO and Wavetrend).
This allows you to pair volume and price action for a powerful tool to identify where price will reverse or continue providing exceptional entries for short term trades, especially when combined with other aspects such as support and resistance, or volume profile.
How to use:
Simply adjust the settings to your preference and read the given signals as generated.
Settings
There are multiple ways to tune the signals generated. It is set standard for my preferred use on a 1 minute chart.
OBV Oscillator Settings
The first 4 dropdowns in the Inputs section tune the On Balance Volume Oscillator (OBVO) portion of the indicator. You can choose if you want it to calculate based on close, open, high, low, or other value.
The most impactful in the entire settings is going to be the length and smoothing of the OBVO EMA. Making this number lower increasing the sensitivity to changes in volume, making the signals come quicker but is more susceptible to quick fluctuations. A value of between (5-20) is reasonable for the OBVO EMA length. There is a separate smoothing factor titled OBV Smoothing Length and below that, OBV Smoothing Type , a value of (2) is standard with "SMA" for smoothing type with a value of between 2-10 being reasonable. You may also play with these values to see what you like for your trading style.
Wavetrend Settings
The next 3 options are to modify the wavetrend portion of the indicator. I do not modify these from standard, and feel that they work appropriately on all time frames at the following values: n1 length (10), n2 length (20), Wavetrend Signal SMA length (4)
Squeeze Momentum Settings
The following 5 options through the end modify the Squeeze momentum portion of the indicator. The only one that modifies the signals generated is the KC Length , Making this number lower increasing the sensitivity to changes in price action, making the signals come quicker but is more susceptible to quick fluctuations. A value of between (18-25) is reasonable for KC Length .
Style Setting
You may select if you want to see the buy and sell signals. The following 5 options Raw OBV Osc through Squeeze Momentum allow you to see where each specific requirement was met, posted as a vertical line, but for live use it is recommended to turn all of these vertical lines off and only use the buy and sell signals.
Time Frames:
While this script is most effective on shorter time frames (1 minute for scalping and daytrading) it is also viable to use it on longer timeframes, due to the nature of its components being independent of time frame.
Examples of use - (Green and red vertical lines are for visualization purpose and are not part of the script)
SPY 1 Minute (Factory Settings):
SPX 15 minutes (Factory Settings):
Considerations
This script is meant primarily for short term trading, trades on the basis of seconds to minutes primarily. While they can be a good indication of volume lining up with momentum, it is always wise to use them in combination with other factors such as support, resistance, market structure, volume levels, or the many other techniques out there...
As Always... Happy Trading.
-Not_A_Mad_Scientist (GreatfulFutures Trade University)
在脚本中搜索"a股开盘前15分钟交易规则"
YM Ultimate SNIPER v5# YM Ultimate SNIPER v5 - Documentation & Trading Guide
## 🎯 Unified GRA + DeepFlow | YM/MYM Optimized
**TARGET: 3-7 High-Confluence Trades per Day**
---
## ⚡ QUICK START
```
┌─────────────────────────────────────────────────────────────────┐
│ YM ULTIMATE SNIPER v5 │
├─────────────────────────────────────────────────────────────────┤
│ │
│ SIGNALS: │
│ S🎯 = S-Tier (50+ pts) → HOLD position │
│ A🎯 = A-Tier (25-49 pts) → SWING trade │
│ B🎯 = B-Tier (12-24 pts) → SCALP quick │
│ Z = Zone entry (price at FVG zone) │
│ │
│ SESSIONS (ET): │
│ LDN = 3:00-5:00 AM (London) │
│ NY = 9:30-11:30 AM (New York Open) │
│ PWR = 3:00-4:00 PM (Power Hour) │
│ │
│ COLORS: │
│ 🟩 Green zones = Bullish FVG (buy zone) │
│ 🟥 Red zones = Bearish FVG (sell zone) │
│ 🟣 Purple lines = Single prints (S/R levels) │
│ │
│ TABLE (Top Right): │
│ Pts = Candle point range │
│ Tier = S/A/B/X classification │
│ Vol = Volume ratio (green = good) │
│ Delta = Buy/Sell dominance │
│ Sess = Current session │
│ Zone = In FVG zone status │
│ Score = Confluence score /10 │
│ CVD = Cumulative delta direction │
│ R:R = Risk:Reward ratio │
│ │
└─────────────────────────────────────────────────────────────────┘
```
---
## 📋 VERSION 5 CHANGES
### What's New
- **Removed all imbalance code** - caused compilation errors
- **Simplified delta analysis** - uses candle structure instead of intrabar data
- **Cleaner confluence scoring** - 5 clear factors, max 10 points
- **Reliable table** - updates on last bar only, no flickering
- **Works on YM and MYM** - same logic applies to micro contracts
### Removed Features
- Candle-anchored imbalance markers
- Imbalance S/R zones
- Intrabar volume profile analysis
- POC visualization
### Kept & Improved
- Tier classification (S/A/B)
- FVG zone detection & visualization
- Single print detection
- Session windows with backgrounds
- Confluence scoring
- Stop/Target auto-calculation
- All alerts
---
## 🎯 SIGNAL TYPES
### Tier Signals (S🎯, A🎯, B🎯)
These are high-confluence signals that pass all filters:
| Tier | Points | Value/Contract | Action | Hold Time |
|------|--------|----------------|--------|-----------|
| **S** | 50+ | $250+ | HOLD | 2-5 min |
| **A** | 25-49 | $125-245 | SWING | 1-3 min |
| **B** | 12-24 | $60-120 | SCALP | 30-90 sec |
**Filters Required:**
1. Tier threshold met (points)
2. Volume ≥ 1.8x average
3. Delta dominance ≥ 62%
4. Body ratio ≥ 70%
5. Range ≥ 1.3x average
6. Proper wicks (no reversal wicks)
7. CVD confirmation (optional)
8. In trading session
### Zone Signals (Z)
Zone entries trigger when:
- Price is inside an FVG zone
- Delta shows dominance in zone direction
- Volume is above average
- In active session
- No tier signal already present
---
## 📊 CONFLUENCE SCORING
**Maximum Score: 10 points**
| Factor | Points | Condition |
|--------|--------|-----------|
| Tier | 1-3 | B=1, A=2, S=3 |
| In Zone | +2 | Price inside FVG zone |
| Strong Volume | +2 | Volume ≥ 2x average |
| Strong Delta | +2 | Delta ≥ 70% |
| CVD Momentum | +1 | CVD trending with signal |
**Score Interpretation:**
- **7-10**: Elite setup - full size
- **5-6**: Good setup - standard size
- **4**: Minimum threshold - reduced size
- **< 4**: No signal shown
---
## ⏰ SESSION WINDOWS
### London (3:00-5:00 AM ET)
- European institutional flow
- Character: Slow build-up, clean trends
- Expected trades: 1-2
- Best for: Zone entries, A/B tier
### NY Open (9:30-11:30 AM ET)
- Highest volume, most institutional activity
- Character: Initial balance, breakouts
- Expected trades: 2-3
- Best for: S/A tier, zone confluence
### Power Hour (3:00-4:00 PM ET)
- End-of-day rebalancing, MOC orders
- Character: Mean reversion or trend acceleration
- Expected trades: 1-2
- Best for: Zone entries, B tier scalps
---
## 🟩 FVG ZONES
### What Are FVG Zones?
Fair Value Gaps (FVGs) are price gaps between candles where price moved so fast that a gap was left. These gaps often act as support/resistance.
### Zone Requirements
- Gap size ≥ 25% of ATR
- Impulse candle has strong body (≥ 70%)
- Impulse candle is 1.5x average range
- Volume above average on impulse
- Created during active session
### Zone States
1. **Fresh** (bright color) - Just created, untested
2. **Tested** (gray) - Price touched zone midpoint
3. **Broken** (removed) - Price closed through zone
### Trading FVG Zones
| Zone | Approach From | Expected |
|------|--------------|----------|
| 🟩 Bull | Above (falling) | Support - look for bounce |
| 🟥 Bear | Below (rising) | Resistance - look for rejection |
---
## 🟣 SINGLE PRINTS
Single prints mark candles with:
- Range > 1.3x average
- Body > 70% of range
- Volume > 1.8x average
- Clear delta dominance
These become horizontal support/resistance lines extending into the future.
---
## 📊 TABLE REFERENCE
| Row | Label | Meaning |
|-----|-------|---------|
| 1 | Pts | Current candle point range |
| 2 | Tier | S/A/B/X classification |
| 3 | Vol | Volume ratio vs 20-bar average |
| 4 | Delta | Buy/Sell percentage dominance |
| 5 | Sess | Current session (LDN/NY/PWR/OFF) |
| 6 | Zone | In FVG zone (BULL/BEAR/---) |
| 7 | Score | Confluence score out of 10 |
| 8 | CVD | Delta momentum direction |
| 9 | R:R | Risk:Reward if signal active |
### Color Coding
- **Green/Lime**: Good, meets threshold
- **Yellow**: Caution, borderline
- **Red**: Bad, below threshold
- **Gray**: Inactive/neutral
---
## 🔧 SETTINGS GUIDE
### Tier Thresholds
| Setting | Default | Notes |
|---------|---------|-------|
| S-Tier | 50 pts | ~$250/contract |
| A-Tier | 25 pts | ~$125/contract |
| B-Tier | 12 pts | ~$60/contract |
### Sniper Filters
| Setting | Default | Notes |
|---------|---------|-------|
| Min Volume Ratio | 1.8x | Lower = more signals |
| Delta Dominance | 62% | Lower = more signals |
| Body Ratio | 70% | Higher = fewer, cleaner |
| Range Multiplier | 1.3x | Higher = fewer, bigger moves |
| CVD Confirm | On | Off = more signals |
### Recommended Configurations
**Conservative (3-4 trades/day):**
```
Min Confluence: 6
Volume Ratio: 2.0
Delta Threshold: 65%
Body Ratio: 75%
```
**Standard (5-7 trades/day):**
```
Min Confluence: 4
Volume Ratio: 1.8
Delta Threshold: 62%
Body Ratio: 70%
```
**Aggressive (7-10 trades/day):**
```
Min Confluence: 3
Volume Ratio: 1.5
Delta Threshold: 60%
Body Ratio: 65%
```
---
## ✓ ENTRY CHECKLIST
Before entering any trade:
1. ☐ Signal present (S🎯, A🎯, B🎯, or Z)
2. ☐ Session active (LDN, NY, or PWR)
3. ☐ Score ≥ 4 (preferably 6+)
4. ☐ Vol shows GREEN
5. ☐ Delta colored (not gray)
6. ☐ CVD arrow matches direction
7. ☐ Note stop/target lines
8. ☐ Execute at signal candle close
---
## ⛔ DO NOT TRADE
- Session shows "OFF"
- Score < 4
- Vol shows RED
- Delta gray (no dominance)
- Multiple conflicting signals
- Major news imminent (FOMC, NFP, CPI)
- Overnight session (11:30 PM - 3:00 AM ET)
---
## 🎯 POSITION SIZING
| Tier | Score | Size | Stop |
|------|-------|------|------|
| S (50+ pts) | 7+ | 100% | Below/above candle |
| A (25-49 pts) | 5-6 | 75% | Below/above candle |
| B (12-24 pts) | 4 | 50% | Below/above candle |
| Zone | Any | 50% | Beyond zone |
---
## 🚨 ALERTS
### Priority Alerts (Set These)
| Alert | Action |
|-------|--------|
| 🎯 S-TIER | Drop everything, check immediately |
| 🎯 A-TIER | Evaluate within 15 seconds |
| 🎯 B-TIER | Check if available |
| 🎯 ZONE | Good context entry |
### Info Alerts (Optional)
| Alert | Purpose |
|-------|---------|
| NEW BULL/BEAR FVG | Mark zones on mental map |
| SINGLE PRINT | Note for future S/R |
| SESSION OPEN | Prepare to trade |
---
## 📈 TRADE JOURNAL
```
DATE: ___________
SESSION: ☐ LDN ☐ NY ☐ PWR
TRADE:
├── Time: _______
├── Signal: S🎯 / A🎯 / B🎯 / Z
├── Direction: LONG / SHORT
├── Score: ___/10
├── Entry: _______
├── Stop: _______
├── Target: _______
├── In Zone: ☐ Yes ☐ No
├── Result: +/- ___ pts ($_____)
└── Notes: _______________________
DAILY:
├── Trades: ___
├── Wins: ___ | Losses: ___
├── Net P/L: $_____
└── Best setup: _______________________
```
---
## 🏆 GOLDEN RULES
> **"Wait for the session. Off-hours = noise."**
> **"Score 6+ is your edge. Anything less is gambling."**
> **"Zone + Tier = bread and butter combo."**
> **"One great trade beats five forced trades."**
> **"Leave every trade with money. YM gives you time."**
---
## 🔧 TROUBLESHOOTING
| Issue | Solution |
|-------|----------|
| No signals | Lower min score to 3-4 |
| Too many signals | Raise min score to 6+ |
| Zones cluttering | Reduce max zones to 8 |
| Missing sessions | Check timezone setting |
| Table not updating | Resize chart or refresh |
---
## 📝 TECHNICAL NOTES
- **Pine Script v6**
- **Works on**: YM, MYM, any Dow futures
- **Recommended TF**: 1-5 minute for day trading
- **Min TradingView Plan**: Free (no intrabar data required)
---
*© Alexandro Disla - YM Ultimate SNIPER v5*
*Clean Build | Proven Components Only*
Volume essential parameters overlayVolume EPO – Essential Volume Parameters Overlay
1. Motivation and design philosophy
Volume EPO is designed as a conceptual overlay rather than a self contained trading system. The main idea behind this script is to take complex, foundational market concepts out of heavy, menu driven strategies and express them as lightweight, independent layers that sit on top of any chart or indicator.
In many TradingView scripts, a single strategy tries to handle everything at once: signal logic, risk settings, visual cues, multi timeframe controls, and conceptual explanations. This usually leads to long input menus, performance issues, and difficult maintenance. The architectural approach behind Volume EPO is the opposite: keep the core strategy lean, and move the explanation and measurement of key concepts into dedicated overlays.
In this framework, Volume EPO is the base layer for the concept of volume. It does not decide anything about entries or exits. Instead, it exposes and clarifies how different definitions of volume behave candle by candle. Other layers or strategies can then build on top of this understanding.
2. What Volume EPO does
Volume EPO focuses on four essential volume parameters for each bar:
- Buy volume - Sell volume - Total volume - Delta volume (the difference between buy and sell volume)
The script presents these parameters in a compact heads up display (HUD) table that can be positioned anywhere on the chart. It is designed to be visually minimal, language aware, and usable on top of any other indicator or price action without cluttering the view.
The indicator does not output signals, alerts, arrows, or strategy entries. It is a descriptive and educational tool that shows how volume is distributed, not a prescriptive tool that tells the trader what to do.
3. Two definitions of volume
A central theme of this script is that there is more than one way to define and interpret “volume” inside a single candle. Volume EPO implements and clearly separates two different approaches:
- A geometric, candle based approximation that uses only OHLC and volume of the current bar. - An intrabar, data driven definition that uses lower timeframe up and down volume when it is available.
The user can switch between these modes via the calculation method input. The mode is prominently shown inside the on chart table so that the context is always explicit.
3.1 Geometry mode (Source File, approximate)
In Geometry mode, Volume EPO works only with the current bar’s OHLC values and total volume. No lower timeframe data is required.
The candle’s range is defined as high minus low. If the range is positive, the position of the close inside that range is used as a simple model for how volume might have been distributed between buyers and sellers:
- The closer the close is to the high, the more of the total volume is attributed to the buying side. - The closer the close is to the low, the more of the total volume is attributed to the selling side. - In a rare case where the bar has no price range (for example a flat or doji bar), total volume is split evenly between buy and sell volume.
From this model, the script derives:
- Buy volume (approximated) - Sell volume (approximated) - Total volume (as reported by the bar) - Delta volume as the difference between buy and sell volume
This approach is intentionally labeled as “Geometry (Approx)” in the HUD. It is a theoretical reconstruction based solely on the candle’s geometry and total volume, and it is always available on any market or timeframe that provides OHLCV data.
3.2 Intrabar mode (Precise)
In Intrabar mode, Volume EPO uses the TradingView built in library for up and down volume on a user selected lower timeframe. Instead of inferring volume from the shape of the candle, it reads the underlying lower timeframe data when that data is accessible.
The script requests up and down volume from a lower timeframe such as 15 seconds, using the official TA library functions. The results are then interpreted as follows:
- Buy volume is taken as the absolute value of the up volume. - Sell volume is taken as the absolute value of the down volume. - Total volume is the sum of buy and sell volume. - Delta volume is provided directly by the library as the difference between up and down volume.
If valid lower timeframe data exists for a bar, the bar is counted as covered by Intrabar data. If not, that bar is marked as invalid for this precise calculation and is excluded from the covered count.
This mode is labeled “Precise” in the HUD, together with the selected lower timeframe, because it is anchored in actual intrabar data rather than in a geometric model. It provides a closer view of how buying and selling pressure unfolded inside the bar, at the cost of requiring more data and being dependent on the availability of that data.
4. Coverage, lookback, and what the numbers mean
The top part of the HUD reports not only which volume definition is active, but also an additional line that describes the effective coverage of the data.
In Intrabar (Precise) mode, the script displays:
- “Scanned: N Bars”
Here, N counts how many bars since the indicator was loaded have successfully received valid lower timeframe delta data. It is a measure of how much of the visible history has been truly covered by intrabar information, not a lookback window in the sense of a rolling calculation.
In Geometry mode, the script displays:
- “Lookback: L Bars”
In this extracted layer, the lookback value L is purely descriptive. It does not change how the current bar’s volume is computed, and it is not used in any iterative or statistical calculation inside this script. It is meant as a conceptual label, for example to keep the volume layer consistent with a broader framework where lookback length is a structural parameter.
Summarizing these two fields:
- Scanned tells you how many bars have been processed using real intrabar data. - Lookback is a descriptive parameter in Geometry mode in this specific overlay, not a direct driver of the computations.
5. The HUD layout on the chart
The on chart table is intentionally compact and structured to be read quickly:
- Header: a title identifying the overlay as Volume EPO. - Mode line: explicitly states whether the script is in Precise or Geometry mode, and for Precise mode also shows the lower timeframe used. - Coverage line: - In Precise mode, it shows “Scanned: N Bars”. - In Geometry mode, it shows “Lookback: L Bars”. - Volume block: - A line for buy and sell volume, marked with clear directional symbols. - A line for total volume and the absolute delta, accompanied by the sign of the delta. - Numeric formatting uses human friendly suffixes (for example K, M, B) to keep the display readable. - Footer: the current symbol and a time stamp, adjusted by a user selectable timezone offset so that the HUD can be aligned with the trader’s local time reference.
The table can be positioned anywhere on the chart and resized via inputs, and it supports multiple color themes and languages in order to integrate cleanly into different chart layouts.
6. How to use Volume EPO in practice
Volume EPO is meant to be read together with price action and other tools, not in isolation. Typical uses include:
- Studying how often a strong directional candle is actually supported by dominant buy or sell volume. - Comparing the behavior of delta volume between Geometry and Intrabar definitions. - Building a personal intuition for how intrabar data refines or contradicts the simple candle based approximation. - Feeding these insights into separate, lean strategy scripts that do not need to carry the full explanatory logic of volume inside them.
Because it is an overlay layer, Volume EPO can be stacked with other custom indicators without adding new signals or complexity to their logic. It simply adds a clear and consistent view of volume behavior on top of whatever the trader is already watching.
7. Educational and non signalling nature
Finally, it is important to stress that Volume EPO is not a trading system, not a signal generator, and not financial advice. The script does not tell the user when to enter or exit. It only reports how different definitions of volume describe the current bar.
Deciding whether to trade, how to trade, and which risk parameters to use remains entirely with the user and with their own strategy. Volume EPO provides context and clarity around the concept of volume so that those decisions can be informed by a better understanding of how buying and selling pressure is structured inside each candle.
Note: Even on lower timeframes, every reconstruction of volume remains an approximation, except at the true single tick level. However, the closer the chosen lower timeframe is to a one tick stream, the more accurately it can reflect the underlying order flow and balance between buying and selling pressure.
Grok/Claude Quantum Signal Pro * Enhanced v2# QSig Pro+ v2 — Dynamic RSI Enhancement
## Release: Quantum Signal Pro Enhanced v2
**Author:** ralis24 (with Claude assistance)
**Version:** 2.0
**Platform:** TradingView (Pine Script v6)
---
## Overview
Version 2 introduces **Trend-Adaptive RSI Thresholds** — a significant enhancement that dynamically adjusts buy and sell levels based on real-time trend strength. This allows the indicator to more effectively capture dips in uptrends and sell bounces in downtrends, rather than waiting for extreme oversold/overbought conditions that rarely occur during strong directional moves.
---
## The Problem v2 Solves
In the original QSig Pro+, RSI thresholds were fixed at 30 (oversold) and 70 (overbought). While these levels work well in ranging markets, they create issues in trending conditions:
- **Strong Uptrends:** Price rarely drops to RSI 30. Pullbacks typically bottom around RSI 40-50, causing missed buy opportunities.
- **Strong Downtrends:** Relief rallies rarely push RSI above 70. Bounces often exhaust around RSI 55-65, causing missed sell opportunities.
The v2 solution: **Let the market's trend strength dictate the appropriate RSI levels.**
---
## New Feature: Dynamic RSI Thresholds
### How It Works
The indicator now detects three distinct market states and applies corresponding RSI thresholds:
| Market State | Detection Criteria | RSI Buy Level | RSI Sell Level |
|--------------|-------------------|---------------|----------------|
| **Strong Uptrend** | +DI > -DI, ADX > 24, ADX rising | < 40 | > 80 |
| **Strong Downtrend** | -DI > +DI, ADX > 24, ADX rising | < 20 | > 60 |
| **Neutral/Ranging** | ADX < 24 or ADX falling | < 30 | > 70 |
### Trend State Detection Logic
```
Strong Uptrend = (+DI > -DI) AND (ADX > threshold) AND (ADX > ADX )
Strong Downtrend = (-DI > +DI) AND (ADX > threshold) AND (ADX > ADX )
Neutral = Neither condition met
```
### Anti-Whipsaw Protection
To prevent rapid switching between threshold sets during choppy transitions, a **confirmation buffer** requires the trend state to persist for a configurable number of bars (default: 2) before the indicator switches regimes.
---
## New Input Parameters
A new input group "**Dynamic RSI Thresholds**" has been added with the following settings:
| Parameter | Default | Range | Description |
|-----------|---------|-------|-------------|
| Enable Trend-Adaptive RSI Levels | ON | toggle | Master switch for the feature |
| ADX Strong Trend Threshold | 24 | 15-40 | ADX must exceed this to qualify as "strong" trend |
| ADX Rising Lookback (bars) | 3 | 1-10 | ADX must be higher than N bars ago to confirm rising |
| Trend Confirmation Bars | 2 | 1-5 | Bars trend must persist before switching thresholds |
| RSI Buy Level (Strong Uptrend) | 40 | 30-55 | Oversold threshold during confirmed uptrends |
| RSI Sell Level (Strong Uptrend) | 80 | 70-90 | Overbought threshold during confirmed uptrends |
| RSI Buy Level (Strong Downtrend) | 20 | 10-30 | Oversold threshold during confirmed downtrends |
| RSI Sell Level (Strong Downtrend) | 60 | 50-70 | Overbought threshold during confirmed downtrends |
| RSI Buy Level (Neutral/Ranging) | 30 | 20-40 | Standard oversold threshold |
| RSI Sell Level (Neutral/Ranging) | 70 | 60-80 | Standard overbought threshold |
---
## Enhanced Info Panel
The information panel now displays two new rows:
1. **Trend State** — Shows current regime: "STRONG UP" (green), "STRONG DOWN" (red), or "NEUTRAL" (gray)
2. **RSI Levels** — Displays the currently active thresholds (e.g., "40 / 80" during uptrends)
Additionally, the **ADX row** now includes a directional arrow (↑ or ↓) indicating whether ADX is rising or falling.
---
## Enhanced Signal Labels
Buy and sell labels on the chart now include contextual information:
**Before (v1):**
```
BUY: 97,234.50
```
**After (v2):**
```
BUY: 97,234.50
STRONG UP | RSI<40
```
This provides immediate visual confirmation of which threshold regime triggered the signal.
---
## Enhanced Alert System
### New Alert Conditions
Three new alerts have been added for trend state changes:
- **🔼 Strong Uptrend Started** — Fires when market transitions to strong uptrend (thresholds shift to 40/80)
- **🔽 Strong Downtrend Started** — Fires when market transitions to strong downtrend (thresholds shift to 20/60)
- **⚖️ Trend Neutralized** — Fires when trend weakens and thresholds reset to 30/70
### Enhanced Webhook JSON
The JSON alert payload now includes additional fields for bot integration:
```json
{
"action": "BUY",
"symbol": "BTC/USDT",
"price": "97234.50",
"rsi": "38.5",
"rsi_threshold": "40",
"adx": "28.3",
"fisher": "-1.87",
"trend_state": "STRONG UP"
}
```
---
## Bonus Enhancement: Dynamic Fisher Thresholds
As an additional refinement, the Fisher Transform thresholds now adjust slightly based on trend state:
| Trend State | Fisher Buy Level | Fisher Sell Level |
|-------------|------------------|-------------------|
| Strong Uptrend | -1.5 (loosened) | -2.0 (standard) |
| Strong Downtrend | -2.0 (standard) | +1.5 (loosened) |
| Neutral | -2.0 (standard) | +2.0 (standard) |
This allows the indicator to trigger signals in strong trends where momentum oscillators rarely reach extreme levels.
---
## Practical Trading Impact
### Strong Uptrend Example (BTC rally)
- **Before:** Waiting for RSI < 30 means missing most pullback entries
- **After:** RSI < 40 triggers buy signals on normal pullbacks within the trend
### Strong Downtrend Example (Bear market bounce)
- **Before:** Waiting for RSI > 70 means holding through entire relief rallies
- **After:** RSI > 60 triggers sell signals on bounce exhaustion
### Ranging Market
- Thresholds remain at traditional 30/70 levels where mean reversion works best
---
## Backward Compatibility
The dynamic RSI feature can be completely disabled by turning off "Enable Trend-Adaptive RSI Levels" in the settings. When disabled, the indicator behaves identically to v1 using the neutral threshold values (30/70).
---
## Summary of Changes
| Component | v1 | v2 |
|-----------|----|----|
| RSI Thresholds | Fixed 30/70 | Dynamic based on trend state |
| Trend State Detection | Not present | +DI/-DI + ADX + Rising confirmation |
| Whipsaw Protection | Not present | Configurable confirmation bars |
| Info Panel Rows | 10 | 12 (added Trend State, RSI Levels) |
| ADX Display | Value only | Value + direction arrow |
| Signal Labels | Price only | Price + Trend State + Threshold |
| Alert Conditions | 10 | 13 (added 3 trend state alerts) |
| Webhook Fields | 5 | 7 (added rsi_threshold, trend_state) |
| Fisher Thresholds | Fixed | Adaptive (subtle adjustment) |
---
## Recommended Settings by Market Type
### Crypto (High Volatility)
- ADX Strong Trend Threshold: 24
- RSI Buy (Uptrend): 40-45
- RSI Sell (Downtrend): 55-60
### Forex (Medium Volatility)
- ADX Strong Trend Threshold: 22
- RSI Buy (Uptrend): 38-42
- RSI Sell (Downtrend): 58-62
### Stocks/Indices (Lower Volatility)
- ADX Strong Trend Threshold: 20
- RSI Buy (Uptrend): 35-40
- RSI Sell (Downtrend): 60-65
---
## Installation
1. Open TradingView and navigate to Pine Editor
2. Remove or rename existing QSig Pro+ indicator
3. Paste the complete v2 code
4. Click "Add to Chart"
5. Configure Dynamic RSI Thresholds in settings as desired
---
*QSig Pro+ v2 — Smarter entries through trend-aware signal generation*
Real Relative Strength Indicator### What is RRS (Real Relative Strength)?
RRS is a volatility-normalized relative strength indicator that shows you – in real time – whether your stock, crypto, or any asset is genuinely beating or lagging the broader market after adjusting for risk and volatility. Unlike the classic “price ÷ SPY” line that gets completely fooled by volatility regimes, RRS answers the only question that actually matters to professional traders:
“Is this ticker moving better (or worse) than the market on a risk-adjusted basis right now?”
It does this by measuring the excess momentum of your ticker versus a benchmark (SPY, QQQ, BTC, etc.) and then dividing that excess by the average volatility (ATR) of both instruments. The result is a clean, centered-around-zero oscillator that works the same way in calm markets, crash markets, or parabolic bull runs.
### How to Use the RRS Indicator (Aqua/Purple Area Version) in Practice
The indicator is deliberately simple to read once you know the rules:
Positive area (aqua) means genuine outperformance.
Negative area (purple) means genuine underperformance.
The farther from zero, the stronger the leadership or weakness.
#### Core Signals and How to Trade Them
- RRS crossing above zero → one of the highest-probability long signals in existence. The asset has just started outperforming the market on a risk-adjusted basis. Enter or add aggressively if price structure agrees.
- RRS crossing below zero → leadership is ending. Tighten stops, take partial or full profits, or flip short if you trade both sides.
- RRS above +2 (bright aqua area) → clear leadership. This is where the real money is made in bull markets. Trail stops, add on pullbacks, let winners run.
- RRS below –2 (bright purple area) → clear distribution or capitulation. Avoid new longs, consider short entries or protective puts.
- Extreme readings above +4 or below –4 (background tint appears) → rare, very high-conviction moves. Treat these like once-a-month opportunities.
- Divergence (not plotted here, but easy to spot visually): price making new highs while the aqua area is shrinking → distribution. Price making new lows while the purple area is shrinking → hidden buying and coming reversal.
#### Best Settings by Style and Asset Class
For stocks and ETFs: keep benchmark as SPY (or QQQ for tech-heavy names) and length 14–20 on daily/4H charts.
For crypto: change the benchmark to BTCUSD (or ETHUSD) immediately — otherwise the reading is meaningless. Length 10–14 works best on 1H–4H crypto charts because volatility is higher.
For day trading: drop length to 10–12 and use 15-minute or 5-minute charts. Signals are faster and still extremely clean.
#### Highest-Edge Setups (What Actually Prints Money)
- RRS crosses above zero while price is still below a major moving average (50 EMA, 200 SMA, etc.) → early leadership, often catches the exact bottom of a new leg up.
- RRS already deep aqua (+3 or higher) and price pulls back to support without RRS dropping below +1 → textbook add-on or re-entry zone.
- RRS deep purple and suddenly turns flat or starts curling up while price is still falling → hidden accumulation, usually the exact low tick.
That’s it. Master these few rules and the RRS becomes one of the most powerful edge tools you will ever use for rotation trading...
Psychological LevelsADVANCED PSYCHOLOGICAL LEVELS - PROFESSIONAL FOREX INDICATOR
This highly customizable indicator automatically identifies and visualizes all major psychological price levels across any Forex chart. Psychological levels represent critical price zones where traders naturally congregate their orders due to human psychology's attraction to round numbers. These levels consistently act as powerful support and resistance zones in the market.
🎯 KEY FEATURES:
✅ Four Distinct Level Types - Choose from 1000-pip, 100-pip, 50-pip, 25-pip, and 10-pip psychological levels
✅ Individual Color Customization - Each level type has its own customizable zone and line colors
✅ Separate Zone Width Control - Adjust zone width independently for each level type
✅ Universal Forex Compatibility - Automatically adapts to JPY pairs and all other currency pairs
✅ Extended Coverage - Displays levels far beyond the visible chart area for comprehensive analysis
✅ Fixed Positioning - Levels remain stationary when scrolling or zooming
✅ Fully Customizable Styling - Choose between solid, dashed, or dotted line styles
📊 LEVEL TYPES EXPLAINED:
🟣 1000-pip Levels (e.g., EUR/USD: 1.0000, 2.0000 | USD/JPY: 100.00, 110.00, 120.00)
The strongest macro-level psychological barriers in the Forex market
Represent massive institutional, long-term price zones
Extremely important for position traders, swing traders, and macro analysis
Used by hedge funds, banks, and large liquidity providers for major order placement
Ideal for identifying long-term support/resistance, trend reversals, and market structure shifts
Default color: Purple (highest, macro-level importance)
🔴 100-pip Levels (e.g., EUR/USD: 1.1000, 1.1100, 1.1200 | USD/JPY: 150.00, 151.00, 152.00)
The most significant psychological barriers in Forex trading
Major round numbers where institutional traders place large orders
Strongest support and resistance zones with highest reaction probability
Essential for swing trading and position trading strategies
Default color: Red (highest importance)
🟠 50-pip Levels (e.g., EUR/USD: 1.1050, 1.1150, 1.1250 | USD/JPY: 150.50, 151.50, 152.50)
Secondary psychological levels positioned midway between 100-pip levels
Important intermediate zones for profit-taking and order clustering
Highly effective for day trading strategies
Reliable targets for partial profit exits
Default color: Orange (medium-high importance)
🔵 25-pip Levels (e.g., EUR/USD: 1.1025, 1.1075, 1.1125 | USD/JPY: 150.25, 150.75, 151.25)
Quartile levels providing granular market structure
Perfect for scalping and short-term trading approaches
Excellent confluence zones with technical indicators
Ideal for tight stop-loss placement
Default color: Blue (medium importance)
🟢 10-pip Levels (e.g., EUR/USD: 1.1010, 1.1020, 1.1030 | USD/JPY: 150.10, 150.20, 150.30)
Most detailed psychological levels for precision trading
Optimal for micro scalping and high-frequency strategies
Provides fine-grained market structure analysis
Useful for optimizing entry and exit timing
Default color: Green (detailed analysis)
⚙️ CUSTOMIZATION OPTIONS:
Color Settings (Individual for Each Level):
Zone Color - Customize fill color with adjustable transparency
Line Color - Set center line color independently
Default color scheme uses traffic light logic (Purple → Red → Orange → Blue → Green)
Zone Width Settings (Separate for Each Level):
1000-pip Levels: Default 15 pips (widest zones for long-term significance)
100-pip Levels: Default 8 pips (wider zones for major levels)
50-pip Levels: Default 5 pips (medium zones)
25-pip Levels: Default 3 pips (smaller zones)
10-pip Levels: Default 2 pips (narrowest zones for precision)
Display Settings:
Line Style: Choose between Solid, Dashed, or Dotted
Line Thickness: Adjustable from 1 to 5 pixels
Level Selection: Toggle each level type on/off independently
💡 TRADING APPLICATIONS:
📈 Support & Resistance Identification
Instantly recognize where price is likely to react
Identify key reversal zones before they occur
Combine with price action for high-probability setups
🎯 Optimal Entry & Exit Points
Enter trades at psychological support/resistance
Set realistic profit targets at the next psychological level
Improve win rate by trading with market psychology
🛡️ Strategic Stop-Loss Placement
Position stops just beyond psychological levels to avoid stop hunts
Reduce premature stop-outs by understanding where others place stops
Protect profits by moving stops to psychological levels
💰 Profit Target Optimization
Set take-profit orders at psychological levels where profit-taking occurs
Scale out positions at multiple psychological levels
Maximize gains by understanding where demand/supply shifts
📊 Breakout Trading
Identify when price decisively breaks through major psychological barriers
Trade momentum when psychological levels are breached
Confirm breakouts using multiple level types as confluence
⚖️ Risk Management Enhancement
Calculate better risk-reward ratios using psychological levels
Size positions based on distance to next psychological level
Improve overall trading consistency
🔬 WHY PSYCHOLOGICAL LEVELS WORK:
Psychological levels are self-fulfilling prophecies in financial markets. Because thousands of traders worldwide monitor the same round numbers, these levels naturally attract significant order flow:
Order Clustering: Pending buy/sell orders accumulate at round numbers
Profit Taking: Traders instinctively close positions at psychological levels
Stop Hunts: Market makers often push price to psychological levels to trigger stops
Institutional Activity: Banks and funds use round numbers for large order placement
Pattern Recognition: Human brains naturally gravitate toward simple, round numbers
📋 TECHNICAL SPECIFICATIONS:
✓ Pine Script Version 6 (latest)
✓ Compatible with all Forex pairs (majors, minors, exotics)
✓ Works on all timeframes (M1 to Monthly)
✓ Automatic JPY pair detection and adjustment
✓ Maximum 500 lines and 500 boxes for optimal performance
✓ Levels extend infinitely across the chart
✓ No repainting - levels are fixed once drawn
✓ Efficient calculation prevents performance issues
✓ Clean visualization without chart clutter
👥 IDEAL FOR:
Day Traders: Use 100-pip and 50-pip levels for intraday setups
Swing Traders: Focus on major 100-pip levels for multi-day positions
Scalpers: Enable 25-pip and 10-pip levels for precision entries
Position Traders: Use 100-pip levels for long-term support/resistance analysis
Beginner Traders: Learn to recognize important market structure easily
Algorithm Developers: Incorporate psychological levels into automated strategies
🚀 HOW TO USE:
Add the indicator to any Forex chart
Select which level types you want to display (100, 50, 25, 10)
Customize colors to match your chart theme
Adjust zone widths based on your trading style and timeframe
Choose line style (solid, dashed, or dotted)
Watch for price reactions at the highlighted psychological zones
Use the levels to plan entries, exits, and stop-loss placement
💎 BEST PRACTICES:
✓ Combine with candlestick patterns for confirmation signals
✓ Wait for price action confirmation before entering trades
✓ Use multiple timeframes to identify the most significant levels
✓ Disable 10-pip levels on higher timeframes to reduce visual noise
✓ Enable only 100-pip levels for clean, uncluttered analysis on Daily/Weekly charts
✓ Adjust zone widths based on pair volatility (wider for volatile pairs)
✓ Use color coding to instantly recognize level importance
⚡ PERFORMANCE OPTIMIZED:
This indicator is engineered for maximum efficiency:
Smart calculation only within visible price range
Duplicate prevention system avoids overlapping levels
Optimized loops with early break conditions
Extended coverage (500 bars) without performance degradation
Handles thousands of levels across all timeframes smoothly
🎨 VISUAL DESIGN:
The default color scheme follows intuitive importance levels:
Purple (1000-pip): Macro-level, highest significance
Red (100-pip): Highest importance - major barriers
Orange (50-pip): Medium-high importance - secondary levels
Blue (25-pip): Medium importance - tertiary levels
Green (10-pip): Detailed analysis - precision levels
This traffic-light inspired system allows instant visual recognition of level significance.
📚 EDUCATIONAL VALUE:
Beyond being a trading tool, this indicator serves as an excellent educational resource for understanding market psychology and how professional traders think. It visually demonstrates where the "crowd" is likely to place orders, helping you develop better market intuition.
🔄 CONTINUOUS UPDATES:
This indicator displays levels dynamically based on the current price range, ensuring you always see relevant psychological levels no matter where price moves on the chart.
✨ WHAT MAKES THIS INDICATOR UNIQUE:
Unlike simple horizontal line indicators, this advanced tool offers:
Individual customization for each level type (colors, widths)
Automatic currency pair detection and adjustment
Visual zones (not just lines) for better support/resistance visualization
Extended coverage ensuring levels are always visible
Professional color-coding system for instant level importance recognition
Performance-optimized for handling hundreds of levels simultaneously
⭐ PERFECT FOR ALL TRADING STYLES:
Whether you're a conservative position trader looking at weekly charts or an aggressive scalper on 1-minute timeframes, this indicator adapts to your needs. Simply enable the appropriate level types and adjust the visualization to match your strategy.
Transform your Forex trading with professional-grade psychological level analysis. Add this indicator to your chart today and start trading with the market psychology on your side!
Session Opening Range Breakout (ORBO)This strategy automates a classic Opening Range Breakout (ORBO) approach: it builds a price range for the first minutes after the market opens, then looks for strong breakouts above or below that range to catch early directional moves.
Concept
The idea behind ORBO is simple:
The first minutes after the session open are often highly informative.
Price forms an “opening range” that acts as a mini support/resistance zone.
A clean breakout beyond this zone can lead to high-momentum moves.
This script turns that logic into a fully backtestable strategy in TradingView.
How the strategy works
Opening Range Session
Default session: 09:30–09:50 (exchange time)
During this window, the script tracks:
orHigh → highest high within the session
orLow → lowest low within the session
This forms your Opening Range for the day.
Breakout Logic (after the window ends)
Once the defined session ends:
Long Entry:
If the close crosses above the Opening Range High (orHigh),
→ strategy.entry("OR Long", strategy.long) is triggered.
Short Entry:
If the close crosses below the Opening Range Low (orLow),
→ strategy.entry("OR Short", strategy.short) is triggered.
Only one opening range per day is considered, which keeps the logic clean and easy to interpret.
Daily Reset
At the start of a new trading day, the script resets:
orHigh := na
orLow := na
A fresh Opening Range is then built using the next session’s 09:30–09:50 candles.
This ensures entries are always based on today’s structure, not yesterday’s.
Visuals & Inputs
Inputs:
Opening range session → default: "0930-0950"
Show OR levels → toggle visibility of OR High / Low lines
Fill range body → optional shaded zone between OR High and OR Low
Chart visuals:
A green line marks the Opening Range High.
A red line marks the Opening Range Low.
Optional yellow fill highlights the entire OR zone.
Background shading during the session shows when the range is currently being built.
These visuals make it easy to see:
Where the OR sits relative to current price
How clean / noisy the breakout was
How often price respects or rejects the opening zone
Backtesting & Optimization
Because this is written as a strategy():
You can use TradingView’s Strategy Tester to view:
Win rate
Net profit
Drawdown
Profit factor
Equity curve
Ideas to experiment with:
Change the session window (e.g., 09:15–09:45, 10:00–10:30)
Apply to different:
Markets: indices, FX, crypto, stocks
Timeframes: 1m / 5m / 15m
Add your own:
Stop Loss & Take Profit levels
Time filters (only trade certain days / times)
Volatility filters (e.g., ATR, range size thresholds)
Higher-timeframe trend filter (e.g., only take longs above 200 EMA)
EMA Crossover + Angle + Candle Pattern + Breakout (Clean)+mrit uses 9 15 ema startegy with angle and candle also candle used are pin bar , hammer, full body
mayank raj indicatorit uses 9 and 15 ema strategy with angle so that u dont enter in sideways market also the candle entries are hmmer,pinbar,fullbody
Keltner Hull Suite [QuantAlgo]🟢 Overview
The Keltner Hull Suite combines Hull Moving Average positioning with double-smoothed True Range banding to identify trend regimes and filter market noise. The indicator establishes upper and lower volatility bounds around the Hull MA, with the trend line conditionally updating only when price violates these boundaries. This mechanism distinguishes between genuine directional shifts and temporary price fluctuations, providing traders and investors with a systematic framework for trend identification that adapts to changing volatility conditions across multiple timeframes and asset classes.
🟢 How It Works
The calculation foundation begins with the Hull Moving Average, a weighted moving average designed to minimize lag while maintaining smoothness:
hullMA = ta.hma(priceSource, hullPeriod)
The indicator then calculates true range and applies dual exponential smoothing to create a volatility measure that responds more quickly to volatility changes than traditional ATR implementations while maintaining stability through the double-smoothing process:
tr = ta.tr(true)
smoothTR = ta.ema(tr, keltnerPeriod)
doubleSmooth = ta.ema(smoothTR, keltnerPeriod)
deviation = doubleSmooth * keltnerMultiplier
Dynamic support and resistance boundaries are constructed by applying the multiplier-scaled volatility deviation to the Hull MA, creating upper and lower bounds that expand during volatile periods and contract during consolidation:
upperBound = hullMA + deviation
lowerBound = hullMA - deviation
The trend line employs a conditional update mechanism that prevents premature trend reversals. The system maintains the current trend line until price action violates the respective boundary, at which point the trend line snaps to the violated bound:
if upperBound < trendLine
trendLine := upperBound
if lowerBound > trendLine
trendLine := lowerBound
Directional bias determination compares the current trend line value against its previous value, establishing bullish conditions when rising and bearish conditions when falling. Signal generation occurs on state transitions, triggering alerts when the trend state shifts from neutral or opposite direction:
trendUp = trendLine > trendLine
trendDown = trendLine < trendLine
longSignal = trendState == 1 and trendState != 1
shortSignal = trendState == -1 and trendState != -1
The visualization layer creates a trend band by plotting both the current trend line and a two-bar shifted version, with the area between them filled to create a visual channel that reinforces directional conviction.
🟢 How to Use This Indicator
▶ Long and Short Signals: The indicator generates long/buy signals when the trend state transitions to bullish (trend line begins rising) and short/sell signals when transitioning to bearish (trend line begins falling). These state changes represent structural shifts in momentum where price has broken through the adaptive volatility bands, confirming directional commitment.
▶ Trend Band Dynamics: The spacing between the main trend line and its shifted counterpart creates a visual band whose width reflects trend strength and momentum consistency. Expanding bands indicate accelerating directional movement and strong trend persistence, while contracting or flattening bands suggest decelerating momentum, potential trend exhaustion, or impending consolidation. Monitoring band width provides early warning of regime transitions from trending to range-bound conditions.
▶ Preconfigured Presets: Three optimized parameter sets accommodate different trading styles and timeframes. Default (14, 20, 2.0) provides balanced trend identification suitable for daily charts and swing trading, Fast Response (10, 14, 1.5) delivers aggressive signal generation optimized for intraday scalping and momentum trading on 1-15 minute timeframes, while Smooth Trend (18, 30, 2.5) offers conservative trend confirmation ideal for position trading on 4-hour to daily charts with enhanced noise filtration.
▶ Built-in Alerts: Three alert conditions enable automated monitoring - Bullish Trend Signal triggers on long setup confirmation, Bearish Trend Signal activates on short setup confirmation, and Trend Change alerts on any directional transition. These notifications allow you to respond to regime shifts without continuous chart monitoring.
▶ Color Customization: Five visual themes (Classic, Aqua, Cosmic, Ember, Neon, plus Custom) accommodate different chart backgrounds and display preferences, ensuring optimal contrast and visual clarity across trading environments.
Ehlers Dominant Cycle Stochastic RSIEhlers Enhanced Cycle Stochastic RSI
OVERVIEW
The Ehlers Enhanced Cycle Stochastic RSI is a momentum oscillator that automatically adjusts its lookback periods based on the dominant market cycle. Unlike traditional Stochastic RSI which uses fixed periods, this indicator detects the current cycle length and scales its calculations—making it responsive in fast markets and stable in slow ones.
The indicator combines John Ehlers' digital signal processing research with the classic Stochastic RSI indicator, then adds a confirmation system to ensure cycle measurements are reliable.
THE THEORY
Traditional oscillators use fixed lookback periods (ie, 14-bar RSI). This creates a fundamental problem: markets don't move in fixed cycles. A 14-period RSI might capture the rhythm perfectly during one market phase, then completely miss it when conditions change.
Ehlers' research demonstrated that price data contains measurable cyclical components. If you can detect the dominant cycle length, you can tune your indicators to match it—like tuning a radio to the right frequency.
This indicator takes that concept further by using three independent cycle detection methods and only trusting the measurement when they agree:
Hilbert Transform — A mathematical technique from signal processing that extracts cycle period from the phase relationship between price and its derivative. It is fast but can be noisy.
Autocorrelation Periodogram — Measures how similar the price series is to lagged versions of itself. The lag with highest correlation reveals the dominant cycle. More stable than Hilbert, but slightly slower to adapt.
Goertzel Algorithm (DFT) — A frequency-domain approach that calculates spectral power at each candidate period. Identifies which frequencies contain the most energy.
When all three methods converge on similar period estimates, confidence is high. When they disagree, the market may be in a non-cyclical or in transition.
HOW IT CHANGES THE STOCHASTIC RSI
Standard Stochastic RSI:
1. Calculate RSI with fixed period (14 bars)
2. Apply Stochastic formula over fixed period (14 bars)
3. Smooth with fixed periods
Ehlers Enhanced Cycle Stochastic RSI:
1. Detect dominant cycle using three methods
2. Confirm cycle measurement (methods must agree)
3. Calculate RSI with period scaled to the detected cycle
4. Apply Stochastic formula with cycle-scaled lookback
5. Smooth adaptively
The result: when the market is cycling quickly (say, 15-bar cycles), the indicator uses shorter periods and responds faster. When the market stretches into longer cycles (such as 40-bar cycles), it automatically extends its lookback to avoid whipsaws.
The Period Multipliers let you fine-tune this relationship:
• 1.0 = Use the full detected cycle (smoother, fewer signals)
• 0.5 = Use half the cycle (more responsive, catches turns earlier)
INTERPRETATION
Reading the Oscillator:
• K Line (Blue) — The main signal line. Moves between 0 and 100.
• D Line (Orange) — Smoothed version of K. Use for confirmation.
• Above 80 — Overbought. Momentum stretched to upside.
• Below 20 — Oversold. Momentum stretched to downside.
• Crossovers — K crossing above D suggests bullish momentum shift; K crossing below D suggests bearish.
Spectral Dilation (optional):
When enabled, applies a bandpass filter before cycle detection. This isolates the frequency band of interest and reduces noise. Useful for:
• Very noisy instruments
• Lower timeframes
• When confidence stays persistently low
MTFToolkit-LibraryLibrary "MTFToolkit"
Multi-Timeframe Utilities Library: conversions, Fibonacci, TF sorting, MTF helpers, color gradients, demo table
timeframeToMinutes(tf)
Converts a timeframe string to minutes
Parameters:
tf (string) : Timeframe string (e.g., "1", "15", "1D", "1W", "1M")
Returns: Number of minutes as float
minutesToTimeframe(minutes)
Converts minutes to a timeframe string
Parameters:
minutes (float) : Number of minutes
Returns: Timeframe string
timeframeToSeconds(tf)
Converts a timeframe string to seconds
Parameters:
tf (string) : Timeframe string
Returns: Number of seconds
secondsToTimeframe(seconds)
Converts seconds to a timeframe string
Parameters:
seconds (float) : Number of seconds
Returns: Timeframe string
fiboGenerate(n)
Generates Fibonacci sequence up to n elements
Parameters:
n (int) : Number of elements
Returns: Array of Fibonacci numbers
fiboMapToTV(arrFibo)
Maps Fibonacci values to TradingView timeframe strings
Parameters:
arrFibo (array) : Array of Fibonacci numbers
Returns: Array of timeframe strings
arrayMergeUnique(arr1, arr2)
Merges two string arrays and keeps unique values
Parameters:
arr1 (array) : First array
arr2 (array) : Second array
Returns: Merged array with unique strings
arrayFilterMax(arr, maxMinutes)
Filters TF array by max minutes
Parameters:
arr (array) : Array of timeframe strings
maxMinutes (float) : Maximum allowed minutes
Returns: Filtered array
arraySortTF(tf_array, show_array, ascending)
Sorts TF array by minutes, optionally ascending
Parameters:
tf_array (array) : Array of timeframes
show_array (array) : Array of bool flags (for visibility)
ascending (bool)
masterTF(arr)
Returns the largest TF from array (master)
Parameters:
arr (array) : Array of TF strings
Returns: Master TF
slaveTF(arr)
Returns all TFs except master (slaves)
Parameters:
arr (array) : Array of TF strings
Returns: Array of slave TFs
isTFIncreasing(prevTF, nextTF)
Checks if next TF is larger than previous
Parameters:
prevTF (string) : Previous timeframe
nextTF (string) : Next timeframe
Returns: true if nextTF > prevTF
TFScore(values)
Computes simple average as score
Parameters:
values (array) : Array of float
Returns: Simple average (na if empty)
gradient_triangular(value, mid_point, min_color, mid_color, max_color)
Produces a triangular gradient between 3 colors
Parameters:
value (float) : Current value (0–100 or any scale)
mid_point (float) : Center point of gradient
min_color (color) : Color at low end
mid_color (color) : Color at midpoint
max_color (color) : Color at high end
Returns: A color value
TFColorGradient(tf_val, min_val, max_val)
Timeframe color gradient helper
Converts a timeframe (in minutes) into a color using a
red → yellow → green gradient.
Parameters:
tf_val (float) : Timeframe value in minutes
min_val (float) : Minimum expected minutes
max_val (float) : Maximum expected minutes
Returns: Color based on position between min_val and max_val
------------------------------------------------------------
TFColorGradientEx(tf_val, min_val, mid_val, max_val, low_color, mid_color, high_color)
Extended customizable timeframe gradient
Parameters:
tf_val (float) : Timeframe value in minutes
min_val (float) : Minimum minutes
mid_val (float) : Middle minutes
max_val (float) : Maximum minutes
low_color (color) : Color at min_val
mid_color (color) : Color at mid_val
high_color (color) : Color at max_val
Returns: Color determined by TF position
------------------------------------------------------------
demoTable(tf_arr, show_arr, dashboard_position, horizontal_table, show_header)
Creates a demo table for testing TF arrays
Parameters:
tf_arr (array) : Array of TF strings
show_arr (array) : Array of bools to show TFs
dashboard_position (string) : Position string
horizontal_table (bool) : true=horizontal, false=vertical
show_header (bool) : Show header row
[CT] ATR Ratio MTFThis indicator is an enhanced, multi-timeframe version of the original “ATR ratio” by RafaelZioni. Huge thanks to RafaelZioni for the core concept and base logic. The script still combines an ATR-based ratio (Z-score style reading of where price sits within its recent ATR envelope) with an ATR Supertrend, but expands it into a more flexible trade-decision and visual context tool.
The ATR ratio is normalized so you can quickly see when price is pressing into extended bullish or bearish territory, while the Supertrend defines directional bias and a dynamic support-resistance trail. You can choose any higher timeframe in the settings, allowing you to run the ATR ratio and Supertrend from a larger anchor timeframe while trading on a lower chart.
Upgrades include a full Pine Script v6 rewrite, multi-timeframe support for both the ATR ratio and Supertrend, user-controlled colors for the Supertrend in bull and bear modes, and optional bar coloring so price bars automatically reflect Supertrend direction. Entry, pyramiding and take-profit logic from the original script are preserved, giving you a familiar framework with more control over timeframe, visuals and trend bias.
This indicator is designed to give you a clean directional framework that blends volatility, trend, and timing into one view. The ATR ratio side of the script shows you where price sits inside a recent ATR-based envelope. When the ATR ratio pushes up and sustains above the bullish threshold, it signals that price is trading in an extended, momentum-driven zone relative to recent volatility. When it drops and holds below the bearish threshold, it shows the opposite: sellers have pushed price down into an extended bearish zone. The optional background coloring simply makes these bullish and bearish environments easier to see at a glance.
On top of that, the Supertrend and bar colors tell you what side of the market to favor. The Supertrend is calculated from ATR on whatever timeframe you choose in the settings. If you set the MTF input to a higher timeframe, the Supertrend and ATR ratio become your higher time frame bias while you trade on a lower chart. When price is above the MTF Supertrend, the line uses your bullish color and, if bar coloring is enabled, candles adopt your bullish bar color. That is your “long only” environment: you generally look for buys when price is above the Supertrend and the ATR ratio is either turning up from neutral or already in a bullish zone. When price is below the MTF Supertrend, the line uses your bearish color and candles can shift to your bearish bar color; that is where you focus on shorts, especially when the ATR ratio is rolling over or holding in the bearish zone.
The built-in long and short conditions are meant as signal prompts, not rigid rules. Long signals fire when the ATR ratio crosses up through a positive level while the Supertrend is bullish. Short signals fire when the ATR ratio crosses down through a negative level while the Supertrend is bearish. The script tracks how many longs or shorts have been taken in sequence (pyramiding) and will only allow a new signal up to the limit you set, so you can control how aggressively you stack positions in a trend. The take-profit logic then watches the percentage move from your last entry and flags “TP” when that move has reached your take-profit percent, helping you standardize exits instead of eyeballing them bar by bar.
In practice you typically start by choosing your anchor timeframe for the MTF setting, for example a 1-hour or 4-hour Supertrend and ATR ratio while watching a 5-minute or 15-minute chart. You then use the Supertrend direction and bar colors as your bias filter, only taking signals in the direction of the trend, and you use the ATR ratio behavior to judge whether you are entering into strength, fading an extreme, or trading inside a neutral consolidation. Over time this gives you a consistent way to answer three questions on every chart: which side am I allowed to trade, how extended is price within its recent volatility, and where are my structured entries and exits based on that framework.
4/8/15 E/20 EMA + Daily Pivot S/RThese are your intraday EMA's and levels/pivots you need to read the room.
EMA Crossover + Angle + Candle Pattern + Breakout (Clean) finalmayank raj startegy of 9 15 ema with angle more th5 and bullish croosover or bearish crooswoveran 3
EMA Crossover + Angle + Candle Pattern + Breakout (Clean) finalmayank raj 9 15 ema strategy which will give me 1 crore
MTF RSI + MACD Bullish Confluencethis based on rsi more then 50 and macd line bullish crossover or above '0' and time frame 15 min, 1 hour, 4 hour , 1 day and 1 week
Relative Strength Heatmap [BackQuant]Relative Strength Heatmap
A multi-horizon RSI matrix that compresses 20 different lookbacks into a single panel, turning raw momentum into a visual “pressure gauge” for overbought and oversold clustering, trend exhaustion, and breadth of participation across time horizons.
What this is
This indicator builds a strip-style heatmap of 20 RSIs, each with a different length, and stacks them vertically as colored tiles in a single pane. Every tile is colored by its RSI value using your chosen palette, so you can see at a glance:
How many “fast” versus “slow” RSIs are overbought or oversold.
Whether momentum is concentrated in the short lookbacks or spread across the whole curve.
When momentum extremes cluster, signalling strong market pressure or exhaustion.
On top of the tiles, the script plots two simple breadth lines:
A white line that counts how many RSIs are above 70 (overbought cluster).
A black line that counts how many RSIs are below 30 (oversold cluster).
This turns a single symbol’s RSI ladder into a compact “market pressure gauge” that shows not only whether RSI is overbought or oversold, but how many different horizons agree at the same time.
Core idea
A single RSI looks at one length and one timescale. Markets, however, are driven by flows that operate on multiple horizons at once. By computing RSI over a ladder of lengths, you approximate a “term structure” of strength:
Short lengths react to immediate swings and very recent impulses.
Medium lengths reflect swing behaviour and local trends.
Long lengths reflect structural bias and higher timeframe regime.
When many lengths agree, for example 10 or more RSIs all above 70, it suggests broad participation and strong directional pressure. When only a few fast lengths stretch to extremes while longer ones stay neutral, the move is more fragile and more likely to mean-revert.
This script makes that structure visible as a heatmap instead of forcing you to run many separate RSI panes.
How it works
1) Generating RSI lengths
You control three parameters in the calculation settings:
RS Period – the base RSI length used for the shortest strip.
RSI Step – the amount added to each successive RSI length.
RSI Multiplier – a global scaling factor applied after the step.
Each of the 20 RSIs uses:
RSI length = round((base_length + step × index) × multiplier) , where the index goes from 0 to 19.
That means:
RSI 1 uses (len + step × 0) × mult.
RSI 2 uses (len + step × 1) × mult.
…
RSI 20 uses (len + step × 19) × mult.
You can keep the ladder dense (small step and multiplier) or stretch it across much longer horizons.
2) Heatmap layout and grouping
Each RSI is plotted as an “area” strip at a fixed vertical level using histbase to stack them:
RSI 1–5 form Group 1.
RSI 6–10 form Group 2.
RSI 11–15 form Group 3.
RSI 16–20 form Group 4.
Each group has a toggle:
Show only Group 1 and 2 if you care mainly about fast and medium horizons.
Show all groups for a full spectrum from very short to very long.
Hide any group that feels redundant for your workflow.
The actual numeric RSI values are not plotted as lines. Instead, each strip is drawn as a horizontal band whose fill color represents the current RSI regime.
3) Palette-based coloring
Each tile’s color is driven by the RSI value and your chosen palette. The script includes several palettes:
Viridis – smooth green to yellow, good for subtle reading.
Jet – strong blue to red sequence with high contrast.
Plasma – purple through orange to yellow.
Custom Heat – cool blues to neutral grey to hot reds.
Gray – grayscale from white to black for minimalistic layouts.
Cividis, Inferno, Magma, Turbo, Rainbow – additional scientific and rainbow-style maps.
Internally, RSI values are bucketed into ranges (for example, below 10, 10–20, …, 90–100). Each bucket maps to a unique colour for that palette. In all schemes, low RSI values are mapped to the “cold” or darker side and high RSI values to the “hot” or brighter side.
The result is a true momentum heatmap:
Cold or dark tiles show low RSI and oversold or compressed conditions.
Mid tones show neutral or mid-range RSI.
Warm or bright tiles show high RSI and overbought or stretched conditions.
4) Bull and bear breadth counts
All 20 RSI values are collected into an array each bar. Two counters are then calculated:
Bull count – how many RSIs are above 70.
Bear count – how many RSIs are below 30.
These are plotted as:
A white line (“RSI > 70 Count”) for the overbought cluster.
A black line (“RSI < 30 Count”) for the oversold cluster.
If you enable the “Show Bull and Bear Count” option, you get an immediate reading of how many of the 20 horizons are stretched at any moment.
5) Cluster alerts and background tagging
Two alert conditions monitor “strong cluster” regimes:
RSI Heatmap Strong Bull – triggers when at least 10 RSIs are above 70.
RSI Heatmap Strong Bear – triggers when at least 10 RSIs are below 30.
When one of these conditions is true, the indicator can tint the background of the chart using a soft version of the current palette. This visually marks stretches where momentum is extreme across many lengths at once, not just on a single RSI.
What it plots
In one oscillator window, the indicator provides:
Up to 20 horizontal RSI strips, each representing a different RSI length.
Color-coded tiles reflecting the current RSI value for each length.
Group toggles to show or hide each block of five RSIs.
An optional white line that counts how many RSIs are above 70.
An optional black line that counts how many RSIs are below 30.
Optional background highlights when the number of overbought or oversold RSIs passes the strong-cluster threshold.
How it measures breadth and pressure
Single-symbol breadth
Breadth is usually defined across a basket of symbols, such as how many stocks advance versus decline. This indicator uses the same concept across time horizons for a single symbol. The question becomes:
“How many different RSI lengths are stretched in the same direction at once?”
Examples:
If only 2 or 3 of the shortest RSIs are above 70, bull count stays low. The move is fast and local, but not yet broadly supported.
If 12 or more RSIs across short, medium and long lengths are above 70, the bull count spikes. The move has broad momentum and strong upside pressure.
If 10 or more RSIs are below 30, bear count spikes and you are in a broad oversold regime.
This is breadth of momentum within one market.
Market pressure gauge
The combination of heatmap tiles and breadth lines acts as a pressure gauge:
High bull count with warm colors across most strips indicates strong upside pressure and crowded long positioning.
High bear count with cold colors across most strips indicates strong downside pressure and capitulation or forced selling.
Low counts with a mixed heatmap indicate neutral pressure, fragmented flows, or range-bound conditions.
You can treat the strong-cluster alerts as “extreme pressure” signals. When they fire, the market is heavily skewed in one direction across many horizons.
How to read the heatmap
Horizontal patterns (through time)
Look along the time axis and watch how the colors evolve:
Persistent hot tiles across many strips show sustained bullish pressure and trend strength.
Persistent cold tiles across many strips show sustained bearish pressure and weak demand.
Frequent flipping between hot and cold colours indicates a choppy or mean-reverting environment.
Vertical structure (across lengths at one bar)
Focus on a single bar and read the column of tiles from top to bottom:
Short RSIs hot, long RSIs neutral or cool: early trend or short-term fomo. Price has moved fast, longer horizons have not caught up.
Short and long RSIs all hot: mature, entrenched uptrend. Broad participation, high pressure, greater risk of blow-off or late-entry vulnerability.
Short RSIs cold but long RSIs mid to high: pullback in a higher timeframe uptrend. Dip-buy and continuation setups are often found here.
Short RSIs high but long RSIs low: countertrend rallies within a broader downtrend. Good hunting ground for fades and short entries after a bounce.
Bull and bear breadth lines
Use the two lines as simple, numeric breadth indicators:
A rising white line shows more RSIs pushing above 70, so bullish pressure is expanding in breadth.
A rising black line shows more RSIs pushing below 30, so bearish pressure is expanding in breadth.
When both lines are low and flat, few horizons are extreme and the market is in mid-range territory.
Cluster zones
When either count crosses the strong threshold (for example 10 out of 20 RSIs in extreme territory):
A strong bull cluster marks a broadly overbought regime. Trend followers may see this as confirmation. Mean-reversion traders may see it as a late-stage or blow-off context.
A strong bear cluster marks a broadly oversold regime. Downtrend traders see strong pressure, but the risk of sharp short-covering bounces also increases.
Trading applications
Trend confirmation
Use the heatmap and breadth lines as a trend filter:
Prefer long setups when the heatmap shows mostly mid to high RSIs and the bull count is rising.
Avoid fresh shorts when there is a strong bull cluster, unless you are specifically trading exhaustion.
Prefer short setups when the heatmap is mostly low RSIs and the bear count is rising.
Avoid aggressive longs when a strong bear cluster is active, unless you are trading reflexive bounces.
Mean-reversion timing
Treat cluster extremes as exhaustion zones:
Look for reversal patterns, failed breakouts, or order flow shifts when bull count is very high and price starts to stall or diverge.
Look for reflexive bounce potential when bear count is very high and price stops making new lows or shows absorption at the lows.
Use the palette and counts together: hot tiles plus a peaking white line can mark blow-off conditions, cold tiles plus a peaking black line can mark capitulation.
Regime detection and risk toggling
Use the overall shape of the ladder over time:
If upper strips stay warm and lower strips stay neutral or warm for extended periods, the market is in an uptrend regime. You can justify higher risk for long-biased strategies.
If upper strips stay cold and lower strips stay neutral or cold, the market is in a downtrend regime. You can justify higher risk for short-biased strategies or defensive positioning.
If colours and counts flip frequently, you are likely in a range or choppy regime. Consider reducing size or using more tactical, short-term strategies.
Multi-horizon synchronization
You can think of each RSI length as a proxy for a different “speed” of the same market:
When only fast RSIs are stretched, the move is local and less robust.
When fast, medium and slow RSIs align, the move has multi-horizon confirmation.
You can require a minimum bull or bear count before allowing your main strategy to engage.
Spotting hidden shifts
Sometimes price appears flat or drifting, but the heatmap quietly cools or warms:
If price is sideways while many hot tiles fade toward neutral, momentum is decaying under the surface and trend risk is increasing.
If price is sideways while many cold tiles climb back toward neutral, selling pressure is decaying and the tape is repairing itself.
Settings overview
Calculation Settings
RS Period – base RSI length for the shortest strip.
RSI Step – the increment added to each successive RSI length.
RSI Multiplier – scales all generated RSI lengths.
Calculation Source – the input series, such as close, hlc3 or others.
Plotting and Coloring Settings
Heatmap Color Palette – choose between Viridis, Jet, Plasma, Custom Heat, Gray, Cividis, Inferno, Magma, Turbo or Rainbow.
Show Group 1 – toggles RSI 1–5.
Show Group 2 – toggles RSI 6–10.
Show Group 3 – toggles RSI 11–15.
Show Group 4 – toggles RSI 16–20.
Show Bull and Bear Count – enables or disables the two breadth lines.
Alerts
RSI Heatmap Strong Bull – fires when the number of RSIs above 70 reaches or exceeds the configured threshold (default 10).
RSI Heatmap Strong Bear – fires when the number of RSIs below 30 reaches or exceeds the configured threshold (default 10).
Tuning guidance
Fast, tactical configurations
Use a small base RS Period, for example 2 to 5.
Use a small RSI Step, for tight clustering around the fast horizon.
Keep the multiplier near 1.0 to avoid extreme long lengths.
Focus on Group 1 and Group 2 for intraday and short-term trading.
Swing and position configurations
Use a mid-range RS Period, for example 7 to 14.
Use a moderate RSI Step to fan out into slower horizons.
Optionally use a multiplier slightly above 1.0.
Keep all four groups enabled for a full view from fast to slow.
Macro or higher timeframe configurations
Use a larger base RS Period.
Use a larger RSI Step so the top of the ladder reaches very slow lengths.
Focus on Group 3 and Group 4 to see structural momentum.
Treat clusters as regime markers rather than frequent trading signals.
Notes
This indicator is a contextual tool, not a standalone trading system. It does not model execution, spreads, slippage or fundamental drivers. Use it to:
Understand whether momentum is narrow or broad across horizons.
Confirm or filter existing signals from your primary strategy.
Identify environments where the market is crowded into one side.
Distinguish between isolated spikes and truly broad pressure moves.
The Relative Strength Heatmap is designed to answer a simple but powerful question:
“How many versions of RSI agree with what I am seeing on the chart?”
By compressing those answers into a single panel with clear colour coding and breadth lines, it becomes a practical, visual gauge of momentum breadth and market pressure that you can overlay on any trading framework.
Viprasol Elite Flow Pro - Premium Order Flow & Trend System═══════════════════════════════════════════════════════════════
🔥 VIPRASOL ELITE FLOW PRO
Professional Order Flow & Trend Detection System
═══════════════════════════════════════════════════════════════
📊 WHAT IS THIS INDICATOR?
Viprasol Elite Flow Pro is a comprehensive trading system that combines institutional order flow analysis with adaptive trend detection. Unlike basic indicators, this tool identifies high-probability setups by analyzing where smart money is likely positioning, while filtering signals through multiple confirmation layers.
This indicator is designed for traders who want to:
✓ Identify premium (supply) and discount (demand) zones automatically
✓ Detect trend direction with adaptive cloud technology
✓ Spot high-volume rejection points before major moves
✓ Filter low-quality signals with intelligent confirmation logic
✓ Track market strength in real-time via elite dashboard
═══════════════════════════════════════════════════════════════
🎯 CORE FEATURES
═══════════════════════════════════════════════════════════════
1️⃣ ELITE TREND ENGINE
• Adaptive Moving Average system (Fast/Adaptive/Smooth modes)
• Dynamic trend cloud that expands/contracts with volatility
• Real-time trend state tracking (Bullish/Bearish/Ranging)
• Trend strength meter (0-10 scale)
• ATR-based volatility adjustments
2️⃣ ORDER FLOW DETECTION
• Automatic Premium Zone (Supply) identification
• Automatic Discount Zone (Demand) identification
• Smart zone extension - zones remain valid until broken
• Zone rejection detection with price action confirmation
• Customizable zone strength (5-30 bars lookback)
3️⃣ VOLUME INTELLIGENCE
• Volume spike detection (configurable threshold)
• Climax bar identification (exhaustion signals)
• Volume filter for signal validation
• Institutional activity detection
4️⃣ SMART SIGNAL SYSTEM
• 3 Signal Modes: Aggressive, Balanced, Conservative
• Multi-layer confirmation logic
• Automatic profit targets (2:1 risk-reward)
• Stop loss suggestions based on ATR
• Prevents overtrading with bars-since-signal filter
5️⃣ ELITE DASHBOARD (HUD)
• Real-time trend direction and strength
• Volume status monitoring
• Active zones counter
• Market volatility gauge
• Current signal status
• 4 positioning options, compact mode available
6️⃣ PREMIUM STYLING
• 4 Professional color themes (Cyber/Gold/Ocean/Fire)
• Adjustable transparency and label sizes
• Clean, institutional-grade visuals
• Optimized for all chart types
═══════════════════════════════════════════════════════════════
📖 HOW TO USE THIS INDICATOR
═══════════════════════════════════════════════════════════════
STEP 1: TREND IDENTIFICATION
→ Green Cloud = Bullish trend - look for LONG opportunities
→ Red Cloud = Bearish trend - look for SHORT opportunities
→ Purple Cloud = Ranging - wait for breakout or fade extremes
STEP 2: ZONE ANALYSIS
→ PREMIUM (Red) zones = Potential resistance/supply areas
→ DISCOUNT (Green) zones = Potential support/demand areas
→ Price rejecting from zones = high-probability setups
STEP 3: SIGNAL CONFIRMATION
→ Wait for "LONG" or "SHORT" labels to appear
→ Check dashboard for trend strength (Moderate/Strong preferred)
→ Confirm volume status is "HIGH" or "CLIMAX"
→ Entry: Enter when label appears
→ Stop Loss: Use dotted line (1 ATR away)
→ Take Profit: Use dashed line (2 ATR away)
STEP 4: RISK MANAGEMENT
→ Never risk more than 1-2% per trade
→ Use the provided stop loss levels
→ Trail stops as price moves in your favor
→ Avoid trading during low volatility periods
═══════════════════════════════════════════════════════════════
⚙️ RECOMMENDED SETTINGS
═══════════════════════════════════════════════════════════════
FOR SCALPING (1M - 5M):
- Trend Type: Fast
- Sensitivity: 15
- Signal Mode: Aggressive
- Zone Strength: 8
FOR DAY TRADING (15M - 1H):
- Trend Type: Adaptive
- Sensitivity: 21 (default)
- Signal Mode: Balanced
- Zone Strength: 12 (default)
FOR SWING TRADING (4H - Daily):
- Trend Type: Smooth
- Sensitivity: 34
- Signal Mode: Conservative
- Zone Strength: 20
BEST MARKETS:
✓ Crypto (BTC, ETH, major altcoins)
✓ Forex (Major pairs: EUR/USD, GBP/USD)
✓ Indices (S&P 500, NASDAQ, DAX)
✓ High-liquidity stocks
═══════════════════════════════════════════════════════════════
🎓 UNDERSTANDING THE METHODOLOGY
═══════════════════════════════════════════════════════════════
This indicator is built on three core concepts:
1. ORDER FLOW THEORY
Markets move between premium (expensive) and discount (cheap) zones. Smart money accumulates in discount zones and distributes in premium zones. This indicator identifies these zones automatically.
2. ADAPTIVE TREND FOLLOWING
Unlike fixed-period moving averages, the Elite Trend Engine adjusts to current market volatility, providing more accurate trend signals in both trending and ranging conditions.
3. CONFLUENCE-BASED ENTRIES
Signals only trigger when multiple conditions align:
- Price in correct zone (premium for shorts, discount for longs)
- Trend confirmation (cloud color matches direction)
- Volume validation (spike or climax present)
- Price action strength (strong rejection candles)
This multi-layer approach dramatically reduces false signals.
═══════════════════════════════════════════════════════════════
🔔 ALERT SETUP
═══════════════════════════════════════════════════════════════
This indicator includes 5 alert types:
1. Long Signal → Triggers when buy conditions met
2. Short Signal → Triggers when sell conditions met
3. Volume Climax → Warns of pot
Mark Minervini SEPA - Balanced
📊 MARK MINERVINI SEPA BALANCED - COMPLETE USER GUIDE
🚀 WHAT IS THIS INDICATOR?
This is a professional swing trading indicator based on Mark Minervini's famous
Trend Template strategy. It automatically identifies high-probability setups where:
✅ Long-term trend is BULLISH (confirmed by moving averages)
✅ Stock is OUTPERFORMING the market (relative strength improving)
✅ Price is CONSOLIDATING (forming a base for breakout)
✅ Volume is CONFIRMING (volume spike on breakout)
Result: CLEAR BUY SIGNALS when everything aligns! 🎯
🎨 WHAT YOU SEE ON YOUR CHART
1️⃣ FOUR MOVING AVERAGE LINES:
🟠 Orange Line (MA 20) = Short-term trend
🔵 Blue Line (MA 50) = Intermediate trend
🟢 Green Line (MA 150) = Long-term trend
🔴 Red Line (MA 200) = Very long-term trend
IDEAL: All lines stacked in order (Orange > Blue > Green > Red)
2️⃣ BACKGROUND COLOR:
🟢 GREEN background = Trend template is VALID (bullish setup ready)
🔴 RED background = Trend template is BROKEN (avoid trading)
3️⃣ DASHBOARD PANEL (Top-Right):
Real-time checklist showing:
✓ 6 core trend template rules
✓ Relative strength status
✓ VCP base quality
✓ Stage classification (S1/S2/S3/S4)
✓ Volume breakout status
4️⃣ VCP BASE BOXES (Blue Rectangles):
Shows where consolidation is happening
This is your potential entry zone
5️⃣ BUY SIGNAL LABEL (Green Text Below Candle):
Green "BUY" label appears when ALL criteria are met
This is your strongest entry signal
6️⃣ STOP LOSS LINE (Red Dashed Line):
Shows your stop loss level (base low)
📖 HOW TO USE - STEP BY STEP
STEP 1: ADD INDICATOR TO CHART
────────────────────────────────
1. Open TradingView chart
2. Click "Indicators" (top toolbar)
3. Search "Minervini SEPA Balanced"
4. Click to add to your chart
5. Use DAILY (1D) timeframe for swing trading
STEP 2: CHECK THE DASHBOARD (Top-Right Panel)
1. Look at all the checkmarks
2. Count how many are GREEN (✓)
3. Check Stage column - is it showing S2 or S1?
STEP 3: LOOK FOR SETUP PATTERNS
─────────────────────────────────
Ideal setup shows:
✓ Dashboard: 10+ criteria are GREEN
✓ Stage: S2 (green) or S1 (orange)
✓ Blue VCP box visible on chart (base forming)
✓ Moving averages aligned (50 > 150 > 200)
✓ Price above all moving averages
✓ Background is GREEN
STEP 4: WAIT FOR ENTRY SIGNAL
──────────────────────────────
Option A: BUY SIGNAL label appears
→ Green "BUY" label = ALL criteria met
→ ENTER at market price immediately
Option B: Setup looks good but no BUY label yet
→ Wait for price to break above blue VCP box
→ Volume should spike (1.3x or higher)
→ Then enter at breakout
STEP 5: PLACE YOUR TRADE
────────────────────────
📍 ENTRY: At breakout from VCP base
📍 STOP LOSS: Base low (red dashed line)
📍 TARGET: 20-30% move (typical Minervini target)
📍 HOLDING TIME: 2-4 weeks
🎯 BALANCED VERSION - WHY IT'S BETTER FOR INDIAN STOCKS
Volume Multiplier: 1.3x (NOT 1.5x)
→ Original was too strict for Indian market
→ 1.3x is realistic and catches good breakouts
→ Results: 5-10 signals per stock per year (tradeable!)
Trend Template: Core 6 rules (NOT all 8)
→ Focuses on the most important rules
→ Still maintains quality, but more flexible
→ Works better with Indian stock behavior
Stage Allowed: S1 OR S2 (NOT just S2)
→ Catches earlier moves
→ Allows you to enter sooner
→ But maintains quality with other criteria
📊 DASHBOARD INDICATORS - WHAT EACH MEANS
TREND SECTION (Core 6 Rules):
─────────────────────────────
P>200 ✓ = Price above 200-day MA (long-term uptrend)
150>200 ✓ = MA150 above MA200 (MA alignment)
200↑ ✓ = MA200 trending up (uptrend accelerating)
50>150 ✓ = MA50 above MA150 (intermediate uptrend)
50>200 ✓ = MA50 above MA200 (overall alignment)
P>50 ✓ = Price above MA50 (pullback level intact)
RS STRENGTH SECTION:
───────────────────
RS↑ ✓ = Stock outperforming NIFTY index
✗ = Stock underperforming NIFTY (avoid)
VCP BASE SECTION:
────────────────
In Base ✓ = Consolidation zone detected
✗ = No consolidation yet
Vol Dry ✓ = Volume drying up (base tightening)
✗ = Normal volume (consolidation weak)
ENTRY SECTION:
──────────────
Stage S2 = GREEN (best for swing trading)
S1 = ORANGE (acceptable, early entry)
S3 = RED (avoid - distribution phase)
S4 = RED (avoid - downtrend)
Vol Brk ✓ = Volume confirmed breakout (1.3x+ average)
✗ = Weak volume (breakout likely to fail)
❌ WHEN NOT TO TRADE
SKIP if ANY of these are true:
❌ Background is RED (trend template broken)
❌ Stage is S3 or S4 (distribution or downtrend)
❌ Vol Brk is RED (volume not confirming)
❌ RS↑ is ORANGE/RED (stock underperforming market)
❌ Blue box is NOT visible (no base forming)
❌ Base is very loose/messy (not tight enough)
❌ Moving averages are not aligned
❌ Less than 8 GREEN criteria on dashboard
⚙️ CUSTOMIZATION GUIDE
Click ⚙️ gear icon next to indicator name to adjust settings:
VOLUME MULTIPLIER (Default: 1.3)
────────────────────────────────
Current: 1.3x = BALANCED for Indian stocks ✅
Change to 1.2x = MORE signals (more false breakouts)
Change to 1.4x = FEWER signals (very selective)
Change to 1.5x = ORIGINAL (too strict, rarely triggers)
RS BENCHMARK (Default: NSE:NIFTY)
─────────────────────────────────
Current: NSE:NIFTY = Large-cap stocks
Change to NSE:NIFTY500 = Mid-cap stocks
Change to NSE:NIFTYNXT50 = Small-cap stocks
MINIMUM BASE DAYS (Default: 20)
───────────────────────────────
Current: 20 days = 4 weeks consolidation ✅
Change to 15 = Shorter bases (more frequent signals)
Change to 25 = Longer bases (higher quality)
ATR% FOR TIGHTNESS (Default: 1.5)
──────────────────────────────────
Current: 1.5% = BALANCED ✅
Change to 1.0% = ONLY very tight bases
Change to 2.0% = Loose bases accepted
📈 REAL TRADING EXAMPLE
SCENARIO: Trading RELIANCE over 4 weeks
WEEK 1: Base Starts Forming
────────────────────────────
- Price consolidating around ₹1,500
- Dashboard: 5/14 criteria green
- Action: MONITOR (not ready yet)
WEEK 2: Base Tightens
─────────────────────
- Price still ₹1,500 (no movement)
- VCP box appearing on chart
- Dashboard: 8/14 criteria green
- Vol Dry: ✓ (volume shrinking - good!)
- Action: MONITOR (almost ready)
WEEK 3: Perfect Setup Formed
──────────────────────────────
- Base still ₹1,500
- Dashboard: 12/14 criteria GREEN ✓✓✓
- Stage: S2 ✓
- Blue box tight and clean
- Action: WAIT FOR BREAKOUT
WEEK 4: Breakout Happens!
──────────────────────────
- Price closes at ₹1,550 (breakout!)
- Volume: 1.6x average (exceeds 1.3x requirement)
- Dashboard: BUY SIGNAL ✓ (all criteria met)
- Action: ENTER TRADE
Entry: ₹1,550
Stop: ₹1,480 (base low)
Target: ₹1,850 (20% move)
RESULT: +19.4% profit in 2 weeks! ✅
💡 PRO TIPS FOR BEST RESULTS
1. USE DAILY (1D) CHARTS ONLY
Weekly charts = Fewer signals, slower moves
Daily charts = Best for swing trading ✅
Intraday charts = Too many false signals
2. SCAN MULTIPLE STOCKS
Don't just watch 1 stock
Scan 50-100 stocks daily
More stocks = More opportunities
3. WAIT FOR PERFECT ALIGNMENT
Don't enter on 8/14 criteria
Wait for 12+/14 criteria
This increases win rate significantly
4. VOLUME IS CRITICAL
Always check Vol Brk column
No volume = Likely to fail
1.3x+ volume = Good breakout
5. COMBINE WITH YOUR OWN ANALYSIS
Indicator gives technical signals
You add your own fundamental view
Strong fundamental + technical = Best trade
6. BACKTEST ON HISTORICAL DATA
Use TradingView Replay feature
Go back 6-12 months
See how many signals appeared
Verify which were profitable
7. KEEP A TRADING JOURNAL
Track entry, exit, profit/loss
Note what worked and what didn't
Continuous improvement!
⚠️ IMPORTANT DISCLAIMERS
✓ This indicator is for educational purposes only
✓ Past performance does not guarantee future results
✓ Always use proper risk management (position sizing, stop loss)
✓ Never risk more than 2% of your account on one trade
✓ Backtest thoroughly before using with real money
✓ The indicator provides technical signals, not investment advice
✓ Losses can occur - trade at your own risk
🎯 QUICK START CHECKLIST
Before entering ANY trade, verify:
□ Dashboard shows mostly GREEN (10+ criteria)
□ Stage = S2 (green) or S1 (orange)
□ Blue VCP box visible on chart
□ Price just broke above the box
□ Volume is high (1.3x+ average, Vol Brk = ✓)
□ Moving averages aligned (50 > 150 > 200)
□ RS is uptrending (RS↑ = ✓)
□ BUY SIGNAL label appeared (optional but strong confirmation)
ALL CHECKED? → READY TO BUY! 🚀
📞 FOR HELP & SUPPORT
Questions about the indicator?
→ Check the dashboard - each criterion has a specific meaning
→ Review this guide - answers most common questions
→ Backtest on historical data using TradingView Replay
→ Start with paper trading (no real money) first
🎓 LEARNING RESOURCES
To understand Mark Minervini's method better:
→ Read: "Trade Like a Stock Market Wizard" by Mark Minervini
→ Watch: TradingView educational videos on trend templates
→ Practice: Backtest this indicator on 6-12 months of historical data
→ Learn: Study successful traders who use similar strategies
GOOD LUCK WITH YOUR TRADING! 🚀📈
May your trends be bullish and your breakouts be explosive! 🎯
Visible RangeOverview This is a precision tool designed for quantitative traders and engineers who need exact control over their chart's visual scope. Unlike standard time calculations that fail in markets with trading breaks (like A-Shares, Futures, or Stocks), this indicator uses a loop-back mechanism to count the actual number of visible bars, ensuring your indicators (e.g., MA60, MA200) have sufficient sample data.
Why use this? If you use multi-timeframe layouts (e.g., Daily/Hourly/15s), it is critical to know exactly how much data is visible.
The Problem: In markets like the Chinese A-Share market (T+1, 4-hour trading day), calculating Time Range / Timeframe results in massive errors because it includes closed market hours (lunch breaks, nights, weekends).
The Solution: This script iterates through the visible range to count the true bar_index, providing 100% accurate data density metrics.
Key Features
True Bar Counting: Uses a for loop to count actual candles, ignoring market breaks. perfect for non-24/7 markets.
Integer Precision: Displays time ranges (Days, Hours, Mins, Secs) in clean integers. No messy decimals.
Compact UI: Displays information in a single line (e.g., View: 30 Days (120 Bars)), default to the Top Right corner to save screen space.
Fully Customizable: Adjustable position, text size, and colors to fit any dark/light theme.
Performance Optimized: Includes max_bars_back limits to prevent browser lag on deep history lookups.
Settings
Position: Default Top Right (can be moved to any corner).
Max Bar Count: Default 5000 (Safety limit for loop calculation).
new_youtube_strategy//@version=5
strategy("Dow + Homma 1m Scalper (15m filter)", overlay=true, margin_long=100, margin_short=100, initial_capital=10000)
//===== INPUTS =====
maLen = input.int(50, "Trend SMA Length", minval=5)
htf_tf = input.timeframe("15", "Higher TF")
priceTolPct = input.float(0.05, "SR tolerance %", step=0.01)
wickFactor = input.float(2.0, "Hammer/ShootingStar wick factor", step=0.1)
dojiThresh = input.float(0.1, "Doji body % of range", step=0.01)
risk_RR = input.float(2.0, "Reward:Risk", step=0.1)
capitalRiskPct = input.float(1.0, "Risk % of equity per trade", step=0.1)
//===== 1m TREND (SMA) =====
sma1 = ta.sma(close, maLen)
sma1Up = sma1 > sma1
sma1Down = sma1 < sma1
uptrend1 = close > sma1 and sma1Up
downtrend1 = close < sma1 and sma1Down
//===== 15m TREND VIA request.security =====
sma15 = request.security(syminfo.tickerid, htf_tf, ta.sma(close, maLen), lookahead=barmerge.lookahead_off)
sma15Up = sma15 > sma15
sma15Down = sma15 < sma15
uptrend15 = close > sma15 and sma15Up
downtrend15 = close < sma15 and sma15Down
//===== SWING HIGHS/LOWS (LOCAL EXTREMA) =====
var int left = 3
var int right = 3
swHigh = ta.pivothigh(high, left, right)
swLow = ta.pivotlow(low, left, right)
//===== SR FLIP LEVELS =====
var float srSupport = na
var float srResistance = na
// when a swing high is broken -> new support
if not na(swHigh)
if close > swHigh
srSupport := swHigh
// when a swing low is broken -> new resistance
if not na(swLow)
if close < swLow
srResistance := swLow
//===== CANDLE METRICS =====
body = math.abs(close - open)
cRange = high - low
upperW = high - math.max(open, close)
lowerW = math.min(open, close) - low
isBull() => close > open
isBear() => close < open
bullHammer() =>
cRange > 0 and
isBull() and
lowerW >= wickFactor * body and
upperW <= body
bearShootingStar() =>
cRange > 0 and
isBear() and
upperW >= wickFactor * body and
lowerW <= body
isDoji() =>
cRange > 0 and body <= dojiThresh * cRange
bullEngulfing() =>
isBear() and isBull() and
open <= close and close >= open
bearEngulfing() =>
isBull() and isBear() and
open >= close and close <= open
//===== SR PROXIMITY =====
tol = priceTolPct * 0.01 * close
nearSupport = not na(srSupport) and math.abs(close - srSupport) <= tol
nearResistance = not na(srResistance) and math.abs(close - srResistance) <= tol
//===== SIGNAL CONDITIONS =====
bullCandle = bullHammer() or isDoji() or bullEngulfing()
bearCandle = bearShootingStar() or isDoji() or bearEngulfing()
longTrendOK = uptrend1 and uptrend15
shortTrendOK = downtrend1 and downtrend15
longSignal = longTrendOK and nearSupport and bullCandle
shortSignal = shortTrendOK and nearResistance and bearCandle
//===== POSITION SIZING (IN RISK UNITS) =====
var float lastEquity = strategy.equity
riskCapital = strategy.equity * (capitalRiskPct * 0.01)
//===== ENTRY / EXIT PRICES =====
longStop = math.min(low, nz(srSupport, low))
longRisk = close - longStop
longTP = close + risk_RR * longRisk
shortStop = math.max(high, nz(srResistance, high))
shortRisk = shortStop - close
shortTP = close - risk_RR * shortRisk
// qty in contracts (approx; assumes price * qty ≈ capital used)
longQty = longRisk > 0 ? riskCapital / longRisk : 0.0
shortQty = shortRisk > 0 ? riskCapital / shortRisk : 0.0
//===== EXECUTION =====
if longSignal and longRisk > 0 and longQty > 0
strategy.entry("Long", strategy.long, qty=longQty)
strategy.exit("Long TP/SL", from_entry="Long", stop=longStop, limit=longTP)
if shortSignal and shortRisk > 0 and shortQty > 0
strategy.entry("Short", strategy.short, qty=shortQty)
strategy.exit("Short TP/SL", from_entry="Short", stop=shortStop, limit=shortTP)
//===== PLOTS =====
plot(sma1, color=color.orange, title="SMA 1m")
plot(sma15, color=color.blue, title="HTF SMA (15m)")
plot(srSupport, "SR Support", color=color.new(color.green, 50), style=plot.style_linebr)
plot(srResistance,"SR Resistance",color=color.new(color.red, 50), style=plot.style_linebr)
// Visual debug for signals
plotshape(longSignal, title="Long Signal", style=shape.triangleup, location=location.belowbar, color=color.lime, size=size.tiny)
plotshape(shortSignal, title="Short Signal", style=shape.triangledown, location=location.abovebar, color=color.red, size=size.tiny)






















