FVG Price & Volume Graph [LuxAlgo]The FVG Price & Volume Graph tool plot recently detected fair value gaps relative to the volume traded within their area during their formation. This allows us to effectively visualize significant fair value gaps caused by high liquidity.
The indicator also returns levels from the fair value gaps areas average with the highest associated volume.
Do note that the indicator can consider the chart's visible range when being computed, which will recalculate the indicator when the chart's visible range changes.
🔶  USAGE 
  
Fair Value Gaps (FVG) are core price action concepts occurring when the disparity between supply and demand is significant. Price has a tendency to come back to those areas and mitigating them, that is filling them.
The provided tools allow for effective visualization of both FVG's area's height as well as the volume originating from their creation, which is defined by the total traded volume located within the FVG during its creation. FVG's with more associated volume are displayed to the rightmost of the chart.
  
Users can determine the amount of most recent FVG's to display from the "Display Amount" setting. Disabling the "Consider Mitigation" setting will return mitigated FVGs in the plot, which can be useful to know where most FVGs were located.
  
We can use the area average of the FVGs with the most associated volume as potential support/resistance levels. Users can extend more FVG's averages by increasing the "Highest Volume Averages" setting.
🔹 Visualizing Volume/Price Relationships of FVG's 
  
A linear regression is fit between FVG's areas average and their associated volume, with this linear regression helping us see where FVG's with specific volume might be located in the future based on existing FVG's.
Note that FVG's do not tend to exhibit linear relationships with their associated volume, the provided linear regression can give a general sense of tendency, but nothing necessarily accurate.
🔶  DETAILS 
🔹 Intrabar Data TF 
Given a formation of three candles causing an FVG, the volume traded within that FVG area is obtained by looking at the lower timeframe intrabar candles located within the intermediary candle of the formation. The volume of the intrabar candles located within the FVG areas is added up to obtain the associated volume of the FVG.
Using a lower "Intrabar Data TF" allows obtaining more precise volume results, at the cost of computation time and data availability (if there is a high difference between the "Intrabar Data TF" and the chart TF then less FVG can have their associated volume calculated due to Tradingview limitations).
🔹 Display 
Users have access to multiple graphical settings affecting how the indicator is displayed.
The "Graph Resolution" setting determines the length of the X axis, with higher values returning more precise results on the location of FVGs over the X axis. Users can also control the number of labels displayed on the X-axis using the numerical input to the right of "Show X-Axis Labels".
Additionally, users can color FVG areas using a gradient relative to the size of the area, or the volume associated with the FVG.
🔶  SETTINGS 
 
 Display Amount: Amount of most recent FVGs to display.
 Highest Volume Averages: Amount of FVG averages levels with the highest volume to display and extend. 
 Consider Mitigation: Only display unmitigated FVGs.
 Filter FVGs Outside Visible Range: Only display FVGs areas that are located within the user chart visible range.
 Intrabar Data TF: Timeframe used to obtain intrabar data. Should be lower than the user chart timeframe.
Linear-regression
Multi-Regression StrategyIntroducing the  "Multi-Regression Strategy" (MRS) , an advanced technical analysis tool designed to provide flexible and robust market analysis across various financial instruments. 
This strategy offers users the ability to select from multiple regression techniques and risk management measures, allowing for customized analysis tailored to specific market conditions and trading styles.
 Core Components: 
 Regression Techniques: 
Users can choose one of three regression methods:
 1 - Linear Regression:  Provides a straightforward trend line, suitable for steady markets.
 2 - Ridge Regression:  Offers a more stable trend estimation in volatile markets by introducing a regularization parameter (lambda).
 3 - LOESS (Locally Estimated Scatterplot Smoothing):  Adapts to non-linear trends, useful for complex market behaviors.
Each regression method calculates a trend line that serves as the basis for trading decisions.
 Risk Management Measures: 
The strategy includes nine different volatility and trend strength measures. Users select one to define the trading bands:
1 - ATR (Average True Range)
2 - Standard Deviation
3 - Bollinger Bands Width
4 - Keltner Channel Width
5 - Chaikin Volatility
6 - Historical Volatility
7 - Ulcer Index
8 - ATRP (ATR Percentage)
9 - KAMA Efficiency Ratio
The chosen measure determines the width of the bands around the regression line, adapting to market volatility.
 How It Works: 
 Regression Calculation: 
The selected regression method  (Linear, Ridge, or LOESS)  calculates the main trend line.
For Ridge Regression, users can adjust the lambda parameter for regularization.
LOESS allows customization of the point span, adaptiveness, and exponent for local weighting.
 Risk Band Calculation: 
The chosen risk measure is calculated and normalized.
A user-defined risk multiplier is applied to adjust the sensitivity.
Upper and lower bounds are created around the regression line based on this risk measure.
 Trading Signals: 
Long entries are triggered when the price crosses above the regression line.
Short entries occur when the price crosses below the regression line.
Optional stop-loss and take-profit mechanisms use the calculated risk bands.
 Customization and Flexibility: 
Users can switch between regression methods to adapt to different market trends (linear, regularized, or non-linear).
The choice of risk measure allows adaptation to various market volatility conditions.
Adjustable parameters (e.g., regression length, risk multiplier) enable fine-tuning of the strategy.
 Unique Aspects: 
 Comprehensive Regression Options:  
Unlike many indicators that rely on a single regression method, MRS offers three distinct techniques, each suitable for different market conditions.
 Diverse Risk Measures:  The strategy incorporates a wide range of volatility and trend strength measures, going beyond traditional indicators to provide a more nuanced view of market dynamics.
 Unified Framework:  
By combining advanced regression techniques with various risk measures,  MRS  offers a cohesive approach to trend identification and risk management.
 Adaptability:  
The strategy can be easily adjusted to suit different trading styles, timeframes, and market conditions through its various input options.
 How to Use: 
Select a regression method based on your analysis of the current market trend (linear, need for regularization, or non-linear).
Choose a risk measure that aligns with your trading style and the market's current volatility characteristics.
Adjust the length parameter to match your preferred timeframe for analysis.
Fine-tune the risk multiplier to set the desired sensitivity of the trading bands.
Optionally enable stop-loss and take-profit mechanisms using the calculated risk bands.
Monitor the regression line for potential trend changes and the risk bands for entry/exit signals.
By offering this level of customization within a unified framework, the Multi-Regression Strategy provides traders with a powerful tool for market analysis and trading decision support. It combines the robustness of regression analysis with the adaptability of various risk measures, allowing for a more comprehensive and flexible approach to technical trading.
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)
Trend AngleThe "Trend Angle" indicator serves as a tool for traders to decipher market trends through a methodical lens. It quantifies the inclination of price movements within a specified timeframe, making it easy to understand current trend dynamics. 
 Conceptual Foundation: 
     Angle Measurement:  The essence of the "Trend Angle" indicator is its ability to compute the angle between the price trajectory over a defined period and the horizontal axis. This is achieved through the calculation of the arctangent of the percentage price change, offering a straightforward measure of market directionality.
     Smoothing Mechanisms:  The indicator incorporates options for "Moving Average" and "Linear Regression" as smoothing mechanisms. This adaptability allows for refined trend analysis, catering to diverse market conditions and individual preferences.
 Functional Versatility: 
     Source Adaptability:  The indicator affords the flexibility to select the desired price source, enabling users to tailor the angle calculation to their analytical framework and other indicators.
     Detrending Capability:  With the detrending feature, the indicator allows for the subtraction of the smoothing line from the calculated angle, highlighting deviations from the main trend. This is particularly useful for identifying potential trend reversals or significant market shifts.
  
     Customizable Period:  The 'Length' parameter empowers traders to define the observation window for both the trend angle calculation and its smoothing, accommodating various trading horizons.
     Visual Intuition:  The optional colorization enhances interpretability, with the indicator's color shifting based on its relation to the smoothing line, thereby providing an immediate visual cue regarding the trend's direction.
  
 Interpretative Results: 
     Market Flatness:  An angle proximate to 0 suggests a flat market condition, indicating a lack of significant directional movement. This insight can be pivotal for traders in assessing market stagnation.
     Trending Market:  Conversely, a relatively high angle denotes a trending market, signifying strong directional momentum. This distinction is crucial for traders aiming to capitalize on trend-driven opportunities.
  
 Analytical Nuance vs. Simplicity: 
While the "Trend Angle" indicator is underpinned by mathematical principles, its utility lies in its simplicity and interpretative clarity. However, it is imperative to acknowledge that this tool should be employed  as part of a comprehensive trading strategy , complemented by other analytical instruments for a holistic market analysis.
In essence, the "Trend Angle" indicator exemplifies the harmonization of simplicity and analytical rigor. Its design respects the complexity of market behaviors while offering straightforward, actionable insights, making it a valuable component in the arsenal of both seasoned and novice traders alike.
Scalper's Volatility Filter [QuantraSystems]Scalpers Volatility Filter 
 Introduction 
The 𝒮𝒸𝒶𝓁𝓅𝑒𝓇'𝓈 𝒱𝑜𝓁𝒶𝓉𝒾𝓁𝒾𝓉𝓎 𝐹𝒾𝓁𝓉𝑒𝓇 (𝒮𝒱𝐹) is a sophisticated technical indicator, designed to increase the profitability of lower timeframe trading.
Due to the inherent decrease in the signal-to-noise ratio when trading on lower timeframes, it is critical to develop analysis methods to inform traders of the optimal market periods to trade - and more importantly, when you shouldn’t trade.
The 𝒮𝒱𝐹 uses a blend of volatility and momentum measurements, to signal the dominant market condition - trending or ranging.
    
 Legend 
The 𝒮𝒱𝐹 consists of a signal line that moves above and below a central zero line, serving as the indication of market regime.
 
 When the signal line is positioned above zero, it indicates a period of elevated volatility. These periods are more profitable for trading, as an asset will experience larger price swings, and by design, trend-following indicators will give less false signals.
 Conversely, when the signal line moves below zero, a low volatility or mean-reverting market regime dominates.
 
This distinction is critical for traders in order to align strategies with the prevailing market behaviors - leveraging trends in volatile markets and exercising caution or implementing mean-reversion systems in periods of lower volatility.
    
 Case Study 
Here we can see the indicator's unique edge in action.
 
 Out of the four potential long entries seen on the chart - displayed via bar coloring, two would result in losses.
 However, with the power of the 𝒮𝒱𝐹 a trader can effectively filter false signals by only entering momentum-trades when the signal line is above zero.
 In this small sample of four trades, the 𝒮𝒱𝐹 increased the win rate from 50% to 100%
 
 Methodology 
The methodology behind the 𝒮𝒱𝐹 is based upon three components:
 
 By calculating and contrasting two ATR’s, the immediate market momentum relative to the broader, established trend is calculated. The original method for this can be credited to the user @xinolia
 A modified and smoothed ADX indicator is calculated to further assess the strength and sustainability of trends.
 The ‘Linear Regression Dispersion’ measures price deviations from a fitted regression line, adding further confluence to the signals representation of market conditions.
 
Together, these components synthesize a robust, balanced view of market conditions, enabling traders to help align strategies with the prevailing market environment, in order to potentially increase expected value and win rates.
ATR TrendTL;DR - An average true range (ATR) based trend
ATR trend uses a (customizable) ATR calculation and highest high & lowest low prices to calculate the actual trend. Basically it determines the trend direction by using highest high & lowest low and calculates (depending on the determined direction) the ATR trend by using a ATR based calculation and comparison method.
The indicator will draw one trendline by default. It is also possible to draw a second trendline which shows a 'negative trend'. This trendline is calculated the same way the primary trendline is calculated but uses a negative (-1 by default) value for the ATR calculation. This trendline can be used to detect early trend changes and/or micro trends.
 How to use: 
Due to its ATR nature the ATR trend will show trend changes by changing the trendline direction. This means that when the price crosses the trendline it does  not  automatically mean a trend change. However using the 'negative trend' option ATR trend can show early trend changes and therefore good entry points.
 Some notes: 
- A (confirmed) trend change is shown by a changing color and/or moving trendline (up/down)
- Unlike other indicators the 'time period' value is not the primary adjustment setting. This value is only used to calculate highest high & lowest low values and has medium impact on trend calculation.  The primary adjustment setting is 'ATR weight' 
- Every settings has a tooltip with further explanation
- I added additional color coding which uses a different color when the trend attempts to change but the trend change isn't confirmed (yet)
- Default values work fine (at least in my back testing) but the recommendation is to adjust the settings (especially ATR weight) to your trading style
- You can further finetune this indicator by using custom moving average types for the ATR calculation (like linear regression or Hull moving average)
- Both trendlines can be used to determine future support and resistance zones
- ATR trend can be used as a stop loss finder
- Alerts are using buy/sell signals
- You can use fancy color filling ;)
Happy trading!
Daniel
Linear Regression Channel 200█ OVERVIEW
This a simplified version of linear regression channel which use length 200 instead of traditional length 100.
█ FEATURES
Color change depends light / dark mode.
█ LIMITATIONS
Limited to source of closing price and max bars back is 1500.
█ SIMILAR
 Regression Channel Alternative MTF 
 Regression Channel Alternative MTF V2
Linear RegressionThis indicator can be used to determine the direction of the current trend.
The indicator plots two different histograms based on the linear regression formula:
- The colored ones represent the direction of the short-term trend
- The gray one represents the direction of the long-term trend
In the settings, you can change the length of the short-term value, which also influences the long-term as a basis that will be multiplied
Linear Regression IndicatorThis tool can be used to determine the direction of the current trend.
The indicator changes the color of the candles based on the direction of the linear regression formula. This is made settings the length of the short-term linear regression in the settings, the longer one is also based on that parameter but significantly larger.
The indicator also plots the average between the two linear regression lines used in the candle coloring formula, and can be used both for support and resistance or as a trend line used to analyze breakouts.
Linear Cross Trading StrategyLinear Cross Trading Strategy
The Linear Cross trading strategy is a technical analysis strategy that uses linear regression to predict the future price of a stock. The strategy is based on the following principles:
    The price of a stock tends to follow a linear trend over time.
    The slope of the linear trend can be used to predict the future price of the stock.
    The strategy enters a long position when the predicted price crosses above the current price, and exits the position when the predicted price crosses below the current price.
The Linear Cross trading strategy is implemented in the TradingView Pine script below. The script first calculates the linear regression of the stock price over a specified period of time. The script then plots the predicted price and the current price on the chart. The script also defines two signals:
    Long signal: The long signal is triggered when the predicted price crosses above the current price.
    Short signal: The short signal is triggered when the predicted price crosses below the current price.
The script enters a long position when the long signal is triggered and exits the position when the short signal is triggered.
Here is a more detailed explanation of the steps involved in the Linear Cross trading strategy:
    Calculate the linear regression of the stock price over a specified period of time.
    Plot the predicted price and the current price on the chart.
    Define two signals: the long signal and the short signal.
    Enter a long position when the long signal is triggered.
    Exit the long position when the short signal is triggered.
The Linear Cross trading strategy is a simple and effective way to trade stocks. However, it is important to note that no trading strategy is guaranteed to be profitable. It is always important to do your own research and backtest the strategy before using it to trade real money.
Here are some additional things to keep in mind when using the Linear Cross trading strategy:
    The length of the linear regression period is a key parameter that affects the performance of the strategy. A longer period will smooth out the noise in the price data, but it will also make the strategy less responsive to changes in the price.
    The strategy is more likely to generate profitable trades when the stock price is trending. However, the strategy can also generate profitable trades in ranging markets.
    The strategy is not immune to losses. It is important to use risk management techniques to protect your capital when using the strategy.
I hope this blog post helps you understand the Linear Cross trading strategy better. Booost and share with your friend, if you like.
AI Moving Average (Expo)█  Overview 
The  AI Moving Average  indicator is a trading tool that uses an AI-based K-nearest neighbors (KNN) algorithm to analyze and interpret patterns in price data. It combines the logic of a traditional moving average with artificial intelligence, creating an adaptive and robust indicator that can identify strong trends and key market levels.
  
█  How It Works 
The algorithm collects data points and applies a KNN-weighted approach to classify price movement as either bullish or bearish. For each data point, the algorithm checks if the price is above or below the calculated moving average. If the price is above the moving average, it's labeled as bullish (1), and if it's below, it's labeled as bearish (0). The K-Nearest Neighbors (KNN) is an instance-based learning algorithm used in classification and regression tasks. It works on a principle of voting, where a new data point is classified based on the majority label of its 'k' nearest neighbors.
The algorithm's use of a KNN-weighted approach adds a layer of intelligence to the traditional moving average analysis. By considering not just the price relative to a moving average but also taking into account the relationships and similarities between different data points, it offers a nuanced and robust classification of price movements.
This combination of data collection, labeling, and KNN-weighted classification turns the AI Moving Average (Expo) Indicator into a dynamic tool that can adapt to changing market conditions, making it suitable for various trading strategies and market environments.
█  How to Use 
 Dynamic Trend Recognition  
The color-coded moving average line helps traders quickly identify market trends. Green represents bullish, red for bearish, and blue for neutrality.
  
 Trend Strength 
By adjusting certain settings within the AI Moving Average (Expo) Indicator, such as using a higher 'k' value and increasing the number of data points, traders can gain real-time insights into strong trends. A higher 'k' value makes the prediction model more resilient to noise, emphasizing pronounced trends, while more data points provide a comprehensive view of the market direction. Together, these adjustments enable the indicator to display only robust trends on the chart, allowing traders to focus exclusively on significant market movements and strong trends.
  
 Key SR Levels 
Traders can utilize the indicator to identify key support and resistance levels that are derived from the prevailing trend movement. The derived support and resistance levels are not just based on historical data but are dynamically adjusted with the current trend, making them highly responsive to market changes. 
  
█  Settings 
 
 k (Neighbors):  Number of neighbors in the KNN algorithm. Increasing 'k' makes predictions more resilient to noise but may decrease sensitivity to local variations.
 n (DataPoints):  Number of data points considered in AI analysis. This affects how the AI interprets patterns in the price data.
 maType (Select MA):  Type of moving average applied. Options allow for different smoothing techniques to emphasize or dampen aspects of price movement.
 length:  Length of the moving average. A greater length creates a smoother curve but might lag recent price changes.
 dataToClassify:  Source data for classifying price as bullish or bearish. It can be adjusted to consider different aspects of price information
 dataForMovingAverage:  Source data for calculating the moving average. Different selections may emphasize different aspects of price movement.
 
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
MultiMovesCombines 3 different moving averages together with the linear regression. The moving averages are the HMA, EMA, and SMA. The script makes use of two different lengths to allow the end user to utilize common crossovers in order to determine entry into a trade. The edge of each "cloud" is where each of the moving averages actually are. The bar color is the average of the shorter length combined moving averages. 
-The Hull Moving Average (HMA), developed by Alan Hull, is an extremely fast and smooth moving average. In fact, the HMA almost eliminates lag altogether and manages to improve smoothing at the same time. A longer period HMA may be used to identify trend.
-The exponential moving average (EMA) is a technical chart indicator that tracks the price of an investment (like a stock or commodity) over time. The EMA is a type of weighted moving average (WMA) that gives more weighting or importance to recent price data.
-A simple moving average (SMA) is an arithmetic moving average calculated by adding recent prices and then dividing that figure by the number of time periods in the calculation average.
-The Linear Regression Indicator plots the ending value of a Linear Regression Line for a specified number of bars; showing, statistically, where the price is expected to be. Instead of plotting an average of past price action, it is plotting where a Linear Regression Line would expect the price to be, making the Linear Regression Indicator more responsive than a moving average.
The lighter colors = default 50 MA
The darker colors = default 200 MA
Deming Linear Regression [wbburgin]Deming regression is a type of linear regression used to model the relationship between two variables when there is variability in both variables.  Deming regression provides a solution by simultaneously accounting for the variability in both the independent and dependent variables, resulting in a more accurate estimation of the underlying relationship. In the hard-science fields, where measurements are critically important to judging the conclusions drawn from data, Deming regression can be used to account for measurement error.
Tradingview's default linear regression indicator (the ta.linreg() function) uses least squares linear regression, which is similar but different than Deming regression. In least squares regression, the regression function minimizes the sum of the squared vertical distances between the data points and the fitted line. This method assumes that the errors or variability are only present in the y-values (dependent variable), and that the x-values (independent variable) are measured without error. 
In time series data used in trading, Deming regression can be more accurate than least squares regression because the ratio of the variances of the x and y variables is large. X is the bar index, which is an incrementally-increasing function that has little variance, while Y is the price data, which has extremely high variance when compared to the bar index. In such situations, least squares regression can be heavily influenced by outliers or extreme points in the data, whereas Deming regression is more resistant to such influence.
Additionally, if your x-axis uses variable widths - such as renko blocks or other types of non-linear widths - Deming regression might be more effective than least-squares linear regression because it accounts for the variability in your x-values as well. Additionally, if you are creating a machine-learning model that uses linear regression to filter or extrapolate data, this regression method may be more accurate than least squares.
In contrast to least squares regression, Deming regression takes into account the variability or errors in both the x- and y-values. It minimizes the sum of the squared perpendicular distances between the data points and the fitted line, accounting for both the x- and y-variability. This makes Deming regression more robust in both variables than least squares regression.
Chandelier Exit ZLSMA StrategyIntroducing a Powerful Trading Indicator: Chandelier Exit with ZLSMA 
If you're a trader, you know the importance of having the right tools and indicators to make informed decisions. That's why we're excited to introduce a powerful new trading indicator that combines the Chandelier Exit and ZLSMA: two widely-used and effective indicators for technical analysis.
The Chandelier Exit (CE) is a popular trailing stop-loss indicator developed by Chuck LeBeau. It's designed to follow the price trend of a security and provide an exit signal when the price crosses below the CE line. The CE line is based on the Average True Range (ATR), which is a measure of volatility. This means that the CE line adjusts to the volatility of the security, making it a reliable indicator for trailing stop-losses.
The ZLEMA (Zero Lag Exponential Moving Average) is a type of exponential moving average that's designed to reduce lag and improve signal accuracy. The ZLSMA takes into account not only the current price but also past prices, using a weighted formula to calculate the moving average. This makes it a smoother indicator than traditional moving averages, and less prone to giving false signals.
When combined, the CE and ZLSMA create a powerful indicator that can help traders identify trend changes and make more informed trading decisions. The CE provides the trailing stop-loss signal, while the ZLSMA provides a smoother trend line to help identify potential entry and exit points.
In our indicator, the CE and ZLSMA are plotted together on the chart, making it easy to see both the trailing stop-loss and the trend line at the same time. The CE line is displayed as a dotted line, while the ZLSMA line is displayed as a solid line.
Using this indicator, traders can set their stop-loss levels based on the CE line, while also using the ZLSMA line to identify potential entry and exit points. The combination of these two indicators can help traders reduce their risk and improve their trading performance.
In conclusion, the Chandelier Exit with ZLSMA is a powerful trading indicator that combines two effective technical analysis tools. By using this indicator, traders can identify trend changes, set stop-loss levels, and make more informed trading decisions. Try it out for yourself and see how it can improve your trading performance.
 Warning: The results in the backtest are from a repainting strategy. Don't take them seriously. You need to do a dry live test in order to test it for its useability. 
-
 Here is a description of each input field in the provided source code: 
length: An integer input used as the period for the ATR (Average True Range) calculation. Default value is 1.
mult: A float input used as a multiplier for the ATR value. Default value is 2.
showLabels: A boolean input that determines whether to display buy/sell labels on the chart. Default value is false.
isSignalLabelEnabled: A boolean input that determines whether to display signal labels on the chart. Default value is true.
useClose: A boolean input that determines whether to use the close price for extrema calculations. Default value is true.
zcolorchange: A boolean input that determines whether to enable rising/decreasing highlighting for the ZLSMA (Zero-Lag Exponential Moving Average) line. Default value is false.
zlsmaLength: An integer input used as the length for the ZLSMA calculation. Default value is 50.
offset: An integer input used as an offset for the ZLSMA calculation. Default value is 0.
-
 Ty for checking this out and good luck on your trading journey! Likes and comments are appreciated. 👍
--
Credits to:
▪ @everget – Chandelier Exit (CE)
▪ @netweaver2022 – ZLSMA
Autoregressive Covariance Oscillator by TenozenWell to be honest I don't know what to name this indicator lol. But anyway, here is my another original work! Gonna give some background of why I create this indicator, it's all pretty much a coincidence when I'm learning about time series analysis. 
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Well, the formula of Auto-covariance is:
E{(X(t)-(t) * (X(t-s)-(t-s))}= Y_s
But I don't multiply both values but rather subtract them:
E{(X(t)-(t) - (X(t-s)-(t-s))}= Y_s?
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
For arm_vald, the equation is as follows:
arm_vald = val_mu + mu_plus_lsm + et
val_mu --> mean of time series
mu_plus_lsm --> val_mu + LSM
et --> error term
As you can see, val_mu^2. I did this so the oscillator is much smoother.
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
After I get the value, I normalize them:
aco = Y_s? / arm_vald
So by this calculation, I get something like an oscillator!
(more details in the code)
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
So how to use this indicator? It's so easy! If the value is above 0, we gonna expect a bullish response, if the value is below 0, we gonna expect a bearish response; that simple. Be aware that you should wait for the price to be closed before executing a trade.
Well, try it out! So far this is the most powerful indicator that I've created, hope it's useful. Ciao.
(more updates for the indicator if needed)
Linear Regression Volume ProfileLinear Regression Volume Profile plots the volume profile fixated on the linear regression of the lookback period rather than statically across y = 0. This helps identify potential support and resistance inside of the price channel.
 Settings 
 Linear Regression 
 
 Linear Regression Source: the price source in which to sample when calculating the linear regression
 Length: the number of bars to sample when calculating the linear regression
 Deviation: the number of standard deviations away from the linear regression line to draw the upper and lower bounds
 
 Linear Regression 
 
 Rows: the number of rows to divide the linear regression channel into when calculating the volume profile
 Show Point of Control: toggle whether or not to plot the level with highest amount of volume
 
 Usage 
Similar to the traditional Linear Regression and Volume Profile this indicator is mainly to determine levels of support and resistance. One may interpret a level with high volume (i.e. point of control) to be a potential reversal point. 
 Details 
This indicator first calculates the linear regression of the specified lookback period and, subsequently, the upper and lower bound of the linear regression channel. It then divides this channel by the specified number of rows and sums the volume that occurs in each row. The volume profile is scaled to the min and max volume. 
Linear Regress on Price And VolumeLinear regression is a statistical method used to model the relationship between a dependent variable and one or more independent variables. It assumes a linear relationship between the dependent variable and the independent variable(s) and attempts to fit a straight line that best describes the relationship.
In the context of predicting the price of a stock based on the volume, we can use linear regression to build a model that relates the price of the stock (dependent variable) to the volume (independent variable). The idea is to use lookback period to predict future prices based on the volume.
To build this indicator, we start by collecting data on the price of the stock and the volume over a selected of time or by default 21 days. We then plot the data on a scatter plot with the volume on the x-axis and the price on the y-axis. If there is a clear pattern in the data, we can fit a straight line to the data using a method called least squares regression. The line represents the best linear approximation of the relationship between the price and the volume.
Once we have the line, we can use it to make predictions. For example, if we observe a certain volume, we can use the line to estimate the corresponding price.
It's worth noting that linear regression assumes a linear relationship between the variables. In reality, the relationship between the price and the volume may be more complex, and other factors may also influence the price of the stock. Therefore, while linear regression can be a useful tool, it should be used in conjunction with other methods and should be interpreted with caution.
Premium Linear Regression - The Quant ScienceThis script calculates the average deviation of the source data from the linear regression. When used with the indicator, it can plot the data line and display various pieces of information, including the maximum average dispersion around the linear regression. 
The code includes various user configurations, allowing for the specification of the start and end dates of the period for which to calculate linear regression, the length of the period to use for the calculation, and the data source to use.
The indicator is designed for multi-timeframe use and to facilitate analysis for traders who use regression models in their analysis. It displays a green linear regression line when the price is above the line and a red line when the price is below. The indicator also highlights areas of dispersion around the regression using circles, with bullish areas shown in green and bearish areas shown in red.
VHF Adaptive Linear Regression KAMAIntroduction 
Heyo, in this indicator I decided to add VHF adaptivness, linear regression and smoothing to a KAMA in order to squeeze all out of it.
KAMA:
Developed by Perry Kaufman, Kaufman's Adaptive Moving Average (KAMA) is a moving average designed to account for market noise or volatility. KAMA will closely follow prices when the price swings are relatively small and the noise is low. KAMA will adjust when the price swings widen and follow prices from a greater distance. This trend-following indicator can be used to identify the overall trend, time turning points and filter price movements. 
VHF:
Vertical Horizontal Filter (VHF) was created by Adam White to identify trending and ranging markets. VHF measures the level of trend activity, similar to ADX DI. Vertical Horizontal Filter does not, itself, generate trading signals, but determines whether signals are taken from trend or momentum indicators. Using this trend information, one is then able to derive an average cycle length. 
Linear Regression Curve:
A line that best fits the prices specified over a user-defined time period.
This is very good to eliminate bad crosses of KAMA and the pric.
 Usage 
You can use this indicator on every timeframe I think. I mostly tested it on 1 min, 5 min and 15 min.
 Signals 
Enter Long -> crossover(close, kama) and crossover(kama, kama )
Enter Short -> crossunder(close, kama) and crossunder(kama, kama )
 Thanks for checking this out! 
--
 Credits to 
▪️@cheatcountry – Hann Window Smoohing
▪️@loxx – VHF and T3
▪️@LucF – Gradient
Dynamic Linear Regression Oscillator | AdulariDescription: 
This dynamic linear regression oscillator visualizes the general price trend of specific ranges in the chart based on the linear regression calculation, it automatically determines these ranges with pivot detection. The central line of the indicator is the baseline of the linear regression itself. This is a good tool to use to determine when a price is unusually far away from its baseline. The lines above or below it are overbought and oversold zones. These zones are based on the high or low of the range, in combination with the set multipliers. 
The overbought and oversold lines indicate support and resistance; when the prices stay outside these levels for a significant period of time, a reversal can be expected soon. When the oscillator's value crosses above the signal or smoothed line the trend may become bullish. When it crosses below, the trend may become bearish.
  
This indicator is quite special, as it first determines price ranges using pivot detection. It then uses the middle of the range to determine how far the current price is from the baseline. This value is then rescaled compared to a set amount of bars back, putting it into relevant proportions with the current price action.
 How do I use it? 
 
 Never use this indicator as standalone trading signal, it should be used as confluence.
 When the value crosses above the signal this indicates the current bearish trend is getting weak and may reverse upwards.
 When the value crosses below the signal this indicates the current bullish trend is getting weak and may reverse downwards.
 When the value is above the middle line this shows the bullish trend is strong.
 When the value is below the middle line this shows the bearish trend is strong.
 When the value crosses above the upper line this indicates the trend may reverse downwards.
 When the value crosses below the lower line this indicates the trend may reverse upwards.
 
 Features: 
 
 Oscillator value indicating how far the price has currently deviated from the middle of the range. Proportioned to data from a set amount of bars ago.
 Signal value to indicate whether or not the price is abnormally far from the middle of the range.
 Horizontal lines such as oversold, overbought and middle lines, indicating possible reversal zones.
 Automatic range detection using pivots.
 Built-in rescaling functionality to ensure values are proportionate with the latest data.
 
 How does it work?  (simplified)
1 — Calculate the middle of the range.
2 — Define whether the current price is above the middle of the range or below.
3 — If above the middle of the range, calculate the difference of the current high and the middle line. If below, calculate the difference of the current low and the middle line.
4 — Smooth the value using a set moving average type.
5 — Rescale the value to proportionate it with the latest data.
Three Linear Regression ChannelsPlot three linear regression channels using  alexgrover 's  Computing The Linear Regression Using The WMA And SMA  indicator for the linear regression calculations.
 Settings 
 
 Length : Number of inputs to be used
 Source : Source input of the indicator
 Midline Colour : The colour of the midline
 Channel One, Two, and Three Multiplicative Factor : Multiplication factor for the RMSE, determine the distance between the upper and lower level
 Channel One, Two, and Three Colour : The channel's lines colour
 
 Usage 
For usage details, please refer to  alexgrover 's  Computing The Linear Regression Using The WMA And SMA  indicator.
Multi-Optimized Linear Regression ChannelA take on  alexgrover 's Optimized Linear Regression Channel script which allows users to apply multiple linear regression channel with unique multiplicative factors.
 Multiplicative Factors 
Adjust the amount of channels and multiplicative factors of existing or additional channels using the "Mults" input.
 
 An input of "1" creates a single linear regression channel with the multiplicative factor of one.
 An input of "4" creates a single linear regression channel with the multiplicative factor of four.
 An input of "1,4" creates two linear regression channels with multiplicative factors of one and four.
 An input of "1,2,3" creates three linear regression channels with multiplicative factors of one, two, and three.
DB Change Forecast ProDB Change Forecast Pro
 What does the indicator do? 
The DB Change Forecast Pro is a unique indicator that uses price change on HLC3 to detect buy and sell periods along with plotting a linear regression price channel with oversold and undersold zones. It also has a linear regression change forecast mode to optionally project market direction.
Change is calculated by taking a two-bar change of HLC3 and dividing that by the price or, optionally, a fixed divisor. 
A fast-moving change cloud is then calculated and displayed as the "regular version" plot (shown in light gray). When the cloud bottom is above low, a buy zone is detected. When the cloud top is below the high, a sell zone is detected.
The linear regression price channel is calculated similarly but using a much slower change rate. The linear regression price channel shows reasonable high, low and HLC3 ranges. At the bar's opening, the channel will be more compact and come fairly accurate about 1/4 into the bar timeframe. 
The change forecasted price is projected on the right side of the current bar to indicate the current timeframe direction. Please note this forecasting feature is shown in orange when it's early in the timeframe and gray when the timeframe is more likely to produce an accurate direction forecast for the upcoming bar. 
You can use these projected dashed lines to see possible market movements for the Current bar and possible market direction for the next bar. Kindly note these projects change; they should be used to understand possible extreme highs/lows for the current bar or market direction.
The indicator includes an optional change forecast projection feature hidden by default. It will project the market forecast channel with an offset of 1. The forecast is defaulted to an offset of 1 to show market direction. However, you can modify to zero the offset to show the current bar forecast and forecast history.
 How should this indicator be used? 
First, very important, 
1. Settings > Set Symbol to Desired
2. Settings > Set High Timeframe to "Chart"
3. Settings > Ensure "Use price as divisor" is checked.
It's recommended to use this indicator in higher timeframes. Buy and sell signals are displayed in real-time. However, waiting until 1/4 to 1/2 into the current bar is recommended before taking action, and change can happen.
The buy/sell signals (zones) provide recommendations on playing a long vs. a short. When in a buy sone, only play longs. When in a sell zone, only play shorts. 
Then use the linear regression price channel oversold and undersold zones to optionally open and close positions within the buy/sell zones. 
For example, consider opening a long in a buy zone when the linear regression price channel shows undersold. Then consider closing the long when the price moves into the linear regression oversold or higher. Then repeat as long as it's in the buy zone. Then vice versa for sell zones and shorting. 
At basic design, buy in the buy zone, sell or short in the sell zone. If you are up for higher trading frequencies, use the linear regression price channel as described in the example above.  
Please note, as, with all indicators, you may need to adjust to fit the indicator to your symbol and desired timeframe. 
This is only an example of use. Please use this indicator as your own risk and after doing your due diligence. 
 Does the indicator include any alerts? 
Yes, 
"DB CFHLC3: Signal BUY" - Is triggered when a buy signal is fired.
"DB CFHLC3: Signal SELL" - Is triggered when a sell signal is fired.
"DB CFHLC3: Zone BUY" - Is triggered when a buy zone is detected.
"DB CFHLC3: Zeon SELL" - Is triggered when a sell zone is detected.
"DB CFHLC3: Oversold SELL" - Is triggered when the price exceeds the oversold level.
"DB CFHLC3: Undersold BUY" - Is triggered when the price goes below the undersold level.
 Any other tips?  
Once you have configured the indicator for your symbol and chart timeframe. Meaning the plots are displayed over the price. Check out larger timeframes such as W, 2W, 3W, 4W, M, and 4M. It works wonderfully for showing market lows and highs for long-term investing too! 
Another, tip is to combine it with your favorite indicator, such as TTM Squeeze or MACD for confirmation purposes. You may be surprised how fast the indicator shows market direction changes on higher timeframes. 
You can just as easily use a high timeframe such as D, 2D, or 3D for day trading due to how the linear price channel works. 
 Why am I not selling this indicator?  
I would like to bless the TradingView community, and I enjoy publishing custom indicators.
If you enjoy this indicator, please consider leaving a thumbs up or a comment for others to know about your experience or recommendations.
Enjoy!






















