Volumetric Tensegrity🧮 Volumetric Tensegrity unifies two of the Leading Indicator suite's critical engines — ZVOL ( volume anomaly detection ) and OBVX ( directional conviction ). Originally designed as a structural economizer for traders navigating strict indicator limits (e.g. < 10 slots per chart), it was forced to evolve beyond that constraint simply to fulfill it, albeit with a difference. The fatal flaw of traditional fusion, where two metrics are blended mathematically, is that they lose scale integrity (i.e. meaning). VTense encodes optical tensegrity to scale the amplitude of the ZVOL histogram and the slope of the OBVX spread independently, so that expansion and direction may coexist without either dominating the frame.
🧬 Tensegrity , by definition, is an intelligent design principle where elements in compression are suspended within a network of continuous tension, forming a stable, self-supporting structure . Originally conceived in esoteric biomorphology (c.f. Da Vinci, Snelson, Casteneda), tensegrity balances force through opposition, not rigidity. Applied to financial markets, Volumetric Tensegrity captures this same principle: price compresses, volume expands, conviction builds or fades — yet structure holds through the interplay. The result is not a prediction engine, but a pressure field — one that visualizes where structure might bend, break, or rebound based on how volume breathes.
🗜️ Rather than layering multiple indicators and consuming precious chart space, VTense frees up room for complementary overlays like momentum mapping, liquidity tiers, or volatility phase detection — making it ideal for modular traders operating in tight technical real estate.
🧠 Core Logic - VTense separates and preserves two essential structural forces:
• ZVOL Histogram : A Z-score-based expansion map that measures current volume deviation from its historical average. It reveals buildup zones, dormant stretches, and breakout pressure — regardless of price behavior.
• OBVX Spread : A directional conviction curve that tracks the difference between On-Balance Volume and its volume-weighted fast trend. It shows whether the crowd is leaning in (accumulation/distribution) or backing off.
🔊 ZVOL controls the amplitude of the histogram, while OBVX controls the curvature and slope of the spread. Without sacrificing breathing behavior or analytical depth, VTense provides a compact yet dynamic lens to track both expansion pressure and directional bias within a single footprint.
🌊 Volumetric Tensegrity forecasts breakout readiness, trend fatigue, and compression zones by measuring the volatility within volume . Unlike traditional tools that track volatility of price, this indicator reveals when effort becomes unstable — signaling inflection points before price reacts. Designed to decode rhythm shifts at the volume level, it operates as a pre-ignition scanner that thrives on low-timeframe charts (15m and under) while scaling effectively to 1H for validation.
🪖 From Generals to Scouts
👀 When used jointly, ZVOL + OBVX act as the general : deep-field analysts confirming stress, commitment, or exhaustion. VTense , by contrast, functions as a scout — capturing subtle buildup and alignment before structure fully reveals itself. The indicator aims to be a literal vanguard, establishing a position that can be confirmed or flexibly abandoned when the higher authority arrives to evaluate.
🥂 Use the ZVOL + OBVX pair when :
• You need independent axis control and manual dissection
• You’re building long-form confluence setups
• You have more indicator slots than you need
🔎 Use VTense when :
• You need compact clarity across multiple instruments
• You’re prioritizing confluence _detection_ over granular separation
• You’re building efficient multi-layered systems under slot constraints
🏗️ Structural Behavior and Interpretation
🫁 Z VOL Respiration Histogram : Structural Effort vs Baseline
🔵 Compression Coil – volume volatility is low and stable; the market is coiling
🟢 Steady Rhythm – volume is healthy but unremarkable; balanced participation
🟡 Passive/Absorbed Effort – expansion failing to manifest; watch for reversal
🟠 Clean Expansion – actionable volatility rise backed by structure
🔴 Volatile Blowout – chaos, climax; likely end-phase or fakeout
⚖️ ZVOL Respiration measures how hard the crowd is pressing — not just that volume is rising, but how statistically abnormal the surge is. Because it is rescaled proportionally to OBVX, the amplitude of the histogram reflects structural urgency without overwhelming the visual field.
🖐️ OBVX Spread : Real-Time Directional Conviction Behind Price Moves
🔑 The curvature of the spread reveals not just directional bias but crowd temp o: sharp slopes = urgent transitions; gradual slopes = building structural shifts. Curvature is key: sharp OBVX slope = urgency; gentle arcs = controlled drift or indecision.
• Green Rising : Accumulation — upward pressure from real buyers
• Red Falling : Distribution — sell pressure, downward slope
• Flat Curves : Transitional → uncertainty, microstructure digestion
🎭 Synchronized vs Divergent Behavior
⏱️ Synchronized (high-confluence) : often precedes structural breakouts, with internal conviction clearly visible before price resolves.
• ZVOL expands (yellow/orange/red) and OBVX climbs steeply green = strong bullish pressure
• ZVOL expands while OBVX steepens red = growing sell-side intent
🪤 Divergent (conflict tension) : flags potential traps, fakeouts, and liquidity sweeps.
• ZVOL expands sharply, but OBVX flattens or opposes → reactive expansion without crowd commitment
⛔️ Latent Drift + Structural Holding Patterns : tensegrity in action — the market holds tension without directional release.
• ZVOL compresses (blue) + OBVX meanders near zero → structure is resting, building up energy
• After prolonged drift, expect violent asymmetry when balance finally breaks
📚 Phase Interpretation: Dynamic Structural Read
• 1️⃣ Quiet Coil : Histogram flat, OBVX flat → no urgency
• 2️⃣ Initial Pulse : Yellow bars, OBVX slope builds → actionable tension
• 3️⃣ Structural Breath : Synchronized expansion and slope → directional commitment
• 4️⃣ Disagreement : Spike in ZVOL, flattening OBVX → exhaustion risk or false signal
💡 Suggested Use
• Run on 15m charts for breakout anticipation and 1H for validation
• Pair with ZVOL + OBVX to confirm crowd conviction behind the tension phase
• Use as a rhythm filter for the suite's trend indicators (e.g., RDI , SUPeR TReND 2.718 , et. al.)
• Ideal during low-volume regimes to detect pressure buildup before triggers
🧏🏻 Volumetric Tensegrity doesn’t signal. It breathes , and listens to pressure shifts before they speak in price. As a scout, it lets you see structural posture before signals align — helping you front-run resolution with clarity, not prediction.
Komut dosyalarını "curve" için ara
Smart Adaptive MACDAn advanced MACD variant that dynamically adapts to market volatility using ATR-based scaling.
Key Features:
Volatility-sensitive MACD and Signal lengths
Optional smoothed MACD line
Dynamic histogram heatmap (strong vs. weak momentum)
Built-in Regular and Hidden Divergence detection
Clear visual signals via solid (regular) and dashed (hidden) divergence lines
What makes this different:
Unlike traditional MACD indicators with fixed-length settings, this version adapts in real time
to changing volatility conditions. It shortens during high-momentum environments for faster
reaction, and lengthens during low-volatility phases to reduce noise. This allows better
alignment with market behavior and cleaner momentum signals.
Divergence Detection – How It Works
The Smart Adaptive MACD detects both regular and hidden divergences by comparing price action with the smoothed MACD line. It uses recent pivot highs and lows to evaluate divergence and draws lines on the chart when conditions are met.
Regular Divergence Detection
This type of divergence signals potential reversals. It occurs when the price moves in one
direction while the MACD moves in the opposite.
Bullish Regular Divergence:
Price makes lower lows, but MACD makes higher lows.
Result: A solid green line is plotted beneath the MACD curve.
Bearish Regular Divergence:
Price makes higher highs, but MACD makes lower highs.
Result: A solid red line is plotted above the MACD curve.
Hidden Divergence Detection
This type of divergence signals trend continuation. It occurs when price pulls back slightly,
but the MACD shows deeper movement in the opposite direction.
Bullish Hidden Divergence:
Price makes higher lows, but MACD makes lower lows.
Result: A dashed green line is plotted below the MACD curve.
Bearish Hidden Divergence:
Price makes lower highs, but MACD makes higher highs.
Result: A dashed red line is plotted above the MACD curve.
How to Use:
This tool is best used alongside price structure, key support/resistance levels, or as a
secondary confirmation for your trend or reversal strategy. It is designed to enhance your
interpretation of market momentum and divergence without needing extra chart clutter.
Disclaimer:
This script is provided for educational and informational purposes only. It is not intended as
financial advice or a recommendation to buy or sell any asset. Always conduct your own
research and consult with a licensed financial advisor before making trading decisions. Use
at your own risk.
License:
This script is published under the Mozilla Public License 2.0 and is fully open-source.
Built by AresIQ | 2025
10-Year Yields Table for Major CurrenciesThe "10-Year Yields Table for Major Currencies" indicator provides a visual representation of the 10-year government bond yields for several major global economies, alongside their corresponding Rate of Change (ROC) values. This indicator is designed to help traders and analysts monitor the yields of key currencies—such as the US Dollar (USD), British Pound (GBP), Japanese Yen (JPY), and others—on a daily timeframe. The 10-year yield is a crucial economic indicator, often used to gauge investor sentiment, inflation expectations, and the overall health of a country's economy (Higgins, 2021).
Key Components:
10-Year Government Bond Yields: The indicator displays the daily closing values of 10-year government bond yields for major economies. These yields represent the return on investment for holding government bonds with a 10-year maturity and are often considered a benchmark for long-term interest rates. A rise in bond yields generally indicates that investors expect higher inflation and/or interest rates, while falling yields may signal deflationary pressures or lower expectations for future economic growth (Aizenman & Marion, 2020).
Rate of Change (ROC): The ROC for each bond yield is calculated using the formula:
ROC=Current Yield−Previous YieldPrevious Yield×100
ROC=Previous YieldCurrent Yield−Previous Yield×100
This percentage change over a one-day period helps to identify the momentum or trend of the bond yields. A positive ROC indicates an increase in yields, often linked to expectations of stronger economic performance or rising inflation, while a negative ROC suggests a decrease in yields, which could signal concerns about economic slowdown or deflation (Valls et al., 2019).
Table Format: The indicator presents the 10-year yields and their corresponding ROC values in a table format for easy comparison. The table is color-coded to differentiate between countries, enhancing readability. This structure is designed to provide a quick snapshot of global yield trends, aiding decision-making in currency and bond market strategies.
Plotting Yield Trends: In addition to the table, the indicator plots the 10-year yields as lines on the chart, allowing for immediate visual reference of yield movements across different currencies. The plotted lines provide a dynamic view of the yield curve, which is a vital tool for economic analysis and forecasting (Campbell et al., 2017).
Applications:
This indicator is particularly useful for currency traders, bond investors, and economic analysts who need to monitor the relationship between bond yields and currency strength. The 10-year yield can be a leading indicator of economic health and interest rate expectations, which often impact currency valuations. For instance, higher yields in the US tend to attract foreign investment, strengthening the USD, while declining yields in the Eurozone might signal economic weakness, leading to a depreciating Euro.
Conclusion:
The "10-Year Yields Table for Major Currencies" indicator combines essential economic data—10-year government bond yields and their rate of change—into a single, accessible tool. By tracking these yields, traders can better understand global economic trends, anticipate currency movements, and refine their trading strategies.
References:
Aizenman, J., & Marion, N. (2020). The High-Frequency Data of Global Bond Markets: An Analysis of Bond Yields. Journal of International Economics, 115, 26-45.
Campbell, J. Y., Lo, A. W., & MacKinlay, A. C. (2017). The Econometrics of Financial Markets. Princeton University Press.
Higgins, M. (2021). Macroeconomic Analysis: Bond Markets and Inflation. Harvard Business Review, 99(5), 45-60.
Valls, A., Ferreira, M., & Lopes, M. (2019). Understanding Yield Curves and Economic Indicators. Financial Markets Review, 32(4), 72-91.
True Amplitude Envelopes (TAE)The True Envelopes indicator is an adaptation of the True Amplitude Envelope (TAE) method, based on the research paper " Improved Estimation of the Amplitude Envelope of Time Domain Signals Using True Envelope Cepstral Smoothing " by Caetano and Rodet. This indicator aims to create an asymmetric price envelope with strong predictive power, closely following the methodology outlined in the paper.
Due to the inherent limitations of Pine Script, the indicator utilizes a Kernel Density Estimator (KDE) in place of the original Cepstral Smoothing technique described in the paper. While this approach was chosen out of necessity rather than superiority, the resulting method is designed to be as effective as possible within the constraints of the Pine environment.
This indicator is ideal for traders seeking an advanced tool to analyze price dynamics, offering insights into potential price movements while working within the practical constraints of Pine Script. Whether used in dynamic mode or with a static setting, the True Envelopes indicator helps in identifying key support and resistance levels, making it a valuable asset in any trading strategy.
Key Features:
Dynamic Mode: The indicator dynamically estimates the fundamental frequency of the price, optimizing the envelope generation process in real-time to capture critical price movements.
High-Pass Filtering: Uses a high-pass filtered signal to identify and smoothly interpolate price peaks, ensuring that the envelope accurately reflects significant price changes.
Kernel Density Estimation: Although implemented as a workaround, the KDE technique allows for flexible and adaptive smoothing of the envelope, aimed at achieving results comparable to the more sophisticated methods described in the original research.
Symmetric and Asymmetric Envelopes: Provides options to select between symmetric and asymmetric envelopes, accommodating various trading strategies and market conditions.
Smoothness Control: Features adjustable smoothness settings, enabling users to balance between responsiveness and the overall smoothness of the envelopes.
The True Envelopes indicator comes with a variety of input settings that allow traders to customize the behavior of the envelopes to match their specific trading needs and market conditions. Understanding each of these settings is crucial for optimizing the indicator's performance.
Main Settings
Source: This is the data series on which the indicator is applied, typically the closing price (close). You can select other price data like open, high, low, or a custom series to base the envelope calculations.
History: This setting determines how much historical data the indicator should consider when calculating the envelopes. A value of 0 will make the indicator process all available data, while a higher value restricts it to the most recent n bars. This can be useful for reducing the computational load or focusing the analysis on recent market behavior.
Iterations: This parameter controls the number of iterations used in the envelope generation algorithm. More iterations will typically result in a smoother envelope, but can also increase computation time. The optimal number of iterations depends on the desired balance between smoothness and responsiveness.
Kernel Style: The smoothing kernel used in the Kernel Density Estimator (KDE). Available options include Sinc, Gaussian, Epanechnikov, Logistic, and Triangular. Each kernel has different properties, affecting how the smoothing is applied. For example, Gaussian provides a smooth, bell-shaped curve, while Epanechnikov is more efficient computationally with a parabolic shape.
Envelope Style: This setting determines whether the envelope should be Static or Dynamic. The Static mode applies a fixed period for the envelope, while the Dynamic mode automatically adjusts the period based on the fundamental frequency of the price data. Dynamic mode is typically more responsive to changing market conditions.
High Q: This option controls the quality factor (Q) of the high-pass filter. Enabling this will increase the Q factor, leading to a sharper cutoff and more precise isolation of high-frequency components, which can help in better identifying significant price peaks.
Symmetric: This setting allows you to choose between symmetric and asymmetric envelopes. Symmetric envelopes maintain an equal distance from the central price line on both sides, while asymmetric envelopes can adjust differently above and below the price line, which might better capture market conditions where upside and downside volatility are not equal.
Smooth Envelopes: When enabled, this setting applies additional smoothing to the envelopes. While this can reduce noise and make the envelopes more visually appealing, it may also decrease their responsiveness to sudden market changes.
Dynamic Settings
Extra Detrend: This setting toggles an additional high-pass filter that can be applied when using a long filter period. The purpose is to further detrend the data, ensuring that the envelope focuses solely on the most recent price oscillations.
Filter Period Multiplier: This multiplier adjusts the period of the high-pass filter dynamically based on the detected fundamental frequency. Increasing this multiplier will lengthen the period, making the filter less sensitive to short-term price fluctuations.
Filter Period (Min) and Filter Period (Max): These settings define the minimum and maximum bounds for the high-pass filter period. They ensure that the filter period stays within a reasonable range, preventing it from becoming too short (and overly sensitive) or too long (and too sluggish).
Envelope Period Multiplier: Similar to the filter period multiplier, this adjusts the period for the envelope generation. It scales the period dynamically to match the detected price cycles, allowing for more precise envelope adjustments.
Envelope Period (Min) and Envelope Period (Max): These settings establish the minimum and maximum bounds for the envelope period, ensuring the envelopes remain adaptive without becoming too reactive or too slow.
Static Settings
Filter Period: In static mode, this setting determines the fixed period for the high-pass filter. A shorter period will make the filter more responsive to price changes, while a longer period will smooth out more of the price data.
Envelope Period: This setting specifies the fixed period used for generating the envelopes in static mode. It directly influences how tightly or loosely the envelopes follow the price action.
TAE Smoothing: This controls the degree of smoothing applied during the TAE process in static mode. Higher smoothing values result in more gradual envelope curves, which can be useful in reducing noise but may also delay the envelope’s response to rapid price movements.
Visual Settings
Top Band Color: This setting allows you to choose the color for the upper band of the envelope. This band represents the resistance level in the price action.
Bottom Band Color: Similar to the top band color, this setting controls the color of the lower band, which represents the support level.
Center Line Color: This is the color of the central price line, often referred to as the carrier. It represents the detrended price around which the envelopes are constructed.
Line Width: This determines the thickness of the plotted lines for the top band, bottom band, and center line. Thicker lines can make the envelopes more visible, especially when overlaid on price data.
Fill Alpha: This controls the transparency level of the shaded area between the top and bottom bands. A lower alpha value will make the fill more transparent, while a higher value will make it more opaque, helping to highlight the envelope more clearly.
The envelopes generated by the True Envelopes indicator are designed to provide a more precise and responsive representation of price action compared to traditional methods like Bollinger Bands or Keltner Channels. The core idea behind this indicator is to create a price envelope that smoothly interpolates the significant peaks in price action, offering a more accurate depiction of support and resistance levels.
One of the critical aspects of this approach is the use of a high-pass filtered signal to identify these peaks. The high-pass filter serves as an effective method of detrending the price data, isolating the rapid fluctuations in price that are often lost in standard trend-following indicators. By filtering out the lower frequency components (i.e., the trend), the high-pass filter reveals the underlying oscillations in the price, which correspond to significant peaks and troughs. These oscillations are crucial for accurately constructing the envelope, as they represent the most responsive elements of the price movement.
The algorithm works by first applying the high-pass filter to the source price data, effectively detrending the series and isolating the high-frequency price changes. This filtered signal is then used to estimate the fundamental frequency of the price movement, which is essential for dynamically adjusting the envelope to current market conditions. By focusing on the peaks identified in the high-pass filtered signal, the algorithm generates an envelope that is both smooth and adaptive, closely following the most significant price changes without overfitting to transient noise.
Compared to traditional envelopes and bands, such as Bollinger Bands and Keltner Channels, the True Envelopes indicator offers several advantages. Bollinger Bands, which are based on standard deviations, and Keltner Channels, which use the average true range (ATR), both tend to react to price volatility but do not necessarily follow the peaks and troughs of the price with precision. As a result, these traditional methods can sometimes lag behind or fail to capture sudden shifts in price momentum, leading to either false signals or missed opportunities.
In contrast, the True Envelopes indicator, by using a high-pass filtered signal and a dynamic period estimation, adapts more quickly to changes in price behavior. The envelopes generated by this method are less prone to the lag that often affects standard deviation or ATR-based bands, and they provide a more accurate representation of the price's immediate oscillations. This can result in better predictive power and more reliable identification of support and resistance levels, making the True Envelopes indicator a valuable tool for traders looking for a more responsive and precise approach to market analysis.
In conclusion, the True Envelopes indicator is a powerful tool that blends advanced theoretical concepts with practical implementation, offering traders a precise and responsive way to analyze price dynamics. By adapting the True Amplitude Envelope (TAE) method through the use of a Kernel Density Estimator (KDE) and high-pass filtering, this indicator effectively captures the most significant price movements, providing a more accurate depiction of support and resistance levels compared to traditional methods like Bollinger Bands and Keltner Channels. The flexible settings allow for extensive customization, ensuring the indicator can be tailored to suit various trading strategies and market conditions.
"The Stocashi" - Stochastic RSI + Heikin-AshiWhat up guys and welcome to the coffee shop. I have a special little tool for you today to throw in your toolbox. This one is a freebie.
This is the Stochastic RS-Heiken-Ashi "The Stocashi"
This is the stochastic RSI built to look like Heikin-Ashi candles.
a lot of people have trouble using the stochastic indicator because of its ability to look very choppy at its edges instead of having nice curves or arcs to its form when you use it on scalping time frames it ends up being very pointed and you can't really tell when the bands turn over if you're using a stochastic Ribbon or you can't tell when it's actually moving in a particular direction if you're just using the K and the D line.
This new format of Presentation seeks to get you to have a better visual representation of what the stochastic is actually doing.
It's long been noted that Heikin-Ashi do a very good job of representing momentum in a price so using it on something that is erratic as the stochastic indicator seems like a plausible idea.
The strategy is simple because you use it exactly the same way you've always used the stochastic indicator except now you can look for the full color of the candle.
this one uses a gradient color setup for the candle so when the candle is fully red then you have a confirmed downtrend and when the candle is fully green you have a confirmed up trend of the stochastic however if, you a combination of the two colors inside of one candle then you do not have a confirmed direction of the stochastic.
the strategy is simple for the stochastic and that you need to know your overall trend. if you are in an uptrend you are waiting for the stochastic to reach bottom and start curving up.
if you are in a downtrend you are waiting for the stochastic to reach its top or its peak and curve down.
In an uptrend you want to make sure that the stochastic is making consistently higher lows just like price should be. if at any moment it makes a lower low then you know you have a problem with your Trend and you should consider exiting.
The opposite is true for a downtrend. In a downtrend you want to make sure you have lower highs. if at any given moment you end up with a higher high than you know you have a problem with your Trend and it's probably ending so you should consider exiting.
The stochastic indicator done as he can actually candles also does a very good job of telling you when there is a change of character. In that moment when the change of character shows up you simply wait until your trend and your price start to match up.
You can also use the stochastic indicator in this format to find divergences the same way you would on the relative strength index against your price highs and price lows so Divergence trading is visually a little bit easier with this tool.
The settings for the K percent D percent RSI length and stochastic length can be adjusted at will so be sure to study the history of the stochastic and find the good settings for your trading strategy.
Multi SMA Duokong indicatorThis is a multi Simple Moving Average line which changes color when the line curves change in gradients, enable users to notice the change in the curve of the moving average lines.
McDonald's Pattern [LuxAlgo]Tradingview asked, we delivered. This script fits a cubic Bezier curve using tops/bottoms in order to approximate a McDonalds pattern, a popular meme pattern in the crypto trading community.
Traditionally the McDonalds pattern is described by an M pattern with deep retracement (> 50%), forming a McDonalds logo.
Please note that this indicator is a meme & should not be taken seriously. Some aspects of this indicator are not real-time and meant for descriptive analysis alongside other components of this script, in this case, for entertainment purposes. We suggest looking through our other open-source scripts if you’re looking for more serious tools.
🔶 USAGE
The script fits Bezier curves using specific tops/bottoms as control points. When the distance between tops and bottoms values is relatively small, the user can more easily identify the pattern.
A score is shown on the top right of the chart, aiming to return how close the returned pattern is to the original logo.
A regular Mcdonalds pattern would return a red background, while an inverted pattern would return a green one.
🔶 SETTINGS
Length: Sensitivity of tops/bottoms detection. The method does not make use of pivot points, using rolling maximums/minimums instead.
Use First Bar As Vertex: Use the price and bar index of the last bar as vertex.
John Ehlers - The Price RadioPrice curves consist of much noise and little signal. For separating the latter from the former, John Ehlers proposed in the Stocks&Commodities May 2021 issue an unusual approach: Treat the price curve like a radio wave. Apply AM and FM demodulating technology for separating trade signals from the underlying noise.
reference: financial-hacker.com
T3 Velocity
"This technical indicator is a kind of rate of change oscillator made of 2 T3 moving average. It compares the momentum of the 2 curves between the current and the previous period. The first curve is calculated upon the period and the complete factor ("vFactor" parameter) and the second one with an half of this factor.
It results a smoothed oscillator that can be traded almost like a MACD. An optional signal line could be added to give clear entries when the oscillator cross it."
VDUB_BINARY_PRO_3NEW UPDATED BINARY PRO 3_V2 HERE -
VDUB_BINARY_PRO_3_V1 UPGRADE from binary PRO 1 / testing/ / experimental / Trade the curves / Highs -Lows / Band cross over/ Testing using heikin ashi
//Linear Regression Curve
//Centre band
//CM_Gann Swing HighLow V2/Modified////// MA input NOT WORKING ! - I broke it :s
//Vdub_Tetris_V2/ Modified
*Update Tip /Optional
Set the centre band to '34 to run centre line
AWR R & LR Oscillator with plots & tableHello trading viewers !
I'm glad to share with you one of my favorite indicator. It's the aggregate of many things. It is partly based on an indicator designed by gentleman goat. Many thanks to him.
1. Oscillator and Correlation Calculations
Overview and Functionality: This part of the indicator computes up to 10 Pearson correlation coefficients between a chosen source (typically the close price, though this is user-configurable) and the bar index over various periods. Starting with an initial period defined by the startPeriod parameter and increasing by a set increment (periodIncrement), each correlation coefficient is calculated using the built-in ta.correlation function over successive ranges. These coefficients are stored in an array, and the indicator calculates their average (avgPR) to provide a complete view of the market trend strength.
Display Features: Each individual coefficient, as well as the overall average, is plotted on the chart using a specific color. Horizontal lines (both dashed and solid) are drawn at levels 0, ±0.8, and ±1, serving as visual thresholds. Additionally, conditional fills in red or blue highlight when values exceed these thresholds, helping the user quickly identify potential extreme conditions (such as overbought or oversold situations).
2. Visual Signals and Automated Alerts
Graphical Signal Enhancements: To reinforce the analysis, the indicator uses graphical elements like emojis and shape markers. For example:
If all 10 curves drop below -0.79, a 🌋 emoji appears at the bottom of the chart;
When curves 2 through 10 are below -0.79, a ⛰️ emoji is displayed below the bar, potentially serving as a buy signal accompanied by an alert condition;
Likewise, symmetrical conditions for correlations exceeding 0.79 produce corresponding emojis (🤿 and 🏖️) at the top or bottom of the chart.
Alerts and Notifications: Using these visual triggers, several alertcondition statements are defined within the script. This allows users to set up TradingView alerts and receive real-time notifications whenever the market reaches these predefined critical zones identified by the multi-period analysis.
3. Regression Channel Analysis
Principles and Calculations: In addition to the oscillator, the indicator implements an analysis of regression channels. For each of the 8 configurable channels, the user can set a range of periods (for example, min1 to max1, etc.). The function calc_regression_channel iterates through the defined period range to find the optimal period that maximizes a statistical measure derived from a regression parameter calculated by the function r(p). Once this optimal period is identified, the indicator computes two key points (A and B) which define the main regression line, and then creates a channel based on the calculated deviation (an RMSE multiplied by a user-defined factor).
The regression channels are not displayed on the chart but are used to plot shapes & fullfilled a table.
Blue shapes are plotted when 6th channel or 7th channel are lower than 3 deviations
Yellow shapes are plotted when 6th channel or 7th channel are higher than 3 deviations
4. Scores, Conditions, and the Summary Table
Scoring System: The indicator goes further by assigning scores across multiple analytical categories, such as:
1. BigPear Score
What It Represents: This score is based on a longer-term moving average of the Pearson correlation values (SMA 100 of the average of the 10 curves of correlation of Pearson). The BigPear category is designed to capture where this longer-term average falls within specific ranges.
Conditions: The script defines nine boolean conditions (labeled BigPear1up through BigPear9up for the “up” direction).
Here's the rules :
BigPear1up = (bigsma_avgPR <= 0.5 and bigsma_avgPR > 0.25)
BigPear2up = (bigsma_avgPR <= 0.25 and bigsma_avgPR > 0)
BigPear3up = (bigsma_avgPR <= 0 and bigsma_avgPR > -0.25)
BigPear4up = (bigsma_avgPR <= -0.25 and bigsma_avgPR > -0.5)
BigPear5up = (bigsma_avgPR <= -0.5 and bigsma_avgPR > -0.65)
BigPear6up = (bigsma_avgPR <= -0.65 and bigsma_avgPR > -0.7)
BigPear7up = (bigsma_avgPR <= -0.7 and bigsma_avgPR > -0.75)
BigPear8up = (bigsma_avgPR <= -0.75 and bigsma_avgPR > -0.8)
BigPear9up = (bigsma_avgPR <= -0.8)
Conditions: The script defines nine boolean conditions (labeled BigPear1down through BigPear9down for the “down” direction).
BigPear1down = (bigsma_avgPR >= -0.5 and bigsma_avgPR < -0.25)
BigPear2down = (bigsma_avgPR >= -0.25 and bigsma_avgPR < 0)
BigPear3down = (bigsma_avgPR >= 0 and bigsma_avgPR < 0.25)
BigPear4down = (bigsma_avgPR >= 0.25 and bigsma_avgPR < 0.5)
BigPear5down = (bigsma_avgPR >= 0.5 and bigsma_avgPR < 0.65)
BigPear6down = (bigsma_avgPR >= 0.65 and bigsma_avgPR < 0.7)
BigPear7down = (bigsma_avgPR >= 0.7 and bigsma_avgPR < 0.75)
BigPear8down = (bigsma_avgPR >= 0.75 and bigsma_avgPR < 0.8)
BigPear9down = (bigsma_avgPR >= 0.8)
Weighting:
If BigPear1up is true, 1 point is added; if BigPear2up is true, 2 points are added; and so on up to 9 points from BigPear9up.
Total Score:
The positive score (posScoreBigPear) is the sum of these weighted conditions.
Similarly, there is a negative score (negScoreBigPear) that is calculated using a mirrored set of conditions (named BigPear1down to BigPear9down), each contributing a negative weight (from -1 to -9).
In essence, the BigPear score tells you—in a weighted cumulative way—where the longer-term correlation average falls relative to predefined thresholds.
2. Pear Score
What It Represents: This category uses the immediate average of the Pearson correlations (avgPR) rather than a longer-term smoothed version. It reflects a more current picture of the market’s correlation behavior.
How It’s Calculated:
Conditions: There are nine conditions defined for the “up” scenario (named Pear1up through Pear9up), which partition the range of avgPR into intervals. For instance:
Pear1up = (avgPR > -0.2 and avgPR <= 0)
Pear2up = (avgPR > -0.4 and avgPR <= -0.2)
Pear3up = (avgPR > -0.5 and avgPR <= -0.4)
Pear4up = (avgPR > -0.6 and avgPR <= -0.5)
Pear5up = (avgPR > -0.65 and avgPR <= -0.6)
Pear6up = (avgPR > -0.7 and avgPR <= -0.65)
Pear7up = (avgPR > -0.75 and avgPR <= -0.7)
Pear8up = (avgPR > -0.8 and avgPR <= -0.75)
Pear9up = (avgPR > -1 and avgPR <= -0.8)
There are nine conditions defined for the “down” scenario (named Pear1down through Pear9down), which partition the range of avgPR into intervals. For instance:
Pear1down = (avgPR >= 0 and avgPR < 0.2)
Pear2down = (avgPR >= 0.2 and avgPR < 0.4)
Pear3down = (avgPR >= 0.4 and avgPR < 0.5)
Pear4down = (avgPR >= 0.5 and avgPR < 0.6)
Pear5down = (avgPR >= 0.6 and avgPR < 0.65)
Pear6down = (avgPR >= 0.65 and avgPR < 0.7)
Pear7down = (avgPR >= 0.7 and avgPR < 0.75)
Pear8down = (avgPR >= 0.75 and avgPR < 0.8)
Pear9down = (avgPR >= 0.8 and avgPR <= 1)
Weighting:
Each condition has an associated weight, such as 0.9 for Pear1up, 1.9 for Pear2up, and so on, up to 9 for Pear9up.
Sum up :
Pear1up = 0.9
Pear2up = 1.9
Pear3up = 2.9
Pear4up = 3.9
Pear5up = 4.99
Pear6up = 6
Pear7up = 7
Pear8up = 8
Pear9up = 9
Total Score:
The positive score (posScorePear) is the sum of these values for each condition that returns true.
A corresponding negative score (negScorePear) is calculated using conditions for when avgPR falls on the positive side, with similar weights in the negative direction.
This score quantifies the current correlation reading by translating its relative level into a numeric score through a weighted sum.
3. Trendpear Score
What It Represents: The Trendpear score is more dynamic as it compares the current avgPR with its short-term moving average (sma_avgPR / 14 periods ) and also considers its relationship with an even longer moving average (bigsma_avgPR / 100 periods). It is meant to capture the trend or momentum in the correlation behavior.
How It’s Calculated:
Conditions: Nine conditions (from Trendpear1up to Trendpear9up) are defined to check:
Whether avgPR is below, equal to, or above sma_avgPR by different margins;
Whether it is trending upward (i.e., it is higher than its previous value).
Here are the rules
Trendpear1up = (avgPR <= sma_avgPR -0.2) and (avgPR >= avgPR )
Trendpear2up = (avgPR > sma_avgPR -0.2) and (avgPR <= sma_avgPR -0.07) and (avgPR >= avgPR )
Trendpear3up = (avgPR > sma_avgPR -0.07) and (avgPR <= sma_avgPR -0.03) and (avgPR >= avgPR )
Trendpear4up = (avgPR > sma_avgPR -0.03) and (avgPR <= sma_avgPR -0.02) and (avgPR >= avgPR )
Trendpear5up = (avgPR > sma_avgPR -0.02) and (avgPR <= sma_avgPR -0.01) and (avgPR >= avgPR )
Trendpear6up = (avgPR > sma_avgPR -0.01) and (avgPR <= sma_avgPR -0.001) and (avgPR >= avgPR )
Trendpear7up = (avgPR >= sma_avgPR) and (avgPR >= avgPR ) and (avgPR <= bigsma_avgPR)
Trendpear8up = (avgPR >= sma_avgPR) and (avgPR >= avgPR ) and (avgPR >= bigsma_avgPR -0.03)
Trendpear9up = (avgPR >= sma_avgPR) and (avgPR >= avgPR ) and (avgPR >= bigsma_avgPR)
Weighting:
The weights here are not linear. For example, the lightest condition may add 0.1 point, whereas the most extreme condition (e.g., when avgPR is not only above the moving average but also reaches a high proportion relative to bigsma_avgPR) might add as much as 90 points.
Trendpear1up = 0.1
Trendpear2up = 0.2
Trendpear3up = 0.3
Trendpear4up = 0.4
Trendpear5up = 0.5
Trendpear6up = 0.69
Trendpear7up = 7
Trendpear8up = 8.9
Trendpear9up = 90
Total Score:
The positive score (posScoreTrendpear) is the sum of the weights from all conditions that are satisfied.
A negative counterpart (negScoreTrendpear) exists similarly for when the trend indicates a downward bias.
Trendpear integrates both the level and the direction of change in the correlations, giving a strong numeric indication when the market starts to diverge from its short-term average.
4. Deviation Score
What It Represents: The “Écart” score quantifies how far the asset’s price deviates from the boundaries defined by the regression channels. This metric can indicate if the price is excessively deviating—which might signal an eventual reversion—or confirming a breakout.
How It’s Calculated:
Conditions: For each channel (with at least seven channels contributing to the scoring from the provided code), there are three levels of deviation:
First tier (EcartXup): Checks if the price is below the upper boundary but above a second boundary.
Second tier (EcartXup2): Checks if the price has dropped further, between a lower and a more extreme boundary.
Third tier (EcartXup3): Checks if the price is below the most extreme limit.
Weighting:
Each tier within a channel has a very small weight for the lowest severities (for example, 0.0001 for the first tier, 0.0002 for the second, 0.0003 for the third) with weights increasing with the channel index.
First channel : 0.0001 to 0.0003 (very short term)
Second channel : 0.001 to 0.003 (short term)
Third channel : 0.01 to 0.03 (short mid term)
4th channel : 0.1 to 0.3 ( mid term)
5th channel: 1 to 3 (long mid term)
6th channel : 10 to 30 (long term)
7th channel : 100 to 300 (very long term)
Total Score:
The overall positive score (posScoreEcart) is the sum of all the weights for conditions met among the first, second, and third tiers.
The corresponding negative score (negScoreEcart) is calculated similarly (using conditions when the price is above the channel boundaries), with the weights being the same in magnitude but negative in sign.
This layered scoring method allows the indicator to reflect both minor and major deviations in a gradated and cumulative manner.
Example :
Score + = 321.0001
Score - = -0.111
The asset price is really overextended in long term view, not for mid term & short term expect the in the very short term.
Score + = 0.0033
Score - = -1.11
The asset price is really extended in short term view, not for mid term (even a bit underextended) & long term is neutral
5. Slope Score
What It Represents: The Slope score captures the trend direction and steepness of the regression channels. It reflects whether the regression line (and hence the underlying trend) is sloping upward or downward.
How It’s Calculated:
Conditions:
if the slope has a uptrend = 1
if the slope has a downtrend = -1
Weighting:
First channel : 0.0001 to 0.0003 (very short term)
Second channel : 0.001 to 0.003 (short term)
Third channel : 0.01 to 0.03 (short mid term)
4th channel : 0.1 to 0.3 ( mid term)
5th channel: 1 to 3 (long mid term)
6th channel : 10 to 30 (long term)
7th channel : 100 to 300 (very long term)
The positive slope conditions incrementally add weights from 0.0001 for the smallest positive slopes to 100 for the largest among the seven checks. And negative for the downward slopes.
The positive score (posScoreSlope) is the sum of all the weights from the upward slope conditions that are met.
The negative score (negScoreSlope) sums the negative weights when downward conditions are met.
Example :
Score + = 111
Score - = -0.1111
Trend is up for longterm & down for mid & short term
The slope score therefore emphasizes both the magnitude and the direction of the trend as indicated by the regression channels, with an intentional asymmetry that flags strong downtrends more aggressively.
Summary
For each category—BigPear, Pear, Trendpear, Écart, and Slope—the indicator evaluates a defined set of conditions. Each condition is a binary test (true/false) based on different thresholds or comparisons (for example, comparing the current value to a moving average or a channel boundary). When a condition is true, its assigned weight is added to the cumulative score for that category. These individual scores, both positive and negative, are then displayed in a table, making it easy for the trader to see at a glance where the market stands according to each analytical dimension.
This comprehensive, weighted approach allows the indicator to encapsulate several layers of market information into a single set of scores, aiding in the identification of potential trading opportunities or market reversals.
5. Practical Use and Application
How to Use the Indicator:
Interpreting the Signals:
On your chart, observe the following components:
The individual correlation curves and their average, plotted with visual thresholds;
Visual markers (such as emojis and shape markers) that signal potential oversold or overbought conditions
The summary table that aggregates the scores from each category, offering a quick glance at the market’s state.
Trading Alerts and Decisions: Set your TradingView alerts through the alertcondition functions provided by the indicator. This way, you receive immediate notifications when critical conditions are met, allowing you to react as soon as the market reaches key levels. This tool is especially beneficial for advanced traders who want to combine multiple technical dimensions to optimize entry and exit points with a confluence of signals.
Conclusion and Additional Insights
In summary, this advanced indicator innovatively combines multi-scale Pearson correlation analysis (via multiple linear regressions) with robust regression channel analysis. It offers a deep and nuanced view of market dynamics by delivering clear visual signals and a comprehensive numerical summary through a built-in score table.
Combine this indicator with other tools (e.g., oscillators, moving averages, volume indicators) to enhance overall strategy robustness.
regressionsLibrary "regressions"
This library computes least square regression models for polynomials of any form for a given data set of x and y values.
fit(X, y, reg_type, degrees)
Takes a list of X and y values and the degrees of the polynomial and returns a least square regression for the given polynomial on the dataset.
Parameters:
X (array) : (float ) X inputs for regression fit.
y (array) : (float ) y outputs for regression fit.
reg_type (string) : (string) The type of regression. If passing value for degrees use reg.type_custom
degrees (array) : (int ) The degrees of the polynomial which will be fit to the data. ex: passing array.from(0, 3) would be a polynomial of form c1x^0 + c2x^3 where c2 and c1 will be coefficients of the best fitting polynomial.
Returns: (regression) returns a regression with the best fitting coefficients for the selecected polynomial
regress(reg, x)
Regress one x input.
Parameters:
reg (regression) : (regression) The fitted regression which the y_pred will be calulated with.
x (float) : (float) The input value cooresponding to the y_pred.
Returns: (float) The best fit y value for the given x input and regression.
predict(reg, X)
Predict a new set of X values with a fitted regression. -1 is one bar ahead of the realtime
Parameters:
reg (regression) : (regression) The fitted regression which the y_pred will be calulated with.
X (array)
Returns: (float ) The best fit y values for the given x input and regression.
generate_points(reg, x, y, left_index, right_index)
Takes a regression object and creates chart points which can be used for plotting visuals like lines and labels.
Parameters:
reg (regression) : (regression) Regression which has been fitted to a data set.
x (array) : (float ) x values which coorispond to passed y values
y (array) : (float ) y values which coorispond to passed x values
left_index (int) : (int) The offset of the bar farthest to the realtime bar should be larger than left_index value.
right_index (int) : (int) The offset of the bar closest to the realtime bar should be less than right_index value.
Returns: (chart.point ) Returns an array of chart points
plot_reg(reg, x, y, left_index, right_index, curved, close, line_color, line_width)
Simple plotting function for regression for more custom plotting use generate_points() to create points then create your own plotting function.
Parameters:
reg (regression) : (regression) Regression which has been fitted to a data set.
x (array)
y (array)
left_index (int) : (int) The offset of the bar farthest to the realtime bar should be larger than left_index value.
right_index (int) : (int) The offset of the bar closest to the realtime bar should be less than right_index value.
curved (bool) : (bool) If the polyline is curved or not.
close (bool) : (bool) If true the polyline will be closed.
line_color (color) : (color) The color of the line.
line_width (int) : (int) The width of the line.
Returns: (polyline) The polyline for the regression.
series_to_list(src, left_index, right_index)
Convert a series to a list. Creates a list of all the cooresponding source values
from left_index to right_index. This should be called at the highest scope for consistency.
Parameters:
src (float) : (float ) The source the list will be comprised of.
left_index (int) : (float ) The left most bar (farthest back historical bar) which the cooresponding source value will be taken for.
right_index (int) : (float ) The right most bar closest to the realtime bar which the cooresponding source value will be taken for.
Returns: (float ) An array of size left_index-right_index
range_list(start, stop, step)
Creates an from the start value to the stop value.
Parameters:
start (int) : (float ) The true y values.
stop (int) : (float ) The predicted y values.
step (int) : (int) Positive integer. The spacing between the values. ex: start=1, stop=6, step=2:
Returns: (float ) An array of size stop-start
regression
Fields:
coeffs (array__float)
degrees (array__float)
type_linear (series__string)
type_quadratic (series__string)
type_cubic (series__string)
type_custom (series__string)
_squared_error (series__float)
X (array__float)
MACD of RSI [TORYS]MACD of RSI — Momentum & Divergence Scanner
Description:
This enhanced oscillator applies MACD logic directly to the Relative Strength Index (RSI) rather than price, giving traders a clearer look at internal momentum and early shifts in trend strength. Now featuring a custom histogram, dual MA types, and RSI-based divergence detection — it’s a complete toolkit for identifying exhaustion, acceleration, and hidden reversal points in real time.
How It Works:
Calculates the MACD line as the difference between a fast and slow moving average of RSI. Adds a Signal Line (MA of the MACD) and plots a Histogram to show momentum acceleration/deceleration. Both RSI MAs and the Signal Line can be toggled between EMA and SMA for custom tuning.
Divergence Detection:
Bullish Divergence : Price makes a lower low while RSI makes a higher low → labeled with a green “D” below the curve.
Bearish Divergence : Price makes a higher high while RSI makes a lower high → labeled with a red “D” above the curve.
Configurable lookback window for tuning sensitivity to pivots, with 4 as the sweet spot.
RSI Pivot Dot Signals:
Plots green dots at RSI oversold pivot lows below 30,
Plots red dots at overbought pivot highs above 70.
Helps detect short-term exhaustion or bounce zones, plotted right on the MACD-RSI curve.
RSI 50 Crosses (Optional):
Optional ▲ and ▼ labels when RSI crosses its 50 midline — useful for momentum trend shifts or pullback confirmation, or to detect consolidation.
Histogram:
Plotted as a column chart showing the distance between MACD and Signal Line.
Colored dynamically:
Bright green : Momentum rising above zero
Light green : Weakening above zero
Bright red : Momentum falling below zero
Light red : Weakening below zero
The zero line serves as the mid-point:
Above = Bullish Bias
Below = Bearish Bias
How to Interpret:
Momentum Confirmation:
Use MACD cross above Signal Line with a rising histogram to confirm breakouts or trend entries.
Histogram shrinking near zero = momentum weakening → caution or reversal.
Exhaustion & Reversals:
Dot signals near RSI extremes + histogram peak can suggest overbought/oversold pressure.
Use divergence labels ("D") to spot early reversal signals before price breaks structure.
Inputs & Settings:
RSI Length
Fast/Slow MA Lengths for MACD (applied to RSI)
Signal Line Length
MA Type: Choose between EMA and SMA for MACD and Signal Line
Pivot Sensitivity for dot markers
Divergence Logic Toggle
Show/hide RSI 50 Crosses
Best For:
Traders who want momentum insight from inside RSI, not price
Scalpers using divergence or exhaustion entries
Swing traders seeking entry confirmation from signal crossovers
Anyone using multi-timeframe confluence with RSI and trend filters
Pro Tips:
Combine this with:
Bollinger Bands breakouts and reversals
VWAP or EMAs to filter entries by trend
Volume spikes or BBW squeezes for volatility confirmation
TTM Scalper Alert to sync structure and momentum
[blackcat] L2 Veronique Valcu VWAP Z-Score IndicatorLevel: 2
Background
Veronique Valcu's article "Z-Score Indicator" in Feb,2003 provided a description and commentary on a new method of displaying directional change normalized in terms of standard deviation. This indicator is realized in pine script here by using the following function code, adding vwap function, called vwap ZScore.
Function
This indicator has three input, "AvgLen", "Smooth1" and "Smooth2." Price is fixed in selected vwap price. AvgLen describes the length of the sample considered in the standard deviation calculation. Once created and verified, the function can be easily called in any indicator or strategy.
Inputs
AvgLen --> Length input for vwap Zscore.
Smooth1 and Smooth2 --> Smoothing length.
Key Signal
Curve1 --> vwap ZScore output fast signal
Curve2 --> vwap ZScore output slow signal
Remarks
This is a Level 2 free and open source indicator.
Feedbacks are appreciated.
Williams %R - Multi TimeframeThis indicator implements the William %R multi-timeframe. On the 1H chart, the curves for 1H (with signal), 4H, and 1D are displayed. On the 4H chart, the curves for 4H (with signal) and 1D are shown. On all other timeframes, only the %R and signal are displayed. The indicator is useful to use on 1H and 4H charts to find confluence among the different curves and identify better entries based on their alignment across all timeframes. Signals above 80 often indicate a potential bearish reversal in price, while signals below 20 often suggest a bullish price reversal.
InterpolationLibrary "Interpolation"
Functions for interpolating values. Can be useful in signal processing or applied as a sigmoid function.
linear(k, delta, offset, unbound) Returns the linear adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the line the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
quadIn(k, delta, offset, unbound) Returns the quadratic (easing-in) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
quadOut(k, delta, offset, unbound) Returns the quadratic (easing-out) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
quadInOut(k, delta, offset, unbound) Returns the quadratic (easing-in-out) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
cubicIn(k, delta, offset, unbound) Returns the cubic (easing-in) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
cubicOut(k, delta, offset, unbound) Returns the cubic (easing-out) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
cubicInOut(k, delta, offset, unbound) Returns the cubic (easing-in-out) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
expoIn(k, delta, offset, unbound) Returns the exponential (easing-in) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
expoOut(k, delta, offset, unbound) Returns the exponential (easing-out) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
expoInOut(k, delta, offset, unbound) Returns the exponential (easing-in-out) adjusted value.
Parameters:
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
using(fn, k, delta, offset, unbound) Returns the adjusted value by function name.
Parameters:
fn : The name of the function. Allowed values: linear, quadIn, quadOut, quadInOut, cubicIn, cubicOut, cubicInOut, expoIn, expoOut, expoInOut.
k : A number (float) from 0 to 1 representing where the on the curve the value is.
delta : The amount the value should change as k reaches 1.
offset : The start value.
unbound : When true, k values less than 0 or greater than 1 are still calculated. When false (default), k values less than 0 will return the offset value and values greater than 1 will return (offset + delta).
Demand and Supply Conditions with SignalsIntroduction:
This document outlines a trading strategy that utilizes price action analysis and color signals to make informed trading decisions. The strategy focuses on identifying demand and supply conditions, curve patterns, and generating signals based on historical price data. The colors associated with each condition and signal serve as visual indicators to assist in decision-making.
I. Strategy Overview:
Objective:
The objective of this trading strategy is to identify potential trading opportunities based on price action analysis and color signals.
Key Components:
Demand Condition: A green upward-facing triangle indicates a potential demand condition.
Supply Condition: A red downward-facing triangle indicates a potential supply condition.
Curve Pattern Condition: A blue upward-facing triangle indicates a potential curve pattern condition.
Signal Condition: A yellow upward-facing triangle indicates a potential buy signal.
II. Understanding the Colors:
* Green: Represents the demand condition, which suggests potential buying pressure in the market. A green upward-facing triangle is plotted on the chart when the demand condition is met at a specific candle or bar.
* Red: Represents the supply condition, which suggests potential selling pressure in the market. A red downward-facing triangle is plotted on the chart when the supply condition is met at a specific candle or bar.
* Blue: Represents the curve pattern condition, which suggests the presence of a specific pattern based on price action analysis. A blue upward-facing triangle is plotted on the chart when the curve pattern condition is met at a specific candle or bar.
* Yellow: Represents the signal condition, which is a combination of the demand condition and the curve pattern condition. A yellow upward-facing triangle is plotted on the chart when the signal condition is met at a specific candle or bar, indicating a potential buy signal.
III. Decision-Making Process:
* Demand and Supply Conditions: Identify potential buying opportunities when a green demand condition is present. Consider potential selling opportunities when a red supply condition is present. Use these conditions to assess the overall market sentiment and potential price reversals.
* Curve Patterns: Analyze the presence of blue curve pattern conditions to identify specific price patterns. These patterns can provide additional confirmation for potential trading decisions.
* Signal Condition: Pay attention to the yellow signal condition, which indicates a potential buy signal. Evaluate the overall market context and consider entering a buy position when the signal condition is met.
* Risk Management: Implement proper risk management techniques such as setting stop-loss orders and position sizing to protect against potential losses.
IV. Conclusion:
This trading strategy leverages price action analysis and color signals to identify potential trading opportunities. The colors associated with each condition and signal serve as visual aids to highlight specific points on the chart. It's important to thoroughly backtest and validate the strategy before applying it to real-world trading scenarios. Additionally, always consider market conditions, risk management, and individual trading preferences when making trading decisions.
Disclaimer: Trading involves risks, and this document does not guarantee profitable outcomes. Traders should exercise caution and perform their own due diligence before engaging in any trading activity.
Remember to continually review and adapt your trading strategy based on market conditions and personal experiences to enhance its effectiveness.
LGMM (flat buffers) — multivariate poly + latent statesLGMM POLYNOMIAL BANDS — DISCOVER THE MARKET’S HIDDEN STATES
Overview
Latent-Gaussian-Mixture-Models (LGMMs) view price action as a mix of several invisible regimes: trending up, drifting sideways, sudden volatility spikes, and so on.
A Gaussian Mixture learns these states directly from data and outputs, for every bar, the probability that the market is in each state.
This indicator feeds those probabilities into a rolling polynomial regression that draws a fair-value line, then builds adaptive upper and lower bands.
Band width expands when recent residuals are large *and* when the state mix is uncertain, and contracts when price is calm or one regime clearly dominates.
Crossing back into the band from below generates a buy flag; crossing back into the band from above generates a sell flag (or take-profit for longs).
Key Inputs
Price source – default is Close; you can choose HL2, OHLC4, etc.
Training window (bars) – look-back length for every retrain. 252 bars (one trading year) is a balanced default for US stocks on daily timeframe. Use fewer bars for intraday charts (say 7*24=168 for 1H bars on crypto), more for weekly periods.
Polynomial degree – 1 for a straight trend line, 2 for a curved fit. Curved fits are better when the symbol shows persistent drift.
Hidden states K – number of regimes the mixture tracks (1 to 3). Three states often map well to up-trend, chop, down-trend.
Band width ×σ – multiplier on the entropy-weighted standard deviation. Smaller values (1.5-2) give more trades; larger values (2.5-3) give fewer, higher-conviction trades.
Offline μ,σ pairs (optional) – paste component means and sigmas from an offline LGMM (format: mu1,sigma1;mu2,sigma2;…). Leave blank to let the script use its built-in approximation.
Quick Start
Add the indicator to a chart and wait until the initial Training window has filled.
Watch for green BUY triangles when price closes back above the lower band and red SELL triangles when price closes back below the upper band.
Fine-tune:
– Increase Training window to reduce noise.
– Decrease Band width ×σ for more frequent signals.
– Experiment with Hidden states K; more states capture richer behaviour but need longer windows to stay reliable.
Tips
Bands widen automatically in chaotic periods and tighten when one regime dominates.
Combine with a volume filter or a higher-time-frame trend to reduce whipsaws.
If you already run an LGMM in Python or Matlab, paste its component parameters for a perfect match between your back-test and the TradingView plot.
Works on all markets and time-frames, provided you have at least five times the Training window’s bars in history.
Happy trading!
ADX Forecast [Titans_Invest]ADX Forecast
This isn’t just another ADX indicator — it’s the most powerful and complete ADX tool ever created, and without question the best ADX indicator on TradingView, possibly even the best in the world.
ADX Forecast represents a revolutionary leap in trend strength analysis, blending the timeless principles of the classic ADX with cutting-edge predictive modeling. For the first time on TradingView, you can anticipate future ADX movements using scientifically validated linear regression — a true game-changer for traders looking to stay ahead of trend shifts.
1. Real-Time ADX Forecasting
By applying least squares linear regression, ADX Forecast projects the future trajectory of the ADX with exceptional accuracy. This forecasting power enables traders to anticipate changes in trend strength before they fully unfold — a vital edge in fast-moving markets.
2. Unmatched Customization & Precision
With 26 long entry conditions and 26 short entry conditions, this indicator accounts for every possible ADX scenario. Every parameter is fully customizable, making it adaptable to any trading strategy — from scalping to swing trading to long-term investing.
3. Transparency & Advanced Visualization
Visualize internal ADX dynamics in real time with interactive tags, smart flags, and fully adjustable threshold levels. Every signal is transparent, logic-based, and engineered to fit seamlessly into professional-grade trading systems.
4. Scientific Foundation, Elite Execution
Grounded in statistical precision and machine learning principles, ADX Forecast upgrades the classic ADX from a reactive lagging tool into a forward-looking trend prediction engine. This isn’t just an indicator — it’s a scientific evolution in trend analysis.
⯁ SCIENTIFIC BASIS LINEAR REGRESSION
Linear Regression is a fundamental method of statistics and machine learning, used to model the relationship between a dependent variable y and one or more independent variables 𝑥.
The general formula for a simple linear regression is given by:
y = β₀ + β₁x + ε
β₁ = Σ((xᵢ - x̄)(yᵢ - ȳ)) / Σ((xᵢ - x̄)²)
β₀ = ȳ - β₁x̄
Where:
y = is the predicted variable (e.g. future value of RSI)
x = is the explanatory variable (e.g. time or bar index)
β0 = is the intercept (value of 𝑦 when 𝑥 = 0)
𝛽1 = is the slope of the line (rate of change)
ε = is the random error term
The goal is to estimate the coefficients 𝛽0 and 𝛽1 so as to minimize the sum of the squared errors — the so-called Random Error Method Least Squares.
⯁ LEAST SQUARES ESTIMATION
To minimize the error between predicted and observed values, we use the following formulas:
β₁ = /
β₀ = ȳ - β₁x̄
Where:
∑ = sum
x̄ = mean of x
ȳ = mean of y
x_i, y_i = individual values of the variables.
Where:
x_i and y_i are the means of the independent and dependent variables, respectively.
i ranges from 1 to n, the number of observations.
These equations guarantee the best linear unbiased estimator, according to the Gauss-Markov theorem, assuming homoscedasticity and linearity.
⯁ LINEAR REGRESSION IN MACHINE LEARNING
Linear regression is one of the cornerstones of supervised learning. Its simplicity and ability to generate accurate quantitative predictions make it essential in AI systems, predictive algorithms, time series analysis, and automated trading strategies.
By applying this model to the ADX, you are literally putting artificial intelligence at the heart of a classic indicator, bringing a new dimension to technical analysis.
⯁ VISUAL INTERPRETATION
Imagine an ADX time series like this:
Time →
ADX →
The regression line will smooth these values and extend them n periods into the future, creating a predicted trajectory based on the historical moment. This line becomes the predicted ADX, which can be crossed with the actual ADX to generate more intelligent signals.
⯁ SUMMARY OF SCIENTIFIC CONCEPTS USED
Linear Regression Models the relationship between variables using a straight line.
Least Squares Minimizes the sum of squared errors between prediction and reality.
Time Series Forecasting Estimates future values based on historical data.
Supervised Learning Trains models to predict outputs from known inputs.
Statistical Smoothing Reduces noise and reveals underlying trends.
⯁ WHY THIS INDICATOR IS REVOLUTIONARY
Scientifically-based: Based on statistical theory and mathematical inference.
Unprecedented: First public ADX with least squares predictive modeling.
Intelligent: Built with machine learning logic.
Practical: Generates forward-thinking signals.
Customizable: Flexible for any trading strategy.
⯁ CONCLUSION
By combining ADX with linear regression, this indicator allows a trader to predict market momentum, not just follow it.
ADX Forecast is not just an indicator — it is a scientific breakthrough in technical analysis technology.
⯁ Example of simple linear regression, which has one independent variable:
⯁ In linear regression, observations ( red ) are considered to be the result of random deviations ( green ) from an underlying relationship ( blue ) between a dependent variable ( y ) and an independent variable ( x ).
⯁ Visualizing heteroscedasticity in a scatterplot against 100 random fitted values using Matlab:
⯁ The data sets in the Anscombe's quartet are designed to have approximately the same linear regression line (as well as nearly identical means, standard deviations, and correlations) but are graphically very different. This illustrates the pitfalls of relying solely on a fitted model to understand the relationship between variables.
⯁ The result of fitting a set of data points with a quadratic function:
_______________________________________________________________________
🥇 This is the world’s first ADX indicator with: Linear Regression for Forecasting 🥇_______________________________________________________________________
_________________________________________________
🔮 Linear Regression: PineScript Technical Parameters 🔮
_________________________________________________
Forecast Types:
• Flat: Assumes prices will remain the same.
• Linreg: Makes a 'Linear Regression' forecast for n periods.
Technical Information:
ta.linreg (built-in function)
Linear regression curve. A line that best fits the specified prices over a user-defined time period. It is calculated using the least squares method. The result of this function is calculated using the formula: linreg = intercept + slope * (length - 1 - offset), where intercept and slope are the values calculated using the least squares method on the source series.
Syntax:
• Function: ta.linreg()
Parameters:
• source: Source price series.
• length: Number of bars (period).
• offset: Offset.
• return: Linear regression curve.
This function has been cleverly applied to the RSI, making it capable of projecting future values based on past statistical trends.
______________________________________________________
______________________________________________________
⯁ WHAT IS THE ADX❓
The Average Directional Index (ADX) is a technical analysis indicator developed by J. Welles Wilder. It measures the strength of a trend in a market, regardless of whether the trend is up or down.
The ADX is an integral part of the Directional Movement System, which also includes the Plus Directional Indicator (+DI) and the Minus Directional Indicator (-DI). By combining these components, the ADX provides a comprehensive view of market trend strength.
⯁ HOW TO USE THE ADX❓
The ADX is calculated based on the moving average of the price range expansion over a specified period (usually 14 periods). It is plotted on a scale from 0 to 100 and has three main zones:
• Strong Trend: When the ADX is above 25, indicating a strong trend.
• Weak Trend: When the ADX is below 20, indicating a weak or non-existent trend.
• Neutral Zone: Between 20 and 25, where the trend strength is unclear.
______________________________________________________
______________________________________________________
⯁ ENTRY CONDITIONS
The conditions below are fully flexible and allow for complete customization of the signal.
______________________________________________________
______________________________________________________
🔹 CONDITIONS TO BUY 📈
______________________________________________________
• Signal Validity: The signal will remain valid for X bars .
• Signal Sequence: Configurable as AND or OR .
🔹 +DI > -DI
🔹 +DI < -DI
🔹 +DI > ADX
🔹 +DI < ADX
🔹 -DI > ADX
🔹 -DI < ADX
🔹 ADX > Threshold
🔹 ADX < Threshold
🔹 +DI > Threshold
🔹 +DI < Threshold
🔹 -DI > Threshold
🔹 -DI < Threshold
🔹 +DI (Crossover) -DI
🔹 +DI (Crossunder) -DI
🔹 +DI (Crossover) ADX
🔹 +DI (Crossunder) ADX
🔹 +DI (Crossover) Threshold
🔹 +DI (Crossunder) Threshold
🔹 -DI (Crossover) ADX
🔹 -DI (Crossunder) ADX
🔹 -DI (Crossover) Threshold
🔹 -DI (Crossunder) Threshold
🔮 +DI (Crossover) -DI Forecast
🔮 +DI (Crossunder) -DI Forecast
🔮 ADX (Crossover) +DI Forecast
🔮 ADX (Crossunder) +DI Forecast
______________________________________________________
______________________________________________________
🔸 CONDITIONS TO SELL 📉
______________________________________________________
• Signal Validity: The signal will remain valid for X bars .
• Signal Sequence: Configurable as AND or OR .
🔸 +DI > -DI
🔸 +DI < -DI
🔸 +DI > ADX
🔸 +DI < ADX
🔸 -DI > ADX
🔸 -DI < ADX
🔸 ADX > Threshold
🔸 ADX < Threshold
🔸 +DI > Threshold
🔸 +DI < Threshold
🔸 -DI > Threshold
🔸 -DI < Threshold
🔸 +DI (Crossover) -DI
🔸 +DI (Crossunder) -DI
🔸 +DI (Crossover) ADX
🔸 +DI (Crossunder) ADX
🔸 +DI (Crossover) Threshold
🔸 +DI (Crossunder) Threshold
🔸 -DI (Crossover) ADX
🔸 -DI (Crossunder) ADX
🔸 -DI (Crossover) Threshold
🔸 -DI (Crossunder) Threshold
🔮 +DI (Crossover) -DI Forecast
🔮 +DI (Crossunder) -DI Forecast
🔮 ADX (Crossover) +DI Forecast
🔮 ADX (Crossunder) +DI Forecast
______________________________________________________
______________________________________________________
🤖 AUTOMATION 🤖
• You can automate the BUY and SELL signals of this indicator.
______________________________________________________
______________________________________________________
⯁ UNIQUE FEATURES
______________________________________________________
Linear Regression: (Forecast)
Signal Validity: The signal will remain valid for X bars
Signal Sequence: Configurable as AND/OR
Condition Table: BUY/SELL
Condition Labels: BUY/SELL
Plot Labels in the Graph Above: BUY/SELL
Automate and Monitor Signals/Alerts: BUY/SELL
Linear Regression (Forecast)
Signal Validity: The signal will remain valid for X bars
Signal Sequence: Configurable as AND/OR
Table of Conditions: BUY/SELL
Conditions Label: BUY/SELL
Plot Labels in the graph above: BUY/SELL
Automate & Monitor Signals/Alerts: BUY/SELL
______________________________________________________
📜 SCRIPT : ADX Forecast
🎴 Art by : @Titans_Invest & @DiFlip
👨💻 Dev by : @Titans_Invest & @DiFlip
🎑 Titans Invest — The Wizards Without Gloves 🧤
✨ Enjoy!
______________________________________________________
o Mission 🗺
• Inspire Traders to manifest Magic in the Market.
o Vision 𐓏
• To elevate collective Energy 𐓷𐓏
RSI Full Forecast [Titans_Invest]RSI Full Forecast
Get ready to experience the ultimate evolution of RSI-based indicators – the RSI Full Forecast, a boosted and even smarter version of the already powerful: RSI Forecast
Now featuring over 40 additional entry conditions (forecasts), this indicator redefines the way you view the market.
AI-Powered RSI Forecasting:
Using advanced linear regression with the least squares method – a solid foundation for machine learning - the RSI Full Forecast enables you to predict future RSI behavior with impressive accuracy.
But that’s not all: this new version also lets you monitor future crossovers between the RSI and the MA RSI, delivering early and strategic signals that go far beyond traditional analysis.
You’ll be able to monitor future crossovers up to 20 bars ahead, giving you an even broader and more precise view of market movements.
See the Future, Now:
• Track upcoming RSI & RSI MA crossovers in advance.
• Identify potential reversal zones before price reacts.
• Uncover statistical behavior patterns that would normally go unnoticed.
40+ Intelligent Conditions:
The new layer of conditions is designed to detect multiple high-probability scenarios based on historical patterns and predictive modeling. Each additional forecast is a window into the price's future, powered by robust mathematics and advanced algorithmic logic.
Full Customization:
All parameters can be tailored to fit your strategy – from smoothing periods to prediction sensitivity. You have complete control to turn raw data into smart decisions.
Innovative, Accurate, Unique:
This isn’t just an upgrade. It’s a quantum leap in technical analysis.
RSI Full Forecast is the first of its kind: an indicator that blends statistical analysis, machine learning, and visual design to create a true real-time predictive system.
⯁ SCIENTIFIC BASIS LINEAR REGRESSION
Linear Regression is a fundamental method of statistics and machine learning, used to model the relationship between a dependent variable y and one or more independent variables 𝑥.
The general formula for a simple linear regression is given by:
y = β₀ + β₁x + ε
β₁ = Σ((xᵢ - x̄)(yᵢ - ȳ)) / Σ((xᵢ - x̄)²)
β₀ = ȳ - β₁x̄
Where:
y = is the predicted variable (e.g. future value of RSI)
x = is the explanatory variable (e.g. time or bar index)
β0 = is the intercept (value of 𝑦 when 𝑥 = 0)
𝛽1 = is the slope of the line (rate of change)
ε = is the random error term
The goal is to estimate the coefficients 𝛽0 and 𝛽1 so as to minimize the sum of the squared errors — the so-called Random Error Method Least Squares.
⯁ LEAST SQUARES ESTIMATION
To minimize the error between predicted and observed values, we use the following formulas:
β₁ = /
β₀ = ȳ - β₁x̄
Where:
∑ = sum
x̄ = mean of x
ȳ = mean of y
x_i, y_i = individual values of the variables.
Where:
x_i and y_i are the means of the independent and dependent variables, respectively.
i ranges from 1 to n, the number of observations.
These equations guarantee the best linear unbiased estimator, according to the Gauss-Markov theorem, assuming homoscedasticity and linearity.
⯁ LINEAR REGRESSION IN MACHINE LEARNING
Linear regression is one of the cornerstones of supervised learning. Its simplicity and ability to generate accurate quantitative predictions make it essential in AI systems, predictive algorithms, time series analysis, and automated trading strategies.
By applying this model to the RSI, you are literally putting artificial intelligence at the heart of a classic indicator, bringing a new dimension to technical analysis.
⯁ VISUAL INTERPRETATION
Imagine an RSI time series like this:
Time →
RSI →
The regression line will smooth these values and extend them n periods into the future, creating a predicted trajectory based on the historical moment. This line becomes the predicted RSI, which can be crossed with the actual RSI to generate more intelligent signals.
⯁ SUMMARY OF SCIENTIFIC CONCEPTS USED
Linear Regression Models the relationship between variables using a straight line.
Least Squares Minimizes the sum of squared errors between prediction and reality.
Time Series Forecasting Estimates future values based on historical data.
Supervised Learning Trains models to predict outputs from known inputs.
Statistical Smoothing Reduces noise and reveals underlying trends.
⯁ WHY THIS INDICATOR IS REVOLUTIONARY
Scientifically-based: Based on statistical theory and mathematical inference.
Unprecedented: First public RSI with least squares predictive modeling.
Intelligent: Built with machine learning logic.
Practical: Generates forward-thinking signals.
Customizable: Flexible for any trading strategy.
⯁ CONCLUSION
By combining RSI with linear regression, this indicator allows a trader to predict market momentum, not just follow it.
RSI Full Forecast is not just an indicator — it is a scientific breakthrough in technical analysis technology.
⯁ Example of simple linear regression, which has one independent variable:
⯁ In linear regression, observations ( red ) are considered to be the result of random deviations ( green ) from an underlying relationship ( blue ) between a dependent variable ( y ) and an independent variable ( x ).
⯁ Visualizing heteroscedasticity in a scatterplot against 100 random fitted values using Matlab:
⯁ The data sets in the Anscombe's quartet are designed to have approximately the same linear regression line (as well as nearly identical means, standard deviations, and correlations) but are graphically very different. This illustrates the pitfalls of relying solely on a fitted model to understand the relationship between variables.
⯁ The result of fitting a set of data points with a quadratic function:
_________________________________________________
🔮 Linear Regression: PineScript Technical Parameters 🔮
_________________________________________________
Forecast Types:
• Flat: Assumes prices will remain the same.
• Linreg: Makes a 'Linear Regression' forecast for n periods.
Technical Information:
ta.linreg (built-in function)
Linear regression curve. A line that best fits the specified prices over a user-defined time period. It is calculated using the least squares method. The result of this function is calculated using the formula: linreg = intercept + slope * (length - 1 - offset), where intercept and slope are the values calculated using the least squares method on the source series.
Syntax:
• Function: ta.linreg()
Parameters:
• source: Source price series.
• length: Number of bars (period).
• offset: Offset.
• return: Linear regression curve.
This function has been cleverly applied to the RSI, making it capable of projecting future values based on past statistical trends.
______________________________________________________
______________________________________________________
⯁ WHAT IS THE RSI❓
The Relative Strength Index (RSI) is a technical analysis indicator developed by J. Welles Wilder. It measures the magnitude of recent price movements to evaluate overbought or oversold conditions in a market. The RSI is an oscillator that ranges from 0 to 100 and is commonly used to identify potential reversal points, as well as the strength of a trend.
⯁ HOW TO USE THE RSI❓
The RSI is calculated based on average gains and losses over a specified period (usually 14 periods). It is plotted on a scale from 0 to 100 and includes three main zones:
• Overbought: When the RSI is above 70, indicating that the asset may be overbought.
• Oversold: When the RSI is below 30, indicating that the asset may be oversold.
• Neutral Zone: Between 30 and 70, where there is no clear signal of overbought or oversold conditions.
______________________________________________________
______________________________________________________
⯁ ENTRY CONDITIONS
The conditions below are fully flexible and allow for complete customization of the signal.
______________________________________________________
______________________________________________________
🔹 CONDITIONS TO BUY 📈
______________________________________________________
• Signal Validity: The signal will remain valid for X bars .
• Signal Sequence: Configurable as AND or OR .
📈 RSI Conditions:
🔹 RSI > Upper
🔹 RSI < Upper
🔹 RSI > Lower
🔹 RSI < Lower
🔹 RSI > Middle
🔹 RSI < Middle
🔹 RSI > MA
🔹 RSI < MA
📈 MA Conditions:
🔹 MA > Upper
🔹 MA < Upper
🔹 MA > Lower
🔹 MA < Lower
📈 Crossovers:
🔹 RSI (Crossover) Upper
🔹 RSI (Crossunder) Upper
🔹 RSI (Crossover) Lower
🔹 RSI (Crossunder) Lower
🔹 RSI (Crossover) Middle
🔹 RSI (Crossunder) Middle
🔹 RSI (Crossover) MA
🔹 RSI (Crossunder) MA
🔹 MA (Crossover) Upper
🔹 MA (Crossunder) Upper
🔹 MA (Crossover) Lower
🔹 MA (Crossunder) Lower
📈 RSI Divergences:
🔹 RSI Divergence Bull
🔹 RSI Divergence Bear
📈 RSI Forecast:
🔹 RSI (Crossover) MA Forecast
🔹 RSI (Crossunder) MA Forecast
🔹 RSI Forecast 1 > MA Forecast 1
🔹 RSI Forecast 1 < MA Forecast 1
🔹 RSI Forecast 2 > MA Forecast 2
🔹 RSI Forecast 2 < MA Forecast 2
🔹 RSI Forecast 3 > MA Forecast 3
🔹 RSI Forecast 3 < MA Forecast 3
🔹 RSI Forecast 4 > MA Forecast 4
🔹 RSI Forecast 4 < MA Forecast 4
🔹 RSI Forecast 5 > MA Forecast 5
🔹 RSI Forecast 5 < MA Forecast 5
🔹 RSI Forecast 6 > MA Forecast 6
🔹 RSI Forecast 6 < MA Forecast 6
🔹 RSI Forecast 7 > MA Forecast 7
🔹 RSI Forecast 7 < MA Forecast 7
🔹 RSI Forecast 8 > MA Forecast 8
🔹 RSI Forecast 8 < MA Forecast 8
🔹 RSI Forecast 9 > MA Forecast 9
🔹 RSI Forecast 9 < MA Forecast 9
🔹 RSI Forecast 10 > MA Forecast 10
🔹 RSI Forecast 10 < MA Forecast 10
🔹 RSI Forecast 11 > MA Forecast 11
🔹 RSI Forecast 11 < MA Forecast 11
🔹 RSI Forecast 12 > MA Forecast 12
🔹 RSI Forecast 12 < MA Forecast 12
🔹 RSI Forecast 13 > MA Forecast 13
🔹 RSI Forecast 13 < MA Forecast 13
🔹 RSI Forecast 14 > MA Forecast 14
🔹 RSI Forecast 14 < MA Forecast 14
🔹 RSI Forecast 15 > MA Forecast 15
🔹 RSI Forecast 15 < MA Forecast 15
🔹 RSI Forecast 16 > MA Forecast 16
🔹 RSI Forecast 16 < MA Forecast 16
🔹 RSI Forecast 17 > MA Forecast 17
🔹 RSI Forecast 17 < MA Forecast 17
🔹 RSI Forecast 18 > MA Forecast 18
🔹 RSI Forecast 18 < MA Forecast 18
🔹 RSI Forecast 19 > MA Forecast 19
🔹 RSI Forecast 19 < MA Forecast 19
🔹 RSI Forecast 20 > MA Forecast 20
🔹 RSI Forecast 20 < MA Forecast 20
______________________________________________________
______________________________________________________
🔸 CONDITIONS TO SELL 📉
______________________________________________________
• Signal Validity: The signal will remain valid for X bars .
• Signal Sequence: Configurable as AND or OR .
📉 RSI Conditions:
🔸 RSI > Upper
🔸 RSI < Upper
🔸 RSI > Lower
🔸 RSI < Lower
🔸 RSI > Middle
🔸 RSI < Middle
🔸 RSI > MA
🔸 RSI < MA
📉 MA Conditions:
🔸 MA > Upper
🔸 MA < Upper
🔸 MA > Lower
🔸 MA < Lower
📉 Crossovers:
🔸 RSI (Crossover) Upper
🔸 RSI (Crossunder) Upper
🔸 RSI (Crossover) Lower
🔸 RSI (Crossunder) Lower
🔸 RSI (Crossover) Middle
🔸 RSI (Crossunder) Middle
🔸 RSI (Crossover) MA
🔸 RSI (Crossunder) MA
🔸 MA (Crossover) Upper
🔸 MA (Crossunder) Upper
🔸 MA (Crossover) Lower
🔸 MA (Crossunder) Lower
📉 RSI Divergences:
🔸 RSI Divergence Bull
🔸 RSI Divergence Bear
📉 RSI Forecast:
🔸 RSI (Crossover) MA Forecast
🔸 RSI (Crossunder) MA Forecast
🔸 RSI Forecast 1 > MA Forecast 1
🔸 RSI Forecast 1 < MA Forecast 1
🔸 RSI Forecast 2 > MA Forecast 2
🔸 RSI Forecast 2 < MA Forecast 2
🔸 RSI Forecast 3 > MA Forecast 3
🔸 RSI Forecast 3 < MA Forecast 3
🔸 RSI Forecast 4 > MA Forecast 4
🔸 RSI Forecast 4 < MA Forecast 4
🔸 RSI Forecast 5 > MA Forecast 5
🔸 RSI Forecast 5 < MA Forecast 5
🔸 RSI Forecast 6 > MA Forecast 6
🔸 RSI Forecast 6 < MA Forecast 6
🔸 RSI Forecast 7 > MA Forecast 7
🔸 RSI Forecast 7 < MA Forecast 7
🔸 RSI Forecast 8 > MA Forecast 8
🔸 RSI Forecast 8 < MA Forecast 8
🔸 RSI Forecast 9 > MA Forecast 9
🔸 RSI Forecast 9 < MA Forecast 9
🔸 RSI Forecast 10 > MA Forecast 10
🔸 RSI Forecast 10 < MA Forecast 10
🔸 RSI Forecast 11 > MA Forecast 11
🔸 RSI Forecast 11 < MA Forecast 11
🔸 RSI Forecast 12 > MA Forecast 12
🔸 RSI Forecast 12 < MA Forecast 12
🔸 RSI Forecast 13 > MA Forecast 13
🔸 RSI Forecast 13 < MA Forecast 13
🔸 RSI Forecast 14 > MA Forecast 14
🔸 RSI Forecast 14 < MA Forecast 14
🔸 RSI Forecast 15 > MA Forecast 15
🔸 RSI Forecast 15 < MA Forecast 15
🔸 RSI Forecast 16 > MA Forecast 16
🔸 RSI Forecast 16 < MA Forecast 16
🔸 RSI Forecast 17 > MA Forecast 17
🔸 RSI Forecast 17 < MA Forecast 17
🔸 RSI Forecast 18 > MA Forecast 18
🔸 RSI Forecast 18 < MA Forecast 18
🔸 RSI Forecast 19 > MA Forecast 19
🔸 RSI Forecast 19 < MA Forecast 19
🔸 RSI Forecast 20 > MA Forecast 20
🔸 RSI Forecast 20 < MA Forecast 20
______________________________________________________
______________________________________________________
🤖 AUTOMATION 🤖
• You can automate the BUY and SELL signals of this indicator.
______________________________________________________
______________________________________________________
⯁ UNIQUE FEATURES
______________________________________________________
Linear Regression: (Forecast)
Signal Validity: The signal will remain valid for X bars
Signal Sequence: Configurable as AND/OR
Condition Table: BUY/SELL
Condition Labels: BUY/SELL
Plot Labels in the Graph Above: BUY/SELL
Automate and Monitor Signals/Alerts: BUY/SELL
Linear Regression (Forecast)
Signal Validity: The signal will remain valid for X bars
Signal Sequence: Configurable as AND/OR
Condition Table: BUY/SELL
Condition Labels: BUY/SELL
Plot Labels in the Graph Above: BUY/SELL
Automate and Monitor Signals/Alerts: BUY/SELL
______________________________________________________
📜 SCRIPT : RSI Full Forecast
🎴 Art by : @Titans_Invest & @DiFlip
👨💻 Dev by : @Titans_Invest & @DiFlip
🎑 Titans Invest — The Wizards Without Gloves 🧤
✨ Enjoy!
______________________________________________________
o Mission 🗺
• Inspire Traders to manifest Magic in the Market.
o Vision 𐓏
• To elevate collective Energy 𐓷𐓏
RSI Forecast [Titans_Invest]RSI Forecast
Introducing one of the most impressive RSI indicators ever created – arguably the best on TradingView, and potentially the best in the world.
RSI Forecast is a visionary evolution of the classic RSI, merging powerful customization with groundbreaking predictive capabilities. While preserving the core principles of traditional RSI, it takes analysis to the next level by allowing users to anticipate potential future RSI movements.
Real-Time RSI Forecasting:
For the first time ever, an RSI indicator integrates linear regression using the least squares method to accurately forecast the future behavior of the RSI. This innovation empowers traders to stay one step ahead of the market with forward-looking insight.
Highly Customizable:
Easily adapt the indicator to your personal trading style. Fine-tune a variety of parameters to generate signals perfectly aligned with your strategy.
Innovative, Unique, and Powerful:
This is the world’s first RSI Forecast to apply this predictive approach using least squares linear regression. A truly elite-level tool designed for traders who want a real edge in the market.
⯁ SCIENTIFIC BASIS LINEAR REGRESSION
Linear Regression is a fundamental method of statistics and machine learning, used to model the relationship between a dependent variable y and one or more independent variables 𝑥.
The general formula for a simple linear regression is given by:
y = β₀ + β₁x + ε
Where:
y = is the predicted variable (e.g. future value of RSI)
x = is the explanatory variable (e.g. time or bar index)
β0 = is the intercept (value of 𝑦 when 𝑥 = 0)
𝛽1 = is the slope of the line (rate of change)
ε = is the random error term
The goal is to estimate the coefficients 𝛽0 and 𝛽1 so as to minimize the sum of the squared errors — the so-called Random Error Method Least Squares.
⯁ LEAST SQUARES ESTIMATION
To minimize the error between predicted and observed values, we use the following formulas:
β₁ = /
β₀ = ȳ - β₁x̄
Where:
∑ = sum
x̄ = mean of x
ȳ = mean of y
x_i, y_i = individual values of the variables.
Where:
x_i and y_i are the means of the independent and dependent variables, respectively.
i ranges from 1 to n, the number of observations.
These equations guarantee the best linear unbiased estimator, according to the Gauss-Markov theorem, assuming homoscedasticity and linearity.
⯁ LINEAR REGRESSION IN MACHINE LEARNING
Linear regression is one of the cornerstones of supervised learning. Its simplicity and ability to generate accurate quantitative predictions make it essential in AI systems, predictive algorithms, time series analysis, and automated trading strategies.
By applying this model to the RSI, you are literally putting artificial intelligence at the heart of a classic indicator, bringing a new dimension to technical analysis.
⯁ VISUAL INTERPRETATION
Imagine an RSI time series like this:
Time →
RSI →
The regression line will smooth these values and extend them n periods into the future, creating a predicted trajectory based on the historical moment. This line becomes the predicted RSI, which can be crossed with the actual RSI to generate more intelligent signals.
⯁ SUMMARY OF SCIENTIFIC CONCEPTS USED
Linear Regression Models the relationship between variables using a straight line.
Least Squares Minimizes the sum of squared errors between prediction and reality.
Time Series Forecasting Estimates future values based on historical data.
Supervised Learning Trains models to predict outputs from known inputs.
Statistical Smoothing Reduces noise and reveals underlying trends.
⯁ WHY THIS INDICATOR IS REVOLUTIONARY
Scientifically-based: Based on statistical theory and mathematical inference.
Unprecedented: First public RSI with least squares predictive modeling.
Intelligent: Built with machine learning logic.
Practical: Generates forward-thinking signals.
Customizable: Flexible for any trading strategy.
⯁ CONCLUSION
By combining RSI with linear regression, this indicator allows a trader to predict market momentum, not just follow it.
RSI Forecast is not just an indicator — it is a scientific breakthrough in technical analysis technology.
⯁ Example of simple linear regression, which has one independent variable:
⯁ In linear regression, observations ( red ) are considered to be the result of random deviations ( green ) from an underlying relationship ( blue ) between a dependent variable ( y ) and an independent variable ( x ).
⯁ Visualizing heteroscedasticity in a scatterplot against 100 random fitted values using Matlab:
⯁ The data sets in the Anscombe's quartet are designed to have approximately the same linear regression line (as well as nearly identical means, standard deviations, and correlations) but are graphically very different. This illustrates the pitfalls of relying solely on a fitted model to understand the relationship between variables.
⯁ The result of fitting a set of data points with a quadratic function:
_______________________________________________________________________
🥇 This is the world’s first RSI indicator with: Linear Regression for Forecasting 🥇_______________________________________________________________________
_________________________________________________
🔮 Linear Regression: PineScript Technical Parameters 🔮
_________________________________________________
Forecast Types:
• Flat: Assumes prices will remain the same.
• Linreg: Makes a 'Linear Regression' forecast for n periods.
Technical Information:
ta.linreg (built-in function)
Linear regression curve. A line that best fits the specified prices over a user-defined time period. It is calculated using the least squares method. The result of this function is calculated using the formula: linreg = intercept + slope * (length - 1 - offset), where intercept and slope are the values calculated using the least squares method on the source series.
Syntax:
• Function: ta.linreg()
Parameters:
• source: Source price series.
• length: Number of bars (period).
• offset: Offset.
• return: Linear regression curve.
This function has been cleverly applied to the RSI, making it capable of projecting future values based on past statistical trends.
______________________________________________________
______________________________________________________
⯁ WHAT IS THE RSI❓
The Relative Strength Index (RSI) is a technical analysis indicator developed by J. Welles Wilder. It measures the magnitude of recent price movements to evaluate overbought or oversold conditions in a market. The RSI is an oscillator that ranges from 0 to 100 and is commonly used to identify potential reversal points, as well as the strength of a trend.
⯁ HOW TO USE THE RSI❓
The RSI is calculated based on average gains and losses over a specified period (usually 14 periods). It is plotted on a scale from 0 to 100 and includes three main zones:
• Overbought: When the RSI is above 70, indicating that the asset may be overbought.
• Oversold: When the RSI is below 30, indicating that the asset may be oversold.
• Neutral Zone: Between 30 and 70, where there is no clear signal of overbought or oversold conditions.
______________________________________________________
______________________________________________________
⯁ ENTRY CONDITIONS
The conditions below are fully flexible and allow for complete customization of the signal.
______________________________________________________
______________________________________________________
🔹 CONDITIONS TO BUY 📈
______________________________________________________
• Signal Validity: The signal will remain valid for X bars .
• Signal Sequence: Configurable as AND or OR .
📈 RSI Conditions:
🔹 RSI > Upper
🔹 RSI < Upper
🔹 RSI > Lower
🔹 RSI < Lower
🔹 RSI > Middle
🔹 RSI < Middle
🔹 RSI > MA
🔹 RSI < MA
📈 MA Conditions:
🔹 MA > Upper
🔹 MA < Upper
🔹 MA > Lower
🔹 MA < Lower
📈 Crossovers:
🔹 RSI (Crossover) Upper
🔹 RSI (Crossunder) Upper
🔹 RSI (Crossover) Lower
🔹 RSI (Crossunder) Lower
🔹 RSI (Crossover) Middle
🔹 RSI (Crossunder) Middle
🔹 RSI (Crossover) MA
🔹 RSI (Crossunder) MA
🔹 MA (Crossover) Upper
🔹 MA (Crossunder) Upper
🔹 MA (Crossover) Lower
🔹 MA (Crossunder) Lower
📈 RSI Divergences:
🔹 RSI Divergence Bull
🔹 RSI Divergence Bear
📈 RSI Forecast:
🔮 RSI (Crossover) MA Forecast
🔮 RSI (Crossunder) MA Forecast
______________________________________________________
______________________________________________________
🔸 CONDITIONS TO SELL 📉
______________________________________________________
• Signal Validity: The signal will remain valid for X bars .
• Signal Sequence: Configurable as AND or OR .
📉 RSI Conditions:
🔸 RSI > Upper
🔸 RSI < Upper
🔸 RSI > Lower
🔸 RSI < Lower
🔸 RSI > Middle
🔸 RSI < Middle
🔸 RSI > MA
🔸 RSI < MA
📉 MA Conditions:
🔸 MA > Upper
🔸 MA < Upper
🔸 MA > Lower
🔸 MA < Lower
📉 Crossovers:
🔸 RSI (Crossover) Upper
🔸 RSI (Crossunder) Upper
🔸 RSI (Crossover) Lower
🔸 RSI (Crossunder) Lower
🔸 RSI (Crossover) Middle
🔸 RSI (Crossunder) Middle
🔸 RSI (Crossover) MA
🔸 RSI (Crossunder) MA
🔸 MA (Crossover) Upper
🔸 MA (Crossunder) Upper
🔸 MA (Crossover) Lower
🔸 MA (Crossunder) Lower
📉 RSI Divergences:
🔸 RSI Divergence Bull
🔸 RSI Divergence Bear
📉 RSI Forecast:
🔮 RSI (Crossover) MA Forecast
🔮 RSI (Crossunder) MA Forecast
______________________________________________________
______________________________________________________
🤖 AUTOMATION 🤖
• You can automate the BUY and SELL signals of this indicator.
______________________________________________________
______________________________________________________
⯁ UNIQUE FEATURES
______________________________________________________
Linear Regression: (Forecast)
Signal Validity: The signal will remain valid for X bars
Signal Sequence: Configurable as AND/OR
Condition Table: BUY/SELL
Condition Labels: BUY/SELL
Plot Labels in the Graph Above: BUY/SELL
Automate and Monitor Signals/Alerts: BUY/SELL
Linear Regression (Forecast)
Signal Validity: The signal will remain valid for X bars
Signal Sequence: Configurable as AND/OR
Condition Table: BUY/SELL
Condition Labels: BUY/SELL
Plot Labels in the Graph Above: BUY/SELL
Automate and Monitor Signals/Alerts: BUY/SELL
______________________________________________________
📜 SCRIPT : RSI Forecast
🎴 Art by : @Titans_Invest & @DiFlip
👨💻 Dev by : @Titans_Invest & @DiFlip
🎑 Titans Invest — The Wizards Without Gloves 🧤
✨ Enjoy!
______________________________________________________
o Mission 🗺
• Inspire Traders to manifest Magic in the Market.
o Vision 𐓏
• To elevate collective Energy 𐓷𐓏
Relative Crypto Dominance Polar Chart [LuxAlgo]The Relative Crypto Dominance Polar Chart tool allows traders to compare the relative dominance of up to ten different tickers in the form of a polar area chart, we define relative dominance as a combination between traded dollar volume and volatility, making it very easy to compare them at a glance.
🔶 USAGE
The use is quite simple, traders just have to load the indicator on the chart, and the graph showing the relative dominance will appear.
The 10 tickers loaded by default are the major cryptocurrencies by market cap, but traders can select any ticker in the settings panel.
Each area represents dominance as volatility (radius) by dollar volume (arc length); a larger area means greater dominance on that ticker.
🔹 Choosing Period
The tool supports up to five different periods
Hourly
Daily
Weekly
Monthly
Yearly
By default, the tool period is set on auto mode, which means that the tool will choose the period depending on the chart timeframe
timeframes up to 2m: Hourly
timeframes up to 15m: Daily
timeframes up to 1H: Weekly
timeframes up to 4H: Monthly
larger timeframes: Yearly
🔹 Sorting & Sizing
Traders can sort the graph areas by volatility (radius of each area) in ascending or descending order; by default, the tickers are sorted as they are in the settings panel.
The tool also allows you to adjust the width of the chart on a percentage basis, i.e., at 100% size, all the available width is used; if the graph is too wide, just decrease the graph size parameter in the settings panel.
🔹 Set your own style
The tool allows great customization from the settings panel, traders can enable/disable most of the components, and add a very nice touch with curved lines enabled for displaying the areas with a petal-like effect.
🔶 SETTINGS
Period: Select up to 5 different time periods from Hourly, Daily, Weekly, Monthly and Yearly. Enable/disable Auto mode.
Tickers: Enable/disable and select tickers and colors
🔹 Style
Graph Order: Select sort order
Graph Size: Select percentage of width used
Labels Size: Select size for ticker labels
Show Percent: Show dominance in % under each ticker
Curved Lines: Enable/disable petal-like effect for each area
Show Title: Enable/disable graph title
Show Mean: Enable/disable volatility average and select color
SandTigerSandTiger is an auto-counting tool that counts naturally occurring events in a price series. This version has been reduced to 377 lines of code and should run faster than previous versions. Although not shown here, I highly recommend running my 'ELB' script with SandTiger. ELB is an 'event locator' and will mark all points that SandTiger numbers - giving you visual cues as to where these points are located. ELB also displays support/resistance levels.
SandTiger is designed to be used with MAGENTA - a counting system for Forex and other markets.
MAGENTA is a free and open framework for understanding and explaining price movement in financial markets. Any materials associated with MAGENTA are strictly for educational purposes only.
SandTiger tracks Component Values, Dyads, and Sum Table Values (STV's) over straight and curved trends, allowing a trader to discern where directional shifts are likely to occur.
SandTiger requires just 3 things to function accurately:
1) A correct starting point (this will typically be an obvious trend turn high or low in a series of price moves).
2) A 'push 1' count ('push 1' runs from the starting point to the event prior to the first terminal of the first FCT or Fractured Counter-Trend).
3) A 'high prime' value (the high prime count runs from the starting point through to the second terminal of the first FCT with no skips).
FRAMEWORK OVERVIEW: 'Component' values are filtered from the prime set (including the half prime and further reductions). Once we have the comp table we add the values to get a 'total'. With the 'total' we divide and multiply by two to get two additional values. 'Derivatives' are based on various calculations using these three values.
We're looking for 'total/2' to count into either itself, 'total', 'total*2', or a derivative. Comp counts are in Tx form and counted from trend start. If the trend doesn't turn on a comp value it will likely turn on a Dyad or STV value. If that also doesn't happen it's likely you have a 'curved' trend/sequence that will turn on one of the above after moving away from its high/low. This can also be traded using SandTiger's 'Seg Terminals' skip option.
Sum tables and Dyad values are drawn from the 'primes' and Dyads use the 'push1' value as well. In a structural trend, primes are gotten by counting pushpulls 1 & 2 in 'Ti' form. Comps, Sum table values, and Dyads are equivalent, sequences can turn on either value type belonging to the 1st or 2nd prime set. Both STV's and Dyads are counted in 'Tx' form (except where count-through signals occur).
Types and antitypes correlate and are associated with a 12-count 'cycle.' (Ti = 'Terminals Included'; Tx = 'Terminals eXcluded'; both refer to FCT terminals)
THE STRATEGY:
For Structures: Trade Comps, Dyads, and STV's from sets 1 (all) and 2 (Dyads and STV's only) in the 'main' segment then on the 'carry-over' by skipping segment terminals. If a PC or cycle caps the sequence, trade that as well.
For NSM's: Trade movements that flash a signal prior to the end of the initial cycle. The mark will be the push1 value. Twelve will be the 'high prime.' Skip interrupts and trade carry-over values.
The first version of SandTiger was conceived/planned/authored by Erek A.D. and coded by Erek A.D. and @SimpleCryptoLife beginning in August 2022 and finishing in Dec. 2022
The current version was written and developed July 3, 2023 and has been refined and upgraded by Erek A.D. through Jan. 2024...