QUANTUM MOMENTUMOverview
Quantum Momentum is a sophisticated technical analysis tool designed to help traders identify relative strength between assets through advanced momentum comparison. This cyberpunk-themed indicator visualizes momentum dynamics between your current trading symbol and any comparison asset of your choice, making it ideal for pairs trading, crypto correlation analysis, and multi-asset portfolio management.
Key Features
📊 Multi-Asset Momentum Comparison
Dual Symbol Analysis: Compare momentum between your chart symbol and any other tradable asset
Real-Time Tracking: Monitor relative momentum strength as market conditions evolve
Difference Visualization: Clear histogram display showing which asset has stronger momentum
🎯 Multiple Momentum Calculation Methods
Choose from four different momentum calculation types:
ROC (Rate of Change): Traditional percentage-based momentum measurement
RSI (Relative Strength Index): Oscillator-based momentum from 0-100 range
Percent Change: Simple percentage change over the lookback period
Raw Change: Absolute price change in native currency units
📈 Advanced Trend Filtering System
Enable optional trend filters to align momentum signals with prevailing market direction:
SMA (Simple Moving Average): Classic trend identification
EMA (Exponential Moving Average): Responsive trend detection
Price Action: Identifies trends through higher highs/lows or lower highs/lows patterns
ADX (Average Directional Index): Measures trend strength with customizable threshold
🎨 Futuristic Cyberpunk Design
Neon Color Scheme: Eye-catching cyan, magenta, and matrix green color palette
Glowing Visual Effects: Enhanced visibility with luminescent plot lines
Dynamic Background Shading: Subtle trend state visualization
Real-Time Data Table: Sleek information panel displaying current momentum values and trend status
How It Works
The indicator calculates momentum for both your current chart symbol and a comparison symbol (default: BTC/USDT) using your selected method and lookback period. The difference between these momentum values reveals which asset is exhibiting stronger momentum at any given time.
Positive Difference (Green): Your chart symbol has stronger momentum than the comparison asset
Negative Difference (Pink/Red): The comparison asset has stronger momentum than your chart symbol
When the trend filter is enabled, the indicator will only display signals that align with the detected market trend, helping filter out counter-trend noise.
Settings Guide
Symbol Settings
Compare Symbol: Choose any tradable asset to compare against (e.g., major indices, cryptocurrencies, forex pairs)
Momentum Settings
Momentum Length: Lookback period for momentum calculations (default: 14 bars)
Momentum Type: Select your preferred momentum calculation method
Display Options
Toggle visibility of current symbol momentum line
Toggle visibility of comparison symbol momentum line
Toggle visibility of momentum difference histogram
Optional zero line reference
Trend Filter Settings
Use Trend Filter: Enable/disable trend-based signal filtering
Trend Method: Choose from SMA, EMA, Price Action, or ADX
Trend Length: Period for trend calculations (default: 50)
ADX Threshold: Minimum ADX value to confirm trend strength (default: 25)
Best Use Cases
✅ Pairs Trading: Identify divergences in momentum between correlated assets
✅ Crypto Market Analysis: Compare altcoin momentum against Bitcoin or Ethereum
✅ Stock Market Rotation: Track sector or index relative strength
✅ Forex Strength Analysis: Monitor currency pair momentum relationships
✅ Multi-Timeframe Confirmation: Use alongside other indicators for confluence
✅ Mean Reversion Strategies: Spot extreme momentum divergences for potential reversals
Visual Indicators
⚡ Cyan Line: Your chart symbol's momentum
⚡ Magenta Line: Comparison symbol's momentum
📊 Green/Pink Histogram: Momentum difference (positive = green, negative = pink)
▲ Green Triangle: Bullish trend detected (when filter enabled)
▼ Red Triangle: Bearish trend detected (when filter enabled)
◈ Yellow Diamond: Neutral/sideways trend (when filter enabled)
Pro Tips
💡 Look for crossovers between the momentum lines as potential trade signals
💡 Combine with volume analysis for stronger confirmation
💡 Use momentum divergence (price making new highs/lows while momentum doesn't) for reversal signals
💡 Enable trend filter during ranging markets to reduce false signals
💡 Experiment with different momentum types to find what works best for your trading style
Technical Requirements
TradingView Pine Script Version: v6
Chart Type: Works on all chart types
Indicator Placement: Separate pane (overlay=false)
Data Requirements: Needs access to comparison symbol data
"change" için komut dosyalarını ara
Bitcoin Cycle History Visualization [SwissAlgo]BTC 4-Year Cycle Tops & Bottoms
Historical visualization of Bitcoin's market cycles from 2010 to present, with projections based on weighted averages of past performance.
-----------------------------------------------------------------
CALCULATION METHODOLOGY
Why Bottom-to-Bottom Cycle Measurement?
This indicator defines cycles as bottom-to-bottom periods. This is one of several valid approaches to Bitcoin cycle analysis:
- Focuses on market behavior (price bottoms) rather than supply schedule events (halving-to-halving)
- Bottoms may offer good reference points for some analytical purposes
- Tops tend to be extended periods that are harder to define precisely
- Aligns with how some traditional asset cycles are measured and the timing observed in the broader "risk-on" assets category
- Halving events are shown separately (yellow backgrounds) for reference
- Neither halving-based nor bottom-based measurement is inherently superior
Different analysts prefer different cycle definitions based on their analytical goals. This approach prioritizes observable market turning points.
Cycle Date Definitions
- Approximate monthly ranges used for each event (e.g., Nov 2022 bottom = Nov 1-30, 2022)
- Cycle 1: Jul 2010 bottom → Jun 2011 top → Nov 2011 bottom
- Cycle 2: Nov 2011 bottom → Dec 2013 top → Jan 2015 bottom
- Cycle 3: Jan 2015 bottom → Dec 2017 top → Dec 2018 bottom
- Cycle 4: Dec 2018 bottom → Nov 2021 top → Nov 2022 bottom
- Future cycles will be added as new top/bottom dates become firm
Duration Calculations
- Days = timestamp difference converted to days (milliseconds ÷ 86,400,000)
- Bottom → Top: days from cycle bottom to peak
- Top → Bottom: days from peak to next cycle bottom
- Bottom → Bottom: full cycle duration (sum of above)
Price Change Calculations
- % Change = ((New Price - Old Price) / Old Price) × 100
- Example: $200 → $19,700 = ((19,700 - 200) / 200) × 100 = 9,750% gain
- Approximate historical prices used (rounded to significant figures)
Weighted Average Formula
Recent cycles weighted more heavily to reflect the evolved market structure:
- Cycle 1 (2010-2011): EXCLUDED (too early-stage, tiny market cap)
- Cycle 2 (2011-2015): Weight = 1x
- Cycle 3 (2015-2018): Weight = 3x
- Cycle 4 (2018-2022): Weight = 5x
Formula: Weighted Avg = (C2×1 + C3×3 + C4×5) / (1+3+5)
Example for Bottom→Top days: (761×1 + 1065×3 + 1066×5) / 9 = 1,032 days
Projection Method
- Projected Top Date = Nov 2022 bottom + weighted avg Bottom→Top days
- Projected Bottom Date = Nov 2022 bottom + weighted avg Bottom→Bottom days
- Current days elapsed compared to weighted averages
- Warning symbol (⚠) shown when the current cycle exceeds the historical average
Technical Implementation
- Historical cycle dates are hardcoded (not algorithmically detected)
- Dates represent approximate monthly ranges for each event
- The indicator will be updated as the Cycle 5 top and bottom dates become confirmed
- Updates require manual code maintenance - not automatic
- Users should verify they're using the latest version for current cycle data
-----------------------------------------------------------------
FEATURES
- Background highlights for historical tops (red), bottoms (green), and halving events (yellow)
- Data table showing cycle durations and price changes
- Visual cycle boundary boxes with subtle coloring
- Projected timeframes displayed as dashed vertical lines
- Toggle on/off for each visual element
- Customizable background colors
-----------------------------------------------------------------
DISPLAY SETTINGS
- Show/hide cycle tops, bottoms, halvings, data table, and cycle boxes
- Customizable background colors for each event type
- Clean, institutional-grade visual design suitable for analysis
UPDATES & MAINTENANCE
This indicator is maintained as new cycle events occur. When Cycle 5's top and bottom are confirmed with sufficient time elapsed, the code and projections will be updated accordingly. Check for the latest version periodically.
OPEN SOURCE
Code available for review, modification, and improvement. Educational transparency is prioritized.
-----------------------------------------------------------------
IMPORTANT LIMITATIONS
⚠ EXTREMELY SMALL SAMPLE SIZE
Based on only 4 complete cycles (2011-2022). In statistical analysis, this is insufficient for reliable predictions.
⚠ CHANGED MARKET STRUCTURE
Bitcoin's market has fundamentally evolved since early cycles:
- 2010-2015: Tiny market cap, retail-only, unregulated
- 2024-2025: Institutional adoption, spot ETFs, regulatory frameworks, macro correlation
The environment that created past patterns no longer exists in the same form.
⚠ NO PREDICTIVE GUARANTEE
Historical patterns can and do break. Market cycles are not laws of physics. Past performance does not guarantee future results. The next cycle may not follow historical averages.
⚠ LENGTHENING CYCLE THEORY
Some analysts believe cycles are extending over time (diminishing returns, maturing market). If true, simple averaging underestimates future cycle lengths.
⚠ SELF-FULFILLING PROPHECY RISK
The halving narrative may be partially circular - it works because people believe it works. Sufficient changes in market structure or participant behavior can invalidate the pattern.
⚠ APPROXIMATE DATA
Historical prices rounded to significant figures. Exact bottom/top dates vary by exchange. Month-long ranges are used for simplicity.
EDUCATIONAL USE ONLY
This indicator is designed for historical analysis and understanding Bitcoin's past behavior. It is NOT:
- Trading advice or financial recommendations
- A guarantee or prediction of future price movements
- Suitable as a sole basis for investment decisions
- A replacement for fundamental or technical analysis
The projections show "what if the pattern continues exactly" - not "what will happen."
Always conduct independent research, understand the risks, and consult qualified financial advisors before making investment decisions. Only invest what you can afford to lose.
VWAP Deviation Oscillator [BackQuant]VWAP Deviation Oscillator
Introduction
The VWAP Deviation Oscillator turns VWAP context into a clean, tradeable oscillator that works across assets and sessions. It adapts to your workflow with four VWAP regimes plus two rolling modes, and three deviation metrics: Percent, Absolute, and Z-Score. Colored zones, optional standard deviation rails, and flexible plot styles make it fast to read for both trend following and mean reversion.
What it does
This tool measures how far price is from a chosen VWAP and expresses that gap as an oscillator. You can view the deviation as raw price units, percent, or standardized Z-Score. The plot can be a histogram or a line with optional fills and sigma bands, so you can quickly spot polarity shifts, overbought and oversold conditions, and strength of extension.
VWAP modes track a session VWAP that resets (4H, Daily, Weekly) or a rolling VWAP that updates continuously over a fixed number of bars or days.
Deviation modes let you choose the lens: Percent, Absolute, or Z-Score. Each highlights different aspects of stretch and mean pressure.
Visual encoding uses a 10-zone color palette to grade the magnitude of deviation on both sides of zero.
Volatility guards compute mode-specific sigma so thresholds are stable even when volatility compresses.
Why this works
VWAP is a high signal anchor used by institutions to gauge fair participation. Deviations around VWAP cluster in regimes: mild oscillations within a band, decisive pushes that signal imbalance, and standardized extremes that often precede either continuation or snapback. Expressing that distance as a single time series adds clarity: bias is the oscillator’s sign, risk context is its magnitude, and regime is the way it behaves around sigma lines.
How to use it
Trend following
Favor the side of the zero line. Bullish when the oscillator is above zero and making higher swing highs. Bearish when below zero and making lower swing lows. Use +1 sigma and +2 sigma in your mode as strength tiers. Pullbacks that hold above zero in uptrends, or below zero in downtrends, are often continuation entries.
Mean reversion
Fade stretched readings when structure supports it. Look for tests of +2 sigma to +3 sigma that fail to progress and roll back toward zero, or the mirror on the downside. Z-Score mode is best when you want standardized gates across assets. Percent mode is intuitive for intraday scalps where a given percent stretch tends to mean revert.
Session playbook
Use Daily or Weekly VWAP for intraday or swing context. Rolling modes help when the asset lacks clean session boundaries or when you want a continuous anchor that adapts to liquidity shifts.
Key settings
VWAP computation
VWAP Mode = 4 Hours, Daily, Weekly, Rolling (Bars), Rolling (Days). Session modes reset the VWAP when a new session begins. Rolling modes compute VWAP over a fixed trailing window.
Rolling (Lookback: Bars) controls the trailing bar count when using Rolling (Bars).
Rolling (Lookback: Days) converts days to bars at runtime and uses that trailing span.
Use Close instead of HLC3 switches the price reference. HLC3 is smoother. Close makes the anchor track settlement more tightly.
Deviation measurement
Deviation Mode
Percent : 100 * (Price / VWAP - 1). Good for uniform scaling across instruments.
Absolute : Price - VWAP. Good when price units themselves matter.
Z-Score : Standardizes the absolute residual by its own mean and standard deviation over Z/Std Window . Ideal for cross-asset comparability and regime studies.
Z/Std Window sets the mean and standard deviation window for Z-Score mode.
Volatility controls
Percent Mode Volatility Lookback estimates sigma for percent deviations.
Absolute Mode Volatility Lookback estimates sigma for absolute deviations.
Minimum Sigma Guard (pct pts) prevents the percent sigma from collapsing to near zero in extremely quiet markets.
Visualization
Plot Type = Histogram or Line. Histogram emphasizes impulse and polarity changes. Line emphasizes trend waves and divergences.
Positive Color / Negative Color define the palette for line mode. Histogram uses a 10-bucket gradient automatically.
Show Standard Deviations plots symmetric rails at ±1, ±2, ±3 sigma in the current mode’s units.
Fill Line Oscillator and Fill Opacity add a soft bias band around zero for line mode.
Line Width affects both the oscillator and the sigma rails.
Reading the zones
The oscillator’s color and height map deviation to nine graded buckets on each side of zero, with deeper greens above and deeper reds below. In Percent and Absolute modes, those buckets are scaled by their mode-specific sigma. In Z-Score mode the bucket edges are fixed at 0.5, 1.0, 2.0, and 2.8.
0 to +1 sigma weak positive bias, usually rotational.
+1 to +2 sigma constructive impulse. Pullbacks that hold above zero often continue.
+2 to +3 sigma strong expansion. Watch for either trend continuation or exhaustion tells.
Beyond +3 sigma statistical extreme. Requires structure to avoid fading too soon.
Mirror logic applies on the negative side.
Suggested workflows
Trend continuation checklist
Pick a session VWAP that matches your timeframe, for example Daily for intraday or Weekly for position trades.
Wait for the oscillator to hold the correct side of zero and for a sequence of higher swing lows in the oscillator (uptrend) or lower swing highs (downtrend).
Buy pullbacks that stabilize between zero and +1 sigma in an uptrend. Sell rallies that stabilize between zero and -1 sigma in a downtrend.
Use the next sigma band or a prior price swing as your target reference.
Mean reversion checklist
Switch to Z-Score mode for standardized thresholds.
Identify tests of ±2 sigma to ±3 sigma that fail to extend while price meets support or resistance.
Enter on a polarity change through the prior histogram bar or a small hook in line mode.
Fade back to zero or to the opposite inner band, then reassess.
Notes on the three modes
Percent is easy to reason about when you care about proportional stretch. It is well suited to intraday and multi-asset dashboards.
Absolute tracks cash distance from VWAP. This is useful when instruments have tight ticks and you plan risk in price units.
Z-Score standardizes the residual and is best for quant studies, cross-asset comparisons, and threshold research that must be scale invariant.
What the alerts can tell you
Polarity changes at zero can mark the start or end of a leg.
Crosses of ±1 sigma identify overbought or oversold in the current mode’s units.
Zone changes signal an upgrade or downgrade in deviation strength.
Troubleshooting and edge cases
If your instrument has long flat periods, keep Minimum Sigma Guard above zero in Percent mode so the rails do not vanish.
In Rolling modes, very short windows will respond quickly but can whip around. Session modes smooth this by resetting at well known boundaries.
If Z-Score looks erratic, increase Z/Std Window to stabilize the estimate of mean and sigma for the residual.
Final thoughts
VWAP is the anchor. The deviation oscillator is the narrative. By separating bias, magnitude, and regime into a simple stream you can execute faster and review cleaner. Pick the VWAP mode that matches your horizon, choose the deviation lens that matches your risk framework, and let the color graded zones guide your decisions.
RXTrend█ OVERVIEW
The "RXTrend" indicator is a technical analysis tool based on a unique approach to trend identification using RSI values from overbought and oversold zones. Designed for traders seeking a precise tool to identify key market levels and trend direction, the indicator offers flexible settings, dynamic trend lines, candlestick coloring, and buy/sell signals, supported by alerts for key events.
█ CONCEPTS
"RXTrend" leverages the Relative Strength Index (RSI) to identify overbought and oversold zones, which are often significant areas on the chart due to potentially higher volume, increased volatility, or acting as pivot points. To address this, I created an indicator that uses RSI values from these zones, mapping them to price levels to determine the trend. Additionally, for a clearer market picture, boxes are added to highlight overbought and oversold zones on the chart, and candlestick coloring is based on the direction of the RSI moving average. This provides further confirmation of the trend direction and identifies potential correction or reversal points. The indicator is universal and works across all markets (stocks, forex, cryptocurrencies) and timeframes.
█ FEATURES
- RSI Calculation: Calculates RSI based on the closing price over a specified period, with a default length of 14.
- Trend Line: A smoothed trend line based on mapping RSI values from overbought (for downtrends) or oversold (for uptrends) zones to price levels. RSI values are transformed into prices using the price range from a selected period (default: 50 bars) and then smoothed to form the trend line. The line changes color based on the trend direction (blue for uptrend, orange for downtrend).
- Candlestick Coloring: Option to color candles based on the direction of the RSI moving average (RSI MA). Candle colors align with the trend and box colors (blue for uptrend, orange for downtrend, gray for neutral).
- Overbought and Oversold Zones: Identifies overbought (RSI > OB) and oversold (RSI < OS) levels, drawing dynamic boxes on the price chart to reflect these zones. Boxes update in real-time, adjusting to new highs and lows.
- Buy and Sell Signals: Generates buy signals (blue "Buy" labels) when the price crosses above the smoothed oversold line and sell signals (orange "Sell" labels) when the price crosses below the smoothed overbought line.
- Shadow Fill: Option to fill the space between the trend line and price (HL2) with adjustable transparency, aiding visual trend assessment.
Alerts: Built-in alerts for:
- Buy and sell signals.
- Appearance of new overbought/oversold boxes.
- RSI MA direction change (candle color change to uptrend or downtrend).
Customization: Allows adjustment of RSI length, overbought/oversold levels, smoothing period, colors, box and label transparency, and the option to keep boxes after RSI returns to normal.
█ HOW TO USE
Add to Chart: Apply the indicator to your TradingView chart via the Pine Editor or Indicators menu.
Configure Settings:
RSI Settings:
- RSI Length: Sets the RSI calculation period (default: 14).
- Overbought Level (OB): Sets the overbought threshold (default: 70).
- Oversold Level (OS): Sets the oversold threshold (default: 30).
Price Settings:
- Price Range Lookback: Defines the period for calculating the price range (default: 50).
Candle Coloring:
- Color Candles: Enables/disables candle coloring based on RSI MA direction.
- RSI MA Length: Sets the RSI moving average period (default: 21).
Smoothing Settings:
- Smoothing Length: Degree of trend line smoothing (default: 5).
Colors:
- Trend Colors: Customize colors for uptrend (default: blue), downtrend (default: orange), and shadow fill.
Box Settings:
- Box Transparency: Adjusts box transparency (0-100).
- Box Colors: Sets colors for overbought (orange) and oversold (blue) zones.
- Keep Boxes: Determines if boxes remain after RSI returns to normal.
Signals:
- Show Buy/Sell Signals: Enables/disables signal label display.
- Label Transparency: Adjusts signal label transparency.
Interpreting Signals:
- Trend Line: Shows market direction (blue for uptrend, orange for downtrend).
- Buy Signals: Blue "Buy" label appears when the price crosses above the smoothed oversold line, signaling a potential uptrend.
- Sell Signals: Orange "Sell" label appears when the price crosses below the smoothed overbought line, signaling a potential downtrend.
- Overbought/Oversold Boxes: Orange boxes indicate overbought zones (RSI > OB), blue boxes indicate oversold zones (RSI < OS). Boxes expand dynamically in real-time.
- Candlestick Coloring: Candle colors align with the trend and box colors, reflecting RSI MA direction.
- Alerts: Set up alerts in TradingView for buy/sell signals, new overbought/oversold boxes, or RSI MA direction changes.
- Combining with Other Tools: Use the indicator alongside support/resistance levels, Fair Value Gaps (FVG), or other indicators to confirm signals.
█ APPLICATIONS
The "RXTrend" indicator is designed to identify key market zones and trend direction, making it useful for trend-following and reversal strategies. It enables:
- Trend Confirmation: Candlestick coloring and the trend line help assess the dominant market direction, supporting entry or exit decisions. The trend line can act as a significant support/resistance level, and a price bounce from it may provide a good entry point, especially when confirmed by Fibonacci levels. Additionally, the appearance of overbought/oversold boxes combined with a change in candle color (RSI MA direction) may indicate an impending correction. This allows analysis of potential market overextension and correction endings, enabling multiple entries within a trend.
- Overbought and Oversold Zone Identification: Boxes highlight potential reversal or correction points, especially when combined with support/resistance levels or FVG.
- Signal-Based Strategies: Buy and sell signals can be used as entry points in a trend or as warnings of potential reversals.
█ NOTES
- The indicator is universal and works across all markets and timeframes due to its RSI-based and price-mapping logic.
- Adjust settings (e.g., RSI length, OB/OS levels, smoothing) to suit your trading style and timeframe.
- Use in conjunction with other technical analysis tools to enhance signal accuracy.
Intraday Rising & Reversal ScannerPine Script Description: Intraday Rising & Reversal ScannerThis Pine Script is a TradingView indicator designed to identify stocks with intraday (1-hour timeframe) potential for bullish (rising) or bearish (reversal) movements. It scans for stocks based on user-defined technical criteria, including price change, relative volume, RSI, EMA, ATR, and VWAP. The script plots signals on the chart, displays a summary table, and triggers alerts when conditions are met.FeaturesBullish Signal (Rising Stocks):1H Price Change: > 1% (configurable, e.g., >2% for volatile markets).
Relative Volume: > 2.0 (volume is at least twice the 20-period average).
RSI (14): Between 50 and 70 (strong but not overbought momentum).
Price vs EMA 13: Price above the 13-period EMA (confirms short-term uptrend).
ATR (14): Current ATR above its 20-period average (indicates volatility).
VWAP: Price above VWAP (optional, shown on chart for manual confirmation).
Bearish Signal (Reversal Stocks):1H Price Change: < -1% (configurable, e.g., <-2% for stronger reversals).
Relative Volume: > 2.0 (high volume confirms selling pressure).
RSI (14): > 70 (overbought, increasing reversal likelihood).
Price vs EMA 13: Price below the 13-period EMA (confirms short-term downtrend).
ATR (14): Current ATR above its 20-period average (indicates volatility).
VWAP: Price below VWAP (optional, shown on chart for manual confirmation).
Visualization:Bullish Signal: Green triangle below the bar.
Bearish Signal: Red triangle above the bar.
VWAP: Plotted as a blue line for manual verification.
Table: Displays real-time metrics (Change %, Relative Volume, RSI, Price vs EMA, ATR, VWAP) in the top-right corner, color-coded (green for bullish, red for bearish).
Alerts:Separate alerts for bullish ("Intraday Bullish Signal") and bearish ("Intraday Bearish Signal") conditions.
Customizable alert messages include parameter values for easy tracking.
How It WorksThe script runs on the 1-hour (1H) timeframe, ensuring all calculations are based on hourly data.
Indicators are computed:Change %: Percentage price change over the last hour.
Relative Volume: Current volume divided by the 20-period SMA of volume.
RSI: 14-period Relative Strength Index.
EMA 13: 13-period Exponential Moving Average.
ATR: 14-period Average True Range, compared to its 20-period SMA.
VWAP: Volume Weighted Average Price, plotted for visual confirmation.
Signals are generated when all conditions for either bullish or bearish criteria are met.
A table summarizes key metrics, and alerts can be set up for real-time notifications.
Usage InstructionsApply the Script:Open TradingView’s Pine Editor.
Copy and paste the script.
Click "Add to Chart" and set the chart to the 1-hour (1H) timeframe.
Set Up Alerts:Right-click on the chart > "Add Alert".
Select "Intraday Bullish Signal" or "Intraday Bearish Signal" as the condition.
Configure notifications (e.g., SMS, email, or TradingView alerts).
Manual VWAP Check:VWAP is plotted as a blue line. Verify that the price is above VWAP for bullish signals or below for bearish signals using the table or chart.
To make VWAP a mandatory filter, uncomment the VWAP conditions in the bull_signal and bear_signal definitions.
Trinity Multi-Timeframe MA TrendOriginal script can be found here: {Multi-Timeframe Trend Analysis } www.tradingview.com
1. all credit the original author www.tradingview.com
2. why change this script:
- added full transparency function to each EMA
- changed to up and down arrows
- change the dashboard to be able to resize and reposition
How to Use This Indicator
This indicator, "Trinity Multi-Timeframe MA Trend," is designed for TradingView and helps visualize Exponential Moving Average (EMA) trends across multiple timeframes. It plots EMAs on your chart, fills areas between them with directional colors (up or down), shows crossover/crossunder labels, and displays a dashboard table summarizing EMA directions (bullish ↑ or bearish ↓) for selected timeframes. It's useful for multi-timeframe analysis in trading strategies, like confirming trends before entries.
Configure Settings (via the Gear Icon on the Indicator Title):
Timeframes Group: Set up to 5 custom timeframes (e.g., "5" for 5 minutes, "60" for 1 hour). These determine the multi-timeframe analysis in the dashboard. Defaults: 5m, 15m, 1h, 4h, 5h.
EMA Group: Adjust the lengths of the 5 EMAs (defaults: 5, 10, 20, 50, 200). These are the moving averages plotted on the chart.
Colors (Inline "c"): Choose uptrend color (default: lime/green) and downtrend color (default: purple). These apply to plots, fills, labels, and dashboard cells.
Transparencies Group: Set transparency levels (0-100) for each EMA's plot and fill (0 = opaque, 100 = fully transparent). Defaults decrease from EMA1 (80) to EMA5 (0) for a gradient effect.
Dashboard Settings Group (newly added):
Dashboard Position: Select where the table appears (Top Right, Top Left, Bottom Right, Bottom Left).
Dashboard Size: Choose text size (Tiny, Small, Normal, Large, Huge) to scale the table for better visibility on crowded charts.
Understanding the Visuals:
EMA Plots: Five colored lines on the chart (EMA1 shortest, EMA5 longest). Color changes based on direction: uptrend (your selected up color) if rising, downtrend (down color) if falling.
Fills Between EMAs: Shaded areas between consecutive EMAs, colored and transparent based on the faster EMA's direction and your transparency settings.
Crossover Labels: Arrow labels (↑ for crossover/uptrend start, ↓ for crossunder/downtrend start) appear on the chart at EMA direction changes, with tooltips like "EMA1".
Dashboard Table (top-right by default):
Rows: EMA1 to EMA5 (with lengths shown).
Columns: Selected timeframes (converted to readable format, e.g., "5m", "1h").
Cells: ↑ (bullish/up) or ↓ (bearish/down) arrows, colored green/lime or purple based on trend, with fading transparency for visual hierarchy.
Use this to quickly check alignment across timeframes (e.g., all ↑ in multiple TFs might signal a strong uptrend).
Trading Tips:
Trend Confirmation: Look for alignment where most EMAs in higher timeframes are ↑ (bullish) or ↓ (bearish).
Entries/Exits: Use crossovers on the chart EMAs as signals, confirmed by the dashboard (e.g., enter long if lower TF EMA crosses up and higher TFs are aligned).
Customization: On lower timeframe charts, set dashboard timeframes to higher ones for top-down analysis. Adjust transparencies to avoid chart clutter.
Limitations: This is a trend-following tool; combine with volume, support/resistance, or other indicators. Backtest on historical data before live use.
Performance: Works best on trending markets; may whipsaw in sideways conditions.
ATR Future Movement Range Projection
The "ATR Future Movement Range Projection" is a custom TradingView Pine Script indicator designed to forecast potential price ranges for a stock (or any asset) over short-term (1-month) and medium-term (3-month) horizons. It leverages the Average True Range (ATR) as a measure of volatility to estimate how far the price might move, while incorporating recent momentum bias based on the proportion of bullish (green) vs. bearish (red) candles. This creates asymmetric projections: in bullish periods, the upside range is larger than the downside, and vice versa.
The indicator is overlaid on the chart, plotting horizontal lines for the projected high and low prices for both timeframes. Additionally, it displays a small table in the top-right corner summarizing the projected prices and the percentage change required from the current close to reach them. This makes it useful for traders assessing potential targets, risk-reward ratios, or option strategies, as it combines volatility forecasting with directional sentiment.
Key features:
- **Volatility Basis**: Uses weekly ATR to derive a stable daily volatility estimate, avoiding noise from shorter timeframes.
- **Momentum Adjustment**: Analyzes recent candle colors to tilt projections toward the prevailing trend (e.g., more upside if more green candles).
- **Time Horizons**: Fixed at 1 month (21 trading days) and 3 months (63 trading days), assuming ~21 trading days per month (excluding weekends/holidays).
- **User Adjustable**: The ATR length/lookback (default 50) can be tweaked via inputs.
- **Visuals**: Green/lime lines for highs, red/orange for lows; a semi-transparent table for quick reference.
- **Limitations**: This is a probabilistic projection based on historical volatility and momentum—it doesn't predict direction with certainty and assumes volatility persists. It ignores external factors like news, earnings, or market regimes. Best used on daily charts for stocks/ETFs.
The indicator doesn't generate buy/sell signals but helps visualize "expected" ranges, similar to how implied volatility informs option pricing.
### How It Works Step-by-Step
The script executes on each bar update (typically daily timeframe) and follows this logic:
1. **Input Configuration**:
- ATR Length (Lookback): Default 50 bars. This controls both the ATR calculation period and the candle count window. You can adjust it in the indicator settings.
2. **Calculate Weekly ATR**:
- Fetches the ATR from the weekly timeframe using `request.security` with a length of 50 weeks.
- ATR measures average price range (high-low, adjusted for gaps), representing volatility.
3. **Derive Daily ATR**:
- Divides the weekly ATR by 5 (approximating 5 trading days per week) to get an equivalent daily volatility estimate.
- Example: If weekly ATR is $5, daily ATR ≈ $1.
4. **Define Projection Periods**:
- 1 Month: 21 trading days.
- 3 Months: 63 trading days (21 × 3).
- These are hardcoded but based on standard trading calendar assumptions.
5. **Compute Base Projections**:
- Base projection = Daily ATR × Days in period.
- This gives the total expected movement (range) without direction: e.g., for 3 months, $1 daily ATR × 63 = $63 total range.
6. **Analyze Candle Momentum (Win Rate)**:
- Counts green candles (close > open) and red candles (close < open) over the last 50 bars (ignores dojis where close == open).
- Total colored candles = green + red.
- Win rate = green / total colored (as a fraction, e.g., 0.7 for 70%). Defaults to 0.5 if no colored candles.
- This acts as a simple momentum proxy: higher win rate implies bullish bias.
7. **Adjust Projections Asymmetrically**:
- Upside projection = Base projection × Win rate.
- Downside projection = Base projection × (1 - Win rate).
- This skews the range: e.g., 70% win rate means 70% of the total range allocated to upside, 30% to downside.
8. **Calculate Projected Prices**:
- High = Current close + Upside projection.
- Low = Current close - Downside projection.
- Done separately for 1M and 3M.
9. **Plot Lines**:
- 3M High: Solid green line.
- 3M Low: Solid red line.
- 1M High: Dashed lime line.
- 1M Low: Dashed orange line.
- Lines extend horizontally from the current bar onward.
10. **Display Table**:
- A 3-column table (Projection, Price, % Change) in the top-right.
- Rows for 1M High/Low and 3M High/Low, color-coded.
- % Change = ((Projected price - Close) / Close) × 100.
- Updates dynamically with new data.
The entire process repeats on each new bar, so projections evolve as volatility and momentum change.
### Examples
Here are two hypothetical examples using the indicator on a daily chart. Assume it's applied to a stock like AAPL, but with made-up data for illustration. (In TradingView, you'd add the script to see real outputs.)
#### Example 1: Bullish Scenario (High Win Rate)
- Current Close: $150.
- Weekly ATR (50 periods): $10 → Daily ATR: $10 / 5 = $2.
- Last 50 Candles: 35 green, 15 red → Total colored: 50 → Win Rate: 35/50 = 0.7 (70%).
- Base Projections:
- 1M: $2 × 21 = $42.
- 3M: $2 × 63 = $126.
- Adjusted Projections:
- 1M Upside: $42 × 0.7 = $29.4 → High: $150 + $29.4 = $179.4 (+19.6%).
- 1M Downside: $42 × 0.3 = $12.6 → Low: $150 - $12.6 = $137.4 (-8.4%).
- 3M Upside: $126 × 0.7 = $88.2 → High: $150 + $88.2 = $238.2 (+58.8%).
- 3M Downside: $126 × 0.3 = $37.8 → Low: $150 - $37.8 = $112.2 (-25.2%).
- On the Chart: Green/lime lines skewed higher; table shows bullish % changes (e.g., +58.8% for 3M high).
- Interpretation: Suggests stronger potential upside due to recent bullish momentum; useful for call options or long positions.
#### Example 2: Bearish Scenario (Low Win Rate)
- Current Close: $50.
- Weekly ATR (50 periods): $3 → Daily ATR: $3 / 5 = $0.6.
- Last 50 Candles: 20 green, 30 red → Total colored: 50 → Win Rate: 20/50 = 0.4 (40%).
- Base Projections:
- 1M: $0.6 × 21 = $12.6.
- 3M: $0.6 × 63 = $37.8.
- Adjusted Projections:
- 1M Upside: $12.6 × 0.4 = $5.04 → High: $50 + $5.04 = $55.04 (+10.1%).
- 1M Downside: $12.6 × 0.6 = $7.56 → Low: $50 - $7.56 = $42.44 (-15.1%).
- 3M Upside: $37.8 × 0.4 = $15.12 → High: $50 + $15.12 = $65.12 (+30.2%).
- 3M Downside: $37.8 × 0.6 = $22.68 → Low: $50 - $22.68 = $27.32 (-45.4%).
- On the Chart: Red/orange lines skewed lower; table highlights larger downside % (e.g., -45.4% for 3M low).
- Interpretation: Indicates bearish risk; might prompt protective puts or short strategies.
#### Example 3: Neutral Scenario (Balanced Win Rate)
- Current Close: $100.
- Weekly ATR: $5 → Daily ATR: $1.
- Last 50 Candles: 25 green, 25 red → Win Rate: 0.5 (50%).
- Projections become symmetric:
- 1M: Base $21 → Upside/Downside $10.5 each → High $110.5 (+10.5%), Low $89.5 (-10.5%).
- 3M: Base $63 → Upside/Downside $31.5 each → High $131.5 (+31.5%), Low $68.5 (-31.5%).
- Interpretation: Pure volatility-based range, no directional bias—ideal for straddle options or range trading.
In real use, test on historical data: e.g., if past projections captured actual moves ~68% of the time (1 standard deviation for ATR), it validates the volatility assumption. Adjust the lookback for different assets (shorter for volatile cryptos, longer for stable blue-chips).
Trend Score with Dynamic Stop Loss HTF
How the Trend Score System Works
This indicator uses a Trend Score (TS) to measure price momentum over time. It tracks whether price is breaking higher or lower, then sums these moves into a cumulative score to define trend direction.
⸻
1. Trend Score (+1 / -1 Mechanism)
On each new bar:
• +1 point: if the current bar breaks the previous bar’s high.
• −1 point: if the current bar breaks the previous bar’s low.
• If both happen in the same bar, they cancel each other out.
• If neither happens, the score does not change.
This creates a simple running measure of bullish vs bearish pressure.
⸻
2. Cumulative Trend Score
The Trend Score is cumulative, meaning each new +1 or -1 is added to the total score, building a continuous count.
• Rising scores = buyers are consistently pushing price to higher highs.
• Falling scores = sellers are consistently pushing price to lower lows.
This smooths out noise and helps identify persistent momentum rather than single-bar spikes.
⸻
3. Trend Flip Trigger (default = 3)
A trend flip occurs when the cumulative Trend Score changes by 3 points (default setting) in the opposite direction of the current trend.
• Bullish Flip:
• Cumulative TS rises 3 points from its most recent low pivot.
• Marks a potential start of a new uptrend.
• A bullish stop-loss (SL) is set at the most recent swing low.
• Bearish Flip:
• Cumulative TS falls 3 points from its most recent high pivot.
• Marks a potential start of a new downtrend.
• A bearish SL is set at the most recent swing high.
Example:
• TS is at -2, then climbs to +1.
• That’s a +3 change, triggering a bullish flip.
⸻
4. Visual Summary
• Green background: Active bullish trend.
• Red background: Active bearish trend.
• ▲ Triangle Up: A bullish flip occurred this bar.
• Stop Loss Line: Shows the structural low used for risk management.
⸻
Why This Matters
The Trend Score measures trend pressure simply and objectively:
• +1 / -1 mechanics track real price behavior (breakouts of highs and lows).
• Cumulative changes of 3 points act like a momentum filter, ignoring small reversals.
• This helps you see true regime shifts on higher timeframes, which is especially useful for swing trades and investing decisions.
⸻
Key Takeaways
• Only flips after meaningful swings: prevents overreacting to single-bar noise.
• SL shows invalidation point: helps you know where a trend thesis fails.
• Works best on Daily or Weekly charts: for smoother, more reliable signals. Using Trend Score for Long-Term Investing
This indicator is designed to support decision-making for higher timeframe investing, such as swing trades, multi-month positions, or even multi-year holds.
It helps you:
• Identify major bullish regimes.
• Decide when to add to winning positions (DCA up).
• Know when to pause buying or consider trimming during weak periods.
• Stay disciplined while holding long-term winners.
Important Note:
These are suggestions for context. Always combine them with your own analysis, portfolio allocation rules, and risk tolerance.
⸻
1. Start With the Higher Timeframe
• Use Weekly charts for a broad investing view.
• Use Daily charts only for fine-tuning entry points or deciding when to add.
• A Bullish Flip on Weekly suggests the market may be entering a major uptrend.
• If Weekly is bullish and Daily also turns bullish, it’s extra confirmation of strength.
⸻
2. Building a Position with DCA
Goal: Grow your position gradually during strong bullish regimes while staying aware of risk.
A. Initial Buy
• Start with a small initial allocation when a Bullish Flip appears on Weekly or Daily.
• This is just a starter position to get exposure while the new trend develops.
B. Adding Through Strength (DCA Up)
• Consider adding during pullbacks, as long as price stays above the active SL line.
• Each add should be smaller or equal to your first buy.
• Spread out adds over time or price levels, instead of going all-in at once.
C. Pause Buying When:
• Price approaches or touches the SL level (trend invalidation).
• A Bearish Flip appears on Weekly or Daily — this signals potential weakness.
• Your total position size reaches your maximum allocation limit for that asset.
⸻
3. Holding Winners
When a position grows in profit:
• Stay in the trend as long as the Weekly regime remains bullish.
• The indicator’s green background acts as a reminder to hold, not panic sell.
• Use the SL bubble to monitor where the trend could potentially break.
• Avoid selling just because of small pullbacks — focus on big-picture trend health.
⸻
4. Taking Partial Profits
While this tool is designed to help hold long-term winners, there may be times to lighten risk:
• After large, rapid moves far above the SL, consider trimming a small portion of your position.
• When MFE (Maximum Favorable Excursion) in the table reaches unusually high levels, it may signal overextension.
• If the Weekly chart turns Neutral or Bearish, you can gradually reduce exposure while waiting for the next Bullish Flip.
⸻
5. Using the Stop Loss Line for Awareness
The Dynamic SL line represents a structural level that, if broken, may suggest the bullish trend is weakening.
How to think about it:
• Above SL: Market remains structurally healthy — continue holding or adding gradually.
• Close to SL: Pause adds. Be cautious and consider tightening your risk.
• Below SL: Treat this as a potential signal to reassess your position, especially if the break is confirmed on Weekly.
The SL is not a hard stop — it’s a visual guide to help you manage expectations.
⸻
6. Example Use Case
Imagine you are investing in a growth stock:
• Weekly Bullish Flip: You open a small starter position.
• Price pulls back slightly but stays above SL: You add a second, smaller tranche.
• Trend continues up for months: You hold and stop adding once your desired allocation is reached.
• Price doubles: You trim 10–20% to lock some profits, but continue holding the majority.
• Price later dips below SL: You slow down, reassess, and decide whether to reduce exposure.
This keeps you:
• Participating in major uptrends.
• Avoiding overcommitment during weak phases.
• Making adjustments gradually, not emotionally.
⸻
7. Suggested Workflow
1. Check Weekly chart → is it Bullish?
2. If yes, review Daily chart to fine-tune entry or adds.
3. Build exposure gradually while Weekly remains bullish.
4. Watch SL bubbles as awareness points for risk management.
5. Use partial trims during big rallies, but avoid exiting entirely too soon.
6. Reassess if Weekly turns Neutral or Bearish.
⸻
Key Takeaways
• Use this as a compass, not a command system.
• Weekly flips = big picture direction.
• Daily flips = timing and precision.
• Add gradually (DCA) while above SL, pause near SL, reassess below SL.
• Hold winners as long as Weekly remains bullish.
Multi-TF Trend Table (Configurable)1) What this tool does (in one minute)
A compact, multi‑timeframe dashboard that stacks eight timeframes and tells you:
Trend (fast MA vs slow MA)
Where price sits relative to those MAs
How far price is from the fast MA in ATR terms
MA slope (rising, falling, flat)
Stochastic %K (with overbought/oversold heat)
MACD momentum (up or down)
A single score (0%–100%) per timeframe
Alignment tick when trend, structure, slope and momentum all agree
Use it to:
Frame bias top‑down (M→W→D→…→15m)
Time entries on your execution timeframe when the higher‑TF stack is aligned
Avoid counter‑trend traps when the table is mixed
2) Table anatomy (each column explained)
The table renders 9 columns × 8 rows (one row per timeframe label you define).
TF — The label you chose for that row (e.g., Month, Week, 4H). Cosmetic; helps you read the stack.
Trend — Arrow from fast MA vs slow MA: ↑ if fastMA > slowMA (up‑trend), ↓ otherwise (down‑trend). Cell is green for up, red for down.
Price Pos — One‑character structure cue:
🔼 if price is above both fast and slow MAs (bullish structure)
🔽 if price is below both (bearish structure)
– otherwise (between MAs / mixed)
MA Dist — Distance of price from the fast MA measured in ATR multiples:
XS < S < M < L < XL according to your thresholds (see §3.3). Useful for judging stretch/mean‑reversion risk and stop sizing.
MA Slope — The fast MA one‑bar slope:
↑ if fastMA - fastMA > 0
↓ if < 0
→ if = 0
Stoch %K — Rounded %K value (default 14‑1‑3). Background highlights when it aligns with the trend:
Green heat when trend up and %K ≤ oversold
Red heat when trend down and %K ≥ overbought Tooltip shows K and D values precisely.
Trend % — Composite score (0–100%), the dashboard’s confidence for that timeframe:
+20 if trendUp (fast>slow)
+20 if fast MA slope > 0
+20 if MACD up (signal definition in §2.8)
+20 if price above fast MA
+20 if price above slow MA
Background colours:
≥80 lime (strong alignment)
≥60 green (good)
≥40 orange (mixed)
<40 grey (weak/contrary)
MACD — 🟢 if EMA(12)−EMA(26) > its EMA(9), else 🔴. It’s a simple “momentum up/down” proxy.
Align — ✔ when everything is in gear for that trend direction:
For up: trendUp and price above both MAs and slope>0 and MACD up
For down: trendDown and price below both MAs and slope<0 and MACD down Tooltip spells this out.
3) Settings & how to tune them
3.1 Timeframes (TF1–TF8)
Inputs: TF1..TF8 hold the resolution strings used by request.security().
Defaults: M, W, D, 720, 480, 240, 60, 15 with display labels Month, Week, Day, 12H, 8H, 4H, 1H, 15m.
Tips
Keep a top‑down funnel (e.g., Month→Week→Day→H4→H1→M15) so you can cascade bias into entries.
If you scalp, consider D, 240, 120, 60, 30, 15, 5, 1.
Crypto weekends: consider 2D in place of W to reflect continuous trading.
3.2 Moving Average (MA) group
Type: EMA, SMA, WMA, RMA, HMA. Changes both fast & slow MA computations everywhere.
Fast Length: default 20. Shorten for snappier trend/slope & tighter “price above fast” signals.
Slow Length: default 200. Controls the structural trend and part of the score.
When to change
Swing FX/equities: EMA 20/200 is a solid baseline.
Mean‑reversion style: consider SMA 20/100 so trend flips slower.
Crypto/indices momentum: HMA 21 / EMA 200 will read slope more responsively.
3.3 ATR / Distance group
ATR Length: default 14; longer makes distance less jumpy.
XS/S/M/L thresholds: define the labels in column MA Dist. They are compared to |close − fastMA| / ATR.
Defaults: XS 0.25×, S 0.75×, M 1.5×, L 2.5×; anything ≥L is XL.
Usage
Entries late in a move often occur at L/XL; consider waiting for a pullback unless you are trading breakouts.
For stops, an initial SL around 0.75–1.5 ATR from fast MA often sits behind nearby noise; use your plan.
3.4 Stochastic group
%K Length / Smoothing / %D Smoothing: defaults 14 / 1 / 3.
Overbought / Oversold: defaults 70 / 30 (adjust to 80/20 for trendier assets).
Heat logic (column Stoch %K): highlights when a pullback aligns with the dominant trend (oversold in an uptrend, overbought in a downtrend).
3.5 View
Full Screen Table Mode: centers and enlarges the table (position.middle_center). Great for clean screenshots or multi‑monitor setups.
4) Signal logic (how each datapoint is computed)
Per‑TF data (via a single request.security()):
fastMA, slowMA → based on your MA Type and lengths
%K, %D → Stoch(High,Low,Close,kLen) smoothed by kSmooth, then %D smoothed by dSmooth
close, ATR(atrLen) → for structure and distance
MACD up → (EMA12−EMA26) > EMA9(EMA12−EMA26)
fastMA_prev → yesterday/previous‑bar fast MA for slope
TrendUp → fastMA > slowMA
Price Position → compares close to both MAs
MA Distance Label → thresholds on abs(close − fastMA)/ATR
Slope → fastMA − fastMA
Score (0–100) → sum of the five 20‑point checks listed in §2.7
Align tick → conjunction of trend, price vs both MAs, slope and MACD (see §2.9)
Important behaviour
HTF values are sampled at the execution chart’s bar close using Pine v6 defaults (no lookahead). So the daily row updates only when a daily bar actually closes.
5) How to trade with it (playbooks)
The table is a framework. Entries/exits still follow your plan (e.g., S/D zones, price action, risk rules). Use the table to know when to be aggressive vs patient.
Playbook A — Trend continuation (pullback entry)
Look for Align ✔ on your anchor TFs (e.g., Week+Day both ≥80 and green, Trend ↑, MACD 🟢).
On your execution TF (e.g., H1/H4), wait for Stoch heat with the trend (oversold in uptrend or overbought in downtrend), and MA Dist not at XL.
Enter on your trigger (break of pullback high/low, engulfing, retest of fast MA, or S/D first touch per your plan).
Risk: consider ATR‑based SL beyond structure; size so 0.25–0.5% account risk fits your rules.
Trail or scale at M/L distances or when score deteriorates (<60).
Playbook B — Breakout with confirmation
Mixed stack turns into broad green: Trend % jumps to ≥80 on Day and H4; MACD flips 🟢.
Price Pos shows 🔼 across H4/H1 (above both MAs). Slope arrows ↑.
Enter on the first clean base‑break with volume/impulse; avoid if MA Dist already XL.
Playbook C — Mean‑reversion fade (advanced)
Use only when higher TFs are not aligned and the row you trade shows XL distance against the higher‑TF context. Take quick targets back to fast MA. Lower win‑rate, faster management.
Playbook D — Top‑down filter for Supply/Demand strategy
Trade first retests only in the direction where anchor TFs (Week/Day) have Align ✔ and Trend % ≥60. Skip counter‑trend zones when the stack is red/green against you.
6) Reading examples
Strong bullish stack
Week: ↑, 🔼, S/M, slope ↑, %K=32 (green heat), Trend 100%, MACD 🟢, Align ✔
Day: ↑, 🔼, XS/S, slope ↑, %K=45, Trend 80%, MACD 🟢, Align ✔
Action: Look for H4/H1 pullback into demand or fast MA; buy continuation.
Late‑stage thrust
H1: ↑, 🔼, XL, slope ↑, %K=88
Day/H4: only 60–80%
Action: Likely overextended on H1; wait for mean reversion or multi‑TF alignment before chasing.
Bearish transition
Day flips from 60%→40%, Trend ↓, MACD turns 🔴, Price Pos “–” (between MAs)
Action: Stand aside for longs; watch for lower‑high + Align ✔ on H4/H1 to join shorts.
7) Practical tips & pitfalls
HTF closure: Don’t assume a daily row changed mid‑day; it won’t settle until the daily bar closes. For intraday anticipation, watch H4/H1 rows.
MA Type consistency: Changing MA Type changes slope/structure everywhere. If you compare screenshots, keep the same type.
ATR thresholds: Calibrate per asset class. FX may suit defaults; indices/crypto might need wider S/M/L.
Score ≠ signal: 100% does not mean “must buy now.” It means the environment is favourable. Still execute your trigger.
Mixed stacks: When rows disagree, reduce size or skip. The tool is telling you the market lacks consensus.
8) Customisation ideas
Timeframe presets: Save layouts (e.g., Swing, Intraday, Scalper) as indicator templates in TradingView.
Alternative momentum: Replace the MACD condition with RSI(>50/<50) if desired (would require code edit).
Alerts: You can add alert conditions for (a) Align ✔ changes, (b) Trend % crossing 60/80, (c) Stoch heat events. (Not shipped in this script, but easy to add.)
9) FAQ
Q: Why do I sometimes see a dash in Price Pos? A: Price is between fast and slow MAs. Structure is mixed; seek clarity before acting.
Q: Does it repaint? A: No, higher‑TF values update on the close of their own bars (standard request.security behaviour without lookahead). Intra‑bar they can fluctuate; decisions should be made at your bar close per your plan.
Q: Which columns matter most? A: For trend‑following: Trend, Price Pos, Slope, MACD, then Stoch heat for entries. The Score summarises, and Align enforces discipline.
Q: How do I integrate with ATR‑based risk? A: Use the MA Dist label to avoid chasing at extremes and to size stops in ATR terms (e.g., SL behind structure at ~1–1.5 ATR).
Intraday Spark Chart [AstrideUnicorn]The Intraday Spark Chart (ISC) is a minimalist yet powerful tool designed to track an asset’s performance relative to its daily opening price. Inspired by Nasdaq's trading-floor analog dashboards, it visualizes intraday percentage changes as a color-coded sparkline, helping traders quickly gauge momentum and session bias.
Ideal for: Day trading, scalping, and multi-asset monitoring.
Best paired with: 1m to 4H timeframes (auto-warns on higher TFs).
Key metrics:
Real-time % change from daily open.
Final daily % change (updated at session close).
Daily open price labels for orientation.
HOW TO USE
Visual Guide
Sparkline Plot:
A green area/line indicates price is above the daily open (bullish).
A red area/line signals price is below the daily open (bearish).
The baseline (0%) represents the daily open price.
Session Markers:
The dotted vertical lines separate trading days.
Gray labels near the baseline show the exact daily open price at the start of each session.
Dynamic Labels:
The labels in the upper left corner of each session range display the current (or final) daily % change. Color matches the trend (green/red) for instant readability.
Practical Use Cases
Opening Range Breakouts: Spot early momentum by observing how price reacts to the daily open.
Multi-Asset Screening: Compare intraday strength across symbols by choosing an asset in the indicator settings panel.
Session Close Prep: Anticipate daily settlement by tracking the final % change (useful for futures/swing traders).
SETTINGS
Asset (Input Symbol) : Defaults to the current chart symbol. Choose any asset to monitor its price action without switching charts - ideal for intermarket analysis or correlation tracking.
WaveTrend Dynamic (Lazy Bear Style)█ OVERVIEW
The WaveTrend Dynamic indicator (in the style of Lazy Bear) is an advanced tool based on the Exponential Smoothing Average (ESA), which adapts to the volatility and price of a financial instrument. It is more flexible than the classic WaveTrend but shares a similar concept of bands around a main oscillator line.
The indicator uses dynamic bands calculated as distances from the ESA, with their width adjustable via the "level" parameter. This allows it to be tailored to various markets, timeframes, and volatility conditions, making it easier to identify trends, reversal points, and buy/sell signals.
█ CONCEPTS
The WaveTrend Dynamic combines oscillator functions with trend analysis. Below, we explain the key components in a simple way, understandable even for beginner users.
Core Calculations
The indicator relies on the adaptive ESA and a few straightforward steps:
1 — ESA (Adaptive Average): Calculated as a smoothed average of the price (from high, low, and close, or HLC3) using the ESA Length parameter (default: 10). This number determines how many past candles are considered in the calculation. The ESA quickly responds to price changes, helping to track trends.
2 — Deviation (D): Measures how much the price deviates from the ESA, factoring in market volatility. This allows the indicator to adapt to different instruments.
3 — Price Distance Indicator (CI): Shows how far the price is from the ESA relative to market volatility. This forms the basis for the main indicator line, reacting to price movements.
4 — WT1 (WaveTrend 1): The main line, smoothing the Price Distance Indicator (CI) with the Average Length parameter (default: 21). It reflects the direction of price movement and momentum.
5 — WT2 (WaveTrend 2): A signal line that further smooths WT1 (with a period of 4). It helps confirm signals through crossovers with WT1.
6 — Bands (UpperBand and LowerBand): These form a dynamic channel around the ESA. Their width depends on the level parameter (default: 100). Wider bands result in fewer but more reliable signals. In the original WaveTrend, the oscillator bands use lower values, such as 50 or 60. To achieve classic oscillator signals (more frequent WT1/WT2 crossovers outside the bands), set the level to 50–60.
Trend Identification
The indicator identifies two types of trends:
• Major Trend: Determined by the position of WT1 relative to the ESA. When WT1 is above the ESA, it indicates a bullish trend. When below, it signals a bearish trend. Line and fill colors reflect this trend.
• Mini-Trend: Based on WT1 and WT2 crossovers. When the lines cross, they change to the same color, signaling short-term changes or reversal points. This is ideal for quick trading decisions.
Visuals and Effects
• WT1 and WT2 Lines: Scaled to price and displayed on the price chart for easier analysis.
• Fills: Between the bands (UpperBand/LowerBand) and between WT1/WT2, with a "wave" effect that adjusts transparency based on the trend (green for bullish, red for bearish).
• Signals: Three types—return-to-band, WT1/WT2 crossovers outside the bands, and crossovers inside the bands. Signals are displayed as triangles with different colors for buy and sell.
█ FEATURES
Detailed features of the indicator, aligned with the order of settings in the script:
• Basic Parameters: ESA Length — controls ESA smoothing; Average Length — affects WT1 responsiveness; level (WT Level) — adjusts band width for signal filtering.
• Display Elements: Options to show/hide ESA, bands, WT1/WT2; customizable colors for lines, fills, and the wave effect.
• Signals: Three signal groups (return-to-band, crossovers outside bands, crossovers inside bands) with display and color customization options.
█ HOW TO USE
1 — Add the indicator to your TradingView chart and adjust parameters: — Increase ESA Length and Average Length for low-volatility markets (e.g., stocks), or decrease for cryptocurrencies or forex. — Set level to 50–60 for classic WaveTrend signals with WT1/WT2 crossovers outside bands. The default value of 100 creates wider bands and fewer signals.
2 — Analyze trends: — Major trend (WT1 vs. ESA) shows the overall market direction. — Mini-trends (WT1/WT2 crossovers) help time short-term entries.
3 — Use signals: — Return-to-band: Buy at the lower band, sell at the upper band (mean-reversion). — Crossovers outside bands: Indicate strong momentum (with a lower level, e.g., 50). — Crossovers inside bands: Signal weaker trend changes.
4 — Combine with other tools: Use with volume, RSI, or support/resistance for better decisions. Test on historical data to optimize settings.
SMT Oscillator: Smarter Money Divergence Detector [PhenLabs]📊Phenlabs - SMT Oscillator: Smarter Money Divergence Detector
Version: PineScript™v6
📌Description
The SMT Oscillator is a sophisticated tool designed to identify smart money divergence between two correlated assets. By analyzing the momentum and volume-weighted price action of a primary and secondary symbol, traders can spot subtle shifts in market dynamics that often precede significant price movements. This indicator is built to provide a clearer, more filtered view of inter-market relationships, solving the common problem of false signals and market noise. Its primary purpose is to equip traders with a quantifiable edge in detecting potential reversals or continuations that are not obvious on a standard price chart.
🚀Points of Innovation
Dual-Symbol Divergence Core: Directly compares momentum (RSI or MACD) between two user-selected symbols to pinpoint true SMT divergence.
Volume-Weighted Analysis: Integrates volume delta into the divergence calculation, giving more weight to moves backed by significant market participation.
Entropy Filter for Noise Reduction: Employs an entropy calculation to filter out low-quality signals during choppy or consolidating market conditions.
Predictive Forecast Line: Utilizes a linear regression model to project the oscillator’s future trajectory, offering a forward-looking glimpse of potential momentum shifts.
Customizable Signal Sensitivity: Allows fine-tuning of overbought and oversold levels to adapt to different market volatilities and trading styles.
Integrated Signal Alerts: Provides built-in alerts for bullish/bearish zero crosses and overbought/oversold conditions.
🔧Core Components
Momentum Engine: The user can select either RSI or MACD as the underlying engine for the divergence calculation, allowing for flexibility in analysis.
Normalization Function: Price data from both symbols is normalized using percentage change to ensure a true “apples-to-apples” comparison, regardless of their nominal price differences.
Divergence Calculator: The core algorithm that subtracts the secondary symbol’s momentum from the primary’s and normalizes the result using the combined standard deviation.
Smoothing Mechanism: An Exponential Moving Average (EMA) is applied to the raw oscillator output to reduce choppiness and provide a clearer signal line.
🔥Key Features
Multi-Asset Comparison: Go beyond single-asset analysis by comparing correlated pairs like ES/NQ or BTC/ETH to uncover hidden trading opportunities.
Heatmap Visualization: An optional heatmap mode provides an intuitive visual representation of divergence strength, making it easier to gauge market sentiment at a glance.
Configurable Lookback and Timeframe: Adjust the lookback period and analysis timeframe to suit your specific strategy, from short-term scalping to long-term trend analysis.
Signal Markers: Visual markers are plotted directly on the chart for bullish and bearish zero-line crossovers, providing clear entry and exit signals.
🎨Visualization
SMT Oscillator Line: The primary visual element, colored blue for bullish (positive) divergence and orange for bearish (negative) divergence.
Zero Line: A solid horizontal line at the zero level, indicating the equilibrium point between the two assets. Crossovers of this line signal a shift in relative strength.
Overbought/Oversold Zones: Dotted lines at the +80 and -80 levels (customizable) that highlight extreme divergence readings, often indicating potential exhaustion points.
Forecast Line: A predictive line that plots the anticipated path of the oscillator, giving traders an advanced warning of potential changes in momentum.
📖Usage Guidelines
Setting Categories
Primary Symbol
Default: (Chart Symbol)
Description: The main asset you are analyzing. Leave blank to use the symbol currently on your chart.
Secondary Symbol
Default: CME_MINI:ES1! (used with NASDAQ futures due to inherent heavy correlation
Description: The asset to compare against the primary symbol.
Lookback Period
Default: 14
Range: 8-100
Description: Controls the calculation window for momentum (RSI/MACD). Higher values result in a smoother, less sensitive oscillator.
Divergence Type
Default: RSI
Options: RSI, MACD
Description: Choose the momentum indicator to use for the divergence calculation.
Enable Volume Weighting
Default: true
Description: When enabled, gives more weight to divergence signals that are accompanied by significant volume.
✅Best Use Cases
Identifying high-probability reversal points by spotting divergence in overbought or oversold territory.
Confirming the strength of a trend by observing sustained positive or negative divergence.
Pairs trading by taking a long position on the outperforming asset and a short position on the underperforming one during a divergence.
Risk management by recognizing when a current trend is losing its underlying momentum.
⚠️Limitations
Requires Correlated Assets: The indicator’s effectiveness is highly dependent on the selection of two assets with a known correlation (e.g., ES and NQ).
Not a Standalone System: Divergence signals should be used in conjunction with other forms of analysis (price action, market structure) and not as a complete trading system.
Lagging by Nature: As it is based on moving averages and past price data, the oscillator is inherently lagging and may not capture all rapid price changes.
💡What Makes This Unique
Combined Momentum & Volume: Unlike standard oscillators, it fuses momentum with volume delta for a more robust “Smart Money” perspective.
Noise-Filtering Mechanism: The proprietary entropy filter is a unique feature designed to weed out insignificant market chatter and focus on high-conviction signals.
🔬How It Works
Data Normalization:
The script first normalizes the price data of the two selected symbols into percentage changes. This ensures that the comparison is fair, regardless of the difference in their price scales.
Momentum Calculation:
It then calculates the chosen momentum value (either RSI or MACD histogram) for each of the normalized price series.
Divergence Computation:
The core of the indicator lies in subtracting the momentum of the secondary symbol from the primary one. This raw divergence is then optionally weighted by volume and filtered for market noise (entropy) to produce the final oscillator value.
💡Note:
For best results, use this indicator on adequate timeframes to filter out market noise. Always confirm signals with price action analysis before entering a trade.
Multi-Ticker TableMulti-Ticker Table
A customizable TradingView indicator that displays a clean, organized table of up to 10 user-defined ticker symbols with their current daily price, daily dollar change, and daily percentage change.
Key features include:
Enable/disable individual tickers with custom symbols
Customizable font sizes and colors for header and body rows
Customizable table background colors for header and data rows
Flexible table positioning anywhere on the chart (top/middle/bottom × left/center/right)
Highlights positive changes in green and negative changes in red for quick visual analysis
Hides chart candles to display the table as a standalone dashboard
Ideal for traders who want a quick, at-a-glance summary of multiple markets or instruments without cluttering the chart.
VoVix DEVMA🌌 VoVix DEVMA: A Deep Dive into Second-Order Volatility Dynamics
Welcome to VoVix+, a sophisticated trading framework that transcends traditional price analysis. This is not merely another indicator; it is a complete system designed to dissect and interpret the very fabric of market volatility. VoVix+ operates on the principle that the most powerful signals are not found in price alone, but in the behavior of volatility itself. It analyzes the rate of change, the momentum, and the structure of market volatility to identify periods of expansion and contraction, providing a unique edge in anticipating major market moves.
This document will serve as your comprehensive guide, breaking down every mathematical component, every user input, and every visual element to empower you with a profound understanding of how to harness its capabilities.
🔬 THEORETICAL FOUNDATION: THE MATHEMATICS OF MARKET DYNAMICS
VoVix+ is built upon a multi-layered mathematical engine designed to measure what we call "second-order volatility." While standard indicators analyze price, and first-order volatility indicators (like ATR) analyze the range of price, VoVix+ analyzes the dynamics of the volatility itself. This provides insight into the market's underlying state of stability or chaos.
1. The VoVix Score: Measuring Volatility Thrust
The core of the system begins with the VoVix Score. This is a normalized measure of volatility acceleration or deceleration.
Mathematical Formula:
VoVix Score = (ATR(fast) - ATR(slow)) / (StDev(ATR(fast)) + ε)
Where:
ATR(fast) is the Average True Range over a short period, representing current, immediate volatility.
ATR(slow) is the Average True Range over a longer period, representing the baseline or established volatility.
StDev(ATR(fast)) is the Standard Deviation of the fast ATR, which measures the "noisiness" or consistency of recent volatility.
ε (epsilon) is a very small number to prevent division by zero.
Market Implementation:
Positive Score (Expansion): When the fast ATR is significantly higher than the slow ATR, it indicates a rapid increase in volatility. The market is "stretching" or expanding.
Negative Score (Contraction): When the fast ATR falls below the slow ATR, it indicates a decrease in volatility. The market is "coiling" or contracting.
Normalization: By dividing by the standard deviation, we normalize the score. This turns it into a standardized measure, allowing us to compare volatility thrust across different market conditions and timeframes. A score of 2.0 in a quiet market means the same, relatively, as a score of 2.0 in a volatile market.
2. Deviation Analysis (DEV): Gauging Volatility's Own Volatility
The script then takes the analysis a step further. It calculates the standard deviation of the VoVix Score itself.
Mathematical Formula:
DEV = StDev(VoVix Score, lookback_period)
Market Implementation:
This DEV value represents the magnitude of chaos or stability in the market's volatility dynamics. A high DEV value means the volatility thrust is erratic and unpredictable. A low DEV value suggests the change in volatility is smooth and directional.
3. The DEVMA Crossover: Identifying Regime Shifts
This is the primary signal generator. We take two moving averages of the DEV value.
Mathematical Formula:
fastDEVMA = SMA(DEV, fast_period)
slowDEVMA = SMA(DEV, slow_period)
The Core Signal:
The strategy triggers on the crossover and crossunder of these two DEVMA lines. This is a profound concept: we are not looking at a moving average of price or even of volatility, but a moving average of the standard deviation of the normalized rate of change of volatility.
Bullish Crossover (fastDEVMA > slowDEVMA): This signals that the short-term measure of volatility's chaos is increasing relative to the long-term measure. This often precedes a significant market expansion and is interpreted as a bullish volatility regime.
Bearish Crossunder (fastDEVMA < slowDEVMA): This signals that the short-term measure of volatility's chaos is decreasing. The market is settling down or contracting, often leading to trending moves or range consolidation.
⚙️ INPUTS MENU: CONFIGURING YOUR ANALYSIS ENGINE
Every input has been meticulously designed to give you full control over the strategy's behavior. Understanding these settings is key to adapting VoVix+ to your specific instrument, timeframe, and trading style.
🌀 VoVix DEVMA Configuration
🧬 Deviation Lookback: This sets the lookback period for calculating the DEV value. It defines the window for measuring the stability of the VoVix Score. A shorter value makes the system highly reactive to recent changes in volatility's character, ideal for scalping. A longer value provides a smoother, more stable reading, better for identifying major, long-term regime shifts.
⚡ Fast VoVix Length: This is the lookback period for the fastDEVMA. It represents the short-term trend of volatility's chaos. A smaller number will result in a faster, more sensitive signal line that reacts quickly to market shifts.
🐌 Slow VoVix Length: This is the lookback period for the slowDEVMA. It represents the long-term, baseline trend of volatility's chaos. A larger number creates a more stable, slower-moving anchor against which the fast line is compared.
How to Optimize: The relationship between the Fast and Slow lengths is crucial. A wider gap (e.g., 20 and 60) will result in fewer, but potentially more significant, signals. A narrower gap (e.g., 25 and 40) will generate more frequent signals, suitable for more active trading styles.
🧠 Adaptive Intelligence
🧠 Enable Adaptive Features: When enabled, this activates the strategy's performance tracking module. The script will analyze the outcome of its last 50 trades to calculate a dynamic win rate.
⏰ Adaptive Time-Based Exit: If Enable Adaptive Features is on, this allows the strategy to adjust its Maximum Bars in Trade setting based on performance. It learns from the average duration of winning trades. If winning trades tend to be short, it may shorten the time exit to lock in profits. If winners tend to run, it will extend the time exit, allowing trades more room to develop. This helps prevent the strategy from cutting winning trades short or holding losing trades for too long.
⚡ Intelligent Execution
📊 Trade Quantity: A straightforward input that defines the number of contracts or shares for each trade. This is a fixed value for consistent position sizing.
🛡️ Smart Stop Loss: Enables the dynamic stop-loss mechanism.
🎯 Stop Loss ATR Multiplier: Determines the distance of the stop loss from the entry price, calculated as a multiple of the current 14-period ATR. A higher multiplier gives the trade more room to breathe but increases risk per trade. A lower multiplier creates a tighter stop, reducing risk but increasing the chance of being stopped out by normal market noise.
💰 Take Profit ATR Multiplier: Sets the take profit target, also as a multiple of the ATR. A common practice is to set this higher than the Stop Loss multiplier (e.g., a 2:1 or 3:1 reward-to-risk ratio).
🏃 Use Trailing Stop: This is a powerful feature for trend-following. When enabled, instead of a fixed stop loss, the stop will trail behind the price as the trade moves into profit, helping to lock in gains while letting winners run.
🎯 Trail Points & 📏 Trail Offset ATR Multipliers: These control the trailing stop's behavior. Trail Points defines how much profit is needed before the trail activates. Trail Offset defines how far the stop will trail behind the current price. Both are based on ATR, making them fully adaptive to market volatility.
⏰ Maximum Bars in Trade: This is a time-based stop. It forces an exit if a trade has been open for a specified number of bars, preventing positions from being held indefinitely in stagnant markets.
⏰ Session Management
These inputs allow you to confine the strategy's trading activity to specific market hours, which is crucial for day trading instruments that have defined high-volume sessions (e.g., stock market open).
🎨 Visual Effects & Dashboard
These toggles give you complete control over the on-chart visuals and the dashboard. You can disable any element to declutter your chart or focus only on the information that matters most to you.
📊 THE DASHBOARD: YOUR AT-A-GLANCE COMMAND CENTER
The dashboard centralizes all critical information into one compact, easy-to-read panel. It provides a real-time summary of the market state and strategy performance.
🎯 VOVIX ANALYSIS
Fast & Slow: Displays the current numerical values of the fastDEVMA and slowDEVMA. The color indicates their direction: green for rising, red for falling. This lets you see the underlying momentum of each line.
Regime: This is your most important environmental cue. It tells you the market's current state based on the DEVMA relationship. 🚀 EXPANSION (Green) signifies a bullish volatility regime where explosive moves are more likely. ⚛️ CONTRACTION (Purple) signifies a bearish volatility regime, where the market may be consolidating or entering a smoother trend.
Quality: Measures the strength of the last signal based on the magnitude of the DEVMA difference. An ELITE or STRONG signal indicates a high-conviction setup where the crossover had significant force.
PERFORMANCE
Win Rate & Trades: Displays the historical win rate of the strategy from the backtest, along with the total number of closed trades. This provides immediate feedback on the strategy's historical effectiveness on the current chart.
EXECUTION
Trade Qty: Shows your configured position size per trade.
Session: Indicates whether trading is currently OPEN (allowed) or CLOSED based on your session management settings.
POSITION
Position & PnL: Displays your current position (LONG, SHORT, or FLAT) and the real-time Profit or Loss of the open trade.
🧠 ADAPTIVE STATUS
Stop/Profit Mult: In this simplified version, these are placeholders. The primary adaptive feature currently modifies the time-based exit, which is reflected in how long trades are held on the chart.
🎨 THE VISUAL UNIVERSE: DECIPHERING MARKET GEOMETRY
The visuals are not mere decorations; they are geometric representations of the underlying mathematical concepts, designed to give you an intuitive feel for the market's state.
The Core Lines:
FastDEVMA (Green/Maroon Line): The primary signal line. Green when rising, indicating an increase in short-term volatility chaos. Maroon when falling.
SlowDEVMA (Aqua/Orange Line): The baseline. Aqua when rising, indicating a long-term increase in volatility chaos. Orange when falling.
🌊 Morphism Flow (Flowing Lines with Circles):
What it represents: This visualizes the momentum and strength of the fastDEVMA. The width and intensity of the "beam" are proportional to the signal strength.
Interpretation: A thick, steep, and vibrant flow indicates powerful, committed momentum in the current volatility regime. The floating '●' particles represent kinetic energy; more particles suggest stronger underlying force.
📐 Homotopy Paths (Layered Transparent Boxes):
What it represents: These layered boxes are centered between the two DEVMA lines. Their height is determined by the DEV value.
Interpretation: This visualizes the overall "volatility of volatility." Wider boxes indicate a chaotic, unpredictable market. Narrower boxes suggest a more stable, predictable environment.
🧠 Consciousness Field (The Grid):
What it represents: This grid provides a historical lookback at the DEV range.
Interpretation: It maps the recent "consciousness" or character of the market's volatility. A consistently wide grid suggests a prolonged period of chaos, while a narrowing grid can signal a transition to a more stable state.
📏 Functorial Levels (Projected Horizontal Lines):
What it represents: These lines extend from the current fastDEVMA and slowDEVMA values into the future.
Interpretation: Think of these as dynamic support and resistance levels for the volatility structure itself. A crossover becomes more significant if it breaks cleanly through a prior established level.
🌊 Flow Boxes (Spaced Out Boxes):
What it represents: These are compact visual footprints of the current regime, colored green for Expansion and red for Contraction.
Interpretation: They provide a quick, at-a-glance confirmation of the dominant volatility flow, reinforcing the background color.
Background Color:
This provides an immediate, unmistakable indication of the current volatility regime. Light Green for Expansion and Light Aqua/Blue for Contraction, allowing you to assess the market environment in a split second.
📊 BACKTESTING PERFORMANCE REVIEW & ANALYSIS
The following is a factual, transparent review of a backtest conducted using the strategy's default settings on a specific instrument and timeframe. This information is presented for educational purposes to demonstrate how the strategy's mechanics performed over a historical period. It is crucial to understand that these results are historical, apply only to the specific conditions of this test, and are not a guarantee or promise of future performance. Market conditions are dynamic and constantly change.
Test Parameters & Conditions
To ensure the backtest reflects a degree of real-world conditions, the following parameters were used. The goal is to provide a transparent baseline, not an over-optimized or unrealistic scenario.
Instrument: CME E-mini Nasdaq 100 Futures (NQ1!)
Timeframe: 5-Minute Chart
Backtesting Range: March 24, 2024, to July 09, 2024
Initial Capital: $100,000
Commission: $0.62 per contract (A realistic cost for futures trading).
Slippage: 3 ticks per trade (A conservative setting to account for potential price discrepancies between order placement and execution).
Trade Size: 1 contract per trade.
Performance Overview (Historical Data)
The test period generated 465 total trades , providing a statistically significant sample size for analysis, which is well above the recommended minimum of 100 trades for a strategy evaluation.
Profit Factor: The historical Profit Factor was 2.663 . This metric represents the gross profit divided by the gross loss. In this test, it indicates that for every dollar lost, $2.663 was gained.
Percent Profitable: Across all 465 trades, the strategy had a historical win rate of 84.09% . While a high figure, this is a historical artifact of this specific data set and settings, and should not be the sole basis for future expectations.
Risk & Trade Characteristics
Beyond the headline numbers, the following metrics provide deeper insight into the strategy's historical behavior.
Sortino Ratio (Downside Risk): The Sortino Ratio was 6.828 . Unlike the Sharpe Ratio, this metric only measures the volatility of negative returns. A higher value, such as this one, suggests that during this test period, the strategy was highly efficient at managing downside volatility and large losing trades relative to the profits it generated.
Average Trade Duration: A critical characteristic to understand is the strategy's holding period. With an average of only 2 bars per trade , this configuration operates as a very short-term, or scalping-style, system. Winning trades averaged 2 bars, while losing trades averaged 4 bars. This indicates the strategy's logic is designed to capture quick, high-probability moves and exit rapidly, either at a profit target or a stop loss.
Conclusion and Final Disclaimer
This backtest demonstrates one specific application of the VoVix+ framework. It highlights the strategy's behavior as a short-term system that, in this historical test on NQ1!, exhibited a high win rate and effective management of downside risk. Users are strongly encouraged to conduct their own backtests on different instruments, timeframes, and date ranges to understand how the strategy adapts to varying market structures. Past performance is not indicative of future results, and all trading involves significant risk.
🔧 THE DEVELOPMENT PHILOSOPHY: FROM VOLATILITY TO CLARITY
The journey to create VoVix+ began with a simple question: "What drives major market moves?" The answer is often not a change in price direction, but a fundamental shift in market volatility. Standard indicators are reactive to price. We wanted to create a system that was predictive of market state. VoVix+ was designed to go one level deeper—to analyze the behavior, character, and momentum of volatility itself.
The challenge was twofold. First, to create a robust mathematical model to quantify these abstract concepts. This led to the multi-layered analysis of ATR differentials and standard deviations. Second, to make this complex data intuitive and actionable. This drove the creation of the "Visual Universe," where abstract mathematical values are translated into geometric shapes, flows, and fields. The adaptive system was intentionally kept simple and transparent, focusing on a single, impactful parameter (time-based exits) to provide performance feedback without becoming an inscrutable "black box." The result is a tool that is both profoundly deep in its analysis and remarkably clear in its presentation.
⚠️ RISK DISCLAIMER AND BEST PRACTICES
VoVix+ is an advanced analytical tool, not a guarantee of future profits. All financial markets carry inherent risk. The backtesting results shown by the strategy are historical and do not guarantee future performance. This strategy incorporates realistic commission and slippage settings by default, but market conditions can vary. Always practice sound risk management, use position sizes appropriate for your account equity, and never risk more than you can afford to lose. It is recommended to use this strategy as part of a comprehensive trading plan. This was developed specifically for Futures
"The prevailing wisdom is that markets are always right. I take the opposite view. I assume that markets are always wrong. Even if my assumption is occasionally wrong, I use it as a working hypothesis."
— George Soros
— Dskyz, Trade with insight. Trade with anticipation.
HMA Swing Levels [BigBeluga]An advanced swing structure and trend-following tool built on Hull Moving Average logic, designed to detect major reversals and track dynamic support/resistance zones.
This indicator analyzes price swings using pivot highs/lows and a smoothed HMA trend baseline. It highlights key reversal levels and keeps them active until breached, giving traders a clear visual framework for price structure and trend alignment. The pivots are calculated in real-time using non-lagging logic, making them highly responsive to market conditions.
🔵 CONCEPTS
Combines a fast-reacting Hull Moving Average (HMA) with pivot logic to capture precise directional changes.
Detects non-lagging reversal highs and lows when pivot points form and the HMA direction flips.
Projects these reversal levels forward as horizontal support/resistance lines until broken by price.
Active trend is shown with a step-style trail line that reflects HMA bias over time.
🔵 FEATURES
Swing Level Detection:
Identifies high/low reversals when trend direction changes and plots horizontal zones.
Non-lagging logic of swing points detection:
if h == high and high < h and change > 0
// Detected Swing High
if l == low and low > l and change < 0
// Detected Swing Low
Persistent Support & Resistance Lines:
Each detected swing high or low is extended forward until price invalidates the level. Dotted style is applied once breached.
Color-Coded Trend Trail:
Displays a stepped trend trail using HMA slope: lime = uptrend, blue = downtrend.
Automatic Labeling:
Each reversal level is labeled with its price for clear reference.
Age-Based Line Thickness:
Every level increases in thickness every 250 bars. The longer the level lasts, the stronger it is.
🔵 HOW TO USE
Use green (support) and blue (resistance) levels to frame key reaction zones.
Trade with the trend defined by the trail color: lime for bullish bias, blue for bearish.
Explore where buy or sell orders are stacked
Look for breaks of swing lines to anticipate trend shifts or breakout setups.
Adjust the "Trend Change" input to tune the sensitivity of swing detection.
Adjust the "SwingLevels" input to define how far back to search for valid pivots.
🔵 CONCLUSION
HMA Swing Levels offers a hybrid approach to structural and trend-based trading. With automated non-lagging swing detection, persistent support/resistance tracking, and intuitive HMA-based trend coloring, it provides a powerful visual system for discretionary and systematic traders alike.
Support & Resistance External/Internal & BoS [sgbpulse]Market Structure Support & Resistance External/Internal & BoS
Overview: Smart & Fast Market Structure Analysis
The Market Structure "Support & Resistance External/Internal & BoS " indicator is designed to empower your technical analysis by automatically and precisely identifying significant support and resistance levels. It achieves this by pinpointing high and low Pivot Points, plus key Pre-Market High/Low levels.
Its unique strength lies in its dynamic adaptability to any timeframe and any asset you choose. This tool analyzes the relevant market structure for the current timeframe and asset, providing you with accurate and relevant levels in real-time. The indicator maintains a clean chart and swiftly displays all support, resistance, and Pre-Market levels for any asset, saving valuable analysis time and enabling you to get a clear and quick snapshot of the market.
How the Indicator Works
The indicator identifies and displays three critical types of key levels:
External Pivots: These are more significant pivot points, indicating important reversal points across a broader range of price movement, considering the current timeframe. The indicator draws dark green support lines (for low pivots) and dark red resistance lines (for high pivots) from these points.
Internal Pivots: These are shorter-term pivot points, signifying smaller corrections or reversals within the overall structure of the current timeframe. These lines provide additional areas of interest within the ranges of the External Pivots.
Pre-Market High/Low Levels: The indicator displays the High and Low reached during pre-market hours as distinct lines on the chart. Please note: These levels will only appear when the selected timeframe is lower than one day (e.g., 1-hour, 15-minute) and provided that the "Session extended trading hours" option is enabled in your TradingView chart settings. These levels are crucial for identifying potential opening ranges and critical support/resistance areas upon regular market open, especially for intraday trading.
Break of Structure (BoS) Identification
A key feature of this indicator is its ability to identify Break of Structure (BoS). When a support or resistance line is breached, the indicator changes the line's color to gray and displays a "Break of Structure" label, indicating a potential trend change or continuation:
External BoS: When an external support/resistance line is broken, a "BoS" label in red will appear. This is a strong signal for a potential shift in the primary market structure or a strong trend continuation.
Internal BoS: When an internal support/resistance line is broken, an "iBoS" label in green will appear. This indicates a break within the existing market structure, which can be used to confirm direction or identify shorter-term entry/exit opportunities.
Full Indicator Customization
The indicator provides maximum flexibility to suit any trading style and timeframe:
Number of Lines Displayed: You can choose how many support and resistance lines you want to see on your chart. The default is 15 lines, but you can increase or decrease this number according to your needs and desired level of detail.
External Pivot Settings: Define the number of bars before and after a pivot point required for External Pivot identification.
Internal Pivot Settings: Define the number of bars before and after a pivot point required for Internal Pivot identification.
Color Customization: Full control over colors! You can change the colors of the support and resistance lines, the colors of the Pre-Market levels, and also the colors of the BoS and iBoS labels to create a visual appearance that perfectly matches your personal preferences.
This flexibility allows you to adapt the indicator to your trading style and any timeframe you operate in, without needing to manually change settings each time.
Recommended Uses
Clean Chart & Quick Analysis: The indicator displays important levels clearly, enabling quick identification of areas of interest without visual clutter on the chart. This significantly saves analysis time and allows you to make faster decisions.
Critical Levels for Any Timeframe & Asset: Get precise and adaptive support and resistance, plus essential Pre-Market levels (in relevant timeframes), for any timeframe and on any asset you choose.
Trend Direction Identification: Clear support and resistance lines help understand market structure.
Breakout Confirmation: The BoS label provides visual confirmation of key level breaches, helping to confirm potential trend changes.
Locating Entry & Exit Points: Use these levels as potential areas of interest for trades, after confirming a breakout or reversal.
Finding Stop-Loss & Take-Profit Points: Strategically place protective stops and profit targets around these support and resistance levels.
Important Note
Like any technical indicator, Market Structure "Support & Resistance External/Internal & BoS " is a supplementary tool. It's highly recommended to use it in conjunction with additional analysis methods (such as price action analysis, other indicators, and fundamental analysis) for informed trading decisions. Financial markets are dynamic, and trading always carries inherent risk.
Dynamic Laguerre Filter Bands | OttoThis indicator combines trend-following and volatility analysis by enhancing the traditional Laguerre filter with a dynamic, volatility-adjusted band system. Instead of using fixed thresholds, the bands adapt in real-time to changing market conditions by applying smoothed standard deviation calculations. This design keeps the indicator responsive to significant price movements while effectively filtering out short-term market noise, resulting in more accurate trend identification and breakout signals.
Core Concept
The indicator is built around the following key components:
Laguerre Filter:
The Laguerre filter is designed to smooth out price data by reducing market noise while still being quick enough to detect real changes in price direction. Its goal is to create a clear, smooth trend line that helps traders/investors focus on the overall market trend without getting distracted by small, random price swings.
It uses a parameter called gamma to control how it balances smoothness and responsiveness:
A lower gamma gives more weight to recent price data, making the filter react faster to new price changes. This means the trend line is more sensitive but may also be less smooth and more prone to small fluctuations.
A higher gamma gives more weight to past price data, making the filter smoother and less sensitive to quick changes. This helps reduce noise and produces a steadier trend line, but it also introduces more lag, meaning the filter reacts slower to new price moves.
By adjusting gamma, the Laguerre filter lets you choose the balance between following price changes quickly and having a stable, noise-free trend signal.
Standard Deviation:
shows how much price varies from the mean. In this indicator, it’s used to measure market volatility.
Volatility Bands: The upper and lower bands are based on an EMA-smoothed standard deviation of price. The EMA reduces sudden jumps in volatility, creating smoother and more stable bands that still respond to changing market conditions. These bands are plotted around the Laguerre filter line, expanding and contracting in a controlled way to stay aligned with real market movement while avoiding short-term noise.
Signal Logic:
A long signal is triggered when the close price crosses above the upper band.
A short signal occurs when the close price falls below the lower band.
⚙️ Inputs
Source: Price source used in calculations
Gamma: Adjusts how much the Laguerre filter responds to price changes. Lower gamma values make the filter react more to recent prices, while higher values give more influence to older data, making the line smoother but slower to respond.
Volatility Length: Period used to calculate standard deviation
Volatility Smoothing Length: EMA smoothing length for standard deviation
Multiplier: Scales the width of the bands based on volatility
📈 Visual Output
Laguerre Filter Line: Plots the laguerre filter line, colored dynamically based on signal direction (green for bullish, purple for bearish)
Upper & Lower Bands: Volatility-based bands that adjust with market conditions. (green for bullish, purple for bearish)
Glow Effect: Optional glow layer to enhance visibility of the laguerre filter trend line (green for bullish, purple for bearish)
Bar Coloring: Candlesticks and bar colors reflect the active signal state for fast visual interpretation (green for bullish, purple for bearish)
How to Use
Apply the indicator to your chart and monitor for signal events:
Long Signal: When price closes above the upper band
Short Signal: When price closes below the lower band
🔔 Alerts
This indicator supports optional alert conditions you can enable for:
Long Signal: Close price crossing above the upper band
Short Signal: Close price crossing below the lower band
⚠️ Disclaimer:
This indicator is intended for educational and informational purposes only. Trading/investing involves risk, and past performance does not guarantee future results. Always test and evaluate indicators/strategies before applying them in live markets. Use at your own risk.
ALEX - ATR Extensions + ADR + TableALEX - ATR Extensions + ADR + Table
Overview
The ALEX ATR Extensions indicator is a comprehensive volatility and momentum analysis tool that combines Average True Range (ATR), Average Daily Range (ADR), and moving average distance calculations in a single, customizable display. This indicator helps traders assess current price action relative to historical volatility and key moving averages, providing crucial context for risk management and trade planning.
Key Features
Multi-Metric Analysis
- ATR Percentage: Current ATR as a percentage of price for volatility assessment
- ADR Percentage: Average Daily Range as a percentage for typical daily movement
- Low of Day Distance: Distance from current price to daily low
- Moving Average Distance: ATR-normalized distance from 21 and 50 period moving averages
Flexible Moving Average Options
- Configurable MA Types: Choose between EMA or SMA for both 21 and 50 period averages
- Customizable Periods: Adjust moving average lengths to suit your trading style
- Daily Timeframe Data: Uses daily moving averages regardless of chart timeframe
ATR Extension Levels
- Dynamic Price Targets: Calculate extension levels based on ATR multiples from moving averages
- Visual Reference Lines: Optional overlay lines showing ATR extension targets
- Customizable Multipliers: Adjust ATR multipliers for different risk/reward scenarios
Smart Visual Alerts
- Color-Coded Distance Metrics: Automatic color changes based on distance thresholds
- Symbol Plotting: Customizable chart symbols when distance thresholds are exceeded
- Threshold-Based Alerts: Visual cues when price reaches significant ATR distances
Comprehensive Data Table
- Real-Time Metrics: Live updating table with all key measurements
- Customizable Display: Toggle individual metrics on/off based on preference
- Professional Styling: Adjustable colors, fonts, and transparency
How to Use
Volatility Assessment
- High ATR%: Indicates elevated volatility, larger position sizing considerations
- Low ATR%: Suggests compressed volatility, potential for expansion
- ADR% Comparison: Compare current day's range to historical average
Moving Average Analysis
- ATR Distance 21/50: Normalized distance showing how extended price is from key levels
- Positive Values: Price above moving average (bullish positioning)
- Negative Values: Price below moving average (bearish positioning)
- Color Changes: Automatic alerts when reaching threshold levels
Extension Target Planning
- ATR Extension Lines: Visual price targets based on volatility-adjusted projections
- Risk/Reward Planning: Use extension levels for profit target placement
- Breakout Confirmation: Extension levels can confirm breakout validity
Symbol Alert System
- Chart Symbols: Automatic plotting when distance thresholds are breached
- Customizable Triggers: Set your own threshold levels for alerts
- Visual Scanning: Quick identification of extended conditions across multiple charts
Settings
Display Controls
- Show ADR%: Toggle average daily range percentage display
- Show ATR%: Toggle average true range percentage display
- Show LoD Distance: Toggle low of day distance calculation
- Show LoD Price: Toggle actual low of day price display
- Show ATR Distance from 21/50 DMA: Toggle moving average distance metrics
- Show 21/50 DMA Price: Toggle actual moving average price display
- Show ATR Extension Levels: Toggle extension target display in table
Moving Average Configuration
- 21/50 DMA Type: Choose between EMA or SMA calculation methods
- 21/50 DMA Period: Customize moving average lengths
- ADR/ATR Length: Adjust calculation periods for range measurements
Color Thresholds
- Threshold Levels: Set distance levels for color changes (default 2.0 and 5.0)
- Custom Colors: Choose colors for different threshold breaches
- Separate 21/50 Settings: Independent color schemes for each moving average
Symbol Settings
- Show Char Symbol: Toggle symbol plotting for each moving average
- Custom Symbols: Choose any character for chart plotting
- Symbol Colors: Customize colors for visual distinction
- Threshold Levels: Set trigger points for symbol appearance
ATR Extension Lines
- Show Extension Lines: Toggle visual extension level lines
- ATR Multipliers: Customize extension distance (default 2.0x)
- Line Colors: Choose colors for extension level visualization
Table Customization
- Background Color: Adjust table transparency and color
- Text Color: Customize default text appearance
- Font Size: Choose from tiny to huge font options
Advanced Applications
Trend Strength Analysis
- Large ATR distances suggest strong trending moves
- Small ATR distances indicate potential consolidation or reversal zones
- Compare current readings to recent historical ranges
Risk Management
- Use ATR% for position sizing calculations
- Extension levels provide natural profit target zones
- Distance metrics help identify overextended conditions
Multi-Timeframe Context
- Apply to different timeframes for comprehensive analysis
- Daily data provides consistency across all chart intervals
- Combine with weekly/monthly analysis for broader context
Market Regime Identification
- High volatility periods: Increased ATR% readings
- Low volatility periods: Compressed ATR% readings
- Trending markets: Sustained high distance readings
- Consolidating markets: Low distance readings with frequent color changes
Best Practices
Volatility-Adjusted Trading
- Increase position sizes during low volatility periods
- Reduce position sizes during high volatility periods
- Use ATR% for stop-loss placement relative to normal market movement
Extension Level Usage
- Primary targets: 1.5-2.0x ATR extensions
- Secondary targets: 2.5-3.0x ATR extensions
- Avoid chasing prices beyond 3x ATR extensions
Threshold Optimization
- Backtest different threshold levels for your trading style
- Consider market conditions when setting alert levels
- Adjust thresholds based on instrument volatility characteristics
Integration Strategies
- Combine with momentum indicators for confirmation
- Use alongside support/resistance levels
- Incorporate into systematic trading approaches
Technical Specifications
- Compatible with Pine Script v6
- Uses daily timeframe data for consistency
- Optimized for real-time performance
- Works on all chart types and timeframes
- Supports all tradeable instruments
Ideal For
- Swing traders using daily charts
- Position traders seeking volatility context
- Day traders needing intraday reference levels
- Risk managers requiring volatility metrics
- Systematic traders building rule-based strategies
Disclaimer
This indicator is for educational and informational purposes only. It should not be used as the sole basis for trading decisions. Always combine with other forms of analysis, proper risk management techniques, and consider your individual trading plan and risk tolerance. Past performance does not guarantee future results.
Compatible with Pine Script v6 | Optimized for daily timeframe analysis | Works across all markets and instruments
Candle Count RSI📈 Candle Count RSI — A Dual-Perspective Momentum Engine
The Candle Count RSI is a custom-built momentum oscillator that expands on the classic Relative Strength Index (RSI) by introducing a directional-only variant that tracks the frequency of bullish or bearish closes, rather than price magnitude. It gives traders a second lens through which to evaluate momentum, trend conviction, and subtle divergences—often invisible to traditional price-based RSI.
💡 What Makes It Unique?
While the standard RSI is sensitive to the size of price changes, the Candle Count RSI is magnitude-blind. It counts candle closes above/below open over a lookback period, generating a purer signal of directional consistency. To enhance signal fidelity, it includes a streak amplifier, dynamically weighting extended runs of green or red candles to reflect intensity of market bias—without introducing artificial price sensitivity.
This dual-RSI approach allows for:
- Divergence detection between directional bias and price magnitude.
- Smoother trend confirmation in choppy markets.
- Cleaner visual cues using dynamic glow and background logic.
📐 How Standard RSI Actually Works (Not What You Think)
RSI doesn’t just check if price went up or down over a span—it checks each individual candle and tracks whether it closed higher or lower than the one before. Here's how it works under the hood:
1.) For each bar, it calculates the change from the previous close.
2.) It separates those changes into gains (upward moves) and losses (downward moves).
3.) Then it computes a smoothed average of those gains and losses (usually using an RMA).
4.) It calculates the Relative Strength (RS) as:
RS = AvgGain / AvgLoss
5.) Finally, it plugs that into the RSI formula:
RSI = 100 - (100 / (1 + RS))
⚖️ What Does the 50 Line Mean?
- The RSI scale runs from 0 to 100, but 50 is the true neutral zone:
- RSI > 50 means average gains outweigh average losses over the period.
- RSI < 50 means losses dominate.
- RSI ≈ 50? The market is balanced—momentum is indecisive, no clear trend bias.
- This makes 50 a powerful midline for trend filters, directional bias tools, and divergence detection—especially when paired with alternative RSI logic like Candle Count RSI.
🔧 Inputs and Customization
- Everything is fully modular and customizable:
🧠 Core Settings
- RSI Length: Used for both the standard RSI and Candle Count RSI.
📉 Standard RSI
- Classic RSI calculation based on price changes.
- Optional WMA smoothing to reduce noise.
- Glow effect toggle with custom intensity.
🕯 Candle Count RSI
- Computes RSI using only the count of up/down candles.
- Optional smoothing for stability.
- Amplifies streaks (e.g., multiple consecutive bullish candles increase strength).
- Glow effect toggle with adjustable strength.
🎇 Glow Visuals
- Background glow (subpane and/or main chart).
- Fades based on RSI distance from the 50 midpoint.
- Independent color settings for bull and bear bias.
🧬 Divergence Zones
- Detects when Candle RSI and Standard RSI diverge.
- Highlights:
- Bullish Divergence: Candle RSI > 50, Standard RSI < threshold.
- Bearish Divergence: Candle RSI < 50, Standard RSI > threshold.
- Background fill optionally shown in subpane and/or main chart.
📊 Directional Histogram
- MACD-style histogram showing the difference between the two RSI lines.
- Color-coded based on directional agreement:
- Both rising → green.
- Both falling → red.
- Conflict → yellow.
🧠 Under the Hood — How It Works
🔹 Standard RSI
- Classic ta.rsi() applied to close prices, optionally WMA-smoothed.
🔹 Candle Count RSI (CCR)
- Counts how many candles closed up/down over the period.
- Computes a magnitude-free RSI from these counts.
- Applies a streak-based multiplier to exaggerate trend strength during consecutive green/red runs.
- Optionally smoothed with WMA to create a clean signal line.
- This makes CCR ideal for detecting true directional bias without being faked out by volatile price spikes.
🔹 Divergence Logic
- When Candle RSI and Standard RSI disagree strongly across defined thresholds, background fills highlight early signs of momentum decay or hidden accumulation/distribution.
🔹 Glow Logic
- Glow zones are controlled by a master toggle and drawn with dynamic transparency:
- Further from 50 = stronger conviction = darker glow.
- Shows up in subpane and/or main chart depending on user preference.
📷 Suggested Use Case / Visual Setup
- Use in conjunction with your primary price action system.
- Watch for divergences between the Candle Count RSI and Standard RSI for early trend reversals.
- Use glow bias zones on the main chart to get subconscious directional cues during fast scalping.
- Histogram helps you confirm when both RSI variants agree—useful during strong trending conditions.
🛠️ Tip for Traders
- This tool isn’t trying to “predict” price. It’s designed to visualize hidden market psychology—when buyers are showing up with consistent pressure, or when momentum has a disconnect between conviction and magnitude. Use this to filter entries, spot weak rallies, or sense when a trend is about to break down.
⚠️ WARNING
- Not for use with Heikin Ashi, Renko, etc.).
🧠 Summary
Candle Count RSI is not just another mashup—it's a precision-built, dual-perspective oscillator that captures directional conviction using real candle behavior. Whether you're scalping intraday or swing trading momentum, this script helps clarify trend integrity and exposes hidden weaknesses with elegance and clarity.
—
🛠️ Built by: Sherlock_MacGyver
Feel free to share feedback or reach out if you'd like to collaborate on custom features.
Advanced Petroleum Market Model (APMM)Advanced Petroleum Market Model (APMM): A Multi-Factor Fundamental Analysis Framework for Oil Market Assessment
## 1. Introduction
The petroleum market represents one of the most complex and globally significant commodity markets, characterized by intricate supply-demand dynamics, geopolitical influences, and substantial price volatility (Hamilton, 2009). Traditional fundamental analysis approaches often struggle to synthesize the multitude of relevant indicators into actionable insights due to data heterogeneity, temporal misalignment, and subjective weighting schemes (Baumeister & Kilian, 2016).
The Advanced Petroleum Market Model addresses these limitations through a systematic, quantitative approach that integrates 16 verified fundamental indicators across five critical market dimensions. The model builds upon established financial engineering principles while incorporating petroleum-specific market dynamics and adaptive learning mechanisms.
## 2. Theoretical Framework
### 2.1 Market Efficiency and Information Integration
The model operates under the assumption of semi-strong market efficiency, where fundamental information is gradually incorporated into prices with varying degrees of lag (Fama, 1970). The petroleum market's unique characteristics, including storage costs, transportation constraints, and geopolitical risk premiums, create opportunities for fundamental analysis to provide predictive value (Kilian, 2009).
### 2.2 Multi-Factor Asset Pricing Theory
Drawing from Ross's (1976) Arbitrage Pricing Theory, the model treats petroleum prices as driven by multiple systematic risk factors. The five-factor decomposition (Supply, Inventory, Demand, Trade, Sentiment) represents economically meaningful sources of systematic risk in petroleum markets (Chen et al., 1986).
## 3. Methodology
### 3.1 Data Sources and Quality Framework
The model integrates 16 fundamental indicators sourced from verified TradingView economic data feeds:
Supply Indicators:
- US Oil Production (ECONOMICS:USCOP)
- US Oil Rigs Count (ECONOMICS:USCOR)
- API Crude Runs (ECONOMICS:USACR)
Inventory Indicators:
- US Crude Stock Changes (ECONOMICS:USCOSC)
- Cushing Stocks (ECONOMICS:USCCOS)
- API Crude Stocks (ECONOMICS:USCSC)
- API Gasoline Stocks (ECONOMICS:USGS)
- API Distillate Stocks (ECONOMICS:USDS)
Demand Indicators:
- Refinery Crude Runs (ECONOMICS:USRCR)
- Gasoline Production (ECONOMICS:USGPRO)
- Distillate Production (ECONOMICS:USDFP)
- Industrial Production Index (FRED:INDPRO)
Trade Indicators:
- US Crude Imports (ECONOMICS:USCOI)
- US Oil Exports (ECONOMICS:USOE)
- API Crude Imports (ECONOMICS:USCI)
- Dollar Index (TVC:DXY)
Sentiment Indicators:
- Oil Volatility Index (CBOE:OVX)
### 3.2 Data Quality Monitoring System
Following best practices in quantitative finance (Lopez de Prado, 2018), the model implements comprehensive data quality monitoring:
Data Quality Score = Σ(Individual Indicator Validity) / Total Indicators
Where validity is determined by:
- Non-null data availability
- Positive value validation
- Temporal consistency checks
### 3.3 Statistical Normalization Framework
#### 3.3.1 Z-Score Normalization
The model employs robust Z-score normalization as established by Sharpe (1994) for cross-indicator comparability:
Z_i,t = (X_i,t - μ_i) / σ_i
Where:
- X_i,t = Raw value of indicator i at time t
- μ_i = Sample mean of indicator i
- σ_i = Sample standard deviation of indicator i
Z-scores are capped at ±3 to mitigate outlier influence (Tukey, 1977).
#### 3.3.2 Percentile Rank Transformation
For intuitive interpretation, Z-scores are converted to percentile ranks following the methodology of Conover (1999):
Percentile_Rank = (Number of values < current_value) / Total_observations × 100
### 3.4 Exponential Smoothing Framework
Signal smoothing employs exponential weighted moving averages (Brown, 1963) with adaptive alpha parameter:
S_t = α × X_t + (1-α) × S_{t-1}
Where α = 2/(N+1) and N represents the smoothing period.
### 3.5 Dynamic Threshold Optimization
The model implements adaptive thresholds using Bollinger Band methodology (Bollinger, 1992):
Dynamic_Threshold = μ ± (k × σ)
Where k is the threshold multiplier adjusted for market volatility regime.
### 3.6 Composite Score Calculation
The fundamental score integrates component scores through weighted averaging:
Fundamental_Score = Σ(w_i × Score_i × Quality_i)
Where:
- w_i = Normalized component weight
- Score_i = Component fundamental score
- Quality_i = Data quality adjustment factor
## 4. Implementation Architecture
### 4.1 Adaptive Parameter Framework
The model incorporates regime-specific adjustments based on market volatility:
Volatility_Regime = σ_price / μ_price × 100
High volatility regimes (>25%) trigger enhanced weighting for inventory and sentiment components, reflecting increased market sensitivity to supply disruptions and psychological factors.
### 4.2 Data Synchronization Protocol
Given varying publication frequencies (daily, weekly, monthly), the model employs forward-fill synchronization to maintain temporal alignment across all indicators.
### 4.3 Quality-Adjusted Scoring
Component scores are adjusted for data quality to prevent degraded inputs from contaminating the composite signal:
Adjusted_Score = Raw_Score × Quality_Factor + 50 × (1 - Quality_Factor)
This formulation ensures that poor-quality data reverts toward neutral (50) rather than contributing noise.
## 5. Usage Guidelines and Best Practices
### 5.1 Configuration Recommendations
For Short-term Analysis (1-4 weeks):
- Lookback Period: 26 weeks
- Smoothing Length: 3-5 periods
- Confidence Period: 13 weeks
- Increase inventory and sentiment weights
For Medium-term Analysis (1-3 months):
- Lookback Period: 52 weeks
- Smoothing Length: 5-8 periods
- Confidence Period: 26 weeks
- Balanced component weights
For Long-term Analysis (3+ months):
- Lookback Period: 104 weeks
- Smoothing Length: 8-12 periods
- Confidence Period: 52 weeks
- Increase supply and demand weights
### 5.2 Signal Interpretation Framework
Bullish Signals (Score > 70):
- Fundamental conditions favor price appreciation
- Consider long positions or reduced short exposure
- Monitor for trend confirmation across multiple timeframes
Bearish Signals (Score < 30):
- Fundamental conditions suggest price weakness
- Consider short positions or reduced long exposure
- Evaluate downside protection strategies
Neutral Range (30-70):
- Mixed fundamental environment
- Favor range-bound or volatility strategies
- Wait for clearer directional signals
### 5.3 Risk Management Considerations
1. Data Quality Monitoring: Continuously monitor the data quality dashboard. Scores below 75% warrant increased caution.
2. Regime Awareness: Adjust position sizing based on volatility regime indicators. High volatility periods require reduced exposure.
3. Correlation Analysis: Monitor correlation with crude oil prices to validate model effectiveness.
4. Fundamental-Technical Divergence: Pay attention when fundamental signals diverge from technical indicators, as this may signal regime changes.
### 5.4 Alert System Optimization
Configure alerts conservatively to avoid false signals:
- Set alert threshold at 75+ for high-confidence signals
- Enable data quality warnings to maintain system integrity
- Use trend reversal alerts for early regime change detection
## 6. Model Validation and Performance Metrics
### 6.1 Statistical Validation
The model's statistical robustness is ensured through:
- Out-of-sample testing protocols
- Rolling window validation
- Bootstrap confidence intervals
- Regime-specific performance analysis
### 6.2 Economic Validation
Fundamental accuracy is validated against:
- Energy Information Administration (EIA) official reports
- International Energy Agency (IEA) market assessments
- Commercial inventory data verification
## 7. Limitations and Considerations
### 7.1 Model Limitations
1. Data Dependency: Model performance is contingent on data availability and quality from external sources.
2. US Market Focus: Primary data sources are US-centric, potentially limiting global applicability.
3. Lag Effects: Some fundamental indicators exhibit publication lags that may delay signal generation.
4. Regime Shifts: Structural market changes may require model recalibration.
### 7.2 Market Environment Considerations
The model is optimized for normal market conditions. During extreme events (e.g., geopolitical crises, pandemics), additional qualitative factors should be considered alongside quantitative signals.
## References
Baumeister, C., & Kilian, L. (2016). Forty years of oil price fluctuations: Why the price of oil may still surprise us. *Journal of Economic Perspectives*, 30(1), 139-160.
Bollinger, J. (1992). *Bollinger on Bollinger Bands*. McGraw-Hill.
Brown, R. G. (1963). *Smoothing, Forecasting and Prediction of Discrete Time Series*. Prentice-Hall.
Chen, N. F., Roll, R., & Ross, S. A. (1986). Economic forces and the stock market. *Journal of Business*, 59(3), 383-403.
Conover, W. J. (1999). *Practical Nonparametric Statistics* (3rd ed.). John Wiley & Sons.
Fama, E. F. (1970). Efficient capital markets: A review of theory and empirical work. *Journal of Finance*, 25(2), 383-417.
Hamilton, J. D. (2009). Understanding crude oil prices. *Energy Journal*, 30(2), 179-206.
Kilian, L. (2009). Not all oil price shocks are alike: Disentangling demand and supply shocks in the crude oil market. *American Economic Review*, 99(3), 1053-1069.
Lopez de Prado, M. (2018). *Advances in Financial Machine Learning*. John Wiley & Sons.
Ross, S. A. (1976). The arbitrage theory of capital asset pricing. *Journal of Economic Theory*, 13(3), 341-360.
Sharpe, W. F. (1994). The Sharpe ratio. *Journal of Portfolio Management*, 21(1), 49-58.
Tukey, J. W. (1977). *Exploratory Data Analysis*. Addison-Wesley.
BK AK-Scope🔭 Introducing BK AK-Scope — Target Locked. Signal Acquired. 🔭
After building five precision weapons for traders, I’m proud to unveil the sixth.
BK AK-Scope — the eye of the arsenal.
This is not just an indicator. It’s an intelligence system for volatility, signal clarity, and rate-of-change dynamics — forged for elite vision in any market terrain.
🧠 Why “Scope”? And Why “AK”?
Every shooter knows: you can’t hit what you can’t see.
The Scope brings range, clarity, and target distinction. It filters motion from noise. Purpose from panic.
“AK” continues to honor the man who trained my sight — my mentor, A.K.
His discipline taught me to wait for alignment. To move with reason, not emotion.
His vision lives in every code line here.
🔬 What Is BK AK-Scope?
A Triple-Tier TSI Correlation Engine, fused with adaptive opacity logic, a volatility scoring system, and real-time signal clarity. It’s momentum dissected — by speed, depth, and rate of change.
Built to serve traders who:
Need visual hierarchy between fast, mid, and slow TSI responses.
Want adaptive fills that pulse with volatility — not static zones.
Require a volatility scoring overlay that reads the battlefield in real time.
⚙️ Core Systems: How BK AK-Scope Works
✅ Fast/Mid/Slow TSI →
Three layers of correlation: like scopes with zoom levels.
You track micro moves, mid swings, and macro flow simultaneously.
✅ Rate-of-Change Adaptive Opacity →
Momentum fills fade or flash based on speed — giving you movement density at a glance.
Bull vs. Bear zones adapt to strength. You feel the market’s pulse.
✅ Volatility Score Intelligence →
Custom algorithm measuring:
Range expansion
Rate-of-change differentials
ATR dynamics
Standard deviation pressure
All combined into a score from 0–100 with live icons:
🔥 = Extreme Heat (70+)
🧊 = Cold Zone (<30)
⚠️ = ROC Warning
• = Neutral drift
✅ Auto-Detect Volatility Modes →
Scalp = <15min
Swing = intraday/hourly
Macro = daily/weekly
Or override manually with total control.
🎯 How To Use BK AK-Scope
🔹 Trend Continuation → When all three TSI layers align in direction + volatility score climbs, ride with the trend.
🔹 Early Reversals → Opposing TSI + rapid opacity change + volatility shift = sniper reversal zone.
🔹 Consolidation Filter → Neutral fills + score < 30 = stay out, wait for signal surge.
🔹 Signal Confluence → Pair with:
• Gann fans or angles
• Fib time/price clusters
• Elliott Wave structure
• Harmonics or divergence
To isolate entry perfection.
🛡️ Why This Indicator Changes the Game
It's not just momentum. It’s TSI with depth hierarchy.
It’s not just color. It’s real-time strength visualization.
It’s not just volatility. It’s rate-weighted market intelligence.
This is market optics for the advanced trader — built for vision, clarity, and discipline.
🙏 Final Thoughts
🔹 In honor of A.K., my mentor. The man who taught me to see what others miss.
🔹 Inspired by the power of vision — because execution without clarity is chaos.
🔹 Powered by faith — because Gd alone gives sight beyond the visible.
“He gives sight to the blind and wisdom to the humble.” — Psalms 146
Every tool I build is a prayer in code — that it helps someone trade with clarity, integrity, and precision.
⚡ Zoom In. Focus Deep. Trade Clean.
BK AK-Scope — Lock on the target. See what others don’t.
🔫 Clarity is power. 🔫
Gd bless. 🙏
FvgObject█ OVERVIEW
This library provides a suite of methods designed to manage the visual representation and lifecycle of Fair Value Gap (FVG) objects on a Pine Script™ chart. It extends the `fvgObject` User-Defined Type (UDT) by attaching object-oriented functionalities for drawing, updating, and deleting FVG-related graphical elements. The primary goal is to encapsulate complex drawing logic, making the main indicator script cleaner and more focused on FVG detection and state management.
█ CONCEPTS
This library is built around the idea of treating each Fair Value Gap as an "object" with its own visual lifecycle on the chart. This is achieved by defining methods that operate directly on instances of the `fvgObject` UDT.
Object-Oriented Approach for FVGs
Pine Script™ v6 introduced the ability to define methods for User-Defined Types (UDTs). This library leverages this feature by attaching specific drawing and state management functions (methods) directly to the `fvgObject` type. This means that instead of calling global functions with an FVG object as a parameter, you call methods *on* the FVG object itself (e.g., `myFvg.updateDrawings(...)`). This approach promotes better code organization and a more intuitive way to interact with FVG data.
FVG Visual Lifecycle Management
The core purpose of this library is to manage the complete visual journey of an FVG on the chart. This lifecycle includes:
Initial Drawing: Creating the first visual representation of a newly detected FVG, including its main box and optionally its midline and labels.
State Updates & Partial Fills: Modifying the FVG's appearance as it gets partially filled by price. This involves drawing a "mitigated" portion of the box and adjusting the `currentTop` or `currentBottom` of the remaining FVG.
Full Mitigation & Tested State: Handling how an FVG is displayed once fully mitigated. Depending on user settings, it might be hidden, or its box might change color/style to indicate it has been "tested." Mitigation lines can also be managed (kept or deleted).
Midline Interaction: Visually tracking if the price has touched the FVG's 50% equilibrium level (midline).
Visibility Control: Dynamically showing or hiding FVG drawings based on various criteria, such as user settings (e.g., hide mitigated FVGs, timeframe-specific visibility) or external filters (e.g., proximity to current price).
Deletion: Cleaning up all drawing objects associated with an FVG when it's no longer needed or when settings dictate its removal.
Centralized Drawing Logic
By encapsulating all drawing-related operations within the methods of this library, the main indicator script is significantly simplified. The main script can focus on detecting FVGs and managing their state (e.g., in arrays), while delegating the complex task of rendering and updating them on the chart to the methods herein.
Interaction with `fvgObject` and `drawSettings` UDTs
All methods within this library operate on an instance of the `fvgObject` UDT. This `fvgObject` holds not only the FVG's price/time data and state (like `isMitigated`, `currentTop`) but also the IDs of its associated drawing elements (e.g., `boxId`, `midLineId`).
The appearance of these drawings (colors, styles, visibility, etc.) is dictated by a `drawSettings` UDT instance, which is passed as a parameter to most drawing-related methods. This `drawSettings` object is typically populated from user inputs in the main script, allowing for extensive customization.
Stateful Drawing Object Management
The library's methods manage Pine Script™ drawing objects (boxes, lines, labels) by storing their IDs within the `fvgObject` itself (e.g., `fvgObject.boxId`, `fvgObject.mitigatedBoxId`, etc.). Methods like `draw()` create these objects and store their IDs, while methods like `updateDrawings()` modify them, and `deleteDrawings()` removes them using these stored IDs.
Drawing Optimization
The `updateDrawings()` method, which is the most comprehensive drawing management function, incorporates optimization logic. It uses `prev_*` fields within the `fvgObject` (e.g., `prevIsMitigated`, `prevCurrentTop`) to store the FVG's state from the previous bar. By comparing the current state with the previous state, and also considering changes in visibility or relevant drawing settings, it can avoid redundant and performance-intensive drawing operations if nothing visually significant has changed for that FVG.
█ METHOD USAGE AND WORKFLOW
The methods in this library are designed to be called in a logical sequence as an FVG progresses through its lifecycle. A crucial prerequisite for all visual methods in this library is a properly populated `drawSettings` UDT instance, which dictates every aspect of an FVG's appearance, from colors and styles to visibility and labels. This `settings` object must be carefully prepared in the main indicator script, typically based on user inputs, before being passed to these methods.
Here’s a typical workflow within a main indicator script:
1. FVG Instance Creation (External to this library)
An `fvgObject` instance is typically created by functions in another library (e.g., `FvgCalculations`) when a new FVG pattern is identified. This object will have its core properties (top, bottom, startTime, isBullish, tfType) initialized.
2. Initial Drawing (`draw` method)
Once a new `fvgObject` is created and its initial visibility is determined:
Call the `myFvg.draw(settings)` method on the new FVG object.
`settings` is an instance of the `drawSettings` UDT, containing all relevant visual configurations.
This method draws the primary FVG box, its midline (if enabled in `settings`), and any initial labels. It also initializes the `currentTop` and `currentBottom` fields of the `fvgObject` if they are `na`, and stores the IDs of the created drawing objects within the `fvgObject`.
3. Per-Bar State Updates & Interaction Checks
On each subsequent bar, for every active `fvgObject`:
Interaction Check (External Logic): It's common to first use logic (e.g., from `FvgCalculations`' `fvgInteractionCheck` function) to determine if the current bar's price interacts with the FVG.
State Field Updates (External Logic): Before calling the `FvgObjectLib` methods below, ensure that your `fvgObject`'s state fields (such as `isMitigated`, `currentTop`, `currentBottom`, `isMidlineTouched`) are updated using the current bar's price data and relevant functions from other libraries (e.g., `FvgCalculations`' `checkMitigation`, `checkPartialMitigation`, etc.). This library's methods render the FVG based on these pre-updated state fields.
If interaction occurs and the FVG is not yet fully mitigated:
Full Mitigation Update (`updateMitigation` method): Call `myFvg.updateMitigation(high, low)`. This method updates `myFvg.isMitigated` and `myFvg.mitigationTime` if full mitigation occurs, based on the interaction determined by external logic.
Partial Fill Update (`updatePartialFill` method): If not fully mitigated, call `myFvg.updatePartialFill(high, low, settings)`. This method updates `myFvg.currentTop` or `myFvg.currentBottom` and adjusts drawings to show the filled portion, again based on prior interaction checks and fill level calculations.
Midline Touch Check (`checkMidlineTouch` method): Call `myFvg.checkMidlineTouch(high, low)`. This method updates `myFvg.isMidlineTouched` if the price touches the FVG's 50% level.
4. Comprehensive Visual Update (`updateDrawings` method)
After the FVG's state fields have been potentially updated by external logic and the methods in step 3:
Call `myFvg.updateDrawings(isVisibleNow, settings)` on each FVG object.
`isVisibleNow` is a boolean indicating if the FVG should currently be visible.
`settings` is the `drawSettings` UDT instance.
This method synchronizes the FVG's visual appearance with its current state and settings, managing all drawing elements (boxes, lines, labels), their styles, and visibility. It efficiently skips redundant drawing operations if the FVG's state or visibility has not changed, thanks to its internal optimization using `prev_*` fields, which are also updated by this method.
5. Deleting Drawings (`deleteDrawings` method)
When an FVG object is no longer tracked:
Call `myFvg.deleteDrawings(deleteTestedToo)`.
This method removes all drawing objects associated with that `fvgObject`.
This workflow ensures that FVG visuals are accurately maintained throughout their existence on the chart.
█ NOTES
Dependencies: This library relies on `FvgTypes` for `fvgObject` and `drawSettings` definitions, and its methods (`updateMitigation`, `updatePartialFill`) internally call functions from `FvgCalculations`.
Drawing Object Management: Be mindful of TradingView's limits on drawing objects per script. The main script should manage the number of active FVG objects.
Performance and `updateDrawings()`: The `updateDrawings()` method is comprehensive. Its internal optimization (checking `hasStateChanged` based on `prev_*` fields) is crucial for performance. Call it judiciously.
Role of `settings.currentTime`: The `currentTime` field in `drawSettings` is key for positioning time-dependent elements like labels and the right edge of non-extended drawings.
Mutability of `fvgObject` Instances: Methods in this library directly modify the `fvgObject` instance they are called upon (e.g., its state fields and drawing IDs).
Drawing ID Checks: Methods generally check if drawing IDs are `na` before acting on them, preventing runtime errors.
█ EXPORTED FUNCTIONS
method draw(this, settings)
Draws the initial visual representation of the FVG object on the chart. This includes the main FVG box, its midline (if enabled), and a label
(if enabled for the specific timeframe). This method is typically invoked
immediately after an FVG is first detected and its initial properties are set. It uses drawing settings to customize the appearance based on the FVG's timeframe type.
Namespace types: types.fvgObject
Parameters:
this (fvgObject type from no1x/FvgTypes/1) : The FVG object instance to be drawn. Core properties (top, bottom,
startTime, isBullish, tfType) should be pre-initialized. This method will
initialize boxId, midLineId, boxLabelId (if applicable), and
currentTop/currentBottom (if currently na) on this object.
settings (drawSettings type from no1x/FvgTypes/1) : A drawSettings object providing all visual parameters. Reads display settings (colors, styles, visibility for boxes, midlines, labels,
box extension) relevant to this.tfType. settings.currentTime is used for
positioning labels and the right boundary of non-extended boxes.
method updateMitigation(this, highVal, lowVal)
Checks if the FVG has been fully mitigated by the current bar's price action.
Namespace types: types.fvgObject
Parameters:
this (fvgObject type from no1x/FvgTypes/1) : The FVG object instance. Reads this.isMitigated, this.isVisible,
this.isBullish, this.top, this.bottom. Updates this.isMitigated and
this.mitigationTime if full mitigation occurs.
highVal (float) : The high price of the current bar, used for mitigation check.
lowVal (float) : The low price of the current bar, used for mitigation check.
method updatePartialFill(this, highVal, lowVal, settings)
Checks for and processes partial fills of the FVG.
Namespace types: types.fvgObject
Parameters:
this (fvgObject type from no1x/FvgTypes/1) : The FVG object instance. Reads this.isMitigated, this.isVisible,
this.isBullish, this.currentTop, this.currentBottom, original this.top/this.bottom,
this.startTime, this.tfType, this.isLV. Updates this.currentTop or
this.currentBottom, creates/updates this.mitigatedBoxId, and may update this.boxId's
top/bottom to reflect the filled portion.
highVal (float) : The high price of the current bar, used for partial fill check.
lowVal (float) : The low price of the current bar, used for partial fill check.
settings (drawSettings type from no1x/FvgTypes/1) : The drawing settings. Reads timeframe-specific colors for mitigated
boxes (e.g., settings.mitigatedBullBoxColor, settings.mitigatedLvBullColor),
box extension settings (settings.shouldExtendBoxes, settings.shouldExtendMtfBoxes, etc.),
and settings.currentTime to style and position the mitigatedBoxId and potentially adjust the main boxId.
method checkMidlineTouch(this, highVal, lowVal)
Checks if the FVG's midline (50% level or Equilibrium) has been touched.
Namespace types: types.fvgObject
Parameters:
this (fvgObject type from no1x/FvgTypes/1) : The FVG object instance. Reads this.midLineId, this.isMidlineTouched,
this.top, this.bottom. Updates this.isMidlineTouched if a touch occurs.
highVal (float) : The high price of the current bar, used for midline touch check.
lowVal (float) : The low price of the current bar, used for midline touch check.
method deleteDrawings(this, deleteTestedToo)
Deletes all visual drawing objects associated with this FVG object.
Namespace types: types.fvgObject
Parameters:
this (fvgObject type from no1x/FvgTypes/1) : The FVG object instance. Deletes drawings referenced by boxId,
mitigatedBoxId, midLineId, mitLineId, boxLabelId, mitLineLabelId,
and potentially testedBoxId, keptMitLineId. Sets these ID fields to na.
deleteTestedToo (simple bool) : If true, also deletes drawings for "tested" FVGs
(i.e., testedBoxId and keptMitLineId).
method updateDrawings(this, isVisibleNow, settings)
Manages the comprehensive update of all visual elements of an FVG object
based on its current state (e.g., active, mitigated, partially filled) and visibility. It handles the drawing, updating, or deletion of FVG boxes (main and mitigated part),
midlines, mitigation lines, and their associated labels. Visibility is determined by the isVisibleNow parameter and relevant settings
(like settings.shouldHideMitigated or timeframe-specific show flags). This method is central to the FVG's visual lifecycle and includes optimization
to avoid redundant drawing operations if the FVG's relevant state or appearance
settings have not changed since the last bar. It also updates the FVG object's internal prev_* state fields for future optimization checks.
Namespace types: types.fvgObject
Parameters:
this (fvgObject type from no1x/FvgTypes/1) : The FVG object instance to update. Reads most state fields (e.g.,
isMitigated, currentTop, tfType, etc.) and updates all drawing ID fields
(boxId, midLineId, etc.), this.isVisible, and all this.prev_* state fields.
isVisibleNow (bool) : A flag indicating whether the FVG should be currently visible. Typically determined by external logic (e.g., visual range filter). Affects
whether active FVG drawings are created/updated or deleted by this method.
settings (drawSettings type from no1x/FvgTypes/1) : A fully populated drawSettings object. This method extensively
reads its fields (colors, styles, visibility toggles, timeframe strings, etc.)
to render FVG components according to this.tfType and current state. settings.currentTime is critical for positioning elements like labels and extending drawings.
ATR Percentage TableSimple ATR shows the average price change per candle. In order to enter a trade, I need to know how much percent I will win.
I should enter the game for the cross with the highest percentage change. I created a table by entering a cross name in each line in the list and made it possible to follow the changes in the active window.
I sorted the ATR change percentages from largest to smallest. Being able to see the highest percentage change is an answer to the question of which crosses I should choose to open a trade.






















