Checklist Core Functionality
Manual Trade Setup Checklist: Provides 5 key trading criteria that traders can manually check off when conditions are met
Visual Confirmation System: Displays a clean table with checkmarks (✅) for completed criteria
Real-time Progress Tracking: Shows which trading setup conditions have been satisfied
Checklist Items
Retrace < 78.6% - Fibonacci retracement level check
ATR Entry - Average True Range based entry condition
CHoCH+ - Change of Character (market structure shift)
5m EG - 5-minute entry guide/pattern
PullBack < 78.6% - Pullback depth limitation
Key Features
Customizable Display: Full control over colors, text sizes, and table positioning
Flexible Placement: Table can be positioned in 6 different locations on the chart
Reset Function: Quick reset button to clear all checkmarks and start fresh
Visual Scoring: Color-coded system (bullish/bearish/neutral) to indicate checklist progress
Entry Guidance: Shows either "🎯" for confirmed entry or "61.8%" for retracement level
Purpose
This indicator helps traders maintain discipline by ensuring all criteria are met before entering trades, reducing emotional decisions and enforcing a systematic approach to trading setups. It's particularly useful for price action traders who follow specific entry protocols and want to document their decision-making process directly on the chart.
دورات
MACD HTF Hardcoded (A/B Presets) + Regimes [CHE]  MACD HTF Hardcoded  (A/B Presets) + Regimes — Higher-timeframe MACD emulation with acceptance-based regime filter and on-chart diagnostics
  Summary 
This indicator emulates a higher-timeframe MACD directly on the current chart using two hardcoded preset families and a time-bucket mapping, avoiding cross-timeframe requests. It classifies four MACD regimes and applies an acceptance filter that requires several consecutive bars before a state is considered valid. A small dead-band around zero reduces noise near the axis. An on-chart table reports the active preset, the inferred time bucket, the resolved lengths, and the current regime.
Pine version: v6
Overlay: false
Primary outputs: MACD line, Signal line, Histogram columns, zero line, regime-change alert, info table
  Motivation: Why this design? 
Cross-timeframe indicators often rely on external timeframe requests, which can introduce repaint paths and added latency. This design provides a deterministic alternative: it maps the current chart’s timeframe to coarse higher-timeframe buckets and uses fixed EMA lengths that approximate those views. The dead-band suppresses flip-flops around zero, and the acceptance counter reduces whipsaw by requiring sustained agreement across bars before acknowledging a regime.
  What’s different vs. standard approaches? 
 Baseline: Classical MACD with user-selected lengths on the same timeframe, or higher-timeframe MACD via cross-timeframe requests.
 Architecture differences:
   Hardcoded A and B length families with a bucket map derived from the chart timeframe.
   No `request.security`; all calculations occur on the current series.
   Regime classification from MACD and Histogram sign, gated by an acceptance count and a small zero dead-band.
   Diagnostics table for transparency.
 Practical effect: The MACD behaves like a slower, higher-timeframe variant without external requests. Regimes switch less often due to the dead-band and acceptance logic, which can improve stability in choppy sessions.
  How it works (technical) 
The script derives a coarse bucket from the chart timeframe using `timeframe.in_seconds` and maps it to preset-specific EMA lengths. EMAs of the source build MACD and Signal; their difference is the Histogram. Signs of MACD and Histogram define four regimes: strong bull, weak bull, strong bear, and weak bear. A small, user-defined band around zero treats values near the axis as neutral. An acceptance counter checks whether the same regime persisted for a given number of consecutive bars before it is emitted as the filtered regime. A single alert condition fires when the filtered regime changes. The histogram columns change shade based on position relative to zero and whether they are rising or falling. A persistent table object shows preset, bucket tag, resolved lengths, and the filtered regime. No cross-timeframe requests are used, so repaint risk is limited to normal live-bar movement; values stabilize on close.
  Parameter Guide 
Source — Input series for MACD — Default: Close — Using a smoother source increases stability but adds lag.
Preset — A or B length family — Default: “3,10,16” — Switch to “12,26,9” for the classic family mapped to buckets.
Table Position — Anchor for the info table — Default: Top right — Choose a corner that avoids covering price action.
Table Size — Table text size — Default: Normal — Use small on dense charts, large for presentations.
Dark Mode — Table theme — Default: Enabled — Match your chart background for readability.
Show Table — Toggle diagnostics table — Default: Enabled — Disable for a cleaner pane.
Zero dead-band (epsilon) — Noise gate around zero — Default: Zero — Increase slightly when you see frequent flips near zero.
Acceptance bars (n) — Bars required to confirm a regime — Default: Three — Raise to reduce whipsaw; lower to react faster.
  Reading & Interpretation 
 Histogram columns: Above zero indicates bullish pressure; below zero indicates bearish pressure. Darker shade implies the histogram increased compared with the prior bar; lighter shade implies it decreased.
 MACD vs. Signal lines: The spread corresponds to histogram height.
 Regimes:
   Strong bull: MACD above zero and Histogram above zero.
   Weak bull: MACD above zero and Histogram below zero.
   Strong bear: MACD below zero and Histogram below zero.
   Weak bear: MACD below zero and Histogram above zero.
 Table: Inspect active preset, bucket tag, resolved lengths, and the filtered regime number with its description.
  Practical Workflows & Combinations 
 Trend following: Use strong bull to favor long exposure and strong bear to favor short exposure. Use weak states as pullback or transition context. Combine with structure tools such as swing highs and lows or a baseline moving average for confirmation.
 Exits and risk: In strong trends, consider exiting partial size on a regime downgrade to a weak state. In choppy sessions, increase the acceptance bars to reduce churn.
 Multi-asset / Multi-timeframe: Works on time-based charts across liquid futures, indices, currencies, and large-cap equities. Bucket mapping helps retain a consistent feel when moving from lower to higher timeframes.
  Behavior, Constraints & Performance 
 Repaint/confirmation: No cross-timeframe requests; values can evolve intrabar and settle on close. Alerts follow your TradingView alert timing settings.
 Resources: `max_bars_back` is set to five thousand. Very large resolved lengths require sufficient history to seed EMAs; expect a warm-up period on first load or after switching symbols.
 Known limits: Dead-band and acceptance can delay recognition at sharp turns. Extremely thin markets or large gaps may still cause brief regime reversals.
  Sensible Defaults & Quick Tuning 
Start with preset “3,10,16”, dead-band near zero, and acceptance of three bars.
 Too many flips near zero: increase the dead-band slightly or raise the acceptance bars.
 Too sluggish in clean trends: reduce the acceptance bars by one.
 Too sensitive on fast lower timeframes: switch to the “12,26,9” preset family or raise the acceptance bars.
 Want less clutter: hide the table and keep the alert.
  What this indicator is—and isn’t 
This is a visualization and regime layer for MACD using higher-timeframe emulation and stability gates. It is not a complete trading system and does not generate position sizing or risk management. Use it with market structure, execution rules, and protective stops.
 Disclaimer 
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.
 Best regards and happy trading
