TEMA OBOS Strategy 【Pakun】📌 Overview
The TEMA + OBOS Strategy is an advanced trading strategy that combines the Triple Exponential Moving Average (TEMA) for trend-following and the Overbought/Oversold (OBOS) indicator for trade filtering.
This strategy leverages TEMA crossovers to identify trends and applies OBOS as a filter to improve entry precision.
💡 Main Objectives
Clearly determine trend direction (using TEMA)
Filter out overbought and oversold conditions (using OBOS)
Implement dynamic risk management (using ATR-based TP/SL)
This strategy is suitable for a wide range of markets, including Forex, stocks, and cryptocurrencies, and is best applied on mid-timeframes such as 15-minute to 1-hour charts.
📌 Key Features
🔹 Trend Analysis with TEMA (Triple EMA)
Generates entry signals based on ema3 and ema4 crossovers
Uses ema4 as the primary trend filter
🔹 Entry Optimization with OBOS (Overbought/Oversold Indicator)
up > down → Buy entry, up < down → Sell entry
Filters out excessive buying and selling conditions to improve accuracy
🔹 Take Profit & Stop Loss Based on ATR
ATR (Average True Range) multiplier is adjustable
Fully customizable TP/SL settings (default: TP = ATR × 2, SL = ATR × 1.5)
🔹 Customizable Parameters
TEMA Length (TEMA calculation period)
OBOS Length (OBOS calculation period)
Take Profit Multiplier (TP ratio)
Stop Loss Multiplier (SL ratio)
Show EMA? (Enable/disable TEMA lines)
Barcolor? (Enable/disable candlestick coloring)
📌 Trading Parameters
This strategy follows these trading rules:
✅ Long Entry (Buy)
ema3 crosses above ema4 (Golden Cross)
OBOS indicator confirms up > down (uptrend confirmation)
A long position is executed
✅ Short Entry (Sell)
ema3 crosses below ema4 (Death Cross)
OBOS indicator confirms up < down (downtrend confirmation)
A short position is executed
✅ Take Profit (TP)
Profit is taken when the price reaches Entry Price + ATR × TP multiplier (default: 2.0)
✅ Stop Loss (SL)
Loss is cut when the price reaches Entry Price - ATR × SL multiplier (default: 1.5)
📌 TP/SL values are fully customizable, allowing traders to fine-tune risk management.
📌 Risk Management Parameters
This strategy emphasizes flexible position sizing and risk control:
💰 Account Size: $7000
📉 Commissions & Slippage: Assumes 0-94 pips commission and 1 pip slippage
⚖️ Order Size: 10% of equity (adjustable as needed)
These settings help balance risk and reward while protecting capital.
📌 Visual Aids for Clarity
This strategy provides clear visual cues on the chart:
📊 TEMA Lines (3 EMA Levels)
Color change (Blue/Orange) indicates trend direction
ema3 (short-term) and ema4 (long-term) crossover signals
📉 OBOS Histogram
Green → Bullish pressure
Red → Bearish pressure
Blue → Potential trend shift
🔹 Entry & Exit Markers
🔼 Long Entry (Blue arrow)
🔽 Short Entry (Red arrow)
✅ Take Profit / Stop Loss Levels
📌 Originality & Enhancements
This strategy is based on the indicators " l_lonthoff " and " jdmonto0 ", with several improvements and enhancements.
While utilizing the core concepts of these indicators, we have optimized entry accuracy, improved visual clarity, and enhanced risk management features.
📌 Improvements & Upgrades
✅ Enhanced Trend Identification with TEMA (Triple EMA)
Uses ema3 (short-term) and ema4 (long-term) to detect trend shifts earlier
Reduces false signals and enables better trend-following trades
✅ Improved Filtering with OBOS (Overbought/Oversold Indicator)
Inspired by "jdmonto0", this feature filters overbought/oversold conditions for smarter trade entries
Reduces unnecessary trades and minimizes risk exposure
✅ Dynamic Risk Management with ATR (Average True Range)
Uses volatility-adjusted TP/SL levels instead of fixed values
Fully customizable ATR-based TP/SL multipliers (Default: TP = ATR × 2, SL = ATR × 1.5)
✅ Visual Enhancements for Clarity
TEMA lines change color dynamically to indicate trend direction
OBOS histogram provides an intuitive view of buying and selling pressure
Entry & exit markers make trades easy to track on the chart
📌 Summary
📌 TEMA + OBOS Strategy combines trend analysis and oscillators to create a powerful yet simple trading system:
Identifies trend direction using TEMA (Triple EMA)
Filters out noise and overbought/oversold conditions using OBOS
Applies ATR-based TP/SL settings for dynamic risk management
💡 Recommended for:
✅ Traders who prefer trend-following strategies
✅ Those who want a systematic, rules-based trading approach
✅ Users looking for a customizable strategy with strong risk management
📌 Try it out and backtest the results! 🚀
💡 How to Upload to TradingView
Paste this description in the Pine Script editor's "Strategy Description" field
Save and publish the script
Ensure that the "Description" field is filled with this content
Share it with the TradingView community!
📌 This strategy provides a structured, risk-managed approach to trading. Try it out and see how it performs! 🔥
ابحث في النصوص البرمجية عن "algo"
Time-based Alerts for Trading Windows🌟 Time-based Alerts for Trading Windows 🌐📈
This is a re-uploaded script as the previous one got hidden.
This Time-based Alerts for Trading Windows script is a highly customizable and reliable tool designed to assist traders in managing automated strategies or manually monitoring specific market conditions. Inspired by CrossTrade's Time-based Alert, this script is tailored for those who rely on precise time windows to trigger actions, such as sending webhook signals or managing Expert Advisors (EAs).
Whether you are a scalper, day trader, or algorithmic trader, this script empowers you to stay on top of your trades with fully customizable time-based alerts.
🛠️ Customizable Time Alerts
This indicator allows you to create up to 12 unique time windows by specifying the exact hour and minute for each alert. Each time window corresponds to an individual alert condition, making it perfect for managing trades during specific market sessions or key time periods.
For example:
Alert 1 can be set at 9:30 AM (market open).
Alert 2 can be set at 3:55 PM (just before market close).
Each alert can be toggled on or off in the indicator settings, allowing you to manage alerts without having to reconfigure your script.
You can adjust the colours to fit any colour scheme you like!
🕒 Odd and Even Time Alerts
The script comes with three built-in alert type categories:
Odd Alerts (marked with a green triangle on the chart): These correspond to odd-numbered inputs like Alert 1, Alert 3, Alert 5, and so on.
Even Alerts (marked with a red triangle on the chart): These correspond to even-numbered inputs like Alert 2, Alert 4, Alert 6, and so on.
You can also customize all 12 alerts individually to include a custom alert message
These alerts serve as a convenient way to differentiate between multiple trading strategies or market conditions. You can customize alert messages for odd and even alerts directly from TradingView’s alert panel.
🔗 Webhook Integration for Automation
This script is fully compatible with webhook-based automation. By configuring your alerts in TradingView, you can send signals to trading bots, EAs, or any third-party system. For example, you can:
Turn off an EA at a specific time (e.g., 3:55 PM EST).
Send buy/sell signals to your bot during predefined trading windows.
Simply use TradingView’s alert message editor to format webhook payloads for your automation system.
🌐 Timezone Flexibility
Trading happens across multiple time zones, and this script accounts for that. You can toggle between:
Eastern Time (New York): Ideal for most US-based markets.
Central Time (Exchange): Useful for futures and commodities traders.
This ensures your alerts are always in sync with your preferred time zone, eliminating confusion.
🎨 Visual Indicators
The script plots visual markers directly on your chart to indicate active alerts:
Up Facing Triangles: Represent odd-numbered alerts, providing a quick reference for these time windows.
Down Facing Triangles: Represent even-numbered alerts, helping you track different strategies or conditions.
These visual markers make it easy to see when alerts are triggered, even at a glance.
📈 Practical Use Case
Let’s say you’re trading the USTEC index on a 1-minute chart. You want to:
Turn off your trading bot at 16:55 EST to avoid after-market volatility.
Trigger a re-entry signal at 17:30 EST to capture moves during the Asian session.
Visually monitor these actions on your chart for easy reference.
This script makes it possible with precision alerts and webhook integration. Simply configure the time windows in the settings and set up your alerts in TradingView.
🚨 How to Set Up Alerts
Enable or Disable Alerts: Use the script’s settings to toggle specific alerts on or off as needed.
Set Custom Time Windows: Define the hour and minute for each alert in the settings panel.
Create Alerts in TradingView:
Go to the TradingView alert panel.
Select the condition (e.g., "Odd Time-based Alert (Green)" or "Even Time-based Alert (Red)").
Customize the alert message for webhook integration or personal notification.
Choose the trigger type: Once Per Bar or Once Per Bar Close to keep the alert active.
Integrate with Webhooks: Use the alert message field to format payloads for automation systems like MT4, MT5, or third-party bots.
📋 Key Notes
Alerts can trigger indefinitely if set to "Once Per Bar" or "Once Per Bar Close".
Always ensure the expiration date is set far in the future to avoid unexpected alert deactivation.
Test webhook messages and alert configurations thoroughly before using them in live trading.
This script is a powerful addition to your trading toolbox, offering precision, flexibility, and automation capabilities. Whether you’re turning off an EA, managing trades during market sessions, or automating strategies via webhooks, this script is here to support you.
Start using the Time-based Alerts for Trading Windows today and trade with confidence! 🚀✨
Stema sau Banul📜 Povestea Indicatorului „Stema sau Banul” 🎲💰
În vremuri de demult, când piețele financiare erau dominate de strategii complexe și analiști îmbrăcați în costume scumpe, un investitor legendar pe nume Maestrul Stemei și-a pus o întrebare simplă:
👉 „Dacă oricum piețele sunt imprevizibile, de ce să nu lăsăm soarta să decidă?”
Astfel, într-o noapte ploioasă, în fața unui birou plin de grafice și lumânări roșii și verzi, Maestrul Stemei a luat o monedă veche de aur și a început să o arunce.
Dacă ieșea Stema, el cumpăra.
Dacă ieșea Banul, vindea fără ezitare.
Spre uimirea tuturor, strategia sa pur aleatorie a început să rivalizeze cu cele mai sofisticate modele matematice. Traderii de pe Wall Street îl priveau cu neîncredere, iar roboții de tranzacționare încercau să-l copieze. Dar nimeni nu putea egala simplitatea filozofiei sale: „Lasă banul să vorbească”.
Astăzi, moștenirea Maestrului Stemei continuă prin acest indicator, care îți oferă semnale bazate pe vechea metodă a aruncării monedei. Va fi norocul de partea ta? Sau vei blestema ziua în care ai ascultat de un cod care decide aleatoriu? 🎲
💡 Regulă de aur:
➡ Dacă pierzi, spune că e doar o glumă.
➡ Dacă câștigi, pretinde că ai descoperit un algoritm revoluționar.
Acum, Stema sau Banul îți stă la dispoziție! 🎩📈
Greedy Strategy 20 10 4 – High-Accuracy BTC/USD The Greedy Strategy 20 10 4 is a high-performance BTC/USD trading strategy designed for traders who seek high win rates and low risk exposure. This strategy leverages price action, volatility analysis, and trend-following indicators to generate accurate buy and sell signals...High Win Rate (90%) – Optimized for consistent profitability
✅ Smart Entry & Exit – Uses adaptive algorithms for precise trade timing
✅ Risk-Managed Drawdown (0.00%) – Ensures capital protection
✅ Works on 15-Minute BTC/USD Charts – Optimized for short-term traders.📊 Backtest Performance (Jan 2025 – Feb 2025)
Net Profit: $6,091.90 USD (0.61% per trade)
Total Trades: 10
Win Rate: 90%
Profit Factor: 92.9 (Very high)
Max Drawdown: $1.00 USD (0.00%)
Avg Trade Profit: $609.19 per trade.
free to use if you would like. Thank you.
MT-Trend Zone IdentifierTrend Zone Identifier – A Dynamic Market Trend Mapping Tool
Overview
The Trend Zone Identifier is an advanced TradingView indicator that helps traders visualize different market trend phases. By leveraging Pivot Points, Moving Averages (MA), ADX (Average Directional Index), and Retest Confirmation, this tool identifies uptrend, downtrend, and ranging (sideways) conditions dynamically.
This indicator is designed to segment the market into clear trend zones, allowing traders to distinguish between confirmed trends, trend transitions (pending zones), and ranging markets. It provides an intuitive visual overlay to enhance market structure analysis and assist in decision-making.
Key Features
✔ Trend Zone Identification – Classifies price action into Uptrend (Green), Downtrend (Red), Pending Confirmation (Light Colors), and Sideways Market (Gray/Neutral)
✔ Pivot-Based Breakout & Breakdown Detection – Uses pivot highs/lows to determine trend shifts
✔ Moving Average & ADX Validation – Ensures the trend is backed by MA structure and ADX trend strength
✔ Pullback Confirmation – Allows trend confirmation based on price retesting key levels
✔ Extreme Volatility & Gaps Filtering – Optional ATR-based extreme movement filtering to avoid false signals
✔ Multi-Timeframe Support – Option to integrate higher timeframe trend validation
✔ Customizable Sensitivity – Fine-tune MA smoothing, ADX thresholds, pivot detection, and pullback range
How It Works
1. Trend Classification
• Uptrend (Green): Price is above a key MA, ADX confirms strength, and a pivot breakout occurs
• Downtrend (Red): Price is below a key MA, ADX confirms strength, and a pivot breakdown occurs
• Pending Trend (Light Colors): Initial trend breakout or breakdown is detected but requires further confirmation
• Sideways/Ranging (Gray): ADX signals a weak trend, and price remains within a neutral zone
2. Retest & Confirmation Logic
• A trend is only confirmed after a breakout or breakdown followed by a successful retest
• If the market fails the retest, the indicator resets to a neutral state
3. Custom Filters for Optimization
• Enable or disable volume filtering for confirmation
• Adjust pivot sensitivity to detect major or minor swing points
• Choose to require consecutive bars confirming the breakout/breakdown
Ideal Use Cases
🔹 Swing traders who want to capture trend transitions early
🔹 Trend-following traders who rely on confirmed market cycles
🔹 Range traders looking to identify sideways market zones
🔹 Algorithmic traders who need clean trend segmentation for automated strategies
Final Thoughts
The Trend Zone Identifier is a versatile market structure indicator that helps traders define trend cycles visually and avoid trading against weak trends. By providing clear breakout, breakdown, and retest conditions, it enhances market clarity and reduces decision-making errors.
➡ Add this to your TradingView workspace and start analyzing market trends like a pro! 🚀
Son Model ICT [TradingFinder] HTF DOL H1 + Sweep M15 + FVG M1🔵 Introduction
The ICT Son Model setup is a precise trading strategy based on market structure and liquidity, implemented across multiple timeframes. This setup first identifies a liquidity level in the 1-hour (1H) timeframe and then confirms a Market Structure Shift (MSS) in the 5-minute (5M) timeframe to validate the trend. After confirmation, the price forms a new swing in the 5-minute timeframe, absorbing liquidity.
Once this level is broken, traders typically drop to the 30-second (30s) timeframe and enter trades based on a Fair Value Gap (FVG). However, since access to the 30-second timeframe is not available to most traders, we take the entry signal directly from the 5-minute timeframe, using the same liquidity zones and confirmed breakouts to execute trades. This approach simplifies execution and makes the strategy accessible to all traders.
This model operates in two setups :
Bullish ICT Son Model and Bearish ICT Son Model. In the bullish setup, liquidity is first accumulated at the lows of the 1-hour timeframe, and after confirming a market structure shift, a long position is initiated. Conversely, in the bearish setup, liquidity is first drawn from higher levels, and upon confirmation of a bearish trend, a short position is executed.
Bullish Setup :
Bearish Setup :
🔵 How to Use
The ICT Son Model setup is designed around liquidity analysis and market structure shifts and can be applied in both bullish and bearish market conditions. The strategy first identifies a liquidity level in the 1-hour (1H) timeframe and then confirms a Market Structure Shift (MSS) in the 5-minute (5M) timeframe.
After this shift, the price forms a new swing, absorbing liquidity. When this level is broken in the 5-minute timeframe, the trader enters based on a Fair Value Gap (FVG). While the ideal entry is in the 30-second (30s) timeframe, due to accessibility constraints, we take entry signals directly from the 5-minute timeframe.
🟣 Bullish Setup
In the Bullish ICT Son Model, the 1-hour timeframe first identifies liquidity at the market lows, where price sweeps this level to absorb liquidity. Then, in the 5-minute timeframe, an MSS confirms the bullish shift.
After confirmation, the price forms a new swing, absorbing liquidity at a higher level. The price then retraces into a Fair Value Gap (FVG) created in the 5-minute timeframe, where the trader enters a long position, placing the stop-loss below the FVG.
🟣 Bearish Setup
In the Bearish ICT Son Model, liquidity at higher market levels is identified in the 1-hour timeframe, where price sweeps these levels to absorb liquidity. Then, in the 5-minute timeframe, an MSS confirms the bearish trend.
After confirmation, the price forms a new swing, absorbing liquidity at a lower level. The price then retraces into a Fair Value Gap (FVG) created in the 5-minute timeframe, where the trader enters a short position, placing the stop-loss above the FVG.
🔵 Settings
Swing period : You can set the swing detection period.
Max Swing Back Method : It is in two modes "All" and "Custom". If it is in "All" mode, it will check all swings, and if it is in "Custom" mode, it will check the swings to the extent you determine.
Max Swing Back : You can set the number of swings that will go back for checking.
FVG Length : Default is 120 Bar.
MSS Length : Default is 80 Bar.
FVG Filter : This refines the number of identified FVG areas based on a specified algorithm to focus on higher quality signals and reduce noise.
Types of FVG filters :
Very Aggressive Filter: Adds a condition where, for an upward FVG, the last candle's highest price must exceed the middle candle's highest price, and for a downward FVG, the last candle's lowest price must be lower than the middle candle's lowest price. This minimally filters out FVGs.
Aggressive Filter: Builds on the Very Aggressive mode by ensuring the middle candle is not too small, filtering out more FVGs.
Defensive Filter: Adds criteria regarding the size and structure of the middle candle, requiring it to have a substantial body and specific polarity conditions, filtering out a significant number of FVGs.
Very Defensive Filter: Further refines filtering by ensuring the first and third candles are not small-bodied doji candles, retaining only the highest quality signals.
🔵 Conclusion
The ICT Son Model setup is a structured and precise method for trade execution based on liquidity analysis and market structure shifts. This strategy first identifies a liquidity level in the 1-hour timeframe and then confirms a trend shift using the 5-minute timeframe.
Trade entries are executed based on Fair Value Gaps (FVGs), which highlight optimal entry points. By applying this model, traders can leverage existing market liquidity to enter high-probability trades. The bullish setup activates when liquidity is swept from market lows and a market structure shift confirms an upward trend, whereas the bearish setup is used when liquidity is drawn from market highs, confirming a downtrend.
This approach enables traders to identify high-probability trade setups with greater precision compared to many other strategies. Additionally, since access to the 30-second timeframe is limited, the strategy remains fully functional in the 5-minute timeframe, making it more practical and accessible for a wider range of traders.
Kalman Filter Trend BreakersThe Kalman filter is a recursive algorithm developed in 1960 by Rudolf E. Kálmán, a Hungarian-American engineer and mathematician, that provides optimal estimates of a system's state by combining noisy measurements with a predictive model. It is widely used in control systems, signal processing, and finance for tracking and forecasting.
In trading, KF might be a good replacement for a moving average, as it reacts to price changes in a different way. Not only it follows price direction, but can also track the velocity of price change. This specific behaviour of KF is used in this indicator to track changes in trends.
Trend is characterized by price moving directionally, however, any trend comes to pause or complete stop and reversal, as the price changes more slowly (a trend fades into a sideways movement for a while) or the price movement changes direction, thus making a reversal.
This indicator detects the points where such changes occur (trend breaker points), and produces signals, which serve as points of current trend pausing or reversing. By applying different settings for KF calculation, you can produce less or more signals that indicate change in trend character, and either detect only significant trends changes, or less and shorter trends changes as well.
The signals do not differentiate the exact type of a trend change (it can be a brief trend pause followed by a continuation, as well as a complete reversal). However, once you are in a trend, the significant velocity change indicates a change in trend structure. In this sense, trend breaker signals should not be followed blindly, and can be used only as trend (and subsequently, position) exit confirmations, but not the entry contrarian confirmations.
For better visual representation, you can use chart signals attached to bars, and additionally paint a vertical gradient at each signal which shows significant trend deceleration.
Kalman filter calculations used in this indicator are partially based on an open-source code from @loxx which was published in 2022 as Kalman filter overlay .
Precious Metals & GSR (Zeiierman)█ Overview
The Precious Metals & GSR (Zeiierman) is designed to provide traders and investors with a comprehensive view of the Gold-Silver Ratio (GSR) and other precious metal relationships. This tool helps evaluate the relative strength between different metals by analyzing their price ratios over historical periods, using quantile-based analysis and trend interpretation tables to highlight key insights.
The Gold-Silver Ratio (GSR) is a widely utilized metric in precious metals trading, representing the number of silver ounces required to purchase one ounce of gold. Historically, this ratio has fluctuated, providing traders with insights into the relative value of these two metals. By analyzing the GSR, traders can identify potential trading opportunities based on historical patterns and market dynamics.
By integrating customizable percentile bands, gradient coloring for performance visualization, and dynamic ratio analysis, this indicator assists in understanding how one metal is performing relative to another, making it useful for trend tracking, risk management, and portfolio allocation.
█ How It Works
The Precious Metals & GSR Indicator operates by fetching the latest prices of the selected precious metals in the user's chosen currency. It then calculates the ratio between two selected metals (Metal 1 and Metal 2) and analyzes this ratio over a specified period. By computing quantile bands and high/low bands, the indicator provides insights into the historical performance and current standing of the ratio.
⚪ Ratio Calculation
The core of this indicator is the metal ratio, calculated by dividing the price of Metal 1 by Metal 2.
A rising ratio means Metal 1 is outperforming Metal 2.
A falling ratio means Metal 2 is outperforming Metal 1.
The indicator automatically retrieves live market prices of Gold, Silver, Platinum, and Palladium to compute the ratio.
⚪ Quantile Ratio Bands
The indicator calculates the highest (max) and lowest (min) ratio levels over a user-defined period.
It also plots quantile bands at the 10th, 25th, 50th (median), 75th, and 90th percentiles, providing deeper statistical insights into how extreme or average the current ratio is.
The median (Q50) acts as a reference level, showing whether the ratio is above or below its historical midpoint.
⚪ Interpretation Table
The Ratio Interpretation Table provides a text-based summary of the ratio’s strength.
It detects whether Metal 1 is at a historical high, low, or within common ranges.
This helps traders and investors make informed decisions on whether the ratio is overextended, mean-reverting, or trending.
⚪ Precious Metals Table
Displays live market prices for Gold, Silver, Platinum, and Palladium.
Prices are shown in different units (oz, kg, grams, and troy ounces) based on user preferences.
A color-coded system highlights price changes, making it easier to track market movements.
⚪ Physical Holding Calculator
Users can enter their precious metal holdings to estimate their current value.
The system adjusts calculations based on weight, purity (24K, 22K, etc.), and unit of measurement.
The holding value is displayed in the selected currency (USD, EUR, GBP, etc.).
█ How to Use
⚪ Trend Identification
If the ratio is increasing, Metal 1 is gaining strength relative to Metal 2 → Possible Long Position on Metal 1 / Short on Metal 2
If the ratio is decreasing, Metal 2 is gaining strength relative to Metal 1 → Possible Short Position on Metal 1 / Long on Metal 2
⚪ Mean Reversion Strategy
When the ratio reaches the 90th percentile, Metal 1 is historically overextended (expensive) compared to Metal 2.
Traders may look to sell Metal 1 and buy Metal 2, expecting the ratio to decline back toward its historical average.
Example (Gold/Silver Ratio): If the GSR is above the 90th percentile, gold is very expensive relative to silver, suggesting a potential buying opportunity in silver and/or a selling opportunity in gold.
When the ratio reaches the 10th percentile, Metal 1 is historically undervalued (cheap) compared to Metal 2.
Traders may look to buy Metal 1 and sell Metal 2, expecting the ratio to rise back toward its historical average.
Example (Gold/Silver Ratio): If the GSR is below the 10th percentile, gold is very cheap relative to silver, suggesting a potential buying opportunity in gold and/or a selling opportunity in silver.
⚪ Common Strategy Based on GSR Insights
A common approach involves monitoring the ratio for extreme values based on historical data. When the ratio reaches historically high levels, it suggests that gold is expensive relative to silver, potentially indicating a buying opportunity for silver and/or a selling opportunity for gold. Conversely, when the ratio is at historically low levels, silver is expensive relative to gold, suggesting a potential buying opportunity for gold and/or selling opportunity for silver. This mean-reversion strategy relies on the tendency of the GSR to return to its historical average over time.
⚪ Hedging & Portfolio Diversification
If Gold is strongly outperforming Silver, investors may shift allocations to balance risk.
If Silver is rapidly gaining on Gold, it may indicate increased industrial demand or speculative interest.
⚪ Inflation & Economic Cycles
A rising Gold-Silver ratio often correlates with economic downturns and increased risk aversion.
A falling Gold-Silver ratio may signal stronger economic growth and higher inflation expectations.
█ Settings
Precious Metals Table
Select which metals to display (Gold, Silver, Platinum, Palladium)
Choose measurement units (oz, kg, grams, troy ounces)
Ratio Analysis
Select Metal 1 & Metal 2 for ratio calculation
Set historical length for quantile calculations
Interpretation Table
Enable automated insights based on ratio levels
Physical Holdings Calculator
Enter metal weight, purity, and unit
Select calculation currency
-----------------
Disclaimer
The content provided in my scripts, indicators, ideas, algorithms, and systems is for educational and informational purposes only. It does not constitute financial advice, investment recommendations, or a solicitation to buy or sell any financial instruments. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
Market Structure HH, HL, LH and LLMarket Structure Indicator (HH, HL, LH, LL) – Explanation and Usage
Overview:
This indicator is designed to detect and visualize market structure shifts by identifying Higher Highs (HH), Higher Lows (HL), Lower Highs (LH), and Lower Lows (LL). It plots a ZigZag structure to mark trend changes, helping traders analyze price swings and market direction.
Indicator Logic:
The indicator operates based on ZigZag swing points to define trend shifts and structure changes.
Identifying Market Swings:
It finds local highs and lows using the ZigZag Length (zigzag_len), which defines how many bars back to check for a new swing high/low.
If the current high is the highest over zigzag_len periods, it marks it as a swing high.
If the current low is the lowest over zigzag_len periods, it marks it as a swing low.
Determining Market Structure:
Uptrend: Higher Highs (HH) & Higher Lows (HL)
Downtrend: Lower Lows (LL) & Lower Highs (LH)
The script continuously tracks the last two highs (h0, h1) and last two lows (l0, l1) to classify the current market structure.
Visual Elements:
ZigZag Line (Optional): Connects major swing highs and lows for trend visualization.
Labels (HH, HL, LH, LL):
HH (Higher High) – Price is making new highs → Uptrend Continuation.
HL (Higher Low) – Price forms a higher bottom → Uptrend Confirmation.
LL (Lower Low) – Price is making new lows → Downtrend Continuation.
LH (Lower High) – Price forms a lower top → Downtrend Confirmation.
Breakout Confirmation with Fibonacci Factor (Optional)
The indicator includes an option to confirm breakouts using the fib_factor, which ensures price moves beyond a certain retracement level.
How to Use This Indicator in Trading:
1. Identifying Trends & Trend Reversals
Uptrend: Look for a sequence of HH and HL.
Downtrend: Look for a sequence of LL and LH.
Trend Reversal: If price transitions from HH-HL to LH-LL, it signals a shift from an uptrend to a downtrend (and vice versa).
2. Confirming Entry & Exit Points
Buy Entry (Long Position)
Enter after a Higher Low (HL) is confirmed in an uptrend.
Combine with support zones or moving averages for confirmation.
Sell Entry (Short Position)
Enter after a Lower High (LH) is confirmed in a downtrend.
Combine with resistance zones or moving averages for confirmation.
Exit Strategy
Exit long trades when price fails to make a HH and forms an LH instead.
Exit short trades when price fails to make a LL and forms an HL instead.
3. Spotting Breakouts & Order Blocks
The Fib Factor setting allows traders to filter false breakouts by confirming price movement beyond a retracement threshold.
Potential Order Blocks can be identified by looking at the last major swing point before a breakout.
Benefits of This Indicator for Traders
✅ Trend Identification: Helps traders quickly determine if the market is in an uptrend or downtrend.
✅ Clear Market Structure Labels: Easily visualizes Higher Highs, Higher Lows, Lower Highs, and Lower Lows.
✅ Avoids Noise: The ZigZag algorithm removes small fluctuations and focuses on significant market movements.
✅ Assists with Entry & Exit Decisions: Provides objective signals for trend continuation or reversals.
✅ Works in All Markets: Useful for stocks, forex, crypto, and futures trading.
Would you like me to add additional features like Order Blocks, Breakout Confirmation, or Alerts to improve this indicator? 🚀
PaddingThe Padding library is a comprehensive and flexible toolkit designed to extend time series data within TradingView, making it an indispensable resource for advanced signal processing tasks such as FFT, filtering, convolution, and wavelet analysis. At its core, the library addresses the common challenge of edge effects by "padding" your data—that is, by appending additional data points beyond the natural boundaries of your original dataset. This extension not only mitigates the distortions that can occur at the endpoints but also helps to maintain the integrity of various transformations and calculations performed on the series. The library accomplishes this while preserving the ordering of your data, ensuring that the most recent point always resides at index 0.
Central to the functionality of this library are two key enumerations: Direction and PaddingType. The Direction enum determines where the padding will be applied. You can choose to extend the data in the forward direction (ahead of the current values), in the backward direction (behind the current values), or in both directions simultaneously. The PaddingType enum defines the specific method used for extending the data. The library supports several methods—including symmetric, reflect, periodic, antisymmetric, antireflect, smooth, constant, and zero padding—each of which has been implemented to suit different analytical scenarios. For instance, symmetric padding mirrors the original data across its boundaries, while reflect padding continues the trend by reflecting around endpoint values. Periodic padding repeats the data, and antisymmetric padding mirrors the data with alternating signs to counterbalance it. The antireflect and smooth methods take into account the derivatives of your data, thereby extending the series in a way that preserves or smoothly continues these derivative values. Constant and zero padding simply extend the series using fixed endpoint values or zeros. Together, these enums allow you to fine-tune how your data is extended, ensuring that the padding method aligns with the specific requirements of your analysis.
The library is designed to work with both single variable inputs and array inputs. When using array-based methods—particularly with the antireflect and smooth padding types—please note that the implementation intentionally discards the last data point as a result of the delta computation process. This behavior is an important consideration when integrating the library into your TradingView studies, as it affects the overall data length of the padded series. Despite this, the library’s structure and documentation make it straightforward to incorporate into your existing scripts. You simply provide your data source, define the length of your data window, and select the desired padding type and direction, along with any optional parameters to control the extent of the padding (using both_period, forward_period, or backward_period).
In practical application, the Padding library enables you to extend historical data beyond its original range in a controlled and predictable manner. This is particularly useful when preparing datasets for further signal processing, as it helps to reduce artifacts that can otherwise compromise the results of your analytical routines. Whether you are an experienced Pine Script developer or a trader exploring advanced data analysis techniques, this library offers a robust solution that enhances the reliability and accuracy of your studies by ensuring your algorithms operate on a more complete and well-prepared dataset.
Library "Padding"
A comprehensive library for padding time series data with various methods. Supports both single variable and array inputs, with flexible padding directions and periods. Designed for signal processing applications including FFT, filtering, convolution, and wavelets. All methods maintain data ordering with most recent point at index 0.
symmetric(source, series_length, direction, both_period, forward_period, backward_period)
Applies symmetric padding by mirroring the input data across boundaries
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with symmetric padding applied
method symmetric(source, direction, both_period, forward_period, backward_period)
Applies symmetric padding to an array by mirroring the data across boundaries
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with symmetric padding applied
reflect(source, series_length, direction, both_period, forward_period, backward_period)
Applies reflect padding by continuing trends through reflection around endpoint values
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with reflect padding applied
method reflect(source, direction, both_period, forward_period, backward_period)
Applies reflect padding to an array by continuing trends through reflection around endpoint values
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with reflect padding applied
periodic(source, series_length, direction, both_period, forward_period, backward_period)
Applies periodic padding by repeating the input data
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with periodic padding applied
method periodic(source, direction, both_period, forward_period, backward_period)
Applies periodic padding to an array by repeating the data
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with periodic padding applied
antisymmetric(source, series_length, direction, both_period, forward_period, backward_period)
Applies antisymmetric padding by mirroring data and alternating signs
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with antisymmetric padding applied
method antisymmetric(source, direction, both_period, forward_period, backward_period)
Applies antisymmetric padding to an array by mirroring data and alternating signs
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with antisymmetric padding applied
antireflect(source, series_length, direction, both_period, forward_period, backward_period)
Applies antireflect padding by reflecting around endpoints while preserving derivatives
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with antireflect padding applied
method antireflect(source, direction, both_period, forward_period, backward_period)
Applies antireflect padding to an array by reflecting around endpoints while preserving derivatives
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with antireflect padding applied. Note: Last data point is lost when using array input
smooth(source, series_length, direction, both_period, forward_period, backward_period)
Applies smooth padding by extending with constant derivatives from endpoints
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with smooth padding applied
method smooth(source, direction, both_period, forward_period, backward_period)
Applies smooth padding to an array by extending with constant derivatives from endpoints
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with smooth padding applied. Note: Last data point is lost when using array input
constant(source, series_length, direction, both_period, forward_period, backward_period)
Applies constant padding by extending endpoint values
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with constant padding applied
method constant(source, direction, both_period, forward_period, backward_period)
Applies constant padding to an array by extending endpoint values
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with constant padding applied
zero(source, series_length, direction, both_period, forward_period, backward_period)
Applies zero padding by extending with zeros
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with zero padding applied
method zero(source, direction, both_period, forward_period, backward_period)
Applies zero padding to an array by extending with zeros
Namespace types: array
Parameters:
source (array) : Array of values to pad
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with zero padding applied
pad_data(source, series_length, padding_type, direction, both_period, forward_period, backward_period)
Generic padding function that applies specified padding type to input data
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
padding_type (series PaddingType) : Type of padding to apply (see PaddingType enum)
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with specified padding applied
method pad_data(source, padding_type, direction, both_period, forward_period, backward_period)
Generic padding function that applies specified padding type to array input
Namespace types: array
Parameters:
source (array) : Array of values to pad
padding_type (series PaddingType) : Type of padding to apply (see PaddingType enum)
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to array length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to array length if not specified
Returns: Array ordered with most recent point at index 0, containing original data with specified padding applied. Note: Last data point is lost when using antireflect or smooth padding types
make_padded_data(source, series_length, padding_type, direction, both_period, forward_period, backward_period)
Creates a window-based padded data series that updates with each new value. WARNING: Function must be called on every bar for consistency. Do not use in scopes where it may not execute on every bar.
Parameters:
source (float) : Input value to pad from
series_length (int) : Length of the data window
padding_type (series PaddingType) : Type of padding to apply (see PaddingType enum)
direction (series Direction) : Direction to apply padding
both_period (int) : Optional - periods to pad in both directions. Overrides forward_period and backward_period if specified
forward_period (int) : Optional - periods to pad forward. Defaults to series_length if not specified
backward_period (int) : Optional - periods to pad backward. Defaults to series_length if not specified
Returns: Array ordered with most recent point at index 0, containing windowed data with specified padding applied
Machine Learning: kNN Trend PredictorThe kNN Trend Predictor is a machine learning-based indicator that uses the k-Nearest Neighbors (kNN) algorithm for price prediction in trading. By analyzing historical price movements and computing Euclidean distances, the script identifies the closest past price patterns and forecasts potential trends. It provides color-coded trend signals, optional trade entry labels, and alerts for long and short signals.
AI Volume Breakout for scalpingPurpose of the Indicator
This script is designed for trading, specifically for scalping, which involves making numerous trades within a very short time frame to take advantage of small price movements. The indicator looks for volume breakouts, which are moments when trading volume significantly increases, potentially signaling the start of a new price movement.
Key Components:
Parameters:
Volume Threshold (volumeThreshold): Determines how much volume must increase from one bar to the next for it to be considered significant. Set at 4.0, meaning volume must quadruplicate for a breakout signal.
Price Change Threshold (priceChangeThreshold): Defines the minimum price change required for a breakout signal. Here, it's 1.5% of the bar's opening price.
SMA Length (smaLength): The period for the Simple Moving Average, which helps confirm the trend direction. Here, it's set to 20.
Cooldown Period (cooldownPeriod): Prevents signals from being too close together, set to 10 bars.
ATR Period (atrPeriod): The period for calculating Average True Range (ATR), used to measure market volatility.
Volatility Threshold (volatilityThreshold): If ATR divided by the close price exceeds this, the market is considered too volatile for trading according to this strategy.
Calculations:
SMA (Simple Moving Average): Used for trend confirmation. A bullish signal is more likely if the price is above this average.
ATR (Average True Range): Measures market volatility. Lower volatility (below the threshold) is preferred for this strategy.
Signal Generation:
The indicator checks if:
Volume has increased significantly (volumeDelta > 0 and volume / volume >= volumeThreshold).
There's enough price change (math.abs(priceDelta / open) >= priceChangeThreshold).
The market isn't too volatile (lowVolatility).
The trend supports the direction of the price change (trendUp for bullish, trendDown for bearish).
If all these conditions are met, it predicts:
1 (Bullish) if conditions suggest buying.
0 (Bearish) if conditions suggest selling.
Cooldown Mechanism:
After a signal, the script waits for a number of bars (cooldownPeriod) before considering another signal to avoid over-trading.
Visual Feedback:
Labels are placed on the chart:
Green label for bullish breakouts below the low price.
Red label for bearish breakouts above the high price.
How to Use:
Entry Points: Look for the labels on your chart to decide when to enter trades.
Risk Management: Since this is for scalping, ensure each trade has tight stop-losses to manage risk due to the quick, small movements.
Market Conditions: This strategy might work best in markets with consistent volume and price changes but not extreme volatility.
Caveats:
This isn't real AI; it's a heuristic based on volume and price. Actual AI would involve machine learning algorithms trained on historical data.
Always backtest any strategy, and consider how it behaves in different market conditions, not just the ones it was designed for.
Kalman FilterKalman Filter Indicator Description
This indicator applies a Kalman Filter to smooth the selected price series (default is the close) and help reveal the underlying trend by filtering out market noise. The filter is based on a recursive algorithm consisting of two main steps:
Prediction Step:
The filter predicts the next state using the last estimated value and increases the uncertainty (error covariance) by adding the process noise variance (Q). This step assumes that the price follows a random walk, where the last known estimate is the best guess for the next value.
Update Step:
The filter computes the Kalman Gain, which determines the weight given to the new measurement (price) versus the prediction. It then updates the state estimate by combining the prediction with the measurement error (using the measurement noise variance, R). The error covariance is also updated accordingly.
Key Features:
Customizable Input:
Source: Choose any price series (default is the closing price) for filtering.
Measurement Noise Variance (R): Controls the sensitivity to new measurements (default is 0.1). A higher R makes the filter less responsive.
Process Noise Variance (Q): Controls the assumed level of inherent price variability (default is 0.01). A higher Q allows the filter to adapt more quickly to changes.
Visual Trend Indication:
The filtered trend line is plotted directly on the chart:
When enabled, the line is colored green when trending upward and red when trending downward.
If color option is disabled, the line appears in blue.
This indicator is ideal for traders looking to smooth price data and identify trends more clearly by reducing the impact of short-term volatility.
Dynamic Median EMA | QuantEdgeBIntroducing Dynamic Median EMA by QuantEdgeB
Dynamic Median EMA | QuantEdgeB is an adaptive moving average indicator that blends median filtering, a volatility-based dynamic EMA, and customizable filtering techniques to create a responsive yet stable trend detection system. By incorporating Standard Deviation (SD) or ATR bands, this indicator dynamically adjusts to market conditions, making it a powerful tool for both traders and investors.
Key Features:
1. Dynamic EMA with Efficiency Ratio 🟣
- Adjusts smoothing based on market conditions, ensuring optimal responsiveness to price changes.
- Uses an efficiency ratio to dynamically modify the smoothing factor, making it highly adaptive.
2. Median-Based vs. Traditional EMA Source 📊
- Users can choose between a Median-based smoothing method (default: ✅ enabled ) or a traditional price source.
- The median filter provides better noise reduction in choppy markets.
3. Volatility-Based Filtering with Custom Bands 🎯
- Two filtering methods:
a. Standard Deviation (SD) Bands 📏 (default ✅) – Expands and contracts based on
historical deviation.
b. ATR Bands 📈 – Uses Average True Range (ATR) to adjust dynamic thresholds.
- The user can toggle between SD and ATR filtering, depending on market behavior.
4. Customizable Signal Generation ✅❌
- Long Signal: Triggered when the price closes above the selected upper filter band .
- Short Signal: Triggered when the price closes below the lower filter band .
- Dynamically adjusts based on the filtering method (SD or ATR).
5. Enhanced Visuals & Customization🎨
- Multiple color modes available (Default, Solar, Warm, Cool, Classic, X).
- Gradient filter bands provide a clearer view of volatility expansion/contraction.
- Candlestick coloring for instant visual confirmation of bullish/bearish conditions.
________
How It Works:
- Source Selection : Users can choose to use the median of price action or a traditional price feed as the base input for the Dynamic EMA.
- Dynamic EMA Calculation : The indicator applies a volatility-adjusted smoothing algorithm based on the efficiency ratio, ensuring that price trends are detected quickly in volatile markets and smoothly in stable ones.
- Filtering Mechanism : 🎯 Use can chose between two filtering options. Standard deviation to dynamically adjust based on market deviations or ATR Bands to determine trend strength through volatility expansions
- Signal Generation :
1. Bullish (🔵) is triggered when price crosses above the upper band.
2. Bearish (🔴) is generated when price drops below the lower band.
- The filtering method (SD/ATR) determines how the bands expand/contract, allowing for better trade adaptability.
________
Use Cases:
✅ For Trend Trading & Breakouts:
- Use SD bands (default setting) to capture trend breakouts and avoid premature entries.
- SD bands expand during high volatility, helping confirm strong breakouts, and contract during low volatility, helping confirm earlier trend exit.
- Consider increasing Dynamic EMA length (default 8) for longer-term trend detection.
✅ For Smoother Trend Filtering:
- Enable ATR bands for a more stable and gradual trend filter.
- ATR bands help reduce noise in choppy conditions while maintaining responsiveness to volatility.
- This setting is useful for traders looking to ride trends with fewer false exits.
✅ For Volatility Awareness:
- Watch the expansion and contraction of the filter bands:
- Wide SD bands = High volatility, breakout potential.
- Tight SD bands = Consolidation, potential trend exhaustion.
- ATR bands provide steadier adjustments, making them ideal for traders who prefer
smoother trend confirmation.
________
Customization Options:
- Source Selection 🟢 (Default: Median filtering enabled ✅)
- Dynamic EMA Length ⏳ (Default: 8 )
- Filtering Method🎯 (SD Bands ✅ by default, toggle ATR if needed)
- Standard Deviation Length 📏 (Default: 30 )
- ATR Length 📈 (Default: 14, ATR multiplier 1.3)
- SD Bands Weights:📌
- Default settings (Upper = 1.035, Lower = 1.02) are optimized for daily charts.
- For lower timeframes (e.g., hourly charts), consider using lighter weights such as Upper =
1.024 / Lower = 1.008 to better capture price movements.
- The optimal SD Band weights depend on the asset's volatility, so adjust accordingly to align
with market conditions.
- Multiple Color Themes 🎨 (Default, Solar, Warm, Cool, Classic, X)
________
Conclusion
The Dynamic Median EMA | QuantEdgeB is a powerful trend-following & filtering indicator designed to adapt dynamically to market conditions. By combining a volatility-responsive EMA, custom filter bands, and signal-based candlestick coloring, this tool provides clear and reliable trade signals across different market environments. 🚀📈
🔹 Disclaimer: Past performance is not indicative of future results. No trading indicator can guarantee success in financial markets.
🔹 Strategic Consideration: As always, backtesting and strategic adjustments are essential to fully optimize this indicator for real-world trading. Traders should consider risk management practices and adapt settings to their specific market conditions and trading style.
Moving Average Hamming-RKMoving Average Hamming
Description:
A Moving Average using a Hamming window is a technique used in technical analysis to smooth price data. The Hamming window applies weighted smoothing, reducing sharp variations and edge effects in the data. This helps in identifying trends more effectively while minimizing noise.
It can be used in combination with other technical indicators for better market analysis.
Technical Use:
The Hamming Moving Average reduces high-frequency noise, making trends clearer.
It applies different weights to data points, giving more importance to the center of the window while reducing the impact of abrupt changes.
This method is particularly useful in trend-following strategies as it minimizes false breakouts.
It can also be integrated into algorithmic trading systems for improved price fluctuation filtering.
When to Take a Position:
Buy Signal: When the price crosses above the Hamming Moving Average, indicating a potential uptrend.
Sell Signal: When the price crosses below the Hamming Moving Average, signaling a possible downtrend.
Confirmation: Combine with other indicators like RSI or MACD to confirm the trend before entering a trade.
Avoid Choppy Markets: The indicator works best in trending markets; avoid using it in sideways or ranging conditions.
This approach helps traders refine their analysis, making informed decisions while reducing market noise.
Fibonacci Retracement/ExtensionThis Pine Script code implements Fibonacci retracement and extension levels based on a ZigZag pattern. Below is a breakdown of its functionality:
Overview
The script calculates Fibonacci retracement and extension levels by identifying swing highs and swing lows using the ZigZag algorithm. It then plots these levels on the chart for trend analysis.
1. ZigZag Length Input
Defines the ZigZag length, which determines the sensitivity of peak and trough identification.
2. Fibonacci Retracement Calculation
Computes Fibonacci retracement levels using swing highs and lows.
Uses pre-defined Fibonacci ratios (0.236, 0.382, 0.5, 0.618, 0.786, 1.0).
Adjusts line positions dynamically as the trend evolves.
3. Fibonacci Extension Calculation
Identifies Fibonacci extension levels for future price targets.
Uses previous ZigZag patterns to estimate potential price movements.
4. Trend and Fibonacci Configuration
Allows the user to configure Fibonacci trend analysis.
TrendSw: Sets the trend direction (1 = Bullish, -1 = Bearish, 0 = None).
ZigZagleg: Determines the countback value for retracement calculations.
RSI Crossover dipali parikhThis script generates buy and sell signals based on the crossover of the Relative Strength Index (RSI) and the RSI-based Exponential Moving Average (EMA). It also includes an additional condition for both buy and sell signals that the RSI-based EMA must be either above or below 50.
Key Features:
Buy Signal: Triggered when:
The RSI crosses above the RSI-based EMA.
The RSI-based EMA is above 50.
A green "BUY" label will appear below the bar when the buy condition is met.
Sell Signal: Triggered when:
The RSI crosses below the RSI-based EMA.
The RSI-based EMA is below 50.
A red "SELL" label will appear above the bar when the sell condition is met.
Customizable Inputs:
RSI Length: Adjust the period for calculating the RSI (default is 14).
RSI-based EMA Length: Adjust the period for calculating the RSI-based EMA (default is 9).
RSI Threshold: Adjust the threshold (default is 50) for when the RSI-based EMA must be above or below.
Visuals:
The RSI is plotted as a blue line.
The RSI-based EMA is plotted as an orange line.
Buy and sell signals are indicated by green "BUY" and red "SELL" labels.
Alerts:
Alerts can be set for both buy and sell conditions to notify you when either condition is met.
How to Use:
Use this script to identify potential buy and sell opportunities based on the behavior of the RSI relative to its EMA.
The buy condition indicates when the RSI is strengthening above its EMA, and the sell condition signals when the RSI is weakening below its EMA.
Strategy Use:
Ideal for traders looking to leverage RSI momentum for entering and exiting positions.
The RSI-based EMA filter helps smooth out price fluctuations, focusing on stronger signals.
This script is designed for both discretionary and algorithmic traders, offering a simple yet effective method for spotting trend reversals and continuation opportunities using RSI.
Johnny's Volatility-Driven Trend Identifier w/ Reversal SignalsJohnny's Volatility-Driven Trend Identifier w/ Reversal Signals is designed to identify high-probability trend shifts and reversals by incorporating volatility, momentum, and impulse-based filtering. It is specifically built for traders who want to capture strong trend movements while minimizing false signals caused by low volatility noise.
By leveraging Rate of Change (ROC), Relative Strength Index (RSI), and Average True Range (ATR)-based volatility detection, the indicator dynamically adapts to market conditions. It highlights breakout trends, reversals, and early signs of momentum shifts using strategically placed labels and color-coded trend visualization.
Inspiration taken from Top G indicator .
What This Indicator Does
The Volatility-Driven Trend Identifier works by:
Measuring Market Extremes & Momentum:
Uses ROC normalization with standard deviation to identify impulse moves in price action.
Implements RSI filtering to determine overbought/oversold conditions that validate trend strength.
Utilizes ATR-based volatility tracking to ensure signals only appear when meaningful market movements are occurring.
Identifying Key Trend Events:
Power Peak (🔥): Marks a confirmed strong downtrend, ideal for shorting opportunities.
Surge (🚀): Indicates a confirmed strong uptrend, signaling a potential long entry.
Soft Surge (↗): Highlights a mild bullish reentry or early uptrend formation.
Soft Peak (↘): Shows a mild bearish reentry or early downtrend formation.
Providing Adaptive Filtering for Reliable Signals:
Filters out weak trends with a volatility check, ensuring signals appear only in strong market conditions.
Implements multi-level confirmation by combining trend strength metrics, preventing false breakouts.
Uses gradient-based visualization to color-code market sentiment for quick interpretation.
What This Indicator Signals
Breakouts & Impulse Moves: 🚀🔥
The Surge (🚀) and Power Peak (🔥) labels indicate confirmed momentum breakouts, where the trend has been validated by a combination of ROC impulse, RSI confirmation, and ATR volatility filtering.
These signals suggest that the market is entering a strong trend, and traders can align their entries accordingly.
Early Trend Formation & Reentries: ↗ ↘
The Soft Surge (↗) and Soft Peak (↘) labels indicate areas where a trend might be forming, but is not yet fully confirmed.
These signals help traders anticipate potential entries before the trend gains full strength.
Volatility-Adaptive Trend Filtering: 📊
Since the indicator only activates in volatile conditions, it avoids the pitfalls of low-range choppy markets where false signals frequently occur.
ATR-driven adaptive windowing allows the indicator to dynamically adjust its sensitivity based on real-time volatility conditions.
How to Use This Indicator
1. Identifying High-Probability Entries
Bullish Entries (Long Trades)
Look for 🚀 Surge signals in an uptrend.
Confirm with RSI (should be above 50 for momentum).
Ensure volatility is increasing to validate the breakout.
Use ↗ Soft Surge signals for early entries before the trend fully confirms.
Bearish Entries (Short Trades)
Look for 🔥 Power Peak signals in a downtrend.
RSI should be below 50, indicating downward momentum.
Volatility should be rising, ensuring market momentum is strong.
Use ↘ Soft Peak signals for early entries before a full bearish confirmation.
2. Avoiding False Signals
Ignore signals when the market is ranging (low ATR).
Check RSI and ROC alignment to ensure trend confirmation.
Use additional confluences (e.g., price action, support/resistance levels, moving averages) for enhanced accuracy.
3. Trend Confirmation & Filtering
The stronger the trend, the higher the likelihood that Surge (🚀) and Power Peak (🔥) signals will continue in their direction.
Soft Surge (↗) and Soft Peak (↘) act as early warning signals before major breakouts occur.
What Makes This a Machine Learning-Inspired Moving Average?
While this indicator is not a direct implementation of machine learning (as Pine Script lacks AI/ML capabilities), it mimics machine learning principles by adapting dynamically to market conditions using the following techniques:
Adaptive Trend Selection:
It does not rely on fixed moving averages but instead adapts dynamically based on volatility expansion and momentum detection.
ATR-based filtering adjusts the indicator’s sensitivity to real-time conditions.
Multi-Factor Confirmation (Feature Engineering Equivalent in ML):
Combines ROC, RSI, and ATR in a structured way, similar to how ML models use multiple inputs to filter and classify data.
Implements conditional trend recognition, ensuring that only valid signals pass through the filter.
Noise Reduction with Data Smoothing:
The algorithm avoids false signals by incorporating trend intensity thresholds, much like how ML models remove outliers to refine predictions.
Adaptive filtering ensures that low-volatility environments do not produce misleading signals.
Why Use This Indicator?
✔ Reduces False Signals: Multi-factor validation ensures only high-confidence signals are triggered.
✔ Works in All Market Conditions: Volatility-adaptive nature allows the indicator to perform well in both trending and ranging markets.
✔ Great for Swing & Intraday Trading: It helps spot momentum shifts early and allows traders to catch major market moves before they fully develop.
✔ Visually Intuitive: Color-coded trends and clear signal markers make it easy to interpret.
VWAP Suite by Augur - Multi PeriodOverview
The Multi-Timeframe VWAP Suite revolutionizes price analysis by combining institutional-grade volume-weighted pricing with multi-period deviation analytics. This professional toolkit simultaneously tracks VWAP across 5 time horizons (Daily to Yearly) with smart deviation bands, offering traders unparalleled insight into market structure and volatility dynamics.
Key Features
Multi-Timeframe VWAP Matrix
Simultaneous Daily/Weekly/Monthly/Quarterly/Yearly VWAP tracking
Institutional-level volume-weighted calculations
Independent timeframe toggles for focused analysis
Smart Deviation Architecture
Dual-layer standard deviation bands (1σ & 2σ)
Separate colors for upper/lower deviation zones
Adaptive 95% transparency fills for layered visualization
Professional Visual Design
Strategic color coding per timeframe (FIXED palette)
Dark Blue/Yellow/Purple/Pink/Red VWAP hierarchy
Orange-Green-Red-Blue deviation band system
Advanced Calculation Engine
HLC3 price source integration
Cumulative volume-weighting algorithm
Real-time standard deviation updates
Automatic Fibonacci retracement based on the highest high and loThe chart is fractal, meaning that what happens can always be broken down into smaller portions.
This is often seen in various AR (Algorithmic Rules) concepts, such as breakers, order blocks, etc., where the price reacts.
I’ve visualized this behavior with this indicator.
This indicator takes the highest high and the lowest low from the past 5 weeks, excluding the current week.
The lowest low will represent 0%, and the highest high will represent 100% (green lines).
It then divides this range into 25%, 50%, 75%, and 100% levels (red and blue lines).
The indicator works on all charts and all timeframes, automatically adjusting when you switch charts or timeframes. No manual input is required.
Additionally, above 100%, it will create levels at 125%, 150%, 175%, and 200%, while below 0%, it will create levels at -25%, -50%, -75%, and -100%.
Your chart will now be divided into these 25% levels, allowing you to observe how the price either respects or breaks through them.
Again, this isn’t something “groundbreaking,” but simply a visual aid to identify levels where the price finds support/resistance or breaks through.
It helps me gain a broader perspective and determine whether my trade is moving in the right direction or if I should remain cautious.
QT RSI [ W.ARITAS ]The QT RSI is an innovative technical analysis indicator designed to enhance precision in market trend identification and decision-making. Developed using advanced concepts in quantum mechanics, machine learning (LSTM), and signal processing, this indicator provides actionable insights for traders across multiple asset classes, including stocks, crypto, and forex.
Key Features:
Dynamic Color Gradient: Visualizes market conditions for intuitive interpretation:
Green: Strong buy signal indicating bullish momentum.
Blue: Neutral or observation zone, suggesting caution or lack of a clear trend.
Red: Strong sell signal indicating bearish momentum.
Quantum-Enhanced RSI: Integrates adaptive energy levels, dynamic smoothing, and quantum oscillators for precise trend detection.
Hybrid Machine Learning Model: Combines LSTM neural networks and wavelet transforms for accurate prediction and signal refinement.
Customizable Settings: Includes advanced parameters for dynamic thresholds, sensitivity adjustment, and noise reduction using Kalman and Jurik filters.
How to Use:
Interpret the Color Gradient:
Green Zone: Indicates bullish conditions and potential buy opportunities. Look for upward momentum in the RSI plot.
Blue Zone: Represents a neutral or consolidation phase. Monitor the market for trend confirmation.
Red Zone: Indicates bearish conditions and potential sell opportunities. Look for downward momentum in the RSI plot.
Follow Overbought/Oversold Boundaries:
Use the upper and lower RSI boundaries to identify overbought and oversold conditions.
Leverage Advanced Filtering:
The smoothed signals and quantum oscillator provide a robust framework for filtering false signals, making it suitable for volatile markets.
Application: Ideal for traders and analysts seeking high-precision tools for:
Identifying entry and exit points.
Detecting market reversals and momentum shifts.
Enhancing algorithmic trading strategies with cutting-edge analytics.
Next level scolilay swing timerThe "Next Level Scolilay Swing Timer" is an advanced TradingView indicator designed to help traders navigate trends, reversals, and swing opportunities with ease. It's built around several key concepts like ATR filtering, ZigZag analysis, and momentum-based trend detection, making it a powerful tool for identifying market direction and key trading opportunities.
One of the standout features is its ability to filter candles using the Average True Range (ATR). This ensures that the indicator focuses on meaningful price movements rather than noise. You can tweak the ATR settings to suit your trading style, deciding how much historical data to consider or even turning the filter off completely if you prefer.
The script also integrates a ZigZag algorithm to detect pivot points, which it uses to evaluate swings in price action. This feature comes with customizable settings for depth and sensitivity, allowing you to adjust how the script reacts to price fluctuations. By analyzing these swings, the indicator identifies key highs and lows, which play a big role in determining whether the market is trending up or down.
When it comes to trends, the script is smart and flexible. It doesn't just look for higher highs or lower lows; it also considers momentum and retracement levels to decide if a trend is gaining strength or reversing. For example, it uses one-third retracement logic to spot sudden shifts in market direction, which can be critical for catching reversals early. You can also enable features like fast trend switching, which reacts to single-candle events that might signal a trend break.
Visualization is another area where this script shines. It marks uptrends and downtrends directly on the chart with clear labels, so you can instantly see when a new trend starts. Pink arrows appear above candles to signal potential downtrends, while yellow arrows below candles indicate possible uptrends. These signals combine multiple layers of analysis, like swing validation, ATR filtering, and trend confirmation, to give you reliable insights.
What makes the Swing Timer especially useful is its flexibility. Whether you’re a trend trader looking to ride major market moves, a swing trader focused on pivot points, or someone hunting for reversals, you can customize the settings to fit your needs. You can adjust everything from ZigZag and ATR parameters to how trends are labeled and filtered. The result is a tool that adapts to your trading style while still providing clear and actionable signals.
In short, this script brings together a range of advanced trading concepts into one user-friendly package. It’s perfect for traders who want to see market trends clearly, identify opportunities with confidence, and stay ahead of sudden reversals—all without getting bogged down in unnecessary complexity.
Fibonacci 3-D🟩 The Fibonacci 3-D indicator is a visual tool that introduces a three-dimensional approach to Fibonacci projections, leveraging market geometry. Unlike traditional Fibonacci tools that rely on two points and project horizontal levels, this indicator leverages slopes derived from three points to introduce a dynamic element into the calculations. The Fibonacci 3-D indicator uses three user-defined points to form a triangular structure, enabling multi-dimensional projections based on the relationships between the triangle’s sides.
This triangular framework forms the foundation for the indicator’s calculations, with each slope (⌳AB, ⌳AC, and ⌳BC) representing the rate of price change between its respective points. By incorporating these slopes into Fibonacci projections, the indicator provides an alternate approach to identifying potential support and resistance levels. The Fibonacci 3-D expands on traditional methods by integrating both historical price trends and recent momentum, offering deeper insights into market dynamics and aligning with broader market geometry.
The indicator operates across three modes, each defined by the triangular framework formed by three user-selected points (A, B, and C):
1-Dimensional (1-D): Fibonacci levels are based on a single side of the triangle, such as AB, AC, or BC. The slope of the selected side determines the angle of the projection, allowing users to analyze linear trends or directional price movements.
2-Dimensional (2-D): Combines two slopes derived from the sides of the triangle, such as AB and BC or AC and BC. This mode adds depth to the projections, accounting for both historical price swings and recent market momentum.
3-Dimensional (3-D): Integrates all three slopes into a unified projection. This mode captures the full geometric relationship between the points, revealing a comprehensive view of geometric market structure.
🌀 THEORY & CONCEPT 🌀
The Fibonacci 3-D indicator builds on the foundational principles of traditional Fibonacci analysis while expanding its scope to capture more intricate market structures. At its core, the indicator operates based on three user-selected points (A, B, and C), forming the vertices of a triangle that provides the structural basis for all calculations. This triangle determines the slopes, projections, and Fibonacci levels, aligning with the unique geometric relationships between the chosen points. By introducing multiple dimensions and leveraging this triangular framework, the indicator enables a deeper examination of price movements.
1️⃣ First Dimension (1-D)
In technical analysis, traditional Fibonacci retracement and extension tools operate as one-dimensional instruments. They rely on two price points, often a swing high and a swing low, to calculate and project horizontal levels at predefined Fibonacci ratios. These levels identify potential support and resistance zones based solely on the price difference between the selected points.
A one-dimensional Fibonacci showing levels derived from two price points (B and C).
The Fibonacci 3-D indicator extends this one-dimensional concept by introducing Ascending and Descending projection options. These options calculate the levels to align with the directional movement of price, creating sloped projections instead of purely horizontal levels.
1-D mode with an ascending projection along the ⌳BC slope aligned to the market's slope. Potential support is observed at 0.236 and 0.382, while resistance appears at 1.0 and 0.5.
2️⃣ Second Dimension (2-D)
The second dimension incorporates a second side of the triangle, introducing relationships between two slopes (e.g., ⌳AB and ⌳BC) to form a more dynamic three-point structure (A, B, and C) on the chart. This structure enables the indicator to move beyond the single-axis (price) calculations of traditional Fibonacci tools. The sides of the triangle (AB, AC, BC) represent slopes calculated as the rate of price change over time, capturing distinct components of market movement, such as trend direction and momentum.
2-D mode of the Fibonacci 3-D indicator using the ⌳AC slope with a descending projection. The Fibonacci projections align closely with observed market behavior, providing support at 0.236 and resistance at 0.618. Unlike traditional zigzag setups, this configuration uses two swing highs (A and B) and a swing low (C). The alignment along the descending slope highlights the geometric relationships between selected points in identifying potential support and resistance levels.
3️⃣ Third Dimension (3-D)
The third dimension expands the analysis by integrating all three slopes into a unified calculation, encompassing the entire triangle structure formed by points A, B, and C. Unlike the second dimension, which analyzes pairwise slope relationships, the 3-D mode reflects the combined geometry of the triangle. Each slope contributes a distinct perspective: AB and AC provide historical context, while BC emphasizes the most recent price movement and is given greater weight in the calculations to ensure projections remain responsive to current dynamics.
Using this integrated framework, the 3-D mode dynamically adjusts Fibonacci projections to balance long-term patterns and short-term momentum. The projections extend outward in alignment with the triangle’s geometry, offering a comprehensive framework for identifying potential support and resistance zones and capturing market structures beyond the scope of simpler 1-D or 2-D modes.
Three-dimensional Fibonacci projection using the ⌳AC slope, aligning closely with the market's directional movement. The projection highlights key levels: resistance at 0.0 and 0.618, and support at 1.0, 0.786, and 0.382.
By leveraging all three slopes simultaneously, the 3-D mode introduces a level of complexity particularly suited for volatile or non-linear markets. The weighted slope calculations ensure no single price movement dominates the analysis, allowing the projections to adapt dynamically to the broader market structure while remaining sensitive to recent momentum.
Three-dimensional ascending projection. In 3D mode, the indicator integrates all three slopes to calculate the angle of projection for the Fibonacci levels. The resulting projections adapt dynamically to the overall geometry of the ABC structure, aligning with the market’s current direction.
🔂 Interactions: Dimensions. Slope Source, Projections, and Orientation
The Dimensions , Projections , and Orientation settings work together to define Fibonacci projections within the triangular framework. Each setting plays a specific role in the geometric analysis of price movements.
♾️ Dimension determines which of the three modes (1-D, 2-D, or 3-D) is used for Fibonacci projections. In 1-D mode, the projections are based on a single side of the triangle, such as AB, AC, or BC. In 2-D mode, two sides are combined, producing levels based on their geometric relationship. The 3-D mode integrates all three sides of the triangle, calculating projections using weighted averages that emphasize the BC side for its relevance to recent price movement while maintaining historical context from the AB and AC sides.
A one-dimensional Fibonacci projection using the ⌳AB slope with a neutral projection. Important levels of interaction are highlighted: repeated resistance at Level 1.0 and repeated support at Levels 0.5 and 0.618. The projection aligns horizontally, reflecting the relationship between points A, B, and C while identifying recurring zones of market structure.
🧮 Slope Source determines which side of the triangle (AB, AC, or BC) serves as the foundation for Fibonacci projections. This selection directly impacts the calculations by specifying the slope that anchors the geometric relationships within the chosen Dimension mode (1-D, 2-D, or 3-D).
In 1-D mode, the selected Source defines the single side used for the projection. In 2-D and 3-D modes, the Source works in conjunction with other settings to refine projections by integrating the selected slope into the multi-dimensional framework.
One-dimensional Fibonacci projection using the ⌳AC Slope Source and Ascending projection. The projection continues on the AC slope line.
🎯 Projection controls the direction and alignment of Fibonacci levels. Neutral projections produce horizontal levels, similar to traditional Fibonacci tools. Ascending and Descending projections adjust the levels along the calculated slope to reflect market trends. These options allow the indicator’s outputs to align with different market behaviors.
An ascending projection along the ⌳BC slope aligns with resistance levels at 1.0, 0.618, and 0.236. The geometric relationship between points A, B, and C illustrates how the projection adapts to market structure, identifying resistance zones that may not be captured by traditional Fibonacci tools.
🧭 Orientation modifies the alignment of the setup area defined by points A, B, and C, which influences Fibonacci projections in 2-D and 3-D modes. In Default mode, the triangle aligns naturally based on the relative positions of points B and C. In Inverted mode, the geometric orientation of the setup area is reversed, altering the slope calculations while preserving the projection direction specified in the Projection setting. In 1-D mode, Orientation has no effect since only one side is used for the projection.
Adjusting the Orientation setting provides alternative views of how Fibonacci levels align with the market's structure. By recalibrating the triangle’s setup, the inverted orientation can highlight different relationships between the sides, providing additional perspectives on support and resistance zones.
2-D inverted. The ⌳AC slope defines the projection, and the inverted orientation adjusts the alignment of the setup area, altering the angles used in level calculations. Key levels are highlighted: resistance at 0.786, strong support at 0.5 and 0.236, and a resistance-turned-support interaction at 0.618.
🛠️ CONFIGURATION AND SETTINGS 🛠️
The Fibonacci 3-D indicator includes configurable settings to adjust its functionality and visual representation. These options include customization of the dimensions (1-D, 2-D, or 3-D), slope calculations, orientations, projections, Fibonacci levels, and visual elements.
When adding the indicator to a new chart, select three reference points (A, B, and C). These are usually set to recent swing points. All three points can be easily changed at any time by clicking on the reference point and dragging it to a new location.
By default, all settings are set to Auto . The indicator uses an internal algorithm to estimate the projections based on the orientation and relative positions of the reference points. However, all values can be overridden to reflect the user's interpretation of the current market geometry.
⚙️ Core Settings
Dimensions : Defines how many sides of the triangle formed by points A, B, and C are incorporated into the calculations for Fibonacci projections. This setting determines the level of complexity and detail in the analysis. 1-D : Projects levels along the angle of a single user-selected side of the triangle.
2-D : Projects levels based on a composite slope derived from the angles of two sides of the triangle.
3-D : Projects levels based on a composite slope derived from all three sides of the triangle (A-B, A-C, and B-C), providing a multi-dimensional projection that adapts to both historical and recent market movements.
Slope Source : Determines which side of the triangle is used as the basis for slope calculations. A–B: The slope between points A and B. In 1-D mode, this determines the projection. In 2-D and 3-D modes, it contributes to the composite slope calculation.
A–C: The slope between points A and C. In 1-D mode, this determines the projection. In 2-D and 3-D modes, it contributes to the composite slope calculation.
B--C: The slope between points B and C. In 1-D mode, this determines the projection. In 2-D and 3-D modes, it contributes to the composite slope calculation.
Orientation : Defines the triangle's orientation formed by points A, B, and C, influencing slope calculations. Auto : Automatically determines orientation based on the relative positions of points B and C. If point C is to the right of point B, the orientation is "normal." If point C is to the left, the orientation is inverted.
Inverted : Reverses the orientation set in "Auto" mode. This flips the triangle, reversing slope calculations ⌳AB becomes ⌳BA).
Projection : Determines the direction of Fibonacci projections: Auto : Automatically determines projection direction based on the triangle formed by A, B, and C.
Ascending : Projects the levels upward.
Neutral : Projects the levels horizontally, similar to traditional Fibonacci retracements.
Descending : Projects the levels downward.
⚙️ Fibonacci Level Settings Show or hide specific levels.
Level Value : Adjust Fibonacci ratios for each level. The 0.0 and 1.0 levels are fixed.
Color : Set level colors.
⚙️ Visibility Settings Show Setup : Toggle the display of the setup area, which includes the projected lines used in calculations.
Show Triangle : Toggle the display of the triangle formed by points A, B, and C.
Triangle Color : Set triangle line colors.
Show Point Labels : Toggle the display of labels for points A, B, and C.
Show Left/Right Labels : Toggle price labels on the left and right sides of the chart.
Fill % : Adjust the fill intensity between Fibonacci levels (0% for no fill, 100% for full fill).
Info : Set the location or hide the Slope Source and Dimension. If Orientation is Inverted , the Slope Source will display with an asterisk (*).
⚙️ Time-Price Points : Set the time and price for points A, B, and C, which define the Fibonacci projections.
A, B, and C Points : User-defined time and price coordinates that form the foundation of the indicator's calculations.
Interactive Adjustments : Changes made to points on the chart automatically synchronize with the settings panel and update projections in real time.
Notes
Unlike traditional Fibonacci tools that include extensions beyond 1.0 (e.g., 1.618 or 2.618), the Fibonacci 3-D indicator restricts Fibonacci levels to the range between 0.0 and 1.0. This is because the projections are tied directly to the proportional relationships along the sides of the triangle formed by points A, B, and C, rather than extending beyond its defined structure.
The indicator's calculations dynamically sort the user-defined A, B, and C points by time, ensuring point A is always the earliest, point C the latest, and point B the middle. This automatic sorting allows users to freely adjust the points directly on the chart without concern for their sequence, maintaining consistency in the triangular structure.
🖼️ ADDITIONAL CHART EXAMPLES 🖼️
Three-dimensional ⌳AC slope is used with an ascending projection, even as the broader market trend moves downward. Despite the apparent contradiction, the projected Fibonacci levels align closely with price action, identifying zones of support and resistance. These levels highlight smaller countertrend movements, such as pullbacks to 0.382 and 0.236, followed by continuations at resistance levels like 0.618 and 0.786.
In 2-D mode, an ascending projection based on the BC slope highlights the market's geometric structure. A setup triangle, defined by a swing high (A), a swing low (B), and another swing high (C), reveals Fibonacci projections aligning with support at 0.236, 0.382, and 0.5, and resistance at 0.618, 0.786, and 1.0, as shown by the green and red arrows. This demonstrates the ability to uncover dynamic support and resistance levels not calculated in traditional Fibonacci tools.
In 2-D mode with an ascending projection from the ⌳AB slope, price movement is contained within the 0.5 and 0.786 levels. The 0.5 level serves as support, while the 0.786 level acts as resistance, with price action consistently interacting with these boundaries.
An AC (2-D) ascending projection is derived from two swing highs (A and B) and a swing low (C), reflecting a non-linear market structure that deviates from traditional zigzag patterns. The ascending projection aligns closely with the market's upward trajectory, forming a channel between the 0.0 and 0.5 Fibonacci levels. Note how price action interacts with the projected levels, showing support at 0.236 and 0.382, with the 0.5 level acting as a mid-channel equilibrium.
Two-dimensional ascending Fibonacci projection using the ⌳AC slope. Arrows highlight resistance at 0.786 and support at 0.0 and 0.236. The projection follows the ⌳AC slope, reflecting the geometric relationship between points A, B, and C to identify these levels.
Three-dimensional Fibonacci projection using the ⌳AC slope, aligned with the actual market's directional trend. By removing additional Fibonacci levels, the image emphasizes key areas: resistance at Level 0.0 and support at Levels 1.0 and 0.5. The projection dynamically follows the ⌳AC slope, adapting to the market's structure as defined by points A, B, and C.
A three-dimensional configuration uses the ⌳AB slope as the baseline for projections while incorporating the geometric influence of point C. Only the 0.0 and 0.618 levels are enabled, emphasizing the relationship between support at 0.0 and resistance at 0.618. Unlike traditional Fibonacci tools, which operate in a single plane, this setup reveals levels that rely on the triangular relationship between points A, B, and C. The third dimension allows for projections that align more closely with the market’s structure and reflect its multi-dimensional geometry.
The Fibonacci 3-D indicator can adapt to non-traditional point selection. Point A serves as a swing low, while points B and C are swing highs, forming an unconventional configuration. ⌳The BC slope is used in 2-D mode with an inverted orientation, flipping the projection direction and revealing resistance at Level 0.786 and support at Levels 0.618 and 0.5.
⚠️ DISCLAIMER ⚠️
The Fibonacci 3-D indicator is a visual analysis tool designed to illustrate Fibonacci relationships. While the indicator employs precise mathematical and geometric formulas, no guarantee is made that its calculations will align with other Fibonacci tools or proprietary methods. Like all technical and visual indicators, the Fibonacci projections generated by this tool may appear to visually align with key price zones in hindsight. However, these projections are not intended as standalone signals for trading decisions. This indicator is intended for educational and analytical purposes, complementing other tools and methods of market analysis.
🧠 BEYOND THE CODE 🧠
The Fibonacci 3-D indicator, like other xxattaxx indicators , is designed to encourage both education and community engagement. Your feedback and insights are invaluable to refining and enhancing the Fibonacci 3-D indicator. We look forward to the creative applications, adaptations, and observations this tool inspires within the trading community.