Macro Opportunity Drawdown Engine (MODE)Strategic Drawdown Classification for Macro-Cycle Accumulation. MODE identifies market drawdowns that historically align with discounted accumulation zones. Instead of treating pullbacks as risk events, it classifies them as structural opportunity phases based on distance from prior cycle highs.
The indicator continuously measures drawdown severity and labels current conditions as:
- Correction: –10% to –19%
- Bear Market: –20% to –29%
- Major Crash Opportunity: –30% or deeper
These levels are displayed directly on the chart, along with a live drawdown reading from the most recent peak.
MODE is built for long-term, macro-minded investors who view volatility as an advantage. It helps identify when the market has entered deep value phases often associated with stronger forward returns, liquidity resets, and cycle bottoms.
In short:
MODE turns market stress into clear signals of potential opportunity, providing a disciplined, data-driven framework for accumulation during corrections, bear markets, and crashes.
週期
Fibonacci Moving AveragesFibonacci Moving Averages - Advanced Trend Analysis Tool
This indicator plots multiple moving averages based on Fibonacci sequence numbers, providing a comprehensive view of market trends across different timeframes. The Fibonacci sequence naturally reflects market harmonics and psychological support/resistance levels.
KEY FEATURES:
📊 11 Fibonacci Period Moving Averages
- Short-term: 8, 13, 21, 34, 55, 89
- Long-term: 144, 233, 377, 610, 987
- Toggle each MA on/off individually
- Fully customizable colors for each period
⚙️ Flexible Configuration
- Choose between EMA (Exponential) or SMA (Simple) moving averages
- Adjustable line width (1-4 pixels)
- Custom source input (close, open, high, low, etc.)
- Clean, organized settings interface
🎯 Golden Cross / Death Cross Detection
- Automatic detection of major trend reversals
- Configurable fast and slow MA periods (default: 55/233)
- Visual signals with labeled triangles
- Green "GC" for bullish Golden Cross
- Red "DC" for bearish Death Cross
🔔 Built-in Alert System
- Golden Cross alerts for bullish trend changes
- Death Cross alerts for bearish trend changes
- Set once, receive notifications automatically
USAGE:
The Fibonacci Moving Averages work together to identify:
- Trend direction and strength
- Dynamic support and resistance levels
- Potential entry and exit points
- Market regime changes (trending vs ranging)
When price is above the Fibonacci MAs, it indicates bullish momentum. When below, bearish momentum. The spacing between MAs shows trend strength - wider spacing indicates stronger trends, while convergence suggests consolidation or potential reversal.
IDEAL FOR:
- Swing traders identifying medium to long-term trends
- Day traders using multiple timeframe analysis
- Position traders seeking major trend changes
- Any trader using moving average crossover strategies
TECHNICAL NOTES:
- Pine Script v6 - Latest version with optimized performance
- Overlay indicator - plots directly on price chart
- Minimal resource usage despite multiple calculations
- Compatible with all timeframes and markets
Default settings show 6 MAs (8, 13, 21, 34, 55, 89) for clarity, but you can enable all 11 for comprehensive analysis. The Golden/Death Cross feature uses the 55/233 combination by default, representing the classic short-term vs long-term trend relationship.
Perfect for traders who understand that markets move in natural rhythms and want to align their analysis with the mathematical patterns found throughout nature and finance.
Séparateur H4 & DailyH4 & Daily Separator - TradingView Indicator
This Pine Script v6 indicator draws infinite vertical lines to mark H4 and Daily candle separations on your chart.
Features:
H4 Separations: Marks candles starting at 3am, 7am, 11am, 3pm, 7pm, and 11pm
Daily Separations: Marks candles starting at midnight (00:00)
Fully Customizable:
Toggle H4 and/or Daily lines independently
Choose line color, thickness (1-4), and style (Solid, Dotted, Dashed)
Control the number of visible vertical lines (1-500)
Use Case:
Perfect for traders who want to visualize higher timeframe separations while trading on lower timeframes. Helps identify H4 and Daily candle opens without switching charts.
Installation:
Simply copy the code into TradingView's Pine Editor and add it to your chart. All settings are adjustable in the indicator's settings panel.
Trend Trader//@version=6
indicator("Trend Trader", shorttitle="Trend Trader", overlay=true)
// User-defined input for moving averages
shortMA = input.int(10, minval=1, title="Short MA Period")
longMA = input.int(100, minval=1, title="Long MA Period")
// User-defined input for the instrument selection
instrument = input.string("US30", title="Select Instrument", options= )
// Set target values based on selected instrument
target_1 = instrument == "US30" ? 50 :
instrument == "NDX100" ? 25 :
instrument == "GER40" ? 25 :
instrument == "GOLD" ? 5 : 5 // default value
target_2 = instrument == "US30" ? 100 :
instrument == "NDX100" ? 50 :
instrument == "GER40" ? 50 :
instrument == "GOLD" ? 10 : 10 // default value
// User-defined input for the start and end times with default values
startTimeInput = input.int(12, title="Start Time for Session (UTC, in hours)", minval=0, maxval=23)
endTimeInput = input.int(17, title="End Time Session (UTC, in hours)", minval=0, maxval=23)
// Convert the input hours to minutes from midnight
startTime = startTimeInput * 60
endTime = endTimeInput * 60
// Function to convert the current exchange time to UTC time in minutes
toUTCTime(exchangeTime) =>
exchangeTimeInMinutes = exchangeTime / 60000
// Adjust for UTC time
utcTime = exchangeTimeInMinutes % 1440
utcTime
// Get the current time in UTC in minutes from midnight
utcTime = toUTCTime(time)
// Check if the current UTC time is within the allowed timeframe
isAllowedTime = (utcTime >= startTime and utcTime < endTime)
// Calculating moving averages
shortMAValue = ta.sma(close, shortMA)
longMAValue = ta.sma(close, longMA)
// Plotting the MAs
plot(shortMAValue, title="Short MA", color=color.blue)
plot(longMAValue, title="Long MA", color=color.red)
// MACD calculation for 15-minute chart
= request.security(syminfo.tickerid, "15", ta.macd(close, 12, 26, 9))
macdColor = macdLine > signalLine ? color.new(color.green, 70) : color.new(color.red, 70)
// Apply MACD color only during the allowed time range
bgcolor(isAllowedTime ? macdColor : na)
// Flags to track if a buy or sell signal has been triggered
var bool buyOnce = false
var bool sellOnce = false
// Tracking buy and sell entry prices
var float buyEntryPrice_1 = na
var float buyEntryPrice_2 = na
var float sellEntryPrice_1 = na
var float sellEntryPrice_2 = na
if not isAllowedTime
buyOnce :=false
sellOnce :=false
// Logic for Buy and Sell signals
buySignal = ta.crossover(shortMAValue, longMAValue) and isAllowedTime and macdLine > signalLine and not buyOnce
sellSignal = ta.crossunder(shortMAValue, longMAValue) and isAllowedTime and macdLine <= signalLine and not sellOnce
// Update last buy and sell signal values
if (buySignal)
buyEntryPrice_1 := close
buyEntryPrice_2 := close
buyOnce := true
if (sellSignal)
sellEntryPrice_1 := close
sellEntryPrice_2 := close
sellOnce := true
// Apply background color for entry candles
barcolor(buySignal or sellSignal ? color.yellow : na)
/// Creating buy and sell labels
if (buySignal)
label.new(bar_index, low, text="BUY", style=label.style_label_up, color=color.green, textcolor=color.white, yloc=yloc.belowbar)
if (sellSignal)
label.new(bar_index, high, text="SELL", style=label.style_label_down, color=color.red, textcolor=color.white, yloc=yloc.abovebar)
// Creating labels for 100-point movement
if (not na(buyEntryPrice_1) and close >= buyEntryPrice_1 + target_1)
label.new(bar_index, high, text=str.tostring(target_1), style=label.style_label_down, color=color.green, textcolor=color.white, yloc=yloc.abovebar)
buyEntryPrice_1 := na // Reset after label is created
if (not na(buyEntryPrice_2) and close >= buyEntryPrice_2 + target_2)
label.new(bar_index, high, text=str.tostring(target_2), style=label.style_label_down, color=color.green, textcolor=color.white, yloc=yloc.abovebar)
buyEntryPrice_2 := na // Reset after label is created
if (not na(sellEntryPrice_1) and close <= sellEntryPrice_1 - target_1)
label.new(bar_index, low, text=str.tostring(target_1), style=label.style_label_up, color=color.red, textcolor=color.white, yloc=yloc.belowbar)
sellEntryPrice_1 := na // Reset after label is created
if (not na(sellEntryPrice_2) and close <= sellEntryPrice_2 - target_2)
label.new(bar_index, low, text=str.tostring(target_2), style=label.style_label_up, color=color.red, textcolor=color.white, yloc=yloc.belowbar)
sellEntryPrice_2 := na // Reset after label is created
Gemini Wyckoff Trend SystemStrategy Name: Gemini Wyckoff-Trend System
1. Core Design Philosophy
This strategy fuses Wyckoff Theory (specifically the "Law of Effort vs. Result") with classic Trend Following principles. Its primary goal is not to catch every minor fluctuation, but to filter out 80% of market noise and fakeouts, ensuring that you only pull the trigger when "Smart Money" enters the market with genuine volume.
It operates on a strict "3-Dimension Verification" logic:
Trend (Context): Never trade against the macro trend.
Structure (Price Action): Identify accumulation zones and wait for the breakout.
Volume (Effort): Require massive volume confirmation to validate the move.
2. The 3-Filter System
Filter 1: The Trend Filter (EMA 200)
Rule: The strategy only looks for Long setups when the price is ABOVE the 200-period Exponential Moving Average (EMA).
Purpose: To strictly prevent "catching falling knives" or counter-trend trading during a bear market.
Filter 2: The Structure Filter (Donchian Channel)
Rule: The script automatically identifies the highest high of the past 20 bars to define the "Accumulation Box." A signal is only possible if the price closes above this resistance level.
Wyckoff Term: This represents "Jumping the Creek" (JTC)—signaling that price is leaving the trading range.
Filter 3: The Volume Filter (RVOL > 1.5)
Rule: The breakout bar must have a volume that is at least 1.5x higher than the average volume of the past 20 bars.
Purpose: To eliminate "Upthrusts" (Fake Breakouts). If price breaks out on low volume, the system ignores it.
3. Visual Guide
Once loaded, here is how to read the chart:
📉 Orange Line (EMA 200): The Bull/Bear divider. If price is below this line, stay in cash.
🌫️ Grey Zone: The "No-Trade Zone" (Accumulation/Consolidation). Do not trade while price is inside this box.
🟢 Lime Green Bar: The Entry Signal. This indicates a valid breakout confirmed by high volume (Smart Money entry).
🪜 Red Step Line: Your Trailing Stop (ATR-based). As long as you hold a position, watch this line. If price closes below it, exit immediately.
📊 Dashboard (Top Right): Monitors market "Heat." If RVOL is Green, volume is significant.
4. Best Practices
Ideal For: Traders who struggle with over-trading or FOMO. This script enforces patience and discipline.
Timeframe: Recommended for 4-Hour (4H) or Daily (1D) charts to catch major crypto trends (e.g., Bitcoin main waves).
Asset Class: Crypto, Stocks, or any asset with high volume liquidity.
5. Risk Warning
This strategy includes a built-in ATR Volatility Stop. The stop-loss level adjusts dynamically based on market volatility. Please adhere strictly to the stop-loss signals to protect your capital.
Universal Heatmap - QuantSyUniversal Heatmap - QuantSy
A sophisticated market valuation tool that synthesizes multiple on-chain and technical metrics into a single, intuitive heat-mapped visualization. Provides probabilistic assessment of market extremes through dynamic gradient coloring.
What it does:
Analyzes various dimensions of market behavior including value metrics, profit/loss ratios, momentum signals, and risk-adjusted performance. Converts complex data into a simple visual spectrum where blue indicates undervalued conditions and red signals overvalued territory.
Best for:
Identifying potential reversal zones
Gauging relative market positioning
Risk management and allocation decisions
Multi-timeframe valuation analysis
The percentile-based color scaling adapts to each asset's unique history, making it applicable across different markets and timeframes. Get an at-a-glance read on where current conditions stand relative to historical norms.
**⚠️ Disclaimer**
Educational tool only - does not constitute investment advice. The developer assumes no liability for any trading profits or losses incurred through the use/misuse of this indicator.
This indicator does not include any features related to interest, leverage, or gambling. Users are fully responsible for making sure their assets and trading practices align with Islamic guidelines.
PST Super Simple System v2.5+PinkSlips Trading was built to give traders real structure, real tools, and real support — without the confusion or false promises you find everywhere else. Everything we provide is focused on helping you trade with clarity and confidence.
Professional-Grade Indicators
We develop custom TradingView indicators designed to simplify your decision-making. Clean, reliable, and built to support consistent trading.
Daily Live Trading Sessions
Members can watch the market with us in real time. We walk through bias, key levels, trade execution, and risk management so you can learn the process step-by-step.
Personal Guidance and Trade Planning
Whether you need help building a strategy, fixing your discipline, or understanding your data, we offer direct support and tailored plans to help you improve faster.
A Focused, Results-Driven Community
PinkSlips Trading is built for traders who want to get better — not for hype. You’ll be surrounded by people who take trading seriously and are committed to long-term growth.
PinkSlips Sauce IndicatorChecklist v4PinkSlips’ personal checklist assistant for catching clean trend moves.
It stacks EMAs (20/50/200), checks RSI strength, filters chop with ATR, then prints a simple YES/NO checklist so you know when the sauce is actually there.
What it does
EMA trend filter (bullish / bearish structure)
RSI confirmation for high-probability longs & shorts
ATR chop filter so you avoid dead zones
On-chart checklist box: trend up/down, ATR OK, long/short ready, last signal
Optional LONG/SHORT labels on the candles for execution
Use this as your pre–entry checklist so you stop forcing trades and only take the clean PinkSlips setups.
PST Bread Checklist v4Uses 50/200 EMA for higher-timeframe trend
Uses RSI zones + cross for entry
Adds volatility filter (ATR vs its own average)
Optional session filter (RTH 09:30–16:00)
Has a cooldown so you don’t get 10 labels in a row
Shows a checklist box + last signal
Multi-TimeCycle SMT Live DetectorThis indicator is a multi-asset, multi-timeframe SMT Live detector designed to work on any symbol (indices, futures, FX, crypto, stocks).
It compares your chart symbol against up to two custom comparison symbols and automatically detects bullish and bearish SMT divergences across:
90-minute session blocks (Asia, London, NY – with internal 90m sessions)
60-minute (hourly) cycles
30-minute cycles
10-minute cycles
3-minute cycles
Each SMT is plotted as a line between the reference high/low and the current high/low, with a clear text label showing:
Timecycle (90m / 60m / 30m / 10m / 3m)
Which comparison asset(s) created the divergence (e.g., ES, YM, ES/YM or your custom labels)
The 90-minute SMT module is session-aware using New York time:
Asia: 18:00 – 02:29 NY time
London A/M/D
NY AM A/M/D
NY PM A/M/D
Multi-TimeCycles SMT Live DetectorThis indicator is a multi-asset, multi-timeframe SMT Live detector designed to work on any symbol (indices, futures, FX, crypto, stocks).
It compares your chart symbol against up to two custom comparison symbols and automatically detects bullish and bearish SMT divergences across:
90-minute session blocks (Asia, London, NY – with internal 90m sessions)
60-minute (hourly) cycles
30-minute cycles
10-minute cycles
3-minute cycles
Each SMT is plotted as a line between the reference high/low and the current high/low, with a clear text label showing:
Timecycle (90m / 60m / 30m / 10m / 3m)
Which comparison asset(s) created the divergence (e.g., ES, YM, ES/YM or your custom labels)
The 90-minute SMT module is session-aware using New York time:
Asia: 18:00 – 02:29 NY time
London A/M/D
NY AM A/M/D
NY PM A/M/D
Aroon + Chaiki OscillatorThis is an Chaiki Oscillator that facilitates more straightforward trendline analysis utilizing the Aroon setup for bars.
This is a simple Pinescript designed for incorporation into your charting analysis.
As always, none of this is investment or financial advice. Please do your own due diligence and research.
Weekly Open + Monday High/Low (After Monday Close)b]Description
This indicator marks key weekly reference levels based on Monday’s price behavior.
It automatically detects each trading week and tracks:
• Weekly Open – the first traded price of the new week
• Monday High – the highest price reached on Monday
• Monday Low – the lowest price reached on Monday
Logic
The Monday range is fully captured only after Monday has closed .
No levels are plotted during Monday.
Starting from Tuesday, the indicator displays thin dots showing the completed Monday High, Monday Low, and Weekly Open for the remainder of the week.
When a new week begins, the indicator resets automatically and begins tracking the new week’s Monday.
Customization
The user can choose colors for:
• Monday High/Low
• Weekly Open
Purpose
This indicator helps traders visualize weekly structure, monitor weekly opening levels, and quickly identify Monday’s range for weekly bias analysis or strategy development.
It can also be used to manually backtest Monday range strategies .
[GYTS-Pro] Market Regime Detector🧊 Market Regime Detector (Professional Edition)
🌸 Part of GoemonYae Trading System (GYTS) 🌸
🌸 --------- INTRODUCTION --------- 🌸
💮 What is the Market Regime Detector?
The Market Regime Detector (Pro) is an elite, consensus-based market state analyzer designed to filter noise and identify the true underlying market structure. By distinguishing between trending (bullish or bearish) and cyclic (range-bound) market conditions with high precision, this detector acts as the "brain" of your trading system. Instead of forcing a single strategy across incompatible market conditions, the detector empowers you to deploy the right tactic at exactly the right time.
💮 The Importance of Market Regimes
Markets constantly shift between different behavioural states or "regimes":
• Bullish trending markets - characterised by sustained upward price movement
• Bearish trending markets - characterised by sustained downward price movement
• Cyclic markets - characterised by range-bound, oscillating behaviour
Each regime requires fundamentally different trading approaches. Trend-following strategies excel in trending markets but fail in cyclic ones, while mean-reversion strategies shine in cyclic markets but underperform in trending conditions. However, detecting these regimes is easier said than done, and we have gone through hundreds of hours of testing to create the Market Regime Detector, using multiple very sophisticated methods in an easy-to-use indicator.
💮 Professional vs Community Edition
The Market Regime Detector comes in two versions: a comprehensive Professional Edition and a streamlined Community Edition.
Key advantages of the Professional Edition:
• Enhanced detection accuracy - Utilises 5 advanced detection methods (compared to only 2 in the CE version)
• Proprietary cycle measurement - Automatically detects the market's dominant cycle instead of requiring manual input
• Superior consensus mechanism - Includes a unique "strength-weighted decision" mode that gives more influence to stronger signals
• Reduced false signals - Multiple complementary methods working together provide more reliable regime identification
• Advanced DSP algorithms - Implements sophisticated digital signal processing techniques for superior market analysis
The Professional Edition delivers significant improvements in detection accuracy, signal stability, and overall trading performance.
🌸 --------- KEY FEATURES --------- 🌸
💮 Consensus-Based Detection
Rather than relying on a single method, our detector employs multiple complementary detection methodologies that analyse different aspects of market behaviour:
• Advanced digital signal processing techniques
• Volatility and momentum analysis
• Adaptive filters and mathematical transformations
• Cycle identification
• Channel breakout detection
These diverse perspectives are synthesised into a robust consensus that minimises false signals while maintaining responsiveness to genuine regime changes.
💮 Proprietary Dominant Cycle Measurement ( Pro Edition only )
At the heart of our Professional Edition detector is a proprietary dominant cycle measurement system that automatically and adaptively identifies the market's natural rhythm. This system provides a stable reference framework that continuously adapts to changing market conditions while avoiding the erratic behaviour of typical cycle-finding algorithms like Hilbert Transforms, Discrete Fourier Transforms, or autocorrelation measurements.
Unlike the Community Edition which requires manual input of a single, constant dominant cycle period, the Professional Edition automatically detects and continuously adapts this critical parameter. This automated and adaptive approach ensures optimal detection accuracy across different markets and timeframes without requiring user expertise in cycle analysis, and provides significantly better responsiveness to evolving market conditions.
💮 Intuitive Parameter System
We've distilled complex technical parameters into intuitive controls that traders can easily understand:
• Adaptability - how quickly the detector responds to changing market conditions
• Sensitivity - how readily the detector identifies transitions between regimes
• Consensus requirement - how much agreement is needed among detection methods
This approach makes the detector accessible to traders of all experience levels while preserving the power of the underlying algorithms.
💮 Visual Market Feedback
The detector provides clear visual feedback about the current market regime through:
• Colour-coded chart backgrounds (purple shades for bullish, pink for bearish, yellow for cyclic)
• Colour-coded price bars
• Strength indicators showing the degree of consensus
• Customisable color schemes to match your preferences or trading system
💮 Integration in the GYTS suite
What is of paramount importance, is that the Market Regime Detector is compatible with the GYTS Suite , i.e. it passes the regime into the Order Orchestrator where you can set how to trade the trending and cyclic regime. The intention is to integrate it with more indicators.
🌸 --------- CONFIGURATION SETTINGS --------- 🌸
💮 Adaptability
Controls how quickly the Market Regime detector adapts to changing market conditions. You can see it as a low-frequency, long-term change parameter:
• Very Low: Very slow adaptation, most stable but may miss regime changes
• Low: Slower adaptation, more stability but less responsiveness
• Normal: Balanced between stability and responsiveness
• High: Faster adaptation, more responsive but less stable
• Very High: Very fast adaptation, highly responsive but may generate false signals
This setting affects lookback periods and filter parameters across all detection methods.
💮 Sensitivity
Controls the conviction threshold required to trigger a regime change. This acts as a high-frequency, short-term filter for market noise:
• Very Low: Requires overwhelming evidence to identify a regime change.
• Low: Prioritizes stability; reduces false signals but may delay transition detection.
• Normal: Balanced sensitivity suitable for most liquid markets.
• High: Highly responsive; detects subtle regime changes early but may react to market noise.
• Very High: Extremely sensitive; detects minor fluctuations immediately.
Pro Feature Note: In the Strength-Weighted Decision mode, this setting acts as a dynamic calibrator. It not only adjusts individual method thresholds but also scales the global consensus threshold . A 'High' sensitivity lowers the barrier for the weighted consensus, allowing the system to react to early-stage breakouts even if not all methods fully agree yet.
💮 Consensus Mode
Determines how the signals from all detection methods are combined to produce the final market regime:
• Any Method (OR) : Signals bullish/bearish if any method detects that regime. If methods conflict, the stronger signal wins. More sensitive, catches more regime changes but may produce more false signals.
• All Methods (AND) : Signals only when all methods agree on the regime. More conservative, reduces false signals but might miss some legitimate regime changes.
• Weighted Decision : Balances all methods with equal voting rights. Signals bullish/bearish when the weighted consensus reaches a fixed majority (0.5). Provides a middle ground between sensitivity and stability.
• Strength-Weighted Decision ( Pro Edition only ): A "meritocratic" approach where methods reporting extreme confidence (high signal strength) are given proportionally more weight than those reporting weak signals. Unlike standard voting, a single clear signal from a highly reliable method can override indecision from others.
Note: The threshold for this decision is dynamically calibrated by your 'Sensitivity' setting, ensuring the logic adapts to your desired risk profile.
Each mode also calculates a continuous regime strength value that drives the color intensity in the 'unconstrained' display mode, giving you a visual heatmap of trend conviction.
💮 Display Mode
Choose how to display the market regime colours:
• Unconstrained regime: Shows the regime strength as a continuous gradient. This provides more nuanced visualisation where the intensity of the color indicates the strength of the trend.
• Consensus only: Shows only the final consensus regime with fixed colours based on the detected regime type.
The background and bar colours will change to indicate the current market regime:
• Purple shades : Bullish trending market. In 'unconstrained' mode, darker purple indicates a stronger bullish trend.
• Pink shades : Bearish trending market. In 'unconstrained' mode, darker pink indicates a stronger bearish trend.
• Yellow : Cyclic (range-bound) market.
💮 Custom Color Options
The Market Regime Detector allows you to customize the color scheme to match your personal preferences or to coordinate with other indicators:
• Use custom colours: Toggle to enable your own color choices instead of the default scheme
• Transparency: Adjust the transparency level of all regime colours
• Bullish colours: Define custom colours for strong, medium, weak, and very weak bullish trends
• Bearish colours: Define custom colours for strong, medium, weak, and very weak bearish trends
• Cyclic color: Define a custom color for cyclic (range-bound) market conditions
🌸 --------- DETECTION METHODS --------- 🌸
💮 Five-Method Consensus Architecture
The Professional Edition employs a sophisticated multi-stage architecture to determine market regimes with high precision.
The detection process flows through four logical stages:
1. Market Data & Cycle Detection
Price data flows into the system where the Dominant Cycle Detector automatically identifies the market's natural rhythm. This adaptive cycle length calibrates all subsequent calculations, ensuring the detector remains in sync with changing market conditions without manual adjustments.
2. Five Detection Methods
Using the detected cycle, five complementary algorithms independently evaluate the market state:
• Cyclic Centroid Analysis : Calculates the market's 'centre point' over its dominant cycle and measures price displacement to determine trend or equilibrium.
• Spectral Momentum : Measures momentum across the market's frequency spectrum to identify trend concentration.
• Energy Distribution Gauge : Gauges how price movement energy is distributed to flag cyclic or trending states.
• Volatility Channel : Models the market's volatility state, using band breakouts to indicate a trend.
• Phase Coherence Detector : Analyses phase relationships between adaptive low-pass filters to detect trend stability and identify early regime shifts.
3. Consensus Engine
The signals from all five methods are fed into the Consensus Engine. Depending on your configuration, it aggregates these votes using one of four logic modes (Any, All, Weighted, or Strength-Weighted) to filter out noise and confirm the true market regime.
4. Regime Output
The final result is broadcast as a clear market state:
• Bullish (1) : Trending upwards
• Bearish (-1) : Trending downwards
• Cyclic (0) : Range-bound or oscillating
This output drives the visual feedback on your chart and can be streamed directly to the Order Orchestrator for automated strategy switching.
💮 Synergy & Complementarity
What makes these methods powerful is not just their individual sophistication, but how they complement one another:
• Some excel at early detection while others provide confirmation
• Some analyse time-domain behaviour while others work in the frequency domain
• Some focus on momentum characteristics while others assess volatility patterns
• Some respond quickly to changes while others filter out market noise
This creates a comprehensive analytical framework that can detect regime changes more accurately than any single method. All methods utilize the automatically detected and continuously adaptive dominant cycle period, ensuring they remain precisely calibrated to current market conditions without manual intervention.
🌸 --------- USAGE GUIDE --------- 🌸
💮 Starting with Default Settings
The default settings (Normal for Adaptability, Sensitivity, and Consensus) provide a balanced starting point suitable for most markets and timeframes. Begin by observing how these settings identify regimes in your preferred instruments.
💮 Adjusting Parameters
• If you notice too many regime changes → Decrease Sensitivity or increase Consensus requirement
• If regime changes seem delayed → Increase Adaptability
• If a trending regime is not detected, the market is automatically assigned to be in a cyclic state. The majority of methods actually measure this explicitly.
• If you want to see more nuanced regime transitions → Try the "unconstrained" display mode (note that this will not affect the output to other indicators)
💮 Trading Applications
Regime-Specific Strategies:
• Bullish Trending Regime - Use trend-following strategies, trail stops wider, focus on breakouts, consider holding positions longer, and emphasise buying dips
• Bearish Trending Regime - Consider shorts, tighter stops, focus on breakdown points, sell rallies, implement downside protection, and reduce position sizes
• Cyclic Regime - Apply mean-reversion strategies, trade range boundaries, apply oscillators, target definable support/resistance levels, and use profit-taking at extremes
Strategy Switching:
Create a set of rules for each market regime and switch between them based on the detector's signal. This approach can significantly improve performance compared to applying a single strategy across all market conditions. The Pro Edition's multiple detection methods and advanced consensus mechanisms provide more reliable regime transitions, leading to better strategy switching decisions.
GYTS Suite Integration:
• In the GYTS 🎼 Order Orchestrator, select the '🔗 STREAM-int 🧊 Market Regime' as the market regime source
• Note that the consensus output (i.e. not the "unconstrained" display) will be used in this stream
• Create different strategies for trending (bullish/bearish) and cyclic regimes. The GYTS 🎼 Order Orchestrator is specifically made for this.
• The output stream is actually very simple, and can possibly be used in indicators and strategies as well. It outputs 1 for bullish, -1 for bearish and 0 for cyclic regime.
🌸 --------- FINAL NOTES --------- 🌸
💮 Development Philosophy
The Market Regime Detector has been developed with several key principles in mind:
1. Robustness - The detection methods have been rigorously tested across diverse markets and timeframes to ensure reliable performance.
2. Adaptability - The detector automatically adjusts to changing market conditions, requiring minimal manual intervention.
3. Complementarity - Each detection method provides a unique perspective, with the collective consensus being more reliable than any individual method.
4. Intuitiveness - Complex technical parameters have been abstracted into easily understood controls.
💮 Ongoing Refinement
The Market Regime Detector is under continuous development. We regularly:
• Fine-tune parameters based on expanded market data using state-of-the-art Machine Learning techniques
• Research and integrate new detection methodologies
• Optimise computational efficiency for real-time analysis
Your feedback and suggestions are very important in this ongoing refinement process!
NQ × ES SMT Panel — Ace v3.5NQ × ES SMT Panel — Ace v3.5 (6-Year Model)
This panel reads the 10:45 → 11:00 ET window on NQ and checks for sweeps of the 10:45 candle with SMT confirmation from ES.
It then shows you direction, quality of the signal, and 6-year follow-through stats.
🕒 Recommended Use
Chart: NQ / MNQ
Timeframe: 15-minute
Session: New York (focus on 10:45 and 11:00 ET)
ES symbol input: default ES1! (can be changed in settings)
The script only “makes decisions” on the 11:00 candle close.
🔍 What the Model Looks For
1. NQ Sweep of 10:45 Candle
Bull Sweep (Long bias)
11:00 low < 10:45 low
11:00 close > 10:45 low
Bear Sweep (Short bias)
11:00 high > 10:45 high
11:00 close < 10:45 high
This means: price took liquidity beyond 10:45, then closed back inside.
2. ES SMT Filter (Confirmation)
Bullish SMT
NQ does a bull sweep (takes the low)
ES does NOT make a lower low vs its own 10:45 low
Bearish SMT
NQ does a bear sweep (takes the high)
ES does NOT make a higher high vs its own 10:45 high
If NQ sweeps but ES doesn’t follow, you have SMT and a stronger signal.
📋 Panel Fields (What You See)
The panel is 4 rows, 1 column:
Header
NQ × ES SMT — Ace v3.5 | | Score:
Status can be:
BULLISH SMT
BEARISH SMT
Bull Sweep
Bear Sweep
No Signal
Sweep Direction
Sweep Direction: LONG ↑
Sweep Direction: SHORT ↓
- when no signal
Follow-Through Text
For SMT:
Bullish → High Odds 60-100 Handle Move
Bearish → High Odds 40-80 Handle Move
For pure sweeps:
Normal Follow-through
For no signal: blank
6-Year Stats Line
Shows how often the move reached 40/60/80 handles in the modeled direction:
Example (Bullish SMT):
SMT Stats (6y): 40h=64%, 60h=51%, 80h=41%
Example (Bearish SMT):
SMT Stats (6y): 40h=58%, 60h=42%, 80h=29%
Sweeps without SMT show Sweep Stats (6y): …
No signal: Stats: n/a
⭐ Score Meaning
5★ → SMT present (A+ setup)
3★ → Clean sweep, no SMT (B setup)
0★ → No valid sweep (NO-GO)
Use the score + stats line to decide if the idea deserves risk today.
📈 How to Trade It (Conceptual)
Wait for 11:00 candle to close.
Check panel:
If BULLISH SMT, 5★ → bias long.
If BEARISH SMT, 5★ → bias short.
If Bull/Bear Sweep, 3★ → optional, lower priority.
If No Signal, 0★ → stand aside.
Use your own execution model for entries:
Look for FVG/OB setups in the direction the panel confirms.
Targets can be based on your handle objectives (e.g., 40–80 handles) and intraday structure.
⚠️ Important Notes
Panel is a bias and stats tool, not an auto-entry system.
Works best on regular trading days (avoid major news spikes if you choose).
All stats are based on a 6-year historical lookback on NQ vs ES in this exact 10:45→11:00 structure.
BAY_PIVOT S/R(4 Full Lines + ALL Labels)//@version=5
indicator("BAY_PIVOT S/R(4 Full Lines + ALL Labels)", overlay=true, max_labels_count=500, max_lines_count=500)
// ────────────────────── TOGGLES ──────────────────────
showPivot = input.bool(true, "Show Pivot (Full Line + Label)")
showTarget = input.bool(true, "Show Target (Full Line + Label)")
showLast = input.bool(true, "Show Last Close (Full Line + Label)")
showPrevClose = input.bool(true, "Show Previous Close (Full Line + Label)")
useBarchartLast = input.bool(true, "Use Barchart 'Last' (Settlement Price)")
showR1R2R3 = input.bool(true, "Show R1 • R2 • R3")
showS1S2S3 = input.bool(true, "Show S1 • S2 • S3")
showStdDev = input.bool(true, "Show ±1σ ±2σ ±3σ")
showFib4W = input.bool(true, "Show 4-Week Fibs")
showFib13W = input.bool(true, "Show 13-Week Fibs")
showMonthHL = input.bool(true, "Show 1M High / Low")
showEntry1 = input.bool(false, "Show Manual Entry 1")
showEntry2 = input.bool(false, "Show Manual Entry 2")
entry1 = input.float(0.0, "Manual Entry 1", step=0.25)
entry2 = input.float(0.0, "Manual Entry 2", step=0.25)
stdLen = input.int(20, "StdDev Length", minval=1)
fib4wBars = input.int(20, "4W Fib Lookback")
fib13wBars = input.int(65, "13W Fib Lookback")
// ────────────────────── DAILY CALCULATIONS ──────────────────────
high_y = request.security(syminfo.tickerid, "D", high , lookahead=barmerge.lookahead_on)
low_y = request.security(syminfo.tickerid, "D", low , lookahead=barmerge.lookahead_on)
close_y = request.security(syminfo.tickerid, "D", close , lookahead=barmerge.lookahead_on)
pivot = (high_y + low_y + close_y) / 3
r1 = pivot + 0.382 * (high_y - low_y)
r2 = pivot + 0.618 * (high_y - low_y)
r3 = pivot + (high_y - low_y)
s1 = pivot - 0.382 * (high_y - low_y)
s2 = pivot - 0.618 * (high_y - low_y)
s3 = pivot - (high_y - low_y)
prevClose = close_y
last = useBarchartLast ? request.security(syminfo.tickerid, "D", close , lookahead=barmerge.lookahead_off) : close
target = pivot + (pivot - prevClose)
// StdDev + Fibs + Monthly (unchanged)
basis = ta.sma(close, stdLen)
dev = ta.stdev(close, stdLen)
stdRes1 = basis + dev
stdRes2 = basis + dev*2
stdRes3 = basis + dev*3
stdSup1 = basis - dev
stdSup2 = basis - dev*2
stdSup3 = basis - dev*3
high4w = ta.highest(high, fib4wBars)
low4w = ta.lowest(low, fib4wBars)
fib382_4w = high4w - (high4w - low4w) * 0.382
fib50_4w = high4w - (high4w - low4w) * 0.500
high13w = ta.highest(high, fib13wBars)
low13w = ta.lowest(low, fib13wBars)
fib382_13w_high = high13w - (high13w - low13w) * 0.382
fib50_13w = high13w - (high13w - low13w) * 0.500
fib382_13w_low = low13w + (high13w - low13w) * 0.382
monthHigh = ta.highest(high, 30)
monthLow = ta.lowest(low, 30)
// ────────────────────── COLORS ──────────────────────
colRed = color.rgb(255,0,0)
colLime = color.rgb(0,255,0)
colYellow = color.rgb(255,255,0)
colOrange = color.rgb(255,165,0)
colWhite = color.rgb(255,255,255)
colGray = color.rgb(128,128,128)
colMagenta = color.rgb(255,0,255)
colPink = color.rgb(233,30,99)
colCyan = color.rgb(0,188,212)
colBlue = color.rgb(0,122,255)
colPurple = color.rgb(128,0,128)
colRed50 = color.new(colRed,50)
colGreen50 = color.new(colLime,50)
// ────────────────────── 4 KEY FULL LINES ──────────────────────
plot(showPivot ? pivot : na, title="PIVOT", color=colYellow, linewidth=3, style=plot.style_linebr)
plot(showTarget ? target : na, title="TARGET", color=colOrange, linewidth=2, style=plot.style_linebr)
plot(showLast ? last : na, title="LAST", color=colWhite, linewidth=2, style=plot.style_linebr)
plot(showPrevClose ? prevClose : na, title="PREV CLOSE",color=colGray, linewidth=1, style=plot.style_linebr)
// ────────────────────── LABELS FOR ALL 4 KEY LEVELS (SAME STYLE AS OTHERS) ──────────────────────
f_label(price, txt, bgColor, txtColor) =>
if barstate.islast and not na(price)
label.new(bar_index, price, txt, style=label.style_label_left, color=bgColor, textcolor=txtColor, size=size.small)
if barstate.islast
showPivot ? f_label(pivot, "PIVOT " + str.tostring(pivot, "#.##"), colYellow, color.black) : na
showTarget ? f_label(target, "TARGET " + str.tostring(target, "#.##"), colOrange, color.white) : na
showLast ? f_label(last, "LAST " + str.tostring(last, "#.##"), colWhite, color.black) : na
showPrevClose ? f_label(prevClose, "PREV CLOSE "+ str.tostring(prevClose, "#.##"), colGray, color.white) : na
// ────────────────────── OTHER LEVELS – line stops at label ──────────────────────
f_level(p, txt, tc, lc, w=1) =>
if barstate.islast and not na(p)
lbl = label.new(bar_index, p, txt, style=label.style_label_left, color=lc, textcolor=tc, size=size.small)
line.new(bar_index-400, p, label.get_x(lbl), p, extend=extend.none, color=lc, width=w)
if barstate.islast
if showR1R2R3
f_level(r1, "R1 " + str.tostring(r1, "#.##"), color.white, colRed)
f_level(r2, "R2 " + str.tostring(r2, "#.##"), color.white, colRed)
f_level(r3, "R3 " + str.tostring(r3, "#.##"), color.white, colRed, 2)
if showS1S2S3
f_level(s1, "S1 " + str.tostring(s1, "#.##"), color.black, colLime)
f_level(s2, "S2 " + str.tostring(s2, "#.##"), color.black, colLime)
f_level(s3, "S3 " + str.tostring(s3, "#.##"), color.black, colLime, 2)
if showStdDev
f_level(stdRes1, "+1σ " + str.tostring(stdRes1, "#.##"), color.white, colPink)
f_level(stdRes2, "+2σ " + str.tostring(stdRes2, "#.##"), color.white, colPink)
f_level(stdRes3, "+3σ " + str.tostring(stdRes3, "#.##"), color.white, colPink, 2)
f_level(stdSup1, "-1σ " + str.tostring(stdSup1, "#.##"), color.white, colCyan)
f_level(stdSup2, "-2σ " + str.tostring(stdSup2, "#.##"), color.white, colCyan)
f_level(stdSup3, "-3σ " + str.tostring(stdSup3, "#.##"), color.white, colCyan, 2)
if showFib4W
f_level(fib382_4w, "38.2% 4W " + str.tostring(fib382_4w, "#.##"), color.white, colMagenta)
f_level(fib50_4w, "50% 4W " + str.tostring(fib50_4w, "#.##"), color.white, colMagenta)
if showFib13W
f_level(fib382_13w_high, "38.2% 13W High " + str.tostring(fib382_13w_high, "#.##"), color.white, colMagenta)
f_level(fib50_13w, "50% 13W " + str.tostring(fib50_13w, "#.##"), color.white, colMagenta)
f_level(fib382_13w_low, "38.2% 13W Low " + str.tostring(fib382_13w_low, "#.##"), color.white, colMagenta)
if showMonthHL
f_level(monthHigh, "1M HIGH " + str.tostring(monthHigh, "#.##"), color.white, colRed50, 2)
f_level(monthLow, "1M LOW " + str.tostring(monthLow, "#.##"), color.white, colGreen50, 2)
// Manual entries
plot(showEntry1 and entry1 > 0 ? entry1 : na, "Entry 1", color=colBlue, linewidth=2, style=plot.style_linebr)
plot(showEntry2 and entry2 > 0 ? entry2 : na, "Entry 2", color=colPurple, linewidth=2, style=plot.style_linebr)
// Background
bgcolor(close > pivot ? color.new(color.blue, 95) : color.new(color.red, 95))
MAX TRADEMAX TRADE is an advanced intraday trading indicator designed for gold and forex pairs. It uses a dynamic Fibonacci-based trend line, multi-timeframe EMA, RSI and ATR filters to avoid bad entries. Every signal comes with automatic TP/SL levels, break-even logic and a live stats panel showing win rate, profit, number of trades and streaks.
VB Sigma Smart Momentum IndicatorVB Sigma Smart Momentum Indicator (VBSSMI)
The VBSSMI provides a consolidated decision-support framework that surfaces market participation, trend integrity, and liquidity conditions in a single visual environment. The tool integrates four analytical modules: MCDX Flow Mapping, Donchian Regime Layers, Banker Flow Modeling, and Chop Zone Trend Classification. Together, these components convert raw price movement into an actionable interpretation of who is in control, whether momentum is durable, and what phase the instrument is currently cycling through.
How to Use the Indicator (Practical Workflow)
1. Start with Institutional / Banker Flow (Pink/Red/Yellow/Green Candles)
This is the primary signal layer. It tells you when high-capacity participants are increasing, reducing, or reversing risk.
Yellow Candle — Entry Bias
Indicates a potential institutional initiation when their trend metric crosses above their accumulation threshold.
Operational signal: instrument enters “monitor for entry” state.
Green Candle — Accumulation State
Fund-trend > bullbearline.
Operational signal: trend integrity improving; pullbacks are generally buyable.
White Candle — Distribution / Cooling
Fund-trend weakening but not broken.
Operational signal: tighten stops; momentum deteriorating.
Red Candle — Exit / Trend Failure
Fund-trend < bullbearline.
Operational signal: momentum regime invalidated; avoid long risk.
Blue Candle — Weak Rebound
A temporary uptick within broader weakness.
Operational signal: do not mistake this for a durable reversal.
2. Validate alignment with Flow Chips (Retail / Trader / Institutional)
These three flow columns (MCDX layers) answer: who is actually participating?
Retailer Flow (Locked Chips – Green)
High values imply retail conviction, often late-cycle.
Good for confirming trend strength, not timing entries.
Trader Zone Flow (Float Chips – Yellow)
When this spikes, volatility and tactical positioning increase.
Signal: strong short-term engagement, supports breakout/trend continuation.
Institutional Flow (Profitable Chips – Red/Pink)
This is the “true north” of momentum.
Rising values = institutions controlling price discovery.
Signal: long setups have statistical tailwind.
The operational guidance is straightforward:
Institutional Flow > Trader Flow > Retail Flow
is the healthiest configuration for sustainable upside momentum.
3. Confirm Breakout / Breakdown Conditions with Donchian Regime Columns
The vertical Donchian stack illustrates trend regime in a time-compressed format.
Bright Blue/Cyan
Structure expanding upward (breakout cluster).
Dark Purple/Red
Structure breaking downward (breakdown cluster).
Mixed Columns
Transitional or indecisive conditions.
Interpret it as a “momentum backdrop”:
If Donchian columns and Banker Flow candles disagree, avoid entries.
4. Consult the Chop Zone Strip Before Committing Capital
The Chop Zone uses EMA angle to determine whether the market is trending or congested.
Greens/Blues → Trend phase (favorable environment for continuation trades).
Yellows/Oranges/Reds → High noise probability; expect false signals.
Operationally:
Never enter breakout setups during yellow/orange/red chop.
5. Final Decision Framework (Checklist)
A long setup typically requires:
Green or Yellow Banker Flow Candle
Institutional Flow rising
Donchian columns in bullish regime colors
Chop Zone in a trend color (not red/yellow/orange)
A short setup is the exact inverse.
Recommended Use Cases
Momentum trading
Swing position building
Institutional-flow confirmation
Trend-filtering before deploying breakout systems
Screening for strong/weak symbols in multi-asset rotation strategies
MAX TRADE ZONA)A simple session level indicator for XAUUSD on the M5 timeframe. It takes the high and low of the 00:45 candle (Asia/Tashkent time), draws infinite horizontal lines from that candle, and keeps only the most recent 7 days. Useful for intraday support and resistance levels.
Kịch bản của tôi//@version=6
indicator(title="Relative Strength Index", shorttitle="Gấu Trọc RSI", format=format.price, precision=2, timeframe="", timeframe_gaps=true)
rsiLengthInput = input.int(14, minval=1, title="RSI Length", group="RSI Settings")
rsiSourceInput = input.source(close, "Source", group="RSI Settings")
calculateDivergence = input.bool(false, title="Calculate Divergence", group="RSI Settings", display = display.data_window, tooltip = "Calculating divergences is needed in order for divergence alerts to fire.")
change = ta.change(rsiSourceInput)
up = ta.rma(math.max(change, 0), rsiLengthInput)
down = ta.rma(-math.min(change, 0), rsiLengthInput)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
rsiPlot = plot(rsi, "RSI", color=#7E57C2)
rsiUpperBand1 = hline(98, "RSI Upper Band1", color=#787B86)
rsiUpperBand = hline(70, "RSI Upper Band", color=#787B86)
midline = hline(50, "RSI Middle Band", color=color.new(#787B86, 50))
rsiLowerBand = hline(30, "RSI Lower Band", color=#787B86)
rsiLowerBand2 = hline(14, "RSI Lower Band2", color=#787B86)
fill(rsiUpperBand, rsiLowerBand, color=color.rgb(126, 87, 194, 90), title="RSI Background Fill")
midLinePlot = plot(50, color = na, editable = false, display = display.none)
fill(rsiPlot, midLinePlot, 100, 70, top_color = color.new(color.green, 0), bottom_color = color.new(color.green, 100), title = "Overbought Gradient Fill")
fill(rsiPlot, midLinePlot, 30, 0, top_color = color.new(color.red, 100), bottom_color = color.new(color.red, 0), title = "Oversold Gradient Fill")
// Smoothing MA inputs
GRP = "Smoothing"
TT_BB = "Only applies when 'SMA + Bollinger Bands' is selected. Determines the distance between the SMA and the bands."
maTypeInput = input.string("SMA", "Type", options = , group = GRP, display = display.data_window)
var isBB = maTypeInput == "SMA + Bollinger Bands"
maLengthInput = input.int(14, "Length", group = GRP, display = display.data_window, active = maTypeInput != "None")
bbMultInput = input.float(2.0, "BB StdDev", minval = 0.001, maxval = 50, step = 0.5, tooltip = TT_BB, group = GRP, display = display.data_window, active = isBB)
var enableMA = maTypeInput != "None"
// Smoothing MA Calculation
ma(source, length, MAtype) =>
switch MAtype
"SMA" => ta.sma(source, length)
"SMA + Bollinger Bands" => ta.sma(source, length)
"EMA" => ta.ema(source, length)
"SMMA (RMA)" => ta.rma(source, length)
"WMA" => ta.wma(source, length)
"VWMA" => ta.vwma(source, length)
// Smoothing MA plots
smoothingMA = enableMA ? ma(rsi, maLengthInput, maTypeInput) : na
smoothingStDev = isBB ? ta.stdev(rsi, maLengthInput) * bbMultInput : na
plot(smoothingMA, "RSI-based MA", color=color.yellow, display = enableMA ? display.all : display.none, editable = enableMA)
bbUpperBand = plot(smoothingMA + smoothingStDev, title = "Upper Bollinger Band", color=color.green, display = isBB ? display.all : display.none, editable = isBB)
bbLowerBand = plot(smoothingMA - smoothingStDev, title = "Lower Bollinger Band", color=color.green, display = isBB ? display.all : display.none, editable = isBB)
fill(bbUpperBand, bbLowerBand, color= isBB ? color.new(color.green, 90) : na, title="Bollinger Bands Background Fill", display = isBB ? display.all : display.none, editable = isBB)
// Divergence
lookbackRight = 5
lookbackLeft = 5
rangeUpper = 60
rangeLower = 5
bearColor = color.red
bullColor = color.green
textColor = color.white
noneColor = color.new(color.white, 100)
_inRange(bool cond) =>
bars = ta.barssince(cond)
rangeLower <= bars and bars <= rangeUpper
plFound = false
phFound = false
bullCond = false
bearCond = false
rsiLBR = rsi
if calculateDivergence
//------------------------------------------------------------------------------
// Regular Bullish
// rsi: Higher Low
plFound := not na(ta.pivotlow(rsi, lookbackLeft, lookbackRight))
rsiHL = rsiLBR > ta.valuewhen(plFound, rsiLBR, 1) and _inRange(plFound )
// Price: Lower Low
lowLBR = low
priceLL = lowLBR < ta.valuewhen(plFound, lowLBR, 1)
bullCond := priceLL and rsiHL and plFound
//------------------------------------------------------------------------------
// Regular Bearish
// rsi: Lower High
phFound := not na(ta.pivothigh(rsi, lookbackLeft, lookbackRight))
rsiLH = rsiLBR < ta.valuewhen(phFound, rsiLBR, 1) and _inRange(phFound )
// Price: Higher High
highLBR = high
priceHH = highLBR > ta.valuewhen(phFound, highLBR, 1)
bearCond := priceHH and rsiLH and phFound
plot(
plFound ? rsiLBR : na,
offset = -lookbackRight,
title = "Regular Bullish",
linewidth = 2,
color = (bullCond ? bullColor : noneColor),
display = display.pane,
editable = calculateDivergence)
plotshape(
bullCond ? rsiLBR : na,
offset = -lookbackRight,
title = "Regular Bullish Label",
text = " Bull ",
style = shape.labelup,
location = location.absolute,
color = bullColor,
textcolor = textColor,
display = display.pane,
editable = calculateDivergence)
plot(
phFound ? rsiLBR : na,
offset = -lookbackRight,
title = "Regular Bearish",
linewidth = 2,
color = (bearCond ? bearColor : noneColor),
display = display.pane,
editable = calculateDivergence)
plotshape(
bearCond ? rsiLBR : na,
offset = -lookbackRight,
title = "Regular Bearish Label",
text = " Bear ",
style = shape.labeldown,
location = location.absolute,
color = bearColor,
textcolor = textColor,
display = display.pane,
editable = calculateDivergence)
alertcondition(bullCond, title='Regular Bullish Divergence', message="Found a new Regular Bullish Divergence, `Pivot Lookback Right` number of bars to the left of the current bar.")
alertcondition(bearCond, title='Regular Bearish Divergence', message='Found a new Regular Bearish Divergence, `Pivot Lookback Right` number of bars to the left of the current bar.')
FPT - DCA ModelFPT - DCA Model is a simple but powerful tool to backtest a weekly “buy the dip” DCA plan with dynamic position sizing and partial profit-taking.
🔹 Core Idea
- Invest a fixed amount every week (on Friday closes)
- Buy more aggressively when price trades at a discount from its 52-week high
- Take partial profits when price stretches too far above the daily EMA50
- Track the performance of your DCA plan vs a simple buy-and-hold from the same start date
⚙ How it works
1. Weekly DCA (on Daily timeframe)
- On each Friday after the Start Date:
- Add the “Weekly contribution” to the cash pool.
- If the close is below the “Discount from 52W high” level:
→ FULL DCA: use the full weekly contribution + an extra booster from your stash (up to “Max extra stash used on dip”).
→ Marked on the chart with a small green triangle under the bar.
- Otherwise:
→ HALF DCA: invest only 50% of the weekly contribution and keep the other 50% as stash (uninvested cash).
→ Marked with a small blue triangle under the bar.
2. 52-Week High Discount Logic
- The script computes the 52-week high as the highest daily high of the last 252 trading days.
- The “discount level” is: 52W high × (1 – Discount%).
- When price is at or below this level, dips are treated as buying opportunities and the model allocates more.
3. Selling Logic (Partial Take Profit)
- When the close is above the daily EMA50 by the selected percentage:
→ Sell the given “Sell portion of qty (%)” of your current holdings.
→ Marked with a small red triangle above the bar.
- This behaves like a gradual profit-taking system: if price stays extended above EMA50, multiple partial sells can occur over time.
📊 Panel (top-right)
The panel summarizes the state of your DCA plan:
- Weeks: number of DCA weeks since Start Date
- Total deposit: total money contributed (sum of all weekly contributions)
- Shares qty: total number of shares accumulated
- Avg price: volume-weighted average entry price
- Shares value: current market value of all shares (qty × close)
- Cash: uninvested cash (including saved stash)
- Total equity: Shares value + Cash
- DCA % PnL: performance of the DCA plan vs total deposits
- Stock % since start: performance of the underlying asset since the Start Date
✅ Recommended Use
- Timeframe: Daily (the DCA engine is designed to run on daily bars and Friday closes).
- Works best on stocks, ETFs or indices where a 52-week high is a meaningful reference.
- You can tune:
- Weekly contribution
- Discount from 52W high
- Booster amount
- EMA50 extension threshold and sell portion
⚠ Notes & Disclaimer
- This script is a backtesting and educational tool. It does not place real orders.
- Past performance does not guarantee future results.
- Always combine DCA and risk management with your own research and judgment.
Built by FPT (Funded Pips Trading) for long-term, rules-based DCA planning.
📊 Volume Tension & Net Imbalance📊 Volume Tension & Net Imbalance (With Table + MultiLang + Alerts)
//
This indicator measures bullish vs. bearish pressure using volume-based tension and net imbalance.
It identifies accumulation zones, displays real-time market strength, trend direction, and triggers alerts on buildup entries.
Fully customizable table size, colors, and bilingual support (English/Russian).
PyTai Top/Bottom Finder v0.1When the average StochRSI line rises high (near or above 80), it often signals the asset's price is approaching the peak or end of an uptrend, as momentum becomes overextended across multiple timeframes—aligning with your view on run endings. Conversely, a low average (near or below 20) suggests exhaustion in a downtrend, hinting at potential bottoms. The cluster columns amplify this: wide green bars (high positive netScore) show broad oversold agreement for bullish reversals, while red bars indicate overbought consensus for bearish turns. However, StochRSI can remain extreme in strong trends, so combine with price action or volume to avoid false signals; backtest on your assets to refine thresholds, as shorter smoothing (e.g., 1-3) increases sensitivity but noise.






