Chervolino 
Best Time Slots — Auto-Adapt (v6, TF-safe) + Range AlertsTime & binning
Auto-adapt to timeframe
Makes all time windows scale to your chart’s bar size (so it “just works” on 1m, 15m, 4H, Daily).
• On = recommended. • Off = fixed default lengths.
Minimum Bin (minutes)
The size of each daily time slot we track (e.g., 5-min bins). The script uses the larger of this and your bar size.
• Higher = fewer, broader slots; smoother stats. • Lower = more, narrower slots; needs more history.
• Try: 5–15 on intraday, 60–240 on higher TFs.
Lookback windows (used when Auto-adapt = ON)
Target ER Window (minutes)
How far back we look to judge Efficiency Ratio (how “straight” the move was).
• Higher = stricter/smoother; fewer bars qualify as “movement”. • Lower = more sensitive.
• Try: 60–120 min intraday; 240–600 min for higher TFs.
Target ATR Window (minutes)
How far back we compute ATR (typical range).
• Higher = steadier ATR baseline. • Lower = reacts faster.
• Try: 30–120 min intraday; 240–600 min higher TFs.
Target Normalization Window (minutes)
How far back for the average ATR (the baseline we compare to).
• Higher = stricter “above average range” check. • Lower = easier to pass.
• Try: ~500–1500 min.
What counts as “movement”
ER Threshold (0–1)
Minimum efficiency a bar must have to count as movement.
• Higher = only very “clean, one-direction” bars count. • Lower = more bars count.
• Try: 0.55–0.65. (0.60 = balanced.)
ATR Floor vs SMA(ATR)
Requires range to be at least this many × average ATR.
• Higher (e.g., 1.2) = demand bigger-than-usual ranges. • Lower (e.g., 0.9) = allow smaller ranges.
• Try: 1.0 (above average).
How history is averaged
Recent Days Weight (per-day decay)
Gives more weight to recent days. Example: 0.97 ≈ each day old counts ~3% less.
• Higher (0.99) = slower fade (older days matter more). • Lower (0.95) = faster fade.
• Try: 0.97–0.99.
Laplace Prior Seen / Laplace Prior Hit
“Starter counts” so early stats aren’t crazy when you have little data.
• Higher priors = probabilities start closer to average; need more real data to move.
• Try: Seen=3, Hit=1 (defaults).
Min Samples (effective)
Don’t highlight a slot unless it has at least this many effective samples (after decay + priors).
• Higher = safer, but fewer highlights early.
• Try: 3–10.
When to highlight on the chart
Min Probability to Highlight
We shade/mark bars only if their slot’s historical movement probability is ≥ this.
• Higher = pickier, fewer highlights. • Lower = more highlights.
• Try: 0.45–0.60.
Show Markers on Good Bins
Draws a small square on bars that fall in a “good” slot (in addition to the soft background).
Limit to market hours (optional)
Restrict to Session + Session
Only learn/score inside this time window (e.g., “0930-1600”). Uses the chart/exchange timezone.
• Turn on if you only care about RTH.
Range (chop) alerts
Range START if ER ≤
Triggers range when efficiency drops below this level (price starts zig-zagging).
• Higher = easier to call “range”. • Lower = stricter.
Range START if ATR ≤ this × SMA(ATR)
Also triggers range when ATR shrinks below this fraction of its average (volatility contraction).
• Higher (e.g., 1.0) = stricter (must be at/under average). • Lower (e.g., 0.9) = easier to call range.
Alerts on bar close
If ON, alerts fire once per bar close (cleaner). If OFF, they can trigger intrabar (faster, noisier).
Quick “what happens if I change X?”
Want more highlighted times? ↓ Min Probability, ↓ ER Threshold, or ↓ ATR Floor (e.g., 0.9).
Want stricter highlights? ↑ Min Probability, ↑ ER Threshold, or ↑ ATR Floor (e.g., 1.2).
Want recent days to matter more? ↑ Recent Days Weight toward 0.99.
On 4H/Daily, widen Minimum Bin (e.g., 60–240) and maybe lower Min Probability a bit.
PARTH Gold Profit IndicatorWhat's Inside:
✅ What is gold trading (XAU/USD explained)
✅ Why trade gold (5 major reasons)
✅ How to make money (buy/sell mechanics)
✅ Complete trading setup using your indicator
✅ Entry rules (when to buy/sell with examples)
✅ Risk management (THE MOST IMPORTANT)
✅ Best trading times (London-NY overlap)
✅ 3 trading styles (scalping, swing, position)
✅ 6 common mistakes to avoid
✅ Realistic profit expectations
✅ Pre-trade checklist
✅ Step-by-step getting started guide
✅ Everything a beginner need
Nqaba Probable High/Low — Overshoot/Undershoot{Larry Method)This Probable High/Low indicator is an advanced tool inspired by Larry R. Williams’ original projection formulas.
It calculates probable daily highs and lows based on the prior day’s open, high, low, and close, allowing traders to anticipate key intraday price levels with precision.
TFRSI & RSI Analog Dial [CHE]  TFRSI & RSI Analog Dial    — Interactive analog visualization for TFRSI or RSI with gradient zones, radial markers, and a trailing hand pointer.
  Summary 
This indicator renders an interactive analog dial for either TFRSI or standard RSI, providing a visual gauge with gradient-filled zones for oversold, neutral, and overbought regions. The hand pointer tracks the current value, with optional trailing dots at recent positions to show momentum direction. Radial lines mark key thresholds, and a digital readout displays the exact value. This design enhances readability over linear plots by leveraging familiar clock-like intuition, reducing cognitive load during quick scans. Signals are robust due to clamping to safe bounds and mode-specific scaling, ensuring consistent display across different volatility regimes.
  Motivation: Why this design? 
Traditional linear RSI or momentum indicators often feel abstract, especially in fast-paced screening where users scan multiple assets. Sharp swings can make thresholds hard to gauge at a glance, leading to missed nuances in overbought or oversold conditions. This dial addresses that by mapping values to a curved scale with color gradients, making extremes visually pop while the hand's trail hints at recent path without cluttering the chart. The dual-mode support allows seamless switching between advanced momentum (TFRSI) and classic RSI, fitting diverse strategies without reloading scripts.
  What’s different vs. standard approaches? 
- Baseline reference: Diverges from linear plotlines like the built-in RSI oscillator, which stacks values vertically and relies on horizontal lines for thresholds.
- Architecture differences:
  - Curved projection with perspective tilt for depth illusion, using polyline arcs instead of straight plots.
  - Mode-aware clamping and scaling to handle TFRSI's extended range versus RSI's standard bounds.
  - Persistent trail array for hand history, capped at three points to avoid performance drag.
  - Gradient segmentation for smooth zone transitions, rendered via multiple thin polylines.
- Practical effect: Charts show a compact, rotatable dial that fits in pane corners, with colors intuitively signaling bias (lime for buy zones, red for sell). The trail adds qualitative flow without numerical overload, helping spot divergences faster than static bars.
  How it works (technical) 
The indicator first computes the selected metric: for TFRSI, it processes price accelerations through a multi-step filter involving differencing, exponential damping, and normalization to a centered scale; for RSI, it uses the standard gain-loss ratio over the specified period. The value is then clamped between mode-specific minimum and maximum bounds to prevent display overflow.
This clamped value drives the hand angle on a 300-degree arc, projected from a 3D-like model rotated for perspective. Arcs for zones are built as segmented polylines, with colors interpolated linearly across the gradient. Key levels are drawn as radial lines from inner to outer radius, colored by zone. The trail maintains up to three prior angles in an array, updated only on confirmed bars to avoid repainting, and rendered as sized dots fading from small to large.
Initialization seeds filter states to zero on first bar, with persistent variables holding smoothing history. Data flows from price to metric computation, clamping, angle mapping, and projection—all executed globally on the last bar for redraw efficiency.
  Parameter Guide 
