Fuzzy SMA Trend Analyzer (experimental)[FibonacciFlux]Fuzzy SMA Trend Analyzer (Normalized): Advanced Market Trend Detection Using Fuzzy Logic Theory
Elevate your technical analysis with institutional-grade fuzzy logic implementation
Research Genesis & Conceptual Framework
This indicator represents the culmination of extensive research into applying fuzzy logic theory to financial markets. While traditional technical indicators often produce binary outcomes, market conditions exist on a continuous spectrum. The Fuzzy SMA Trend Analyzer addresses this limitation by implementing a sophisticated fuzzy logic system that captures the nuanced, multi-dimensional nature of market trends.
Core Fuzzy Logic Principles
At the heart of this indicator lies fuzzy logic theory - a mathematical framework designed to handle imprecision and uncertainty:
// Improved fuzzy_triangle function with guard clauses for NA and invalid parameters.
fuzzy_triangle(val, left, center, right) =>
if na(val) or na(left) or na(center) or na(right) or left > center or center > right // Guard checks
0.0
else if left == center and center == right // Crisp set (single point)
val == center ? 1.0 : 0.0
else if left == center // Left-shoulder shape (ramp down from 1 at center to 0 at right)
val >= right ? 0.0 : val <= center ? 1.0 : (right - val) / (right - center)
else if center == right // Right-shoulder shape (ramp up from 0 at left to 1 at center)
val <= left ? 0.0 : val >= center ? 1.0 : (val - left) / (center - left)
else // Standard triangle
math.max(0.0, math.min((val - left) / (center - left), (right - val) / (right - center)))
This implementation of triangular membership functions enables the indicator to transform crisp numerical values into degrees of membership in linguistic variables like "Large Positive" or "Small Negative," creating a more nuanced representation of market conditions.
Dynamic Percentile Normalization
A critical innovation in this indicator is the implementation of percentile-based normalization for SMA deviation:
// ----- Deviation Scale Estimation using Percentile -----
// Calculate the percentile rank of the *absolute* deviation over the lookback period.
// This gives an estimate of the 'typical maximum' deviation magnitude recently.
diff_abs_percentile = ta.percentile_linear_interpolation(math.abs(raw_diff), normLookback, percRank) + 1e-10
// ----- Normalize the Raw Deviation -----
// Divide the raw deviation by the estimated 'typical max' magnitude.
normalized_diff = raw_diff / diff_abs_percentile
// ----- Clamp the Normalized Deviation -----
normalized_diff_clamped = math.max(-3.0, math.min(3.0, normalized_diff))
This percentile normalization approach creates a self-adapting system that automatically calibrates to different assets and market regimes. Rather than using fixed thresholds, the indicator dynamically adjusts based on recent volatility patterns, significantly enhancing signal quality across diverse market environments.
Multi-Factor Fuzzy Rule System
The indicator implements a comprehensive fuzzy rule system that evaluates multiple technical factors:
SMA Deviation (Normalized): Measures price displacement from the Simple Moving Average
Rate of Change (ROC): Captures price momentum over a specified period
Relative Strength Index (RSI): Assesses overbought/oversold conditions
These factors are processed through a sophisticated fuzzy inference system with linguistic variables:
// ----- 3.1 Fuzzy Sets for Normalized Deviation -----
diffN_LP := fuzzy_triangle(normalized_diff_clamped, 0.7, 1.5, 3.0) // Large Positive (around/above percentile)
diffN_SP := fuzzy_triangle(normalized_diff_clamped, 0.1, 0.5, 0.9) // Small Positive
diffN_NZ := fuzzy_triangle(normalized_diff_clamped, -0.2, 0.0, 0.2) // Near Zero
diffN_SN := fuzzy_triangle(normalized_diff_clamped, -0.9, -0.5, -0.1) // Small Negative
diffN_LN := fuzzy_triangle(normalized_diff_clamped, -3.0, -1.5, -0.7) // Large Negative (around/below percentile)
// ----- 3.2 Fuzzy Sets for ROC -----
roc_HN := fuzzy_triangle(roc_val, -8.0, -5.0, -2.0)
roc_WN := fuzzy_triangle(roc_val, -3.0, -1.0, -0.1)
roc_NZ := fuzzy_triangle(roc_val, -0.3, 0.0, 0.3)
roc_WP := fuzzy_triangle(roc_val, 0.1, 1.0, 3.0)
roc_HP := fuzzy_triangle(roc_val, 2.0, 5.0, 8.0)
// ----- 3.3 Fuzzy Sets for RSI -----
rsi_L := fuzzy_triangle(rsi_val, 0.0, 25.0, 40.0)
rsi_M := fuzzy_triangle(rsi_val, 35.0, 50.0, 65.0)
rsi_H := fuzzy_triangle(rsi_val, 60.0, 75.0, 100.0)
Advanced Fuzzy Inference Rules
The indicator employs a comprehensive set of fuzzy rules that encode expert knowledge about market behavior:
// --- Fuzzy Rules using Normalized Deviation (diffN_*) ---
cond1 = math.min(diffN_LP, roc_HP, math.max(rsi_M, rsi_H)) // Strong Bullish: Large pos dev, strong pos roc, rsi ok
strength_SB := math.max(strength_SB, cond1)
cond2 = math.min(diffN_SP, roc_WP, rsi_M) // Weak Bullish: Small pos dev, weak pos roc, rsi mid
strength_WB := math.max(strength_WB, cond2)
cond3 = math.min(diffN_SP, roc_NZ, rsi_H) // Weakening Bullish: Small pos dev, flat roc, rsi high
strength_N := math.max(strength_N, cond3 * 0.6) // More neutral
strength_WB := math.max(strength_WB, cond3 * 0.2) // Less weak bullish
This rule system evaluates multiple conditions simultaneously, weighting them by their degree of membership to produce a comprehensive trend assessment. The rules are designed to identify various market conditions including strong trends, weakening trends, potential reversals, and neutral consolidations.
Defuzzification Process
The final step transforms the fuzzy result back into a crisp numerical value representing the overall trend strength:
// --- Step 6: Defuzzification ---
denominator = strength_SB + strength_WB + strength_N + strength_WBe + strength_SBe
if denominator > 1e-10 // Use small epsilon instead of != 0.0 for float comparison
fuzzyTrendScore := (strength_SB * STRONG_BULL +
strength_WB * WEAK_BULL +
strength_N * NEUTRAL +
strength_WBe * WEAK_BEAR +
strength_SBe * STRONG_BEAR) / denominator
The resulting FuzzyTrendScore ranges from -1 (strong bearish) to +1 (strong bullish), providing a smooth, continuous evaluation of market conditions that avoids the abrupt signal changes common in traditional indicators.
Advanced Visualization with Rainbow Gradient
The indicator incorporates sophisticated visualization using a rainbow gradient coloring system:
// Normalize score to for gradient function
normalizedScore = na(fuzzyTrendScore) ? 0.5 : math.max(0.0, math.min(1.0, (fuzzyTrendScore + 1) / 2))
// Get the color based on gradient setting and normalized score
final_color = get_gradient(normalizedScore, gradient_type)
This color-coding system provides intuitive visual feedback, with color intensity reflecting trend strength and direction. The gradient can be customized between Red-to-Green or Red-to-Blue configurations based on user preference.
Practical Applications
The Fuzzy SMA Trend Analyzer excels in several key applications:
Trend Identification: Precisely identifies market trend direction and strength with nuanced gradation
Market Regime Detection: Distinguishes between trending markets and consolidation phases
Divergence Analysis: Highlights potential reversals when price action and fuzzy trend score diverge
Filter for Trading Systems: Provides high-quality trend filtering for other trading strategies
Risk Management: Offers early warning of potential trend weakening or reversal
Parameter Customization
The indicator offers extensive customization options:
SMA Length: Adjusts the baseline moving average period
ROC Length: Controls momentum sensitivity
RSI Length: Configures overbought/oversold sensitivity
Normalization Lookback: Determines the adaptive calculation window for percentile normalization
Percentile Rank: Sets the statistical threshold for deviation normalization
Gradient Type: Selects the preferred color scheme for visualization
These parameters enable fine-tuning to specific market conditions, trading styles, and timeframes.
Acknowledgments
The rainbow gradient visualization component draws inspiration from LuxAlgo's "Rainbow Adaptive RSI" (used under CC BY-NC-SA 4.0 license). This implementation of fuzzy logic in technical analysis builds upon Fermi estimation principles to overcome the inherent limitations of crisp binary indicators.
This indicator is shared under Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) license.
Remember that past performance does not guarantee future results. Always conduct thorough testing before implementing any technical indicator in live trading.
Cycles
Super Cycle Low FinderHow the Indicator Works
1. Inputs
Users can adjust the cycle lengths:
Daily Cycle: Default is 40 days (within 36-44 days).
Weekly Cycle: Default is 26 weeks (182 days, within 22-31 weeks).
Yearly Cycle: Default is 4 years (1460 days).
2. Cycle Low Detection
Function: detect_cycle_low finds the lowest low over the specified period and confirms it with a bullish candle (close > open).
Timeframes: Daily lows are calculated directly; weekly and yearly lows use request.security to fetch data from higher timeframes.
3. Half Cycle Lows
Detected over half the cycle length, plotted to show mid-cycle strength or weakness.
4. Cycle Translation
Logic: Compares the position of the highest high to the cycle’s midpoint.
Output: "R" for right translated (bullish), "L" for left translated (bearish), displayed above bars.
5. Cycle Failure
Flags when a new low falls below the previous cycle low, indicating a breakdown.
6. Visualization
Cycle Lows: Diamonds below bars (yellow for daily, green for weekly, blue for yearly).
Half Cycle Lows: Circles below bars (orange, lime, aqua).
Translations: "R" or "L" above bars in distinct colors.
Failures: Downward triangles below bars (red, orange, purple).
TimeMapTimeMap is a visual price-reference indicator designed to help traders rapidly visualize how current price levels relate to significant historical closing prices. It overlays your chart with reference lines representing past weekly, monthly, quarterly (3-month), semi-annual (6-month), and annual closing prices. By clearly plotting these historical price references, TimeMap helps traders quickly gauge price position relative to historical market structure, aiding in the identification of trends, support/resistance levels, and potential reversals.
How it Works:
The indicator calculates the precise number of historical bars corresponding to weekly, monthly, quarterly, semi-annual, and annual intervals, dynamically adjusting according to your chart’s timeframe (intraday, daily, weekly, monthly) and chosen market type (Stocks US, Crypto, Forex, or Futures). Historical closing prices from these periods are plotted directly on your chart as horizontal reference lines.
For intraday traders, the script accurately calculates historical offsets considering regular and extended trading sessions (e.g., pre-market and after-hours sessions for US stocks), ensuring correct positioning of historical lines.
User-Configurable Inputs Explained in Detail:
Market Type:
Allows you to specify your trading instrument type, automatically adjusting calculations for:
- Stocks US (default): 390 minutes per regular session (780 minutes if extended hours enabled), 5 trading days/week.
- Crypto: 1440 minutes/day, 7 trading days/week.
- Forex: 1440 minutes/day, 5 trading days/week.
- Futures: 1320 minutes/day, 5 trading days/week.
Show Weekly Close:
When enabled, plots a line at the exact closing price from one week ago. Provides short-term context and helps identify recent price momentum.
Show Monthly Close:
When enabled, plots a line at the exact closing price from one month ago. Helpful for evaluating medium-term price positioning and monthly trend strength.
Show 3-Month Close:
When enabled, plots a line at the exact closing price from three months ago. Useful for assessing quarterly market shifts, intermediate trend changes, and broader market sentiment.
Show 6-Month Close:
When enabled, plots a line at the exact closing price from six months ago. Useful for identifying semi-annual trends, significant price pivots, and longer-term support/resistance levels.
Show 1-Year Close:
When enabled, plots a line at the exact closing price from one year ago. Excellent for assessing long-term market direction and key annual price levels.
Enable Smoothing:
Activates a Simple Moving Average (SMA) smoothing of historical reference lines, reducing volatility and providing clearer visual references. Recommended for traders preferring less volatile reference levels.
Smoothing Length:
Determines the number of bars used in calculating the SMA smoothing of historical lines. Higher values result in smoother but slightly delayed reference lines; lower values offer more immediate yet more volatile levels.
Use Extended Hours (Intraday Only):
When enabled (only applicable for Stocks US), it accounts for pre-market and after-hours trading sessions, providing accurate intraday historical line calculations based on extended sessions (typically 780 minutes/day total).
Important Notes and Compliance:
- This indicator does not provide trading signals, recommendations, or predictions. It serves purely as a visual analytical tool to supplement traders’ existing methods.
- Historical lines plotted are strictly based on past available price data; the indicator never accesses future data or data outside the scope of Pine Script’s standard capabilities.
- The script incorporates built-in logic to avoid runtime errors if insufficient historical data exists for a selected timeframe, ensuring robustness even with limited historical bars.
- TimeMap is original work developed exclusively by Julien Eche (@Julien_Eche). It does not reuse or replicate third-party or existing open-source scripts.
Recommended Best Practices:
- Use TimeMap as a complementary analytical reference, not as a standalone strategy or trade decision-making tool.
- Adapt displayed historical periods and smoothing settings based on your trading style and market approach.
- Default plot colors are optimized for readability on dark-background charts; adjust as necessary according to your preference and chart color scheme.
This script is published open-source to benefit the entire TradingView community and fully complies with all TradingView script publishing rules and guidelines.
True Open CalculationsIndicator Description: True Open Calculations
This custom Pine Script indicator calculates and plots key "True Open" levels based on specific time intervals and trading sessions. The True Open levels represent significant price points on the chart, helping traders identify key reference points tied to various market opening times. These levels are important for understanding price action in relation to market sessions and trading cycles. The indicator is designed to plot lines corresponding to different "True Opens" on the chart and display labels with the associated information.
Key Features:
True Year Open:
This represents the opening price on the first Monday of April each year. It serves as a reference point for the yearly price level.
Plot Color: Green.
True Month Open:
This represents the opening price on the second Monday of each month. It helps in identifying monthly trends and provides a key reference for monthly price movements.
Plot Color: Blue.
True Week Open:
This represents the opening price every Monday at 6:00 PM. It gives traders a level to track weekly opening movements and can be useful for weekly trend analysis.
Plot Color: Orange.
True Day Open:
This represents the opening price at 12:00 AM (midnight) each day. It serves as a daily benchmark for price action at the start of the trading day.
Plot Color: Red.
True New York Session Open:
This represents the opening price at 7:30 AM (New York session start time). This level is crucial for traders focused on the New York trading session.
Plot Color: Purple.
Additional Features:
Labels: The indicator displays labels to the right of each plotted line to describe which "True Open" it represents (e.g., "True Year Open," "True Month Open," etc.).
Dynamic Plotting: The lines are only plotted on the current candle, and the lines are dynamically updated for each time period based on the corresponding "True Open."
Visual Cues: The colors of the plotted lines (green, blue, orange, red, purple) help quickly distinguish between different "True Open" levels, making it easy for traders to track price action and make informed decisions.
Use Cases:
Yearly, Monthly, Weekly, Daily, and Session Benchmarking: This indicator provides traders with important price levels to use as benchmarks for the current year, month, week, and day, helping to identify trends and potential reversals.
Session Awareness: It is particularly useful for traders who want to track key market sessions, such as the New York session, and their impact on price movement.
Long-term Analysis: By including the yearly open, this indicator helps traders gain a broader perspective on market trends and provides context for analyzing shorter-term price movements.
Benefits:
Helps identify important reference points for longer-term trends (yearly, monthly) as well as shorter-term moves (daily, weekly, and session).
Visually intuitive with color-coded lines and labels, allowing quick and easy identification of key market open levels.
Dynamic and real-time: The indicator plots and updates the True Open levels dynamically as the market progresses.
PriorHourRangeLevels_v0.1PriorHourRangeLevels_v0.1
Created by dc_77 | © 2025 | Mozilla Public License 2.0
Overview
"PriorHourRangeLevels_v0.1" is a versatile Pine Script™ indicator designed to help traders visualize and analyze price levels based on the prior hour’s range. It overlays key levels—High, Low, 75%, 50% (EQ), and 25%—from the previous hour onto the current price chart, alongside the current hour’s opening price. With customizable display options and time zone support, it’s ideal for intraday traders looking to identify support, resistance, and breakout zones.
How It Works
Hourly Reset: The indicator detects the start of each hour based on your chosen time zone (e.g., "America/New_York" by default).
Prior Hour Range: It calculates the High and Low of the previous hour, then derives three additional levels:
75%: 75% of the range above the Low.
EQ (50%): The midpoint of the range.
25%: 25% of the range above the Low.
Current Hour Open: Displays the opening price of the current hour.
Projection: Lines extend forward (default: 24 bars) to project these levels into the future, aiding in real-time analysis.
Alerts: Triggers alerts when the price crosses any of the prior hour’s levels (High, 75%, EQ, 25%, Low).
Key Features
Time Zone Flexibility: Choose from options like UTC, New York, Tokyo, or London to align with your trading session.
Visual Customization:
Toggle visibility for each level (High, Low, 75%, EQ, 25%, Open, and Anchor).
Adjust line styles (Solid, Dashed, Dotted), colors, and widths.
Show or hide labels with adjustable sizes (Tiny, Small, Normal, Large).
Anchor Line: A vertical line marks the start of the prior hour, with optional labeling.
Alert Conditions: Set up notifications for price crossings to catch key moments without watching the chart.
Usage Tips
Use the High and Low as potential breakout levels, while 75%, EQ, and 25% act as intermediate support/resistance zones.
Trend Confirmation: Watch how price interacts with the EQ (50%) level to gauge momentum.
Session Planning: Adjust the time zone to match your market (e.g., "Europe/London" for FTSE trading).
Projection Offset: Extend or shorten the lines (via "Projection Offset") based on your chart timeframe.
Inputs
Time Zone: Select your preferred market time zone.
Anchor Settings: Show/hide the prior hour start line, style, color, width, and label.
Level Settings: Customize visibility, style, color, width, and labels for Open, High, 75%, EQ, 25%, and Low.
Display: Set projection length and label size.
SessionRangeLevels_v0.1SessionRangeLevels_v0.1
Overview:
SessionRangeLevels_v0.1 is a customizable Pine Script (v6) indicator designed to plot key price levels based on a user-defined trading session. It identifies the high and low of the session and calculates intermediate levels (75%, 50% "EQ", and 25%) within that range. These levels are projected forward as horizontal lines with accompanying labels, providing traders with dynamic support and resistance zones. The indicator supports extensive customization for session timing, time zones, line styles, colors, and more.
Key Features:
Session-Based Range Detection: Tracks the high and low prices during a specified session (e.g., 0600-0900) and updates them dynamically as the session progresses.
Customizable Levels: Displays High, 75%, EQ (50%), 25%, and Low levels, each with independent toggle options, styles (Solid, Dashed, Dotted), colors, and widths.
Session Anchor: Optional vertical line marking the session start, with customizable style, color, and width.
Projection Offset: Extends level lines forward by a user-defined number of bars (default: 24) for future price reference.
Labels: Toggleable labels for each level (e.g., "High," "75%," "EQ") with adjustable size (Tiny, Small, Normal, Large).
Time Zone Support: Aligns session timing to a selected time zone (e.g., America/New_York, UTC, Asia/Tokyo, etc.).
Alert Conditions: Triggers alerts when the price crosses any of the plotted levels (High, 75%, EQ, 25%, Low).
Inputs:
Session Time (HHMM-HHMM): Define the session range (e.g., "0600-0900" for 6:00 AM to 9:00 AM).
Time Zone: Choose from options like UTC, America/New_York, Europe/London, etc.
Anchor Settings: Toggle the session start line, adjust its style (default: Dotted), color (default: Black), and width (default: 1).
Level Settings:
High (Solid, Black, Width 2)
75% (Dotted, Blue, Width 1)
EQ/50% (Dotted, Orange, Width 1)
25% (Dotted, Blue, Width 1)
Low (Solid, Black, Width 2)
Each level includes options to show/hide, set style, color, width, and label visibility.
Projection Offset: Number of bars to extend lines (default: 24).
Label Size: Set label size (default: Small).
How It Works:
The indicator detects the start and end of the user-defined session based on the specified time and time zone.
During the session, it tracks the highest high and lowest low, updating the levels in real-time.
At the session start, it plots the High, Low, and intermediate levels (75%, 50%, 25%), projecting them forward.
Lines and labels dynamically adjust as new highs or lows occur within the session.
Alerts notify users when the price crosses any active level.
Usage:
Ideal for traders who focus on session-based strategies (e.g., London or New York open). Use it to identify key price zones, monitor breakouts, or set targets. Customize the appearance to suit your chart preferences and enable alerts for real-time trading signals.
Notes:
Ensure your chart’s timeframe aligns with your session duration for optimal results (e.g., 1-minute or 5-minute charts for short sessions).
The indicator overlays directly on the price chart for easy integration with other tools.
BTC & SPX vs Yield Curve: Recession Risk ZonesBTC & SPX vs Yield Curve – Recession Risk Zones
This tool helps you track Bitcoin (BTC) and the S&P 500 (SPX) against key macro signals from the U.S. yield curve to spot potential recession risks.
🟪 Color Legend:
🔴 Red = Yield curve is inverted (warning starts)
🟡 Yellow = Projected 6–18 month recession risk (if inversion still active)
🟠 Orange = Active 6–18 month risk window (after inversion ends)
💜 Fuchsia = Real historical U.S. recessions
📈 What’s Plotted:
🔵 BTCUSD (blue line) – Normalized price
🟢 S&P 500 (green line) – Normalized price
🟠 10Y–2Y Yield Spread – Macro signal for risk
✅ Use it to:
Spot macro pressure zones
See how BTC and SPX behave around economic stress
Stay cautious when red/orange/yellow areas appear
Let me know if you'd like to enable toggles to hide/show BTC or SPX independently!
alphaJohnny Dynamic RSI IndicatorAlphaJohnny Dynamic RSI Indicator (Dyn RSI)
The Dynamic RSI Indicator (Dyn RSI) is a custom Pine Script tool designed for TradingView that aggregates Relative Strength Index (RSI) signals from multiple timeframes to provide a comprehensive view of market momentum. It combines RSI data from Weekly, Daily, 4-hour, 1-hour, and 30-minute intervals, offering traders a flexible and customizable way to analyze trends across different periods.
Key Features:
Multi-Timeframe RSI Aggregation: Combines RSI signals from user-selected timeframes for a holistic momentum assessment.
Dynamic or Equal Weighting: Choose between correlation-based dynamic weights (adjusting based on each timeframe’s correlation with price changes) or equal weights for simplicity.
Smoothed Momentum Line: A visually intuitive line that reflects the strength of the aggregate signal, smoothed for clarity.
Color-Coded Signal Strength:
Dark Green: Strong buy signal
Light Green: Weak buy signal
Yellow: Neutral
Light Red: Weak sell signal
Dark Red: Strong sell signal
Visual Markers: Large green triangles at the bottom for strong buy signals and red triangles at the top for strong sell signals.
How to Use:
Apply to Chart: Add the indicator to your TradingView chart (it will appear in a separate pane).
Customize Settings: Adjust inputs like RSI period, signal thresholds, included timeframes, weighting method, and smoothing period to fit your trading style.
Interpret Signals:
Momentum Line: Watch for color changes to gauge market conditions.
Triangles: Green at the bottom for strong buy opportunities, red at the top for strong sell opportunities.
Notes:
The indicator is designed for a separate pane (overlay=false), with triangles positioned relative to the pane’s range.
Fine-tune thresholds and weights based on your strategy and the asset being analyzed.
The source code is open for modification to suit your needs.
This indicator is ideal for traders seeking a multi-timeframe perspective on RSI to identify potential trend reversals and momentum shifts.
M2SL/DXY RatioThis is the ratio of M2 money supply (M2SL) to the U.S. dollar index (DXY), taking into account the impact of U.S. dollar strength and weakness on liquidity.
M2SL/DXY better represents the current impact of the United States on cryptocurrency prices.
Lukiano BTC 369 Close MarkerThis indicator highlights candles where the closing price reduces to 3, 6, or 9 based on digital root calculation (sum of digits).
🔵 Blue dot = 3
🟢 Green dot = 6
🔴 Red dot = 9
Inspired by Tesla’s 369 theory and adapted for BTC traders who want to explore alternative energy-based signals.
Created by @Lukiano
Suppot and resistance & BUY SELL SIGNALSThis indicator is highly customizable and suitable for traders of all experience levels. By adjusting the input settings, traders can tailor the indicator to their specific needs and trading strategies.
Normalized FX Weighted Daily % Change vs DXYThis indicator tracks international liquidity flows by measuring the USD’s relative strength against major currencies—EUR, CNY, JPY, GBP, and CAD. It calculates the weighted percentage change of each pair over a specified interval. A positive reading means the USD is weakening (liquidity flowing out of the US), while a negative reading indicates the USD is strengthening (liquidity flowing in). Additionally, the indicator incorporates the DXY index and VIX, with all components normalized using Z-scores for clear, comparable insights into market dynamics.
Time Marker Pro: Vertical Line at Key Times)Smart Vertical Line at Specific Time (with Timezone, Color, and Width Controls)
This script draws a vertical line on your chart at a user-defined time once per day, based on the selected timezone.
🕒 Key Features:
Set your target hour and minute
Choose from a list of common timezones (Tehran, UTC, New York, etc.)
Customize the line color and thickness
Works across all intraday timeframes (1min, 5min, 15min, etc.)
Adjusts automatically to bar intervals — no need for exact time matching
This is perfect for traders who want to:
Highlight the start of a session
Mark specific news times, breakouts, or routine entries
Visualize key time-based levels on the chart
US Presidents (Alternating Fills by Order)📜 Indicator Description: US Presidents Background Fill
This indicator highlights the terms of U.S. Presidents on your chart with alternating red and blue background fills based on their political party:
• 🟥 Republicans = Red
• 🟦 Democrats = Blue
• 🎨 Dark/Light shading alternates with each new president to clearly distinguish consecutive terms, even within the same party.
The fill starts from President Ulysses S. Grant (18th President, 1873) through to the 47th president in 2025. It is designed to work with any asset and automatically adapts to the visible date range on your chart.
Ideal for visualizing macro trends, historical context, and how markets may have reacted under different political administrations.
[COG]S&P 500 Weekly Seasonality ProjectionS&P 500 Weekly Seasonality Projection
This indicator visualizes S&P 500 seasonality patterns based on historical weekly performance data. It projects price movements for up to 26 weeks ahead, highlighting key seasonal periods that have historically affected market performance.
Key Features:
Projects price movements based on historical S&P 500 weekly seasonality patterns (2005-2024)
Highlights six key seasonal periods: Jan-Feb Momentum, March Lows, April-May Strength, Summer Strength, September Dip, and Year-End Rally
Customizable forecast length from 1-26 weeks with quick timeframe selection buttons
Optional moving average smoothing for more gradual projections
Detailed statistics table showing projected price and percentage change
Seasonality mini-map showing the full annual pattern with current position
Customizable colors and visual elements
How to Use:
Apply to S&P 500 index or related instruments (daily timeframe or higher recommended)
Set your desired forecast length (1-26 weeks)
Monitor highlighted seasonal zones that have historically shown consistent patterns
Use the projection line as a general guideline for potential price movement
Settings:
Forecast length: Configure from 1-26 weeks or use quick select buttons (1M, 3M, 6M, 1Y)
Visual options: Customize colors, backgrounds, label sizes, and table position
Display options: Toggle statistics table, period highlights, labels, and mini-map
This indicator is designed as a visual guide to help identify potential seasonal tendencies in the S&P 500. Historical patterns are not guarantees of future performance, but understanding these seasonal biases can provide valuable context for your trading decisions.
Note: For optimal visualization, use on Daily timeframe or higher. Intraday timeframes will display a warning message.
[COG]Nasdaq Weekly Seasonality ProjectionNasdaq Weekly Seasonality Projection
This indicator provides a visualization of Nasdaq seasonality patterns based on historical weekly performance data. It projects price movements for up to 26 weeks ahead, highlighting key seasonal periods that have historically affected tech stocks.
Key Features:
Projects price movements based on historical Nasdaq weekly seasonality patterns
Highlights six key seasonal periods: January Effect, March Lows, April-May Strength, Tech Summer Rally, September Dip, and Q4 Tech Rally
Customizable forecast length from 1-26 weeks with quick timeframe selection buttons
Optional moving average smoothing for more gradual projections
Detailed statistics table showing projected price and percentage change
Seasonality mini-map showing the full annual pattern with current position
Customizable colors and visual elements
How to Use:
Apply to Nasdaq indices or tech-focused instruments (daily timeframe or higher recommended)
Set your desired forecast length (1-26 weeks)
Monitor highlighted seasonal zones that have historically shown consistent patterns
Use the projection line as a general guideline for potential price movement
Settings:
Forecast length: Configure from 1-26 weeks or use quick select buttons (1M, 3M, 6M, 1Y)
Visual options: Customize colors, backgrounds, label sizes, and table position
Display options: Toggle statistics table, period highlights, labels, and mini-map
This indicator is designed as a visual guide to help identify potential seasonal tendencies in Nasdaq and tech stocks. Historical patterns are not guarantees of future performance, but understanding these seasonal biases can provide valuable context for your trading decisions.
Note: For optimal visualization, use on Daily timeframe or higher. Intraday timeframes will display a warning message.