Brown's Exponential Smoothing Tool (BEST)Brown's Exponential Smoothing Tool (BEST) is a script for technical analysis in financial markets. It is designed to smooth out price fluctuations and identify trends in a given time series data.
The script begins by defining the "BEST" indicator, which will be overlaid on top of the chart. The user can then specify the source of the data (e.g. close price) and set the values for the smoothing factor (alpha) and the style of exponential smoothing (BES, DBES, or TBES).
The script then defines three functions for calculating the exponential smoothing: "bes", "tbes", and "dbes". The "bes" function applies a single iteration of exponential smoothing to the input data, using the specified alpha value. The "tbes" function applies three iterations of exponential smoothing, using the triple exponential moving average (TEMA) formula to smooth out the data even further. The "dbes" function applies two iterations of exponential smoothing, using the double exponential moving average (DEMA) formula to smooth out the data.
Finally, the script defines a "ma" function, which returns the exponential smoothing result based on the style selected by the user. The script plots the result of the "ma" function on the chart, using the color orange.
In summary, Brown's Exponential Smoothing Tool is a script for smoothing out financial time series data and identifying trends. It allows the user to choose from three different styles of exponential smoothing, each of which has its own strengths and weaknesses. By applying exponential smoothing to financial data, traders and analysts can better understand the underlying trends and make more informed decisions.
在腳本中搜尋"Exponential"
ChartRage - ELMAELMA - Exponential Logarithmic Moving Average
This is a new kind of moving average that is using exponential normalization of a logarithmic formula. The exponential function is used to average the weight on the moving average while the logarithmic function is used to calculate the overall price effect.
Features and Settings:
◻️ Following rate of change instead of absolute levels
◻️ Choose input source of the data
◻️ Real time signals through price interaction
◻️ Change ELMA length
◻️ Change the exponential decay rate
◻️ Customize base color and signal color
Equation of the ELMA:
This formula calculates a weighted average of the logarithm of prices, where more recent prices have a higher weight. The result is then exponentiated to return the ELMA value. This approach emphasizes the relative changes in price, making the ELMA sensitive to the % rate of change rather than absolute price levels. The decay rate can be adjusted in the settings.
Comparison EMA vs ELMA:
In this image we see the differences to the Exponential Moving Average.
Price Interaction and earlier Signals:
In this image we have added the bars, so we can see that the ELMA provides different signals of resistance and support zones and highlights them, by changing to the color yellow, when prices interact with the ELMA.
Strategy by trading Support and Resistance Zones:
The ELMA helps to evaluate trends and find entry points in bullish market conditions, and exit points in bearish conditions. When prices drop below the ELMA in a bull market, it is considered a buying signal. Conversely, in a bear market, it serves as an exit signal when prices trade above the ELMA.
Volatile Markets:
The ELMA works on all timeframes and markets. In this example we used the default value for Bitcoin. The ELMA clearly shows support and resistance zones. Depending on the asset, the length and the decay rate should be adjusted to provide the best results.
Real Time Signals:
Signals occur not after a candle closes but when price interacts with the ELMA level, providing real time signals by shifting color. (default = yellow)
Disclaimer* All analyses, charts, scripts, strategies, ideas, or indicators developed by us are provided for informational and educational purposes only. We do not guarantee any future results based on the use of these tools or past data. Users should trade at their own risk.
This work is licensed under Attribution-NonCommercial-ShareAlike 4.0 International
creativecommons.org
Multi Time Frame Exponential Moving Average and dasboardThis Pine script, titled "Multi Time Frame Exponential Moving Average (MTF EMA)," provides an innovative approach for traders who wish to track trends across multiple timeframes without having to switch between different charts. It combines two main features: an indicator displaying exponential moving averages (EMA) on five different time periods, as well as a compact dashboard that synthesizes this information on a single chart window.
The originality of this script lies in its ability to provide a comprehensive analysis of EMA trends across different time intervals, allowing traders to quickly and clearly understand the market dynamics without having to navigate between multiple charts. Rather than switching from one chart to another to observe trends on different time scales, traders can now consult a single dashboard to obtain all the necessary information.
The script uses exponential moving averages (EMA) to identify trends over five time periods: 5 minutes, 15 minutes, 1 hour, 4 hours, and 1 day. The values of the EMAs are calculated based on the closing prices of candles. Bullish or bearish trends are indicated by upward or downward arrows respectively, making it easy to interpret the information on the dashboard.
To use this script, traders can simply add it to their chart on the TradingView platform. They can customize the parameters of the exponential moving averages according to their preferences and choose between a dark or light theme for the dashboard. Then, they can observe trends on different time scales directly on the dashboard, enabling them to make informed trading decisions.
In summary, this script offers a practical and innovative solution for tracking trends across multiple timeframes, combining the efficiency of exponential moving averages with the convenience of a dashboard centralized on a single chart. This allows traders to save time and stay informed about market movements effectively and efficiently.
Triple Brown's Exponential Smoothing (TBES)This script is a PineScript implementation of the Triple Exponential Moving Average (TEMA) indicator, which is a trend-following indicator used in technical analysis. The TEMA attempts to reduce the lag present in other moving averages by using a triple exponential smoothing technique.
The script begins by declaring the function "indicator" with the name "TBES", and setting the "overlay" parameter to "true" to display the indicator on top of the price chart. It also defines an input parameter called "Source" which is the source data for the TEMA calculation (usually the closing price of a financial asset). It also defines an input parameter called "Alpha" which is a smoothing factor that controls the weighting of the TEMA calculation.
The script then defines the "bes" function, which stands for "Brown's Exponential Smoothing". This function takes in the source data and the alpha smoothing factor as input, and applies the double exponential smoothing calculation to produce a smoothed version of the source data.
The "tbes" function is then defined, which stands for "Triple Brown's Exponential Smoothing" and calculates the TEMA. It does this by first applying the "bes" function to the source data, then applying it again to the output of the first "bes" calculation, and then applying it a third time to the output of the second "bes" calculation. The final TEMA value is then calculated as the sum of three times the difference between the output of the first "bes" calculation and the output of the second "bes" calculation, and the output of the third "bes" calculation.
Finally, the script plots the TEMA value on the chart in green color by calling the "plot" function and passing it the output of the "tbes" function, along with a string label for the indicator.
Advanced Exponential Smoothing Indicator (AESI) [AstrideUnicorn]The Advanced Exponential Smoothing Indicator (AESI) provides a smoothed representation of price data using the exponential smoothing technique. It helps traders identify the overall trend and potential reversal points in the market.
SETTINGS
Length: The number of periods used for the calculation of the exponential moving average (EMA). Higher values provide a smoother result but may lag behind price movements.
Alpha: The smoothing factor that determines the weight of the recent price data in the smoothing calculation. Higher values give more weight to recent data, resulting in a more responsive indicator.
Cloud Mode: Determines whether to display a cloud between the AESI line and the EMA line. When enabled, the cloud represents bullish (green) and bearish (red) market conditions.
HOW TO USE
The AESI indicator consists of a single line that represents the advanced exponential smoothing of the price data. It aims to provide a smoother version of the price series, reducing noise and revealing the underlying trend.
Bullish Condition: When the AESI line is above the EMA line, it indicates a bullish market condition. Traders may consider looking for buying opportunities or holding onto existing long positions.
Bearish Condition: When the AESI line is below the EMA line, it suggests a bearish market condition. Traders may consider looking for selling opportunities or holding onto existing short positions.
Optional Cloud Mode:
Enabling the cloud mode allows you to visualize bullish and bearish market conditions more clearly. The cloud appears between the AESI line and the EMA line, providing a visual representation of the prevailing market sentiment.
Bullish Cloud: When the AESI line is above the EMA line, the cloud is green, indicating a potential bullish market condition.
Bearish Cloud: When the AESI line is below the EMA line, the cloud is red, indicating a potential bearish market condition.
Note: The AESI indicator is most effective when used in conjunction with other technical analysis tools and indicators to confirm trading signals and make informed trading decisions.
Adjusting the Parameters:
You can adjust the Length and Alpha parameters to find the best ones for different timeframes and market conditions. Experimenting with different parameter values can help you find the optimal settings for your trading strategy.
It is recommended to backtest the AESI indicator on historical price data and evaluate its performance before using it in live trading. Remember that no indicator can guarantee profitable trades, and it is important to use risk management techniques and exercise caution when making trading decisions.
[blackcat] L1 Vitali Apirine Exponential Deviation BandsLevel 1
Background
Vitali Apirine’s articles in the July issues on 2019,“Exponential Deviation Bands”
Function
In “Exponential Deviation Bands” in this issue, author Vitali Apirine introduces a price band indicator based on exponential deviation rather than the more traditional standard deviation, such as is used in the well-known Bollinger Bands. As compared to standard deviation bands, the author’s exponential deviation bands apply more weight to recent data and generate fewer breakouts. Apirine describes using the bands as a tool to assist in identifying trends.
Remarks
Feedbacks are appreciated.
6 Moving Averages with MTF v1.0This indicator is a collection of 6 different period Moving Averages. It has support for different time-frame resolution for all of them individually.
Also, it has 11 different type of Moving Average calculation functions:
1. Simple Moving Average (SMA)
2. Exponential Moving Average (EMA)
3. Weighted Moving Average (WMA)
4. Volume Weighted Moving Average (VWMA)
5. Smoothed Moving Average (SMMA)
6. Double Exponential Moving Average (DEMA)
7. Triple Exponential Moving Average (TEMA)
8. Hull WMA Moving Average (HullMA)
9. Triangular Moving Average (TMA)
10. Super Smoother Moving Average (SSMA)
11. Zero Lag Exponential Moving Average (ZEMA)
Note: The Moving Average calculation function is adapted from @JustUncleL
Happy trading 😉
Thank you.
Hull-Exponential Moving Average (HEMA)The Hull Exponential Moving Average (HEMA) is an experimental technical indicator that uses a sequence of Exponential Moving Averages (EMAs) with the same logic as HMA - except with EMAs and not WMAs. It aims to create a responsive yet smooth trend indicator than HMA.
HEMA applies a multi-stage EMA process. Initial EMAs are calculated using alphas derived from logarithmic relationships and the input period. Their outputs are then combined in a de-lagging step, which itself uses a logarithmically derived ratio. A final EMA smoothing pass is then applied to this de-lagged series. This creates a moving average that responds quickly to genuine price changes while maintaining effective noise filtering. The specific alpha calculations and the de-lagging formula contribute to its balance between responsiveness and smoothness.
▶️ **Core Concepts**
Logarithmically-derived alphas: Alpha values for the three EMA stages are derived using natural logarithms and specific formulas related to the input period **N**.
Three-stage EMA process: The calculation involves:
An initial EMA (using **αS**) on the source data.
A second EMA (using **αF**) also on the source data.
A de-lagging step that combines the outputs of the first two EMAs using a specific ratio **r**.
A final EMA (using **αFin**) applied to the de-lagged series.
Specific de-lagging formula: Utilizes a constant ratio **r = ln(2.0) / (1.0 + ln(2.0))** to combine the outputs of the first two EMAs, aiming to reduce lag.
Optimized final smoothing: The alpha for the final EMA (**αFin**) is calculated based on the square root of the period **N**.
Warmup compensation: The internal EMA calculations include a warmup mechanism to provide more accurate values from the initial bars. This involves tracking decay factors (**eS**, **eF**, **eFin**) and applying a compensation factor **1.0 / (1.0 - e_decay)** during the warmup period. A shared warmup duration is determined by the smallest alpha among the three stages.
HEMA achieves its characteristics through this multi-stage EMA process, where the specific alpha calculations and the de-lagging step are key to its responsiveness and smoothness.
▶️ **Common Settings and Parameters**
Period (**N**): Default: 10 | Base lookback period for all alpha calculations | When to Adjust: Increase for longer-term trends and more smoothness, decrease for shorter-term signals and more responsiveness
Source: Default: Close | Data point used for calculation | When to Adjust: Change to HL2, HLC3, or OHLC4 for different price representations
Pro Tip: The HEMA's behavior is sensitive to the **Period** setting due to the non-linear relationships in its alpha calculations. Experiment with values around your typical MA periods. Small changes in **N** can have a noticeable impact, especially for smaller **N** values.
▶️ **Calculation and Mathematical Foundation**
Simplified explanation:
HEMA calculates its value through a sequence of three Exponential Moving Averages (EMAs) with specially derived smoothing factors (alphas).
Two initial EMAs are calculated from the source price, using alphas **αS** and **αF**.
The outputs of these two EMAs are combined into a "de-lagged" series.
This de-lagged series is then smoothed by a third EMA, using alpha **αFin**, to produce the final HEMA value.
All internal EMAs use a warmup compensation mechanism for improved accuracy on early bars.
Technical formula (let **N** be the input period):
1. Alpha for the first EMA (slow component related):
αS = 3.0 / (2.0 * N - 1.0)
2. Lambda for **αS** (intermediate value):
λS = -ln(1.0 - αS)
Note: **αS** must be less than 1, which implies 2N-1 > 3 or N > 2 for **λS** to be well-defined without NaN from ln of non-positive number. The code uses nz() for robustness but the formula implies this constraint.
3. De-lagging ratio **r**:
r = ln(2.0) / (1.0 + ln(2.0))
(This is a constant, approximately 0.409365)
4. Alpha for the second EMA (fast component related):
αF = 1.0 - exp(-λS / r)
5. Alpha for the final EMA smoothing:
αFin = 2.0 / (sqrt(N) / 2.0 + 1.0)
6. Applying the stages:
**OutputS = EMA_internal(source, αS, eS_state, emaS_state)**
**OutputF = EMA_internal(source, αF, eF_state, emaF_state)**
8. Calculate the de-lagged series:
DeLag = (OutputF / (1.0 - r)) - (r * OutputS / (1.0 - r))
9. Calculate the final HEMA:
HEMA = EMA_internal(DeLag, αFin, eFin_state, emaFin_state)
🔍 Technical Note: The HEMA implementation uses a shared warmup period controlled by **aMin** (the minimum of **αS**, **αF**, **αFin**). During this period, each internal EMA stage still tracks its own decay factor (**eS**, **eF**, **eFin**) to apply the correct compensation. The **nz()** function is used in the code to handle potential NaN values from alpha calculations if **N** is very small (e.g., **N=1** would make **αS=3**, **1-αS = -2**, **ln(-2)** is NaN).
▶️ **Interpretation Details**
HEMA provides several key insights for traders:
When price crosses above HEMA, it often signals the beginning of an uptrend
When price crosses below HEMA, it often signals the beginning of a downtrend
The slope of HEMA provides insight into trend strength and momentum
HEMA creates smooth dynamic support and resistance levels during trends
Multiple HEMA lines with different periods can identify potential reversal zones
HEMA is particularly effective for trend following strategies where both responsiveness and noise reduction are important. It provides earlier signals than traditional EMAs while exhibiting less whipsaw than standard HMA in choppy market conditions. The indicator excels at identifying the underlying trend direction while filtering out minor price fluctuations.
▶️ **Limitations and Considerations**
Experimental nature: As an experimental indicator, HEMA may behave differently from established HMA in certain market conditions
Lag characteristics: While designed to reduce lag, HEMA may exhibit slightly more lag than HMA in some scenarios due to the long tail of EMA
Mathematical complexity: The multi-stage calculation with specialized alpha parameters makes the behavior less intuitive to understand
Parameter sensitivity: Performance can vary significantly with different period settings
Complementary tools: Works best when combined with volume analysis or momentum indicators for confirmation
▶️ **References**
Hull, A. (2005). "Hull Moving Average," Technical Analysis of Stocks & Commodities .
RetryClaude can make mistakes. Please double-check responses.
Multiple Exponential Moving AveragesThe "Multiple Exponential Moving Averages" indicator is a custom technical analysis tool created for TradingView. It combines five different Exponential Moving Averages (EMAs) into a single indicator. Each EMA has a user-defined length, and they are plotted on the chart with different colors to differentiate them.
Exponential Moving Averages are commonly used in technical analysis to smooth out price data and identify trends. They give more weight to recent price data, making them more responsive to recent price changes than Simple Moving Averages (SMAs). By combining multiple EMAs with different lengths, TradingView users will no longer have to worry that they will run out of slots when wanting to add new indicators to their chart.
Triple Exponential Hull Moving Average THMAThis pine script calculates the triple exponential Hull moving average (THMA) of a given data series. The THMA is a type of moving average that is calculated using the exponential moving average (EMA) of the data. In this script, the ema() function is used to calculate the EMA of the data three times, with different lengths for each calculation. The resulting value is the THMA of the data. The script also plots the THMA on a chart, using a green color for upward trends and a red color for downward trends. The length of the moving average and the alpha parameter used in the EMA calculation can be specified by the user as input parameters.
A trader may use this pine script to help identify trends in the stock market. By plotting the triple exponential Hull moving average (THMA) of the data on a chart, the trader can quickly see whether the market is trending up or down, and how strong the trend is. This can help the trader make informed decisions about when to buy and sell stocks. Additionally, the script allows the user to customize the length of the moving average and the alpha parameter used in the EMA calculation, which can be useful for analyzing different time frames and making more accurate predictions.
Cumulative Weighted Triple Exponential Moving Average (CWTEMA)This Pine Script code defines an indicator called "CWTEMA" that plots a custom weighted triple exponential moving average (TEMA) on a chart. The indicator takes two inputs: a source series (usually the close price of a security) and a length parameter that specifies the number of periods over which the moving average is calculated.
The code first defines a tema() function, which calculates the TEMA for a given series of data and a given length. The function uses the ta.ema() function from the ta library to compute the exponential moving average of the source data, and then applies the triple exponential moving average formula to calculate the TEMA.
The wma() function is then defined, which calculates the weighted moving average of a given series of data using a set of weights. This function computes the weighted sum of the source data using the given weights, then divides this sum by the sum of the weights to calculate the weighted moving average.
Finally, the cweema() function is defined, which calculates the custom weighted TEMA. This function first computes the weights for each value in the moving average using the given length parameter, then calls the wma() and tema() functions to calculate the weighted moving average using the TEMA values. The cweema() function is then plotted on the chart.
Andean OscillatorThe following script is an original creation originally posted on the blog section of the broker Alpaca.
The proposed indicator aims to measure the degree of variations of individual up-trends and down-trends in the price, thus allowing to highlight the direction and amplitude of a current trend.
Settings
Length : Determines the significance of the trends degree of variations measured by the indicator.
Signal Length : Moving average period of the signal line.
Usage
The Andean Oscillator can return multiple information to the user, with its core interpretation revolving around the bull and bear components.
A rising bull component (in green) indicates the presence of bullish price variations while a rising bear component (in red) indicates the presence of bearish price variations.
When the bull component is over the bear component market is up-trending, and the user can expect new higher highs. When the bear component is over the bull component market is down-trending, and the user can expect new lower lows.
The signal line (in orange) allows a more developed interpretation of the indicator and can be used in several ways.
It is possible to use it to filter out potential false signals given by the crosses between the bullish and bearish components. As such the user might want to enter a position once the bullish or bearish component crosses over the signal line instead.
Details
Measuring the degree of variations of trends in the price by their direction (up-trend/down-trend) can be done in several way.
The approach taken by the proposed indicator makes use of exponential envelopes and the naive computation of standard deviation.
First, exponential envelopes are obtained from both the regular prices and squared prices, thus giving two upper extremities, and two lower extremities.
The bullish component is obtained by first subtracting the upper extremity of the squared prices with the squared upper extremity of regular prices, the square root is then applied to this result.
The bearish component is obtained in the same way, but makes use of the lower extremities of the exponential envelopes.
EMAC - Exponential Moving Average Cross - StudyEMAC - Exponential Moving Average Cross - Study
This is the short Study version of EMAC that has been optimized for TradersPost alerts only
For the original full Strategy version with many editable inputs please see EMAC - Exponential Moving Average Cross
For the full Strategy version with the best currently known optimized inputs (average best settings across 26 tickers) please see EMAC - Exponential Moving Average Cross - Optimized
EMAC - Exponential Moving Average Cross - OptimizedEMAC - Exponential Moving Average Cross - Optimized
This is the full Strategy version with the best currently known optimized inputs with the average best settings across the following 26 tickers:
QQQ
TQQQ
SPY
SPXL
AAPL
AMZN
TSLA
BYND
CRWD
DDOG
ESTC
FSLY
MDB
NVDA
PINS
PTON
ROKU
SHOP
SQ
TDOC
TWLO
APPS
CHWY
DKNG
ETSY
FVRR
For the short Study version of EMAC that has been optimized for TradersPost alerts only please see EMAC - Exponential Moving Average Cross - Study
For the original full Strategy version with many editable inputs please see EMAC - Exponential Moving Average Cross
EMAC - Exponential Moving Average CrossEMAC - Exponential Moving Average Cross
This strategy is based in part on original 10ema Basic Swing Trade Strategy by Matt Delong: www.tradingview.com
Link to original 10ema Basic Swing Trade Strategy:
This is the Original EMAC - Exponential Moving Average Cross strategy built as a class for reallifetrading dot com and so has all the default settings and has not been optimized. I would not recommend using this strategy with the default settings and is for educational purposes only. For the fully optimized version please come back around the same time tomorrow 6/16/21 for the EMAC - Exponential Moving Average Cross - Optimized
If you have any questions feel free to reach out to me with a comment and I will try to get back to you quickly with a reply.
Zero Lag Exponential Moving Average (ZLEMA) The Zero lag exponential moving average (ZLEMA) indicator was created
by John Ehlers and Ric Way.
As is the case with the Double exponential moving average (DEMA) and
the Triple exponential moving average (TEMA) and as indicated by the
name, the aim is to eliminate the inherent lag associated to all trend
following indicators which average a price over time.
Triple Exponential Moving Average (TEMA)The Triple Exponential Moving Average (TEMA) is an advanced technical indicator designed to significantly reduce the lag inherent in traditional moving averages while maintaining signal quality. Developed by Patrick Mulloy in 1994 as an extension of his DEMA concept, TEMA employs a sophisticated triple-stage calculation process to provide exceptionally responsive market signals.
TEMA's mathematical approach goes beyond standard smoothing techniques by using a triple-cascade architecture with optimized coefficients. This makes it particularly valuable for traders who need earlier identification of trend changes without sacrificing reliability. Since its introduction, TEMA has become a key component in many algorithmic trading systems and professional trading platforms.
▶️ **Core Concepts**
Triple-stage lag reduction: TEMA uses a three-level EMA calculation with optimized coefficients (3, -3, 1) to dramatically minimize the delay in signal generation
Enhanced responsiveness: Provides significantly faster reaction to price changes than standard EMA or even DEMA, while maintaining reasonable smoothness
Strategic signal processing: Employs mathematical techniques to extract the underlying trend while filtering random price fluctuations
Timeframe effectiveness: Performs well across multiple timeframes, though particularly valued in short to medium-term trading
TEMA achieves its enhanced responsiveness through an innovative triple-cascade architecture that strategically combines three levels of exponential moving averages. This approach effectively removes the lag component inherent in EMA calculations while preserving the essential smoothing benefits.
▶️ **Common Settings and Parameters**
Length: Default: 12 | Controls sensitivity/smoothness | When to Adjust: Increase in choppy markets, decrease in strongly trending markets
Source: Default: Close | Data point used for calculation | When to Adjust: Change to HL2/HLC3 for more balanced price representation
Corrected: Default: false | Adjusts internal EMA smoothing factors for potentially faster response | When to Adjust: Set to true for a modified TEMA that may react quicker to price changes. false uses standard TEMA calculation
Visualization: Default: Line | Display format on charts | When to Adjust: Use filled cloud to see divergence from price more clearly
Pro Tip: For optimal trade signals, many professional traders use two TEMAs (e.g., 8 and 21 periods) and look for crossovers, which often provide earlier signals than traditional moving average pairs.
▶️ **Calculation and Mathematical Foundation**
Simplified explanation:
TEMA calculates three levels of EMAs, then combines them using a special formula that amplifies recent price action while reducing lag. This triple-processing approach effectively eliminates much of the delay found in traditional moving averages.
Technical formula:
TEMA = 3 × EMA₁ - 3 × EMA₂ + EMA₃
Where:
EMA₁ = EMA(source, α₁)
EMA₂ = EMA(EMA₁, α₂)
EMA₃ = EMA(EMA₂, α₃)
The smoothing factors (α₁, α₂, α₃) are determined as follows:
Let α_base = 2/(length + 1)
α₁ = α_base
If corrected is false:
α₂ = α_base
α₃ = α_base
If corrected is true:
Let r = (1/α_base)^(1/3)
α₂ = α_base * r
α₃ = α_base * r * r = α_base * r²
The corrected = true option implements a variation that uses progressively smaller alpha values for the subsequent EMA calculations. This approach aims to optimize the filter's frequency response and phase lag.
Alpha Calculation for corrected = true:
α₁ (alpha_base) = 2/(length + 1)
r = (1/α₁)^(1/3) (cube root relationship)
α₂ = α₁ * r = α₁^(2/3)
α₃ = α₂ * r = α₁^(1/3)
Mathematical Rationale for Corrected Alphas:
1. Frequency Response Balance:
The standard TEMA (where α₁ = α₂ = α₃) can lead to an uneven frequency response, potentially over-smoothing high frequencies or creating resonance artifacts. The geometric progression of alphas (α₁ > α₁^(2/3) > α₁^(1/3)) in the corrected version aims to create a more balanced filter cascade. Each stage contributes more proportionally to the overall frequency response.
2. Phase Lag Optimization:
The cube root relationship between the alphas is designed to minimize cumulative phase lag while maintaining smoothing effectiveness. Each subsequent EMA stage has a progressively smaller impact on phase distortion.
3. Mathematical Stability:
The geometric progression (α₁, α₁^(2/3), α₁^(1/3)) can enhance numerical stability due to constant ratios between consecutive alphas. This helps prevent the accumulation of rounding errors and maintains consistent convergence properties.
Practical Impact of corrected = true:
This modification aims to achieve:
Potentially better lag reduction for a similar level of smoothing
A more uniform frequency response across different market cycles
Reduced overshoot or undershoot in trending conditions
Improved signal-to-noise ratio preservation
Essentially, the cube root relationship in the corrected TEMA attempts to optimize the trade-off between responsiveness and smoothness that can be a challenge with uniform alpha values.
🔍 Technical Note: Advanced implementations apply compensation techniques to all three EMA stages, ensuring TEMA values are valid from the first bar without requiring a warm-up period. This compensation corrects initialization bias and prevents calculation errors from compounding through the cascade.
▶️ **Interpretation Details**
TEMA excels at identifying trend changes significantly earlier than traditional moving averages, making it valuable for both entry and exit signals:
When price crosses above TEMA, it often signals the beginning of an uptrend
When price crosses below TEMA, it often signals the beginning of a downtrend
The slope of TEMA provides insight into trend strength and momentum
TEMA crossovers with price tend to occur earlier than with standard EMAs
When multiple-period TEMAs cross each other, they confirm significant trend shifts
TEMA works exceptionally well as a dynamic support/resistance level in trending markets
For optimal results, traders often use TEMA in combination with momentum indicators or volume analysis to confirm signals and reduce false positives.
▶️ **Limitations and Considerations**
Market conditions: The high responsiveness can generate false signals during highly choppy, sideways markets
Overshooting: More aggressive lag reduction leads to more pronounced overshooting during sharp reversals
Parameter sensitivity: Changes in length have more dramatic effects than in simpler moving averages
Calculation complexity: Triple cascaded EMAs make behavior less predictable and more resource-intensive
Complementary tools: Should be used with confirmation tools like RSI, MACD or volume indicators
▶️ **References**
Mulloy, P. (1994). "Smoothing Data with Less Lag," Technical Analysis of Stocks & Commodities .
Mulloy, P. (1995). "Comparing Digital Filters," Technical Analysis of Stocks & Commodities .
Moving Average Exponential-DonCHI-SUPERTRENDThe "Moving Average Exponential-DonCHI-SUPERTREND" is a trading strategy or indicator that combines three distinct technical analysis tools:
Moving Average Exponential (EMA): This is a type of moving average that gives more weight to recent prices, making it more responsive to price changes compared to a simple moving average.
Donchian Channels (DonCHI): These are bands that are plotted above and below the recent price highs and lows. They help identify the current price volatility and potential breakout points.
SUPERTREND: This is a trend-following indicator that uses the average true range (ATR) to determine the direction of the trend. It provides signals similar to moving averages but with less lag.
Zero Lag Exponential Moving Average ForLoop [InvestorUnknown]Overview
The Zero Lag Exponential Moving Average (ZLEMA) ForLoop indicator is designed for traders seeking a responsive and adaptive tool to identify trend changes. By leveraging a range of lengths and different moving average (MA) types, this indicator helps smooth out price data and provides timely signals for market entry and exit.
User Inputs
Start and End Lengths: Define the range of lengths over which the IIRF values are calculated.
Moving Average Type: Choose from EMA, SMA, WMA, VWMA, or TMA for trend smoothing.
Moving Average Length: Specify the length for the chosen MA type.
Calculation Source: Select the price data used for calculations.
Signal Calculation
Signal Mode (sigmode): Determines the type of signal generated by the indicator. Options are "Fast", "Slow", "Thresholds Crossing", and "Fast Threshold".
1. Slow: is a simple crossing of the midline (0).
2. Fast: positive signal depends if the current MA > MA or MA is above 0.99, negative signals comes if MA < MA or MA is below -0.99.
3. Thresholds Crossing: simple ta.crossover and ta.crossunder of the user defined threshold for Long and Short.
4. Fast Threshold: signal changes if the value of MA changes by more than user defined threshold against the current signal
col1 = MA > 0 ? colup : coldn
var color col2 = na
if MA > MA or MA > 0.99
col2 := colup
if MA < MA or MA < -0.99
col2 := coldn
var color col3 = na
if ta.crossover(MA,longth)
col3 := colup
if ta.crossunder(MA,shortth)
col3 := coldn
var color col4 = na
if (MA > MA + fastth)
col4 := colup
if (MA < MA - fastth)
col4 := coldn
color col = switch sigmode
"Slow" => col1
"Fast" => col2
"Thresholds Crossing" => col3
"Fast Threshold" => col4
Visualization Settings
Bull Color (colup): The color used to indicate bullish signals.
Bear Color (coldn): The color used to indicate bearish signals.
Color Bars (barcol): Option to color the bars based on the signal.
Custom function
// Function to calculate an array of ZLEMA values over a range of lengths
ZLEMAForLoop(a, b, c, s) =>
// Initialize an array to hold ZLEMA trend values
var Array = array.new_float(b - a + 1, 0.0)
// Loop through the range from 'a' to 'b'
for x = 0 to (b - a)
// Calculate the current length
len = a + x
// Calculate the lag based on the length
lag = math.floor((len - 1) / 2)
// Calculate the smoothing factor alpha
alpha = 2 / (len + 1)
// Initialize the ZLEMA variable
zlema = 0.0
// Compute the ZLEMA value
zlema := na(zlema ) ? (s + s - s ) : alpha * (s + s - s ) + (1 - alpha) * nz(zlema )
// Determine the trend based on ZLEMA value
trend = zlema > zlema ? 1 : -1
// Store the trend in the array
array.set(Array, x, trend)
// Calculate the average of the trend values
Avg = array.avg(Array)
// Apply the selected moving average type to the average trend value
float MA = switch maType
"EMA" => ta.ema(Avg, c) // Exponential Moving Average
"SMA" => ta.sma(Avg, c) // Simple Moving Average
"WMA" => ta.wma(Avg, c) // Weighted Moving Average
"VWMA" => ta.vwma(Avg, c) // Volume-Weighted Moving Average
"TMA" => ta.trima(Avg, c) // Triangular Moving Average
=>
runtime.error("No matching MA type found.") // Error handling for unsupported MA type
float(na)
// Return the array of trends, the average trend, and the moving average
Important Considerations
Speed vs. Stability: The ZLEMA ForLoop is designed for fast response times, making it ideal for short-term trading strategies. However, its sensitivity also means it may generate more signals, some of which could be false positives.
Use with Other Indicators: To improve the reliability of the signals, it is recommended to use the ZLEMA ForLoop in conjunction with other technical indicators.
Customization: Tailor the settings to match your trading style and risk tolerance. Adjusting the lengths, MA type, and thresholds can significantly impact the indicator's performance.
Conclusion
The ZLEMA ForLoop indicator offers a flexible tool for traders looking to capture trend changes quickly. By providing multiple modes and customization options, it allows traders to fine-tune their analysis and make informed decisions. For best results, use this indicator alongside other analytical tools to confirm signals and avoid potential false entries.
Brown's Exponential Smoothing Volatility Adjusted (BESVA)Introduction:
This script is a technical indicator for financial markets, designed to provide traders with a smoothed version of an asset's price using Brown's exponential smoothing method. The indicator adjusts the smoothing parameter based on the volatility of the asset, resulting in a smoother plot with less volatility and a quicker response to price changes with higher volatility.
Methodology:
The indicator begins by defining a length parameter, which determines the number of bars used in a volatility calculation. The user can input a value for this parameter, with a default of 20 bars.
Next, the script calculates the standard deviation of the asset's close price over the defined length, which serves as a measure of volatility. The standard deviation is then normalized by dividing it by the maximum standard deviation and adding a minimum value (set to 0.00005 by default). This normalization technique ensures that the indicator is comparable across different asset classes and time frames.
The normalized volatility measure is then used to adjust the smoothing parameter for the exponential moving average. Specifically, the smoothing parameter is set to the normalized volatility measure, with the minimum value used when the volatility is at its minimum. As the volatility increases, the smoothing parameter decreases, resulting in a quicker response to price changes.
The resulting smoothed price plot is then plotted on the chart.
Conclusion:
This script provides a useful tool for traders looking to analyze the trends in an asset's price while taking into account its volatility. The adjustable smoothing parameter ensures that the indicator responds appropriately to changes in volatility, making it a valuable addition to a trader's toolkit.
Double Brown's Exponential Smoother (DBES)The Double Browns Exponential Smoother (DBES) is a trend-following indicator that reduces the lag present in other moving averages by using a double exponential smoothing technique. It takes in the source data and a smoothing factor as input and produces a smoothed version of the source data. The DBES is then calculated as the difference between twice the output of the first smoothing calculation and the output of the second smoothing calculation. The DEMA is useful for traders looking to identify trends in the markets.
Volume Weighted Exponential Moving AverageThis is a volume weighted exponential moving average. uses exponential weighting and considers volume in the consideration of the average price. This makes for a more accurate "average" than a standard moving average.
Hull Weighted Exponential Moving AverageBINANCE:BTCUSDT
Open source version of the Hull Weighted Exponential Moving Average as described by Vincent Charles in [ Hull-WEMA: A Novel Zero-Lag Approach in the Moving Average Family ]
█ OVERVIEW
The study takes into considerations two variants of MA.
Namely:
Weighted Exponential Moving Average (WEMA)
Hull Moving Average (HMA)
WEMA, which was introduced in 2013, has been widely used in different scenarios but still suffers from lags.
To address this shortcoming, a novel zero-lag Hull-WEMA method is proposed that combines HMA and WEMA.
Results show that the new approach achieves a better accuracy level than both HMA and WEMA.
█ SIGNALS
The indicator generates:
a LONG signal when switching color from RED to GREEN
a SHORT signal when switching color from GREEN to RED
Additionally is available an option to color the candles on your chart to confirm the signals and filter ranges.