Mode — Switches between TFRSI (extended momentum gauge) and RSI (classic oscillator); affects bounds, zones, and labels. Default: "TFRSI". Trade-offs: TFRSI adds sensitivity to accelerations but may amplify noise; RSI is more stable for trend confirmation.
Dial Size — Sets radius in pixels, scaling all elements proportionally. Default: 200. Bounds: 50–500. Tips: Larger for detailed views, smaller for multi-pane layouts; auto-scales hand length to match.
Dial Vertical Offset — Shifts entire dial up/down in pixels. Default: 0. Bounds: -200–200. Trade-offs: Negative pulls toward price action; positive spaces below—use to avoid overlap.
Camera Angle — Tilts view from top-down (0) to side (90) for 3D effect. Default: 45. Bounds: 0–90. Tips: Steeper angles emphasize depth but compress horizontally; flat for precision.
Resolution — Polygon sides for smooth arcs. Default: 64. Bounds: 4–64. Trade-offs: Higher reduces jaggedness but increases draw calls—balance with pane zoom.
TFRSI Hand Length — Base pointer length at 200px dial, auto-scaled. Default: 170. Bounds: 10–200. Tips: Longer for emphasis in large dials; shorter avoids edge clipping.
Show TFRSI Hand — Toggles pointer visibility. Default: true. Trade-offs: Off for clean zones only; on for value tracking.
Show Hand Trail Dots — Displays 3 fading dots at recent tips. Default: true. Trade-offs: Adds motion context but may clutter static views—disable in alerts.
TFRSI Hand Color — Pointer hue, used for trail dots too. Default: 7E57C2. Tips: Match strategy theme; gradients auto-blend to zones.
Dial Base Color — Arc outline/fill tint. Default: blue. Trade-offs: Opaque for contrast; transparent blends with background.
Neutral Color (50) — Mid-zone shade. Default: gray. Tips: Neutral tones reduce bias in balanced markets.
Oversold Color — Low-zone fill. Default: lime. Trade-offs: Bright for alerts; muted for subtlety.
Overbought Color — High-zone fill. Default: red. Trade-offs: As above—pair with hand blending.
Label Size — Text scaling for thresholds. Default: "normal". Options: tiny/small/normal/large/huge. Tips: Smaller for dense charts; larger for presentations.
Digital TFRSI Size — Readout font. Default: "large". Options: as above. Trade-offs: Balances visibility without dominating dial.
Digital Vertical Offset — Readout position shift. Default: -50. Bounds: -200–200. Tips: Negative centers above dial; adjust for multi-indicators.
TFRSI Length — Core lookback for accelerations. Default: 6. Min: 1. Trade-offs: Shorter heightens reactivity, risks whipsaws; longer smooths extremes.
TFRSI Trigger Length — Final smoothing passes. Default: 2. Min: 1. Tips: Increase for fewer false crosses; decrease for quicker pivots.
RSI Length — Period for gain-loss averaging. Default: 14. Min: 1. Trade-offs: Classic 14 balances; shorter for scalps, longer for swings.
  Reading & Interpretation 
The dial arcs sweep from overbought (right, red) through neutral (top, gray) to oversold (left, lime), with the hand pointing to the current value—clockwise for rising, counterclockwise for falling. Trail dots grow larger toward the present, colored to match hand zones, indicating recent direction without numbers. Threshold lines thicken at center (50) for quick zeroing; labels confirm levels. Digital readout below shows precise value prefixed by mode. Hand color gradients from neutral to extremes signal building pressure verbally: deepening red warns of potential pullbacks, brightening lime suggests bounces.
  Practical Workflows & Combinations 
Trend following: Enter long when hand crosses above 50 from oversold trail; confirm with higher highs in price structure. Filter shorts below 50 in downtrends using volume spikes.
Exits/Stops: Trail stops to recent dot positions in overbought; tighten on red gradients exceeding thresholds. Conservative: Exit at neutral; aggressive: Hold to extremes if trail aligns with momentum.
Multi-asset/Multi-TF: Defaults suit forex/stocks on 1H–4H; for crypto, shorten lengths by 20% for volatility. Stack with HTF security calls (e.g., daily mode on 15m chart) for confluence—watch for alignment across dials.
  Behavior, Constraints & Performance 
Closed-bar updates ensure no repainting; live bars show provisional hand/trail, confirmed on close. No security or HTF calls, so zero lookahead bias. Resources: Caps at 500 lines/labels/polylines, rebuilds only on last bar; max_bars_back=2000 handles history without lag. Known limits: Trail may stutter in flat markets; gradients approximate smooth fills via segments, visible at low resolution.
  Sensible Defaults & Quick Tuning 
Start with TFRSI mode, length=6, trigger=2 for responsive momentum on daily charts. Too choppy? Bump trigger to 4 for stability. Lagging entries? Drop length to 4, watch for overreactions. For RSI trend filter, set length=21; combine with MA cross for entries when dial nears 30/70.
  What this indicator is—and isn’t 
This is a visualization layer for momentum gauges, aiding quick bias assessment and threshold spotting. Pair it with price action, volume, and risk rules for decisions. It’s not a standalone signal generator or predictive tool—values reflect past data, prone to whipsaws in ranging conditions.
  Disclaimer 
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.  
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.  
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.  
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.  
 Best regards and happy trading  
Chervolino
Altseason Probability (BTC.D • USDT • TOTAL3 • DXY)Testing phase, workig out the kinks.
Works by aggregating several factors to define altseason probability in any given moment
XAUUSD Multi-Timeframe Supertrend Alert v2**Indicator Overview: XAUUSD Multi-Timeframe Supertrend Alert v2**
**Core Components:**
1. **Multi-Timeframe Supertrend System**
   - Two Supertrend indicators (ST1 & ST2) with customizable timeframes
   - ST1 typically set to Daily, ST2 to Weekly as main trend
   - Visualized with distinct colors and background fills
2. **Customizable SMA**
   - Adjustable period and timeframe
   - Plotted as blue line for additional trend reference
3. **Neutral Zone System**
   - Creates a neutral line offset from ST1 by customizable tick distance
   - Yellow dashed line that adjusts based on ST1 trend direction
   - **Alert Conditions:**
     - **Test Buy Zone**: Both ST1 & ST2 in uptrend AND price enters neutral zone above ST1
     - **Test Sell Zone**: Both ST1 & ST2 in downtrend AND price enters neutral zone below ST1
4. **Distance Lines from ST2**
   - Upper/lower lines at customizable tick distance from ST2
   - Purple dashed lines with touch alerts
**Trading Signals:**
- **Bullish Signal**: Price above ST2 but below ST1 (potential buy)
- **Bearish Signal**: Price below ST2 but above ST1 (potential sell)
- **Neutral Zone Alerts**: Price enters defined zone when both trends align
- **Line Touch Alerts**: Price touches distance lines from ST2
**Alert System:**
- Limited to 3 consecutive alerts per signal type
- Visual markers (triangles, diamonds, circles)
- Background coloring for signal zones
- Separate alert conditions for each signal type
**Visual Features:**
- Candles colored green/red based on signals
- Clear trend visualization with colored backgrounds
- Real-time alert markers without information table clutter
This indicator provides multi-timeframe trend analysis with precise entry zone detection and comprehensive alert system for XAUUSD trading. SAM89 M15, ST1 (5:10) M5, ST2 ( 1,5:20) H1, Test Buy Sell 7000, Line 15000
5M Gap Finder — Persistent Boxes (Tiered) v65 M gap finder, using 3 different types of gaps: Tier	Definition Tightness	Frequency	Use Case
Tier A (Strict)	Gap ≥ 0.10%, body ≥ 70% of range	Rare	Institutional-strength displacement
Tier B (Standard)	Gap ≥ 0.05%, body ≥ 60% of range	Medium	Baseline trading setup
Tier C (Loose)	Gap ≥ 0.03%, no body condition	Common	Data collection and observation
Squeeze Momentum ProSQUEEZE MOMENTUM PRO - Enhanced Visual Dashboard
A modernized version of the TTM Squeeze Momentum indicator, designed for cleaner visual interpretation and faster decision-making.
═══════════════════════════════════════════
📊 WHAT IS THE SQUEEZE?
═══════════════════════════════════════════
The "squeeze" occurs when Bollinger Bands contract inside Keltner Channels, indicating extremely low volatility. This compression typically precedes explosive directional moves - the tighter the squeeze, the bigger the potential breakout.
John Carter's TTM Squeeze concept (from "Mastering the Trade") combines this volatility compression with momentum direction to identify high-probability setups.
═══════════════════════════════════════════
✨ WHAT'S NEW IN THIS VERSION
═══════════════════════════════════════════
🎯 VISUAL STATUS BAR
- Real-time squeeze state with clear labels
- Color-coded backgrounds (Red = Building, Green = Fired Bullish, Orange = Fired Bearish)
- Squeeze duration counter to gauge compression time
📊 ENHANCED HISTOGRAM
- 4-color momentum gradient (Strong Bull/Weak Bull/Weak Bear/Strong Bear)
- Instantly shows both direction AND strength
- Background shading for current market state
🔥 SQUEEZE INTENSITY GAUGE
- 5-dot pressure indicator showing compression tightness
- Percentage display of squeeze strength
- Only appears during active squeezes
📈 REAL-TIME METRICS PANEL
- Current momentum value
- Direction indicator (increasing/decreasing)
- Strength assessment (strong/weak)
🔔 COMPREHENSIVE ALERTS
- Squeeze started
- Squeeze fired (bullish/bearish)
- Momentum crossovers
═══════════════════════════════════════════
🎮 HOW TO USE
═══════════════════════════════════════════
1. WAIT FOR SQUEEZE
   • Red status bar appears
   • Intensity dots show compression level
   • Longer duration = potentially bigger move
2. WATCH FOR RELEASE
   • Status changes to "FIRED - BULLISH" or "FIRED - BEARISH"
   • Histogram color confirms momentum direction
   • Background highlights the event
3. MANAGE POSITION
   • Monitor momentum strength in metrics panel
   • Exit when histogram changes color (momentum reversal)
   • Use with trend/volume confirmation
═══════════════════════════════════════════
⚙️ CUSTOMIZATION
═══════════════════════════════════════════
- Toggle status bar, metrics, intensity dots independently
- Adjustable BB/KC parameters
- Custom color schemes
- Show/hide squeeze duration
═══════════════════════════════════════════
🙏 CREDITS
═══════════════════════════════════════════
Original TTM Squeeze concept: John F. Carter
Original indicator code: LazyBear (@LazyBear)
This builds on LazyBear's excellent implementation of the TTM Squeeze Momentum indicator, adding modern visual elements and real-time dashboards for improved usability.
Original indicator: "Squeeze Momentum Indicator  "
═══════════════════════════════════════════
⚠️ DISCLAIMER
═══════════════════════════════════════════
This indicator is for educational purposes. Always use proper risk management and combine with other forms of analysis. No indicator guarantees profitable trades.
═══════════════════════════════════════════
Best used on: Day trading timeframes (1m-15m) for momentum plays
Combine with: Volume analysis, trend filters, support/resistance levels
Multi-Mode Seasonality Map [BackQuant]Multi-Mode Seasonality Map  
 A fast, visual way to expose repeatable calendar patterns in returns, volatility, volume, and range across multiple granularities (Day of Week, Day of Month, Hour of Day, Week of Month). Built for idea generation, regime context, and execution timing. 
 What is “seasonality” in markets? 
 Seasonality refers to statistically repeatable patterns tied to the calendar or clock, rather than to price levels. Examples include specific weekdays tending to be stronger, certain hours showing higher realized volatility, or month-end flow boosting volumes. This tool measures those effects directly on your charted symbol.
 Why seasonality matters 
  
  It’s orthogonal alpha: timing edges independent of price structure that can complement trend, mean reversion, or flow-based setups.
  It frames expectations: when a session typically runs hot or cold, you size and pace risk accordingly.
  It improves execution: entering during historically favorable windows, avoiding historically noisy windows.
  It clarifies context: separating normal “calendar noise” from true anomaly helps avoid overreacting to routine moves.
  
 How traders use seasonality in practice 
  
  Timing entries/exits : If Tuesday morning is historically weak for this asset, a mean-reversion buyer may wait for that drift to complete before entering.
  Sizing & stops : If 13:00–15:00 shows elevated volatility, widen stops or reduce size to maintain constant risk.
  Session playbooks : Build repeatable routines around the hours/days that consistently drive PnL.
  Portfolio rotation : Compare seasonal edges across assets to schedule focus and deploy attention where the calendar favors you.
  
 Why Day-of-Week (DOW) can be especially helpful 
  
  Flows cluster by weekday (ETF creations/redemptions, options hedging cadence, futures roll patterns, macro data releases), so DOW often encodes a stable micro-structure signal.
  Desk behavior and liquidity provision differ by weekday, impacting realized range and slippage.
  DOW is simple to operationalize: easy rules like “fade Monday afternoon chop” or “press Thursday trend extension” can be tested and enforced.
  
 What this indicator does 
  
  Multi-mode heatmaps : Switch between  Day of Week, Day of Month, Hour of Day, Week of Month .
  Metric selection : Analyze  Returns ,  Volatility  ((high-low)/open),  Volume  (vs 20-bar average), or  Range  (vs 20-bar average).
  Confidence intervals : Per cell, compute mean, standard deviation, and a z-based CI at your chosen confidence level.
  Sample guards : Enforce a minimum sample size so thin data doesn’t mislead.
  Readable map : Color palettes, value labels, sample size, and an optional legend for fast interpretation.
  Scoreboard : Optional table highlights best/worst DOW and today’s seasonality with CI and a simple “edge” tag.
  
 How it’s calculated (under the hood) 
  
  Per bar, compute the chosen  metric  (return, vol, volume %, or range %) over your lookback window.
  Bucket that metric into the active calendar bin (e.g., Tuesday, the 15th, 10:00 hour, or Week-2 of month).
  For each bin, accumulate  sum ,  sum of squares , and  count , then at render compute  mean ,  std dev , and  confidence interval .
  Color scale normalizes to the observed min/max of eligible bins (those meeting the minimum sample size).
  
 How to read the heatmap 
  
  Color : Greener/warmer typically implies higher mean value for the chosen metric; cooler implies lower.
  Value label : The center number is the bin’s mean (e.g., average % return for Tuesdays).
  Confidence bracket : Optional “ ” shows the CI for the mean, helping you gauge stability.
  n = sample size : More samples = more reliability. Treat small-n bins with skepticism.
  
 Suggested workflows 
  
  Pick the lens : Start with  Analysis Type = Returns ,  Heatmap View = Day of Week ,  lookback ≈ 252 trading days . Note the best/worst weekdays and their CI width.
  Sanity-check volatility : Switch to  Volatility  to see which bins carry the most realized range. Use that to plan stop width and trade pacing.
  Check liquidity proxy : Flip to  Volume , identify thin vs thick windows. Execute risk in thicker windows to reduce slippage.
  Drill to intraday : Use  Hour of Day  to reveal opening bursts, lunchtime lulls, and closing ramps. Combine with your main strategy to schedule entries.
  Calendar nuance : Inspect  Week of Month  and  Day of Month  for end-of-month, options-cycle, or data-release effects.
  Codify rules : Translate stable edges into rules like “no fresh risk during bottom-quartile hours” or “scale entries during top-quartile hours.”
  
 Parameter guidance 
  
  Analysis Period (Days) : 252 for a one-year view. Shorten (100–150) to emphasize the current regime; lengthen (500+) for long-memory effects.
  Heatmap View : Start with DOW for robustness, then refine with Hour-of-Day for your execution window.
  Confidence Level : 95% is standard; use 90% if you want wider coverage with fewer false “insufficient data” bins.
  Min Sample Size : 10–20 helps filter noise. For Hour-of-Day on higher timeframes, consider lowering if your dataset is small.
  Color Scheme : Choose a palette with good mid-tone contrast (e.g., Red-Green or Viridis) for quick thresholding.
  
 Interpreting common patterns 
  
  Return-positive but low-vol bins : Favorable drift windows for passive adds or tight-stop trend continuation.
  Return-flat but high-vol bins : Opportunity for mean reversion or breakout scalping, but manage risk accordingly.
  High-volume bins : Better expected execution quality; schedule size here if slippage matters.
  Wide CI : Edge is unstable or sample is thin; treat as exploratory until more data accumulates.
  
 Best practices 
  
  Revalidate after regime shifts (new macro cycle, liquidity regime change, major exchange microstructure updates).
  Use multiple lenses: DOW to find the day, then Hour-of-Day to refine the entry window.
  Combine with your core setup signals; treat seasonality as a filter or weight, not a standalone trigger.
  Test across assets/timeframes—edges are instrument-specific and may not transfer 1:1.
  
 Limitations & notes 
  
  History-dependent: short histories or sparse intraday data reduce reliability.
  Not causal: a hot Tuesday doesn’t guarantee future Tuesday strength; treat as probabilistic bias.
  Aggregation bias: changing session hours or symbol migrations can distort older samples.
  CI is z-approximate: good for fast triage, not a substitute for full hypothesis testing.
  
 Quick setup 
  
  Use  Returns + Day of Week + 252d  to get a clean yearly map of weekday edge.
  Flip to  Hour of Day  on intraday charts to schedule precise entries/exits.
  Keep  Show Values  and  Confidence Intervals  on while you calibrate; hide later for a clean visual.
  
 The Multi-Mode Seasonality Map helps you convert the calendar from an afterthought into a quantitative edge, surfacing when an asset tends to move, expand, or stay quiet—so you can plan, size, and execute with intent.
Day Range Divider DTSCopied it for DTS purposes to ensure proper tracking, testing, and verification within the DTS workflow. This copy is intended for reference, analysis, and any required adjustments without affecting the original version.
Daily Range Zone This indicator shows the daily range (high to low) for each day.
Every day has its own unique color, making it easy to see each day’s price range at a glance.
NLR-ADX Divergence Strategy Triple-ConfirmedHow it works 
 
 Builds a cleaner DMI/ADX
 
 
 Recomputes classic +DI, −DI, ADX over a user-set length.
 Then “non-linear regresses” each series toward a mean (your choice: dynamic EMA of the series or a fixed Static Mid like 50).
 The further a value is from the mean, the stronger the pull (controlled by alphaMin/alphaMax and the γ exponent), giving smoother, more stable DI/ADX lines with less whipsaw.
 Optional EMA smoothing on top of that.
 Lock in values at confirmed pivots
 Uses price pivots (left/right bars) to confirm swing lows and highs.
 When a pivot confirms, the script captures (“freezes”) the current +DI, −DI, and ADX values at that bar and stores them. This avoids later drift from smoothing/EMAs.
 
 Check for triple divergence
 
 
 For a bullish setup (potential long):
 Price makes a Lower Low vs. a prior pivot low,
 +DI is higher than before (bulls quietly stronger),
 −DI is lower (bears weakening),
 ADX is lower (trend fatigue).
 
 For a bearish setup (potential short)
 
 
 Price makes a Higher High,
 +DI is lower, −DI is higher,
 ADX is lower.
 Adds a “no-intersection” sanity check: between the two pivots, the live series shouldn’t snake across the straight line connecting endpoints. This filters messy, low-quality structures.
 
 Trade logic
 
 
 On a valid triple-confirm, places a strategy.entry (Long for bullish, Short for bearish) and optionally labels the bar (BUY or SELL with +DI/−DI/ADX arrows).
 Simple flip behavior: if you’re long and a new short signal prints (or vice versa), it closes the open side and flips.
 
 
 Key inputs you can tweak
 
 
 Custom DMI Settings
 DMI Length — base length for DI/ADX.
 Non-Linear Regression Model
 Mean Reference — EMA(series) (dynamic) or Static mid (e.g., 50).
 Dynamic Mean Length & Deviation Scale Length — govern the mean and scale used for regression.
 Min/Max Regression & Non-Linearity Exponent (γ) — how strongly values are pulled toward the mean (stronger when far away).
 
 Divergence Engine
 
 
 Pivot Left/Right Bars — how strict the swing confirmation is (larger = more confirmation, more delay).
 Min Bars Between Pivots — avoids comparing “near-duplicate” swings.
 Max Historical Pivots to Store — memory cap.
3D Session Clock | Live Time with Sessions [CHE]  3D Session Clock | Live Time with Sessions   — Projects a perspective clock face onto the chart to display current time and market session periods for enhanced situational awareness during trading hours.
  Summary 
This indicator renders a three-dimensional clock projection directly on the price chart, showing analog hands for hours, minutes, and seconds alongside a digital time readout. It overlays session arcs for major markets like New York, London, Tokyo, and Sydney, highlighting the active one with thicker lines and contrasting labels. By centralizing time and session visibility, it reduces the need to reference external clocks, allowing traders to maintain focus on price action while noting overlaps or transitions that influence volatility.
The design uses perspective projection to simulate depth, making the clock appear tilted for better readability on varying chart scales. Sessions are positioned radially outward from the main clock, with the current time marker pulsing on the relevant arc. This setup provides a static yet live-updating view, confirmed on bar close to avoid intrabar shifts.
  Motivation: Why this design? 
Traders often miss subtle session shifts amid fast-moving charts, leading to entries during low-liquidity periods or exits before peak activity. Standard chart tools lack integrated time visualization, forcing constant tab-switching. This indicator addresses that by embedding a customizable clock with session rings, ensuring time context is always in view without disrupting workflow.
  What’s different vs. standard approaches? 
- Reference baseline: Traditional session highlighters use simple background fills or vertical lines, which clutter the chart and ignore global time zones.
- Architecture differences:
  - Perspective projection rotates and scales points to mimic 3D depth, unlike flat 2D drawings.
  - Nested radial arcs for sessions, with dynamic radius assignment to avoid overlap.
  - Live time calculation adjusted for user-selected time zones, including optional daylight savings offset.
- Practical effect: The tilted view prevents labels from bunching at chart edges, and active session emphasis draws the eye to liquidity hotspots, making multi-session overlaps immediately apparent for better timing.
  How it works (technical) 
The indicator calculates current time in the selected time zone by adjusting the system timestamp with a fixed offset, plus an optional one-hour bump for daylight savings. This yields hour, minute, and second values that drive hand positions: the hour hand advances slowly with fractional minute input, the minute hand ticks per 60 seconds, and the second hand sweeps fully each minute.
Points for the clock face and arcs are generated as arrays of coordinates, transformed via rotation around the x-axis to apply tilt, then projected onto chart space using a scaling factor based on depth. Radial lines mark every hour from zero to 23, extending to the outermost session ring. Session arcs span user-defined hour ranges, drawn as open polylines with step interpolation for smoothness.
On the last bar, all prior drawings are cleared, and new elements are added: filled clock circles, hand lines from center to tip, a small orbiting circle at the current time position, and centered labels for hours, sessions, and time. The active session is identified by checking if the current time falls within its range, then its arc thickens and label inverts colors. Initialization populates a timezone array once, with persistent bar time tracking for horizontal positioning.
  Parameter Guide 
Clock Size — Controls overall radius in pixels, affecting visibility on dense charts — Default: 200 — Larger values suit wide screens but may crowd small views; start smaller for mobile.
Camera Angle — Sets tilt from top-down (zero) to side (90 degrees), altering projection depth — Default: 45 — Steeper angles enhance readability on sloped trends but flatten at extremes.
Resolution — Defines polygon sides for circles and arcs, balancing smoothness and draw calls — Default: 64 — Higher improves curves on large clocks; lower aids performance on slow devices.
Hour/Minute/Second Hand Length — Scales each hand from center, with seconds longest for precision — Defaults: 100/150/180 — Proportional sizing prevents overlap; shorten for compact layouts.
Clock Base Color — Tints face and frame — Default: blue — Neutral shades reduce eye strain; match chart theme.
Hand Colors — Assigns distinct hues to each hand — Defaults: red/green/yellow — High contrast aids quick scans; avoid chart-matching to stand out.
Hour Label Size — Text scale for 1-12 markers — Default: normal — Larger for distant views, but risks clutter.
Digital Time Size — Scale for HH:MM:SS readout — Default: large — Matches clock for balance; tiny for minimalism.
Digital Time Vertical Offset — Shifts readout up (negative) or down — Default: -50 — Positions above clock to avoid hand interference.
Timezone — Selects reference city/offset — Default: New York (UTC-05) — Matches trading locale; verify offsets manually.
Summer Time (DST) — Adds one hour if active — Default: false — Enable for regions observing it; test transitions.
Show/Label/Session/Color for Each Market — Toggles arc, sets name, time window, and hue per session (New York/London/Tokyo/Sydney) — Defaults: true/"New York"/1300-2200/orange, etc. — Customize windows to local exchange hours; colors differentiate overlaps.
  Reading & Interpretation 
The analog face shows a blue-tinted circle with white 1-12 labels and gray hour ticks; hands extend from center in assigned colors, pointing to current positions. A white dot with orbiting ring marks exact time on the session arc. Digital readout below displays padded HH:MM:SS in white on black.
Active sessions glow with bold arcs and white labels on colored backgrounds; inactive ones use thin lines and colored text on light fills. Overlaps stack outward, with the innermost (New York) closest to the clock. If no session is active, the marker sits on the base ring.
  Practical Workflows & Combinations 
- Trend following: Enter longs during London-New York overlap (thicker dual arcs) confirmed by higher highs; filter with volume spikes.
- Exits/Stops: Tighten stops pre-Tokyo open if arc thickens, signaling volatility ramp; trail during Sydney for overnight holds.
- Multi-asset/Multi-TF: Defaults work across forex/stocks; on higher timeframes, enlarge clock size to counter bar spacing. Pair with session volume oscillators for confirmation.
  Behavior, Constraints & Performance 
Rendering occurs only on the last bar, using confirmed history for stable display; live bars update hands and marker without repainting prior elements. No security calls or higher timeframe fetches, so no lookahead bias.
Resource limits include 2000 bars back for positioning, 500 each for lines, labels, and boxes—sufficient for full sessions without overflow. Arrays hold timezone data statically. On very wide charts, projection may skew slightly due to fixed scale.
Known limits: Visual positioning drifts on extreme zooms; daylight savings assumes manual toggle, risking one-hour errors during changes.
  Sensible Defaults & Quick Tuning 
Start with New York timezone, 45-degree tilt, and all sessions enabled—these balance global coverage without clutter. For too-small visibility, bump clock size to 300 and resolution to 48. If labels overlap on narrow views, reduce hand lengths proportionally. To emphasize one session (e.g., London), disable others and widen its color contrast. For minimalism, set digital size to small and offset to -100.
  What this indicator is—and isn’t 
This is a visual time and session overlay to contextualize trading windows, not a signal generator or predictive tool. It complements price analysis and risk rules but requires manual interpretation. Use alongside order flow or momentum indicators for decisions.
  Disclaimer 
The content provided, including all code and materials, is strictly for educational and informational purposes only. It is not intended as, and should not be interpreted as, financial advice, a recommendation to buy or sell any financial instrument, or an offer of any financial product or service. All strategies, tools, and examples discussed are provided for illustrative purposes to demonstrate coding techniques and the functionality of Pine Script within a trading context.  
Any results from strategies or tools provided are hypothetical, and past performance is not indicative of future results. Trading and investing involve high risk, including the potential loss of principal, and may not be suitable for all individuals. Before making any trading decisions, please consult with a qualified financial professional to understand the risks involved.  
By using this script, you acknowledge and agree that any trading decisions are made solely at your discretion and risk.  
Do not use this indicator on Heikin-Ashi, Renko, Kagi, Point-and-Figure, or Range charts, as these chart types can produce unrealistic results for signal markers and alerts.  
 Best regards and happy trading  
Chervolino 
  Acknowledgments 
This indicator draws inspiration from the open-source contributions of the TradingView community, whose advanced programming techniques have greatly influenced its development. Special thanks to LonesomeTheBlue for the innovative polyline handling and midpoint centering techniques in RSI Radar Multi Time Frame: 
Gratitude also extends to LuxAlgo for the precise timezone calculations in Sessions: 
Finally, appreciation to TradingView for their comprehensive documentation on polyline features, including the support article at www.tradingview.com and the blog post at www.tradingview.com These resources were instrumental in implementing smooth, dynamic drawings.
Indian + Evening Session HighlighterThis indicator visually highlights two key trading windows for Indian instruments according to IST:
Indian Session: 9:00 AM to 11:30 PM IST is shaded light orange on the chart, representing the main domestic trading hours for stocks, indices, commodities, or derivatives.
Evening Session: 5:00 PM to 10:30 PM IST is shaded light red, marking the commonly followed evening window, which often captures the impact of US and European market movements.
The indicator automatically overlays these session backgrounds on your chart, helping you quickly identify when price action occurs during India’s core and evening trade windows. This allows traders to focus on strategies specific to these time intervals, identify session-based volatility, and avoid trading during less active periods. If the evening session overlaps with the Indian session, the colors are layered for visual clarity.
It is ideal for intraday traders, option strategists, and anyone monitoring Indian market rhythms or US-linked volatility impacts on Indian assets. No inputs are required; simply apply the script and view distinct session highlights for improved timing and decision making.
DTCC RECAPS Dates 2020-2025This is a simple indicator which marks the RECAPS dates of the DTCC, during the periods of 2020 to 2025.
These dates have marked clear settlement squeezes in the past, such as GME's squeeze of January 2021.
------------------------------------------------------------------------------------------------------------------
The Depository Trust & Clearing Corporation (DTCC) has published the 2025 schedule for its Reconfirmation and Re-pricing Service (RECAPS) through the National Securities Clearing Corporation (NSCC). RECAPS is a monthly process for comparing and re-pricing eligible equities, municipals, corporate bonds, and Unit Investment Trusts (UITs) that have aged two business days or more .
At its core, the Reconfirmation and Re-pricing Service (RECAPS) is a risk management tool used by the National Securities Clearing Corporation (NSCC), a subsidiary of the DTCC. Its primary purpose is to reduce the risks associated with aged, unsettled trades in the U.S. securities market .
When a trade is executed, it is sent to the NSCC for clearing and settlement. However, for various reasons, some trades may not settle on their scheduled date and become "aged." These unsettled trades create risk for both the trading parties and the clearinghouse (NSCC) because the value of the underlying securities can change over time. If a trade fails to settle and one of the parties defaults, the NSCC may have to step in to complete the transaction at the current market price, which could result in a loss.
RECAPS mitigates this risk by systematically re-pricing these aged, open trading obligations to the current market value. This process ensures that the financial obligations of the clearing members accurately reflect the present value of the securities, preventing the accumulation of significant, unmanaged market risk .
Detailed Mechanics: How Does it Work?
The RECAPS process revolves around two key dates you asked about: the RECAPS Date and the Settlement Date .
The RECAPS Date: On this day, the NSCC runs a process to identify all eligible trades that have remained unsettled for two business days or more. These "aged" trades are then re-priced to the current market value. This re-pricing is not just a simple recalculation; it generates new settlement instructions. The original, unsettled trade is effectively cancelled and replaced with a new one at the current market price. This is done through the NSCC's Obligation Warehouse.
The Settlement Date: This is typically the business day following the RECAPS date. On this date, the financial settlement of the re-priced trades occurs. The difference in value between the original trade price and the new, re-priced value is settled between the two trading parties. This "mark-to-market" adjustment is processed through the members' settlement accounts at the DTCC.
Essentially, the process ensures that any gains or losses due to price changes in the underlying security are realized and settled periodically, rather than being deferred until the trade is ultimately settled or cancelled.
Are These Dates Used to Check Margin Requirements?
Yes, indirectly, this process is closely tied to managing margin and collateral requirements for NSCC members. Here’s how:
The NSCC requires its members to post collateral to a clearing fund, which acts as a mutualized guarantee against defaults. The amount of collateral each member must provide is calculated based on their potential risk exposure to the clearinghouse.
By re-pricing aged trades to current market values through RECAPS, the NSCC gets a more accurate picture of each member's outstanding obligations and, therefore, their current risk profile. If a member has a large number of unsettled trades that have moved against them in value, the re-pricing will crystallize that loss, which will be settled the next day.
This regular re-pricing and settlement of aged trades prevent the build-up of large, unrealized losses that could increase a member's risk profile beyond what their posted collateral can cover. While RECAPS is not the only mechanism for calculating margin (the NSCC has a complex system for daily margin calls based on overall portfolio risk), it is a crucial component for managing the specific risk posed by aged, unsettled transactions. It ensures that the value of these obligations is kept current, which in turn helps ensure that collateral levels remain adequate.
--------------------------------------------------------------------------------------------------------------
 
Future dates of 2025:
- November 12, 2025 (Wed)
- November 25, 2025 (Tue)
- December 11, 2025 (Thu)
- December 29, 2025 (Mon)
The dates for 2026 haven't been published yet at this time.
 
The RECAPS process is essentially the industry's way of retrying the settlement of all unresolved FTDs, netting outstanding obligations, and gradually forcing resolution (either delivery or buy-in). Monitoring RECAPS cycles is one way to track the lifecycle, accumulation, and eventual resolution (or persistence) of failures to deliver in the U.S. market.
The US Stock market has become a game of settlement dates and FTDs, therefore this can be useful to track.
HTF Candle Countdown Timer//@version=5
indicator("HTF Candle Countdown Timer", overlay=true)
// ============================================================================
// INPUTS - SETTINGS MENU
// ============================================================================
// --- Mode Selection ---
mode = input.string(title="Mode", defval="Auto", options= , 
     tooltip="Auto: Αυτόματη αντιστοίχιση timeframes Custom: Επιλέξτε το δικό σας timeframe")
// --- Custom Timeframe Selection ---
customTF = input.timeframe(title="Custom Timeframe", defval="15", 
     tooltip="Ενεργό μόνο σε Custom Mode")
// --- Table Position ---
tablePos = input.string(title="Table Position", defval="Bottom Right", 
     options= )
// --- Colors ---
textColor = input.color(title="Text Color", defval=color.white)
bgColor = input.color(title="Background Color", defval=color.black)
transparentBg = input.bool(title="Transparent Background", defval=false, 
     tooltip="Ενεργοποίηση διάφανου φόντου")
// --- Text Size ---
textSize = input.string(title="Text Size", defval="Normal", 
     options= )
// ============================================================================
// FUNCTIONS
// ============================================================================
// Μετατροπή string position σε table position constant
getTablePosition(pos) =>
    switch pos
        "Top Left" => position.top_left
        "Top Right" => position.top_right
        "Bottom Left" => position.bottom_left
        "Bottom Right" => position.bottom_right
        => position.bottom_right
// Μετατροπή string size σε size constant
getTextSize(size) =>
    switch size
        "Auto" => size.auto
        "Tiny" => size.tiny
        "Small" => size.small
        "Normal" => size.normal
        "Large" => size.large
        "Huge" => size.huge
        => size.normal
// Αυτόματη αντιστοίχιση timeframes
getAutoTimeframe() =>
    currentTF = timeframe.period
    string targetTF = ""
    
    if currentTF == "1"
        targetTF := "15"
    else if currentTF == "3"
        targetTF := "30"
    else if currentTF == "5"
        targetTF := "60"
    else if currentTF == "15"
        targetTF := "240"
    else if currentTF == "60"
        targetTF := "D"
    else if currentTF == "240"
        targetTF := "W"
    else
        // Default fallback για μη-mapped timeframes
        targetTF := "60"
    
    targetTF
// Μετατροπή timeframe string σε λεπτά για σύγκριση
timeframeToMinutes(tf) =>
    float minutes = 0.0
    
    if str.contains(tf, "D")
        multiplier = str.tonumber(str.replace(tf, "D", ""))
        minutes := na(multiplier) ? 1440.0 : multiplier * 1440.0
    else if str.contains(tf, "W")
        multiplier = str.tonumber(str.replace(tf, "W", ""))
        minutes := na(multiplier) ? 10080.0 : multiplier * 10080.0
    else if str.contains(tf, "M")
        multiplier = str.tonumber(str.replace(tf, "M", ""))
        minutes := na(multiplier) ? 43200.0 : multiplier * 43200.0
    else
        minutes := str.tonumber(tf)
    
    minutes
// Format countdown σε ώρες:λεπτά:δευτερόλεπτα ή λεπτά:δευτερόλεπτα
formatCountdown(milliseconds) =>
    totalSeconds = math.floor(milliseconds / 1000)
    hours = math.floor(totalSeconds / 3600)
    minutes = math.floor((totalSeconds % 3600) / 60)
    seconds = totalSeconds % 60
    
    string result = ""
    
    if hours > 0
        result := str.format("{0,number,00}:{1,number,00}:{2,number,00}", hours, minutes, seconds)
    else
        result := str.format("{0,number,00}:{1,number,00}", minutes, seconds)
    
    result
// Μετατροπή timeframe σε readable format
formatTimeframe(tf) =>
    string formatted = ""
    
    if str.contains(tf, "D")
        formatted := tf + "aily"
    else if str.contains(tf, "W")
        formatted := tf + "eekly"
    else if str.contains(tf, "M")
        formatted := tf + "onthly"
    else if tf == "60"
        formatted := "1H"
    else if tf == "240"
        formatted := "4H"
    else
        formatted := tf + "min"
    
    formatted
// ============================================================================
// MAIN LOGIC
// ============================================================================
// Επιλογή target timeframe βάσει mode
targetTimeframe = mode == "Auto" ? getAutoTimeframe() : customTF
// Validation: Έλεγχος αν το target timeframe είναι μεγαλύτερο από το τρέχον
currentTFMinutes = timeframeToMinutes(timeframe.period)
targetTFMinutes = timeframeToMinutes(targetTimeframe)
var string warningMessage = ""
if targetTFMinutes <= currentTFMinutes
    warningMessage := "⚠ HTF < Current TF"
else
    warningMessage := ""
// Υπολογισμός του χρόνου κλεισίματος του HTF candle
htfTime = request.security(syminfo.tickerid, targetTimeframe, time)
htfTimeClose = request.security(syminfo.tickerid, targetTimeframe, time_close)
// Υπολογισμός υπολειπόμενου χρόνου σε milliseconds
remainingTime = htfTimeClose - timenow
// Format countdown
countdown = warningMessage != "" ? warningMessage : formatCountdown(remainingTime)
// Format timeframe για εμφάνιση
displayTF = formatTimeframe(targetTimeframe)
// ============================================================================
// TABLE DISPLAY
// ============================================================================
// Δημιουργία table
var table countdownTable = table.new(
     position=getTablePosition(tablePos), 
     columns=2, 
     rows=2, 
     bgcolor=transparentBg ? color.new(bgColor, 100) : bgColor,
     frame_width=1,
     frame_color=color.gray,
     border_width=1)
// Update table content
if barstate.islast
    // Header
    table.cell(countdownTable, 0, 0, "Timeframe:", 
         text_color=textColor, 
         bgcolor=transparentBg ? color.new(bgColor, 100) : bgColor,
         text_size=getTextSize(textSize))
    
    table.cell(countdownTable, 1, 0, displayTF, 
         text_color=textColor, 
         bgcolor=transparentBg ? color.new(bgColor, 100) : bgColor,
         text_size=getTextSize(textSize))
    
    // Countdown
    table.cell(countdownTable, 0, 1, "Countdown:", 
         text_color=textColor, 
         bgcolor=transparentBg ? color.new(bgColor, 100) : bgColor,
         text_size=getTextSize(textSize))
    
    table.cell(countdownTable, 1, 1, countdown, 
         text_color=warningMessage != "" ? color.orange : textColor, 
         bgcolor=transparentBg ? color.new(bgColor, 100) : bgColor,
         text_size=getTextSize(textSize))
// ============================================================================
// END OF SCRIPT
// ============================================================================
VWMA Series (Dynamic) mtf - Dual Gradient Colored"VWMA Series (Dynamic) mtf - Dual Gradient Colored" is a multi-timeframe (MTF) Volume-Weighted Moving Average (VWMA) ribbon indicator that plots up to 60 sequential VWMAs with arithmetic progression periods (e.g., 1, 4, 7, 10…).  Each VWMA line is dual-gradient colored:  Base hue = Greenish (#2dd204) if close > VWMA (bullish), Magenta (#ff00c8) if close < VWMA (bearish)  
Brightness gradient = fades from base → white as period increases (short → long-term)
Uses daily resolution by default (timeframe="D"), making it ideal for higher-timeframe trend filtering on lower charts.Key FeaturesFeature
Description
Dynamic Periods
Start + i × Increment → e.g., 1, 4, 7, 10… up to 60 terms
Dual Coloring
Bull/Bear + Gradient (short = vivid, long = pale)
MTF Ready
Plots daily VWMAs on any lower timeframe (1H, 15M, etc.)
No Lag on Long Sets
Predefined "best setups" eliminate repainting/lag
Transparency Control
Adjustable line opacity for clean visuals
Scalable
Up to 60 VWMAs (max iterations)
Recommended Setups (No Lag)Type
Example Sequence (Start, Inc, Iter)
Long-Term Trend
1, 3, 30 → 1, 4, 7 … 88
93, 3, 30 → 93, 96 … 180
372, 6, 30 → 372, 378 … 546
Short-Term Momentum
1, 1, 30 → 1, 2, 3 … 30
94, 2, 30 → 94, 96 … 152
1272, 5, 30 → 1272, 1277 … 1417
Key Use CasesUse Case
How to Use
1. Multi-Timeframe Trend Alignment
On 1H chart, use 1, 3, 30 daily VWMAs → price above all green lines = strong uptrend
2. Dynamic Support/Resistance
Cluster of long-term pale VWMAs = major S/R zone
3. Early Trend Change Detection
Short-term vivid lines flip from red → green before longer ones = early bullish signal
4. Ribbon Compression/Expansion
Tight bundle → consolidation; fanning out → trend acceleration
5. Mean Reversion Entries
Price far from long-term VWMA cluster + short-term reversal = pullback trade
6. Volume-Weighted Fair Value
Long-period VWMAs reflect true average price paid over weeks/months
Visual Summary
Price ↑
  ████  ← Short VWMA (vivid green = close > VWMA)
   ███
    ██
     █
    . . . fading to white
     █
    ██
   ███
  ████  ← Long VWMA (pale = institutional average)
Green lines = price above VWMA (bullish bias)  
Magenta lines = price below VWMA (bearish bias)  
Gradient = shorter (left) → brighter; longer (right) → whiter  
Ribbon thickness = trend strength (wide = strong, narrow = weak)
Best For  Swing traders using daily trend on intraday charts  
Volume-based strategies (VWMA > SMA)  
Clean, colorful trend visualization without clutter  
Institutional fair value anchoring via long-period VWMAs
Pro Tip:
Use Start=1, Increment=3, Iterations=30 on a 4H chart with timeframe="D" → perfect daily trend filter with zero lag and beautiful gradient flow.
Bitcoin: Price projection from previous cycles onto 2024 cycleAn indicator for displaying the  BITFINEX:BTCUSD  price movement pattern from previous cycles onto the 2024–2025 cycle.
Best checked on Bitfinex or the “Brave New Coin – Bitcoin Liquid Index” (though that one has gone offline).
Next time it should be done with embedded constants rather than by copying candles from previous cycles.
Publishing to share the idea.
Buy/Sell Zones – TV Style//@version=5
indicator("Buy/Sell Zones – TV Style", overlay=true, timeframe="", timeframe_gaps=true)
//=====================
// الإعدادات
//=====================
len     = input.int(100,  "Length", minval=10)
useATR  = input.bool(true, "Use ATR (بدل الانحراف المعياري)")
mult    = input.float(2.0, "Band Multiplier", step=0.1)
useRSI  = input.bool(true, "تفعيل فلتر RSI")
rsiOB   = input.int(70, "RSI Overbought", minval=50, maxval=90)
rsiOS   = input.int(30, "RSI Oversold",  minval=10, maxval=50)
//=====================
// القناة: أساس + انحراف
//=====================
basis = ta.linreg(close, len, 0)
off   = useATR ? ta.atr(len) * mult : ta.stdev(close, len) * mult
upper = basis + off
lower = basis - off
// نطاق علوي/سفلي بعيد لعمل تعبئة المناطق
lookback      = math.min(bar_index, 500)
topBand       = ta.highest(high, lookback)  + 50 * syminfo.mintick
bottomBand    = ta.lowest(low, lookback)    - 50 * syminfo.mintick
//=====================
// الرسم
//=====================
pUpper   = plot(upper, "Upper", color=color.new(color.blue, 0), linewidth=1)
pLower   = plot(lower, "Lower", color=color.new(color.red,  0), linewidth=1)
pBasis   = plot(basis, "Basis", color=color.new(color.gray, 60), linewidth=2)
// تعبئة المناطق: فوق القناة (أزرق)، تحت القناة (أحمر)
pTop     = plot(topBand,    display=display.none)
pBottom  = plot(bottomBand, display=display.none)
fill(pUpper, pTop,    color=color.new(color.blue, 80))   // منطقة مقاومة/بيع
fill(pBottom, pLower, color=color.new(color.red,  80))   // منطقة دعم/شراء
//=====================
// خط أفقي من قمّة قريبة (يمثل مقاومة) – قريب من الخط المنقّط في الصورة
//=====================
resLen   = math.round(len * 0.6)
dynRes   = ta.highest(high, resLen)
plot(dynRes, "Recent Resistance", color=color.new(color.white, 0), linewidth=1)
//=====================
// إشارات BUY / SELL + فلتر RSI (اختياري)
//=====================
rsi = ta.rsi(close, 14)
touchLower = ta.crossover(close, lower) or close <= lower
touchUpper = ta.crossunder(close, upper) or close >= upper
buyOK  = useRSI ? (touchLower and rsi <= rsiOS) : touchLower
sellOK = useRSI ? (touchUpper and rsi >= rsiOB) : touchUpper
plotshape(buyOK,  title="BUY",  location=location.belowbar, style=shape.labelup,
     text="BUY",  color=color.new(color.green, 0), textcolor=color.white, size=size.tiny, offset=0)
plotshape(sellOK, title="SELL", location=location.abovebar, style=shape.labeldown,
     text="SELL", color=color.new(color.red,   0), textcolor=color.white, size=size.tiny, offset=0)
// تنبيهات
alertcondition(buyOK,  title="BUY",  message="BUY signal: price touched/closed below lower band (RSI filter may apply).")
alertcondition(sellOK, title="SELL", message="SELL signal: price touched/closed above upper band (RSI filter may apply).")
No-Trade Zones UTC+7This indicator helps you visualize and backtest your preferred trading hours. For example, if you have a 9-to-5 job, you obviously can’t trade during that time — and when backtesting, you should avoid those hours too. It also marks weekends if you prefer not to trade on those days.
By highlighting no-trade periods directly on the chart, you can easily see when you shouldn’t be taking trades, without constantly checking the time or date by hovering over the chart. It makes backtesting smoother and more realistic for your personal schedule.






















