AggBands (v1) [qrsq]The "AggBands" indicator is a custom trading indicator designed to provide a consolidated view of the price action across multiple assets or trading pairs. It combines the price data from multiple tickers and calculates an aggregated price using user-defined weights for each ticker.
The indicator starts by defining the tickers to be included in the aggregation. You can choose from predefined configurations such as "BTC PAIRS," "CRYPTO TOTAL MARKET CAP," "TOP 5 PAIRS," "TOP 5 MEMECOINS," "SPX," "DXY," or "FANG." Each configuration includes specific tickers or indices relevant to the chosen category.
The indicator then fetches the closing, high, and low prices for each ticker and applies the user-defined weights to calculate the aggregated prices. The aggregated prices are normalized within a specified length to provide a consistent scale across different assets or pairs.
Next, the indicator calculates the midpoint, which is the average of the highest high and lowest low of the aggregated prices over a specified aggregation period.
To assess the volatility, the indicator calculates the price range and applies the Average True Range (ATR) indicator to determine the volatility value. The standard deviation is then computed using the price range and aggregation period, with an additional scaling factor applied to the volatility value.
Based on the standard deviation, the indicator generates multiple bands above and below the midpoint. By default, three standard deviation bands are calculated, but the user can choose between one and five bands. The upper and lower bands are smoothed using various moving average (MA) types, such as Simple Moving Average (SMA), Exponential Moving Average (EMA), Smoothed Moving Average (SMMA/RMA), Weighted Moving Average (WMA), Volume Weighted Moving Average (VWMA), Volume Weighted Average Price (VWAP), or Arnaud Legoux Moving Average (ALMA). The user can also adjust the length, offset, and sigma parameters for the moving averages.
The indicator can optionally smooth the midpoint, upper bands, and lower bands using a separate set of moving average parameters.
The indicator can be useful for traders and analysts who want to gain a consolidated view of price movements across multiple assets or trading pairs. It helps identify trends, volatility, and potential support and resistance levels based on the aggregated price and standard deviation bands. Traders can use this information to make informed decisions about trading strategies, risk management, and market analysis.
ابحث في النصوص البرمجية عن "Exponential Moving Average"
Volatility Compression BreakoutThe Volatility Compression Breakout indicator is designed to identify periods of low volatility followed by potential breakout opportunities in the market. It aims to capture moments when the price consolidates within a narrow range, indicating a decrease in volatility, and anticipates a subsequent expansion in price movement. This indicator can be applied to any financial instrument and timeframe.
When the close price is above both the Keltner Middle line and the Exponential Moving Average (EMA), the bars are colored lime green, indicating a potential bullish market sentiment. When the close price is positioned above the Keltner Middle but below the EMA, or below the Keltner Middle but above the EMA, the bars are colored yellow, signifying a neutral or indecisive market condition. Conversely, when the close price falls below both the Keltner Middle and the EMA, the bars are colored fuchsia, suggesting a potential bearish market sentiment.
Additionally, the coloration of the Keltner Middle line and the EMA provides further visual cues for assessing the trend. When the close price is above the Keltner Middle, the line is colored lime green, indicating a bullish trend. Conversely, when the close price is below the Keltner Middle, the line is colored fuchsia, highlighting a bearish trend. Similarly, the EMA line is colored lime green when the close price is above it, representing a bullish trend, and fuchsia when the close price is below it, indicating a bearish trend.
Parameters
-- Compression Period : This parameter determines the lookback period used to calculate the volatility compression. A larger value will consider a longer historical period for volatility analysis, potentially capturing broader market conditions. Conversely, a smaller value focuses on more recent price action, providing a more responsive signal to current market conditions.
-- Compression Multiplier : The compression multiplier is a factor applied to the Average True Range (ATR) to determine the width of the Keltner Channels. Increasing the multiplier expands the width of the channels, allowing for a larger price range before a breakout is triggered. Decreasing the multiplier tightens the channels and requires a narrower price range for a breakout signal.
-- EMA Period : This parameter sets the period for the Exponential Moving Average (EMA), which acts as a trend filter. The EMA helps identify the overall market trend and provides additional confirmation for potential breakouts. Adjusting the period allows you to capture shorter or longer-term trends, depending on your trading preferences.
How Changing Parameters Can Be Beneficial
Modifying the parameters allows you to adapt the indicator to different market conditions and trading styles. Increasing the compression period can help identify broader volatility patterns and major market shifts. On the other hand, decreasing the compression period provides more precise and timely signals for short-term traders.
Adjusting the compression multiplier affects the width of the Keltner Channels. Higher multipliers increase the breakout threshold, filtering out smaller price movements and providing more reliable signals during significant market shifts. Lower multipliers make the indicator more sensitive to smaller price ranges, generating more frequent but potentially less reliable signals.
The EMA period in the trend filter helps you align your trades with the prevailing market direction. Increasing the EMA period smoothes out the trend, filtering out shorter-term fluctuations and focusing on more sustained moves. Decreasing the EMA period allows for quicker responses to changes in trend, capturing shorter-term price swings.
Potential Downsides
While the Volatility Compression Breakout indicator can provide valuable insights into potential breakouts, it's important to note that no indicator guarantees accuracy or eliminates risk. False breakouts and whipsaw movements can occur, especially in volatile or choppy market conditions. It is recommended to combine this indicator with other technical analysis tools and consider fundamental factors to validate potential trade opportunities.
Making It Work for You
To maximize the effectiveness of the Volatility Compression Breakout indicator, consider the following:
-- Combine it with other indicators : Use complementary indicators such as trend lines, oscillators, or support and resistance levels to confirm signals and increase the probability of successful trades.
-- Practice risk management : Set appropriate stop-loss levels to protect your capital in case of false breakouts or adverse price movements. Consider implementing trailing stops or adjusting stop-loss levels as the trade progresses.
-- Validate with price action : Analyze the price action within the compression phase and look for signs of building momentum or weakening trends. Support your decisions by observing candlestick patterns and volume behavior during the breakout.
-- Backtest and optimize : Test the indicator's performance across different timeframes and market conditions. Optimize the parameters based on historical data to find the most suitable settings for your trading strategy.
Remember, no single indicator can guarantee consistent profitability, and it's essential to use the Volatility Compression Breakout indicator as part of a comprehensive trading plan. Regularly review and adapt your strategy based on market conditions and your trading experience. Monitor the indicator's performance and make necessary adjustments to parameter values if the market dynamics change.
By adjusting the parameters and incorporating additional analysis techniques, you can customize the indicator to suit your trading style and preferences. However, it is crucial to exercise caution, conduct thorough analysis, and practice proper risk management to increase the likelihood of successful trades. Remember that no indicator can guarantee profits, and continuous learning and adaptation are key to long-term trading success.
Divergences in 52 Week Moving Averages, Adjusted and SmoothedThis script description is intended to be holistic and comprehensive for the understanding of the interested parties who view the script.
Following the PineCoders suggestions, I have provided detailed breakdowns both within the code and in the description immediately below:
► Description
This description is intended to be detailed and meaningful, conveying the understanding of the script’s intention to the user:
The theory: Divergences and extreme readings in 52-Week highs on major indexes can provide a view into a potential pending move in the opposite direction of how the market has been trending. By comparing the 52-Week Hi/Lo indices and applying an Exponential Moving Average (EMA), we can assess how extreme a move is from the average. If the move provides an extreme reading, it would potentially be beneficial to “fade” the move (take a position in the opposing direction).
The intention: The intentionality of this script is to provide a visualization of when the highly-probable opportunity to fade over a multi-day or multi-week period arises. In addition to this, based on backtesting prior moves and reading the various levels of significant reversals, three tiers: “Standard”, “Sensitive”, and “Highly Sensitive” have been applied, the user can choose which sensitivity level they would like to see, there are far less false positives on the Standard and Sensitive settings, while Highly Sensitive often signals multiple times with the move coming a few days later.
The application: The settings allow the user to customize their sensitivity to the fade signals, with the ability to customize the visual that shows up as well. For higher-highs that are fade-worthy, the signal will appear on the top of the candle, for lower-lows that are fade-worthy, the signal will appear on the bottom of the candle. The users risk criteria should be the primary driver of the entry/exit, although when backtesting it appears that the significant move is typically completed within a 2-4 week period at max and 3-5 day period at minimum.
A personal note: I am a futures trader intraday but would very strongly caution users when using this strategy with futures (unless their risk tolerance is higher than most). The most beneficial strategy when fading moves would be to enter in tranches, starting at the first signal and adding on any pullback (as long as the pullback is not below the initial entry point). 1-6 Week Date-To-Expiry options would be the primary method for applying this strategy. I would also like to add that SPY/SPX options (SPDR S&P 500 ETF Trust / CBOE S&P 500 Index) are the most liquid options that could be applied in this strategy.
► Description (additional)
With the understanding that few users can read pinescript (Pine), the description above contains all of the necessary information that is necessary for a user to understand the intention for script utilization. For those who do understand Pine, the code is commented in each section in order to provide an understanding of the underlying functions, calculations, and thought process that went on during the writing of the script.
► Description (additional)
This script’s description contains no delegations, all aspects of the script as well as the initial idea behind it are contained in the description above, which is self-contained in it’s entirety with a clear and defined purpose that is written with the intent to holistically capture the intent of the potential use for this indicator.
► General House Rule #2
This script and the description (as well as my profile) contain no links or associations to promotion of any kind, I am not a business, I am not an individual that will in any way make money from this script or the promotion of another person, idea, company, entity, or legal persons (foreign or domestic).
► Originality and usefulness
This is an original and custom script (and idea) that is not a rehashing or a copy of any code from any other programmers in the tradingview community.
Flat Market and Low ADX Indicator [CHE]Why use the Flat Market and Low ADX Indicator ?
Flat markets, where prices remain within a narrow range for an extended period, can be both critical and dangerous for traders. In a flat market, the price action becomes less predictable, and traders may struggle to find profitable trading opportunities. As a result, many traders may decide to take a break from the market until a clear trend emerges.
However, flat markets can also be dangerous for traders who continue to trade despite the lack of clear trends. In the absence of a clear direction, traders may be tempted to take larger risks or make impulsive trades in an attempt to capture small profits. Such behavior can quickly lead to significant losses, especially if the market suddenly breaks out of its flat range, causing traders to experience large drawdowns.
Therefore, it is essential to approach flat markets with caution and to have a clear trading plan that incorporates strategies for both trending and flat markets. Traders may also use technical indicators, such as the Flat Market and Low ADX Indicator, to help identify flat markets and determine when it is appropriate to enter or exit a position.
The confluence between flat markets and low ADX readings can further increase the risk of trading during these periods. The ADX (Average Directional Index) is a technical indicator used to measure the strength of a trend. A low ADX reading indicates that the market is in a consolidation phase, which can coincide with a flat market. When a flat market occurs during a period of low ADX, traders should be even more cautious, as there is little to no directional bias in the market. In this situation, traders may want to consider waiting for a clear trend to emerge or using range-bound trading strategies to avoid taking excessive risks.
Introduction:
Pine Script is a programming language used for developing custom technical analysis indicators and trading strategies in TradingView. This particular script is an indicator designed to identify flat markets and low ADX conditions. In this description, we will delve deeper into the functionality of this script and how it can be used to improve trading decisions.
Description:
The first input in the script is the length of the moving average used for calculating the center line. This moving average is used to define the high and low range of the market. The script then calculates the middle value of the range by taking the double exponential moving average (EMA) of the high, low, and close prices.
The script then determines whether the market is flat by comparing the middle value of the range with the high and low values. If the middle value is greater than the high value or less than the low value, the market is not flat. If the middle value is within the high and low range, the script considers the market to be flat. The script also uses RSI filter settings to further confirm if the market is flat or not. If the RSI value is between the RSI min and max values, then the market is considered flat. If the RSI value is outside this range, the market is not considered flat.
The script also calculates the ADX (Average Directional Index) to determine whether it's in a low area. ADX is a technical indicator used to measure the strength of a trend. The script uses the ADX filter settings to define the ADX threshold value. If the ADX value is below the threshold value, the script considers the market to be in a low ADX area.
The script provides various input options to customize the display settings, including the option to show the flat market and low ADX areas. Users can choose their preferred colors for the flat market and low ADX areas and adjust the transparency levels to suit their needs.
Conclusion:
In conclusion, this Pine Script indicator is designed to identify flat market and low ADX conditions, which can help traders make informed trading decisions. The script uses a range of inputs and calculations to determine the market direction, RSI filter, and ADX filter. By customizing the display settings, users can adjust the indicator to suit their preferences and improve their trading strategies. Overall, this script can be a valuable tool for traders looking to gain an edge in the markets.
Acknowledgments:
Thanks to the Pine Script™ v5 User Manual www.tradingview.com
EMA 8/20Overlay the 8- and 20-period exponential moving averages.
Also known as an exponentially weighted moving average, the EMA gives more significance to recent periods compared to an SMA (simple moving average).
Learn more about the EMA on Investopedia
Channels Strategy [JoseMetal]============
ENGLISH
============
- Description:
This strategy is based on Bollinger Bands / Keltner Channel price "rebounds" (the idea of price bouncing from one band to another).
The strategy has several customizable options, which allows you to refine the strategy for your asset and timeframe.
You can customize settings for ALL indicators, Bollinger Bands (period and standard deviation), Keltner Channel (period and ATR multiplier) and ATR (period).
- AVAILABLE INDICATORS:
You can pick Bollinger Bands or Keltner Channels for the strategy, the chosen indicator will be plotted as well.
- CUSTOM CONDITIONS TO ENTER A POSITION:
1. Price breaks the band (low below lower band for LONG or high above higher band for SHORT).
2. Same as 1 but THEN (next candle) price closes INSIDE the bands.
3. Price breaks the band AND CLOSES OUT of the band (lower band for LONG and higher band for SHORT).
4. Same as 3 but THEN (next candle) price closes INSIDE the bands.
- STOP LOSS OPTIONS:
1. Previous wick (low of previous candle if LONG and high or previous candle if SHORT).
2. Extended band, you can customize settings for a second indicator with larger values to use it as STOP LOSS, for example, Bollinger Bands with 2 standard deviations to open positions and 3 for STOP LOSS.
3. ATR: you can pick average true ratio from a source (like closing price) with a multiplier to calculate STOP LOSS.
- TAKE PROFIT OPTIONS:
1. Opposite band (top band for LONGs, bottom band for SHORTs).
2. Moving average: Bollinger Bands simple moving average or Keltner Channel exponential moving average .
3. ATR: you can pick average true ratio from a source (like closing price) with a multiplier to calculate TAKE PROFIT.
- OTHER OPTIONS:
You can pick to trade only LONGs, only SHORTs, both or none (just indicator).
You can enable DYNAMIC TAKE PROFIT, which updates TAKE PROFIT on each candle, for example, if you pick "opposite band" as TAKE PROFIT, it'll update the TAKE PROFIT based on that, on every single new candle.
- Visual:
Bands shown will depend on the chosen indicator and it's settings.
ATR is only printed if used as STOP LOSS and/or TAKE PROFIT.
- Recommendations:
Recommended on DAILY timeframe , it works better with Keltner Channels rather than Bollinger Bands .
- Customization:
As you can see, almost everything is customizable, for colors and plotting styles check the "Style" tab.
Enjoy!
============
ESPAÑOL
============
- Descripción:
Esta estrategia se basa en los "rebotes" de precios en las Bandas de Bollinger / Canal de Keltner (la idea de que el precio rebote de una banda a otra).
La estrategia tiene varias opciones personalizables, lo que le permite refinar la estrategia para su activo y temporalidad favoritas.
Puedes personalizar la configuración de TODOS los indicadores, Bandas de Bollinger (periodo y desviación estándar), Canal de Keltner (periodo y multiplicador ATR) y ATR (periodo).
- INDICADORES DISPONIBLES:
Puedes elegir las Bandas de Bollinger o los Canales de Keltner para la estrategia, el indicador elegido será mostrado en pantalla.
- CONDICIONES PERSONALIZADAS PARA ENTRAR EN UNA POSICIÓN:
1. El precio rompe la banda (mínimo por debajo de la banda inferior para LONG o máximo por encima de la banda superior para SHORT).
2. Lo mismo que en el punto 1 pero ADEMÁS (en la siguiente vela) el precio cierra DENTRO de las bandas.
3. El precio rompe la banda Y CIERRA FUERA de la banda (banda inferior para LONG y banda superior para SHORT).
4. Igual que el 3 pero ADEMÁS (siguiente vela) el precio cierra DENTRO de las bandas.
- OPCIONES DE STOP LOSS:
1. Mecha anterior (mínimo de la vela anterior si es LONGy máximo de la vela anterior si es SHORT).
2. Banda extendida, puedes personalizar la configuración de un segundo indicador con valores más extensos para utilizarlo como STOP LOSS, por ejemplo, Bandas de Bollinger con 2 desviaciones estándar para abrir posiciones y 3 para STOP LOSS.
3. ATR: puedes elegir el average true ratio de una fuente (como el precio de cierre) con un multiplicador para calcular el STOP LOSS.
- OPCIONES DE TAKE PROFIT:
1. Banda opuesta (banda superior para LONGs, banda inferior para SHORTs).
2. Media móvil: media móvil simple de las Bandas de Bollinger o media móvil exponencial del Canal de Keltner .
3. ATR: se puede escoger el average true ratio de una fuente (como el precio de cierre) con un multiplicador para calcular el TAKE PROFIT.
- OTRAS OPCIONES:
Puedes elegir operar sólo con LONGs, sólo con SHORTs, ambos o ninguno (sólo el indicador).
Puedes activar el TAKE PROFIT DINÁMICO, que actualiza el TAKE PROFIT en cada vela, por ejemplo, si eliges "banda opuesta" como TAKE PROFIT, actualizará el TAKE PROFIT basado en eso, en cada nueva vela.
- Visual:
Las bandas mostradas dependerán del indicador elegido y de su configuración.
El ATR sólo se muestra si se utiliza como STOP LOSS y/o TAKE PROFIT.
- Recomendaciones:
Recomendada para temporalidad de DIARIO, funciona mejor con los Canales de Keltner que con las Bandas de Bollinger .
- Personalización:
Como puedes ver, casi todo es personalizable, para los colores y estilos de dibujo comprueba la pestaña "Estilo".
¡Que lo disfrutes!
Simple Moving Averge StrategySimple Vs. Exponential Moving Averages
Formula for Exponential Moving Average (EMA)
\begin{aligned} &\begin{aligned} EMA_{\text{Today}}=&\left(\text{Value}_{\text{Today}}\ast\left(\frac{\text{Smoothing}}{1+\text{Days}}\right)\right)\\ &+EMA_{\text{Yesterday}}\ast\left(1-\left(\frac{\text{Smoothing}}{1+\text{Days}}\right)\right)\end{aligned}\\ &\textbf{where:}\\ &EMA=\text{Exponential moving average} \end{aligned}
EMA
Today
=
(Value
Today
∗(
1+Days
Smoothing
))
+EMA
Yesterday
∗(1−(
1+Days
Smoothing
))
where:
EMA=Exponential moving average
While there are many possible choices for the smoothing factor, the most common choice is:
Trade Pro - Rejection Zone IndicatorThe Rejection Zone Indicator can be used to help trend following traders know when to buy dips in up trends, and when to sell pull backs in down trends.
The Rejection Zone Indicator is made up of the 20 and 50 period Exponential Moving Averages. This indicator has colored shading in between these two EMAs, which acts as a nice visual. When the 20 period Exponential Moving Average is below the 50 period Exponential Moving Average, the shaded cloud will be red, and when the 20 EMA is over the 50 EMA the cloud will be green. It is called the Rejection Zone indicator, because often in trends when price pulls back to the colored cloud, it will act as an area of support or resistance.
The suggested use of the Rejection Zone Indicator is to look for long trades when the cloud is green, and once price has pulled back into the green cloud. If the cloud is red one can look for short trading opportunity when price pulls back into the red cloud.
Short Selling EMA Cross (By Coinrule)BINANCE:AVAXUSDT
This short selling script works best in periods of downtrends and general bearish market conditions, with the ultimate goal to sell as the the price decreases further and buy back before a rebound.
This script can work well on coins you are planning to hodl for long-term and works especially well whilst using an automated bot that can execute your trades for you. It allows you to hedge your investment by allocating a % of your coins to trade with, whilst not risking your entire holding. This mitigates unrealised losses from hodling as it provides additional cash from the profits made. You can then choose to to hodl this cash, or use it to reinvest when the market reaches attractive buying levels.
Entry
The exponential moving average ( EMA ) 20 and EMA 50 have been used for the variables determining the entry to the short. EMAs can operate better than simple moving averages due to the additional weighting placed on the most recent data points, whereas simple moving averages weight all the data the same. This means that price is tracked more closely and the most recent volatile moves can be captured and exploited more efficiently using EMAs.
Our backtesting data revealed that the most profitable timeframe was the 30-minute timeframe, this also enabled a good frequency of trades and high profitability.
A fast (shorter term) exponential moving average , in this strategy the EMA 20, crossing under a slow (longer term) moving average, in this example the EMA 50, signals the price of an asset has started to trend to the downside, as the most recent data signals price is declining compared to earlier data. The entry acts on this principle and executes when the EMA 20 crosses under the EMA 50.
Enter Short: EMA 20 crosses under EMA 50.
Exit
This script utilises a take profit and stop loss for the exit. The take profit is set at -8% and the stop loss is set at +16% from the entry price. This would normally be a poor trade due to the risk:reward equalling 0.5. However, when looking at the backtesting data, the high profitability of the strategy (93.33%) leads to increased confidence and showcases the high probability of success according to historical data.
The take profit (-8%) and the stop loss (+16%) of the strategy are widely placed to ensure the move is captured without being stopped out due to relief rallies. The stop loss also plays a role of mitigating losses and minimising risk of being stuck in a short position once there has been a fundamental trend reversal and the market has become bullish .
Exit Short: -8% price decrease from entry price.
OR
Exit Short: +16% price increase from entry price.
Tip: Research what coins have consistent and large token unlocks / highly inflationary tokenomics, and target these during bear markets to short as they will most likely have substantial selling pressure that outweighs demand - leading to declining prices.
The strategy assumes each order is using 30% of the available coins to make the results more realistic and to simulate you only ran this strategy on 30% of your holdings. A trading fee of 0.1% is also taken into account and is aligned to the base fee applied on Binance.
The backtesting data was recorded from December 1st 2021, just as the market was beginning its downtrend. We therefore recommend analysing the market conditions prior to utilising this strategy as it operates best on weak coins during downtrends and bearish conditions.
DEMA / EMA moving averagesSince a moving average averages values, they lag recent price action. So when there’s a sudden price spike or when a new trend begins, the moving average is a bit late to the party. Over the years several people have developed moving averages that reduce price lag as much as possible.
One of those tweaked moving averages is the Double Exponential Moving Average (DEMA). This indicator was introduced by Patrick Mulloy in a 1994 article named “Smoothing Data With Faster Moving Averages” (Mitchell, 2019).
You can easily switch DEMA or EMA averages and show crossover signals
MACD-EDT "EMA DEMA TEMA" [DM]Greetings to all colleagues
Today I share a MACD with the EMA , DEMA , TEMA variants.
The aim is that they can see how the signals vary from a normal MACD to one with the averages created by Patrick Mulloy (1994)
Variables of this MACD:
EMA = Exponential Moving Average
DEMA = Double Exponential Moving Average
TOPIC = Triple Exponential Moving Average
He also has in the arsenal:
SMA Simple Moving Average
WMA Weighted Moving Average
Plus...:
Volume-weighted variant in all of them
Visual options:
Points at the crossroads
Shadows on the body of the signals
All colors are customizable
Histogram and shadow are gradients at 15 steps
It has switches for:
Shadow
Histogram
Macd and signal
Crosses
Some minor details remain to be incorporated in the next few days.
Pre-cross calculation.
Alerts
Bar color
Enjoy!!! ;-)
taLibrary "ta"
█ OVERVIEW
This library holds technical analysis functions calculating values for which no Pine built-in exists.
Look first. Then leap.
█ FUNCTIONS
cagr(entryTime, entryPrice, exitTime, exitPrice)
It calculates the "Compound Annual Growth Rate" between two points in time. The CAGR is a notional, annualized growth rate that assumes all profits are reinvested. It only takes into account the prices of the two end points — not drawdowns, so it does not calculate risk. It can be used as a yardstick to compare the performance of two instruments. Because it annualizes values, the function requires a minimum of one day between the two end points (annualizing returns over smaller periods of times doesn't produce very meaningful figures).
Parameters:
entryTime : The starting timestamp.
entryPrice : The starting point's price.
exitTime : The ending timestamp.
exitPrice : The ending point's price.
Returns: CAGR in % (50 is 50%). Returns `na` if there is not >=1D between `entryTime` and `exitTime`, or until the two time points have not been reached by the script.
█ v2, Mar. 8, 2022
Added functions `allTimeHigh()` and `allTimeLow()` to find the highest or lowest value of a source from the first historical bar to the current bar. These functions will not look ahead; they will only return new highs/lows on the bar where they occur.
allTimeHigh(src)
Tracks the highest value of `src` from the first historical bar to the current bar.
Parameters:
src : (series int/float) Series to track. Optional. The default is `high`.
Returns: (float) The highest value tracked.
allTimeLow(src)
Tracks the lowest value of `src` from the first historical bar to the current bar.
Parameters:
src : (series int/float) Series to track. Optional. The default is `low`.
Returns: (float) The lowest value tracked.
█ v3, Sept. 27, 2022
This version includes the following new functions:
aroon(length)
Calculates the values of the Aroon indicator.
Parameters:
length (simple int) : (simple int) Number of bars (length).
Returns: ( [float, float ]) A tuple of the Aroon-Up and Aroon-Down values.
coppock(source, longLength, shortLength, smoothLength)
Calculates the value of the Coppock Curve indicator.
Parameters:
source (float) : (series int/float) Series of values to process.
longLength (simple int) : (simple int) Number of bars for the fast ROC value (length).
shortLength (simple int) : (simple int) Number of bars for the slow ROC value (length).
smoothLength (simple int) : (simple int) Number of bars for the weigted moving average value (length).
Returns: (float) The oscillator value.
dema(source, length)
Calculates the value of the Double Exponential Moving Average (DEMA).
Parameters:
source (float) : (series int/float) Series of values to process.
length (simple int) : (simple int) Length for the smoothing parameter calculation.
Returns: (float) The double exponentially weighted moving average of the `source`.
dema2(src, length)
An alternate Double Exponential Moving Average (Dema) function to `dema()`, which allows a "series float" length argument.
Parameters:
src : (series int/float) Series of values to process.
length : (series int/float) Length for the smoothing parameter calculation.
Returns: (float) The double exponentially weighted moving average of the `src`.
dm(length)
Calculates the value of the "Demarker" indicator.
Parameters:
length (simple int) : (simple int) Number of bars (length).
Returns: (float) The oscillator value.
donchian(length)
Calculates the values of a Donchian Channel using `high` and `low` over a given `length`.
Parameters:
length (int) : (series int) Number of bars (length).
Returns: ( [float, float, float ]) A tuple containing the channel high, low, and median, respectively.
ema2(src, length)
An alternate ema function to the `ta.ema()` built-in, which allows a "series float" length argument.
Parameters:
src : (series int/float) Series of values to process.
length : (series int/float) Number of bars (length).
Returns: (float) The exponentially weighted moving average of the `src`.
eom(length, div)
Calculates the value of the Ease of Movement indicator.
Parameters:
length (simple int) : (simple int) Number of bars (length).
div (simple int) : (simple int) Divisor used for normalzing values. Optional. The default is 10000.
Returns: (float) The oscillator value.
frama(source, length)
The Fractal Adaptive Moving Average (FRAMA), developed by John Ehlers, is an adaptive moving average that dynamically adjusts its lookback period based on fractal geometry.
Parameters:
source (float) : (series int/float) Series of values to process.
length (int) : (series int) Number of bars (length).
Returns: (float) The fractal adaptive moving average of the `source`.
ft(source, length)
Calculates the value of the Fisher Transform indicator.
Parameters:
source (float) : (series int/float) Series of values to process.
length (simple int) : (simple int) Number of bars (length).
Returns: (float) The oscillator value.
ht(source)
Calculates the value of the Hilbert Transform indicator.
Parameters:
source (float) : (series int/float) Series of values to process.
Returns: (float) The oscillator value.
ichimoku(conLength, baseLength, senkouLength)
Calculates values of the Ichimoku Cloud indicator, including tenkan, kijun, senkouSpan1, senkouSpan2, and chikou. NOTE: offsets forward or backward can be done using the `offset` argument in `plot()`.
Parameters:
conLength (int) : (series int) Length for the Conversion Line (Tenkan). The default is 9 periods, which returns the mid-point of the 9 period Donchian Channel.
baseLength (int) : (series int) Length for the Base Line (Kijun-sen). The default is 26 periods, which returns the mid-point of the 26 period Donchian Channel.
senkouLength (int) : (series int) Length for the Senkou Span 2 (Leading Span B). The default is 52 periods, which returns the mid-point of the 52 period Donchian Channel.
Returns: ( [float, float, float, float, float ]) A tuple of the Tenkan, Kijun, Senkou Span 1, Senkou Span 2, and Chikou Span values. NOTE: by default, the senkouSpan1 and senkouSpan2 should be plotted 26 periods in the future, and the Chikou Span plotted 26 days in the past.
ift(source)
Calculates the value of the Inverse Fisher Transform indicator.
Parameters:
source (float) : (series int/float) Series of values to process.
Returns: (float) The oscillator value.
kvo(fastLen, slowLen, trigLen)
Calculates the values of the Klinger Volume Oscillator.
Parameters:
fastLen (simple int) : (simple int) Length for the fast moving average smoothing parameter calculation.
slowLen (simple int) : (simple int) Length for the slow moving average smoothing parameter calculation.
trigLen (simple int) : (simple int) Length for the trigger moving average smoothing parameter calculation.
Returns: ( [float, float ]) A tuple of the KVO value, and the trigger value.
pzo(length)
Calculates the value of the Price Zone Oscillator.
Parameters:
length (simple int) : (simple int) Length for the smoothing parameter calculation.
Returns: (float) The oscillator value.
rms(source, length)
Calculates the Root Mean Square of the `source` over the `length`.
Parameters:
source (float) : (series int/float) Series of values to process.
length (int) : (series int) Number of bars (length).
Returns: (float) The RMS value.
rwi(length)
Calculates the values of the Random Walk Index.
Parameters:
length (simple int) : (simple int) Lookback and ATR smoothing parameter length.
Returns: ( [float, float ]) A tuple of the `rwiHigh` and `rwiLow` values.
stc(source, fast, slow, cycle, d1, d2)
Calculates the value of the Schaff Trend Cycle indicator.
Parameters:
source (float) : (series int/float) Series of values to process.
fast (simple int) : (simple int) Length for the MACD fast smoothing parameter calculation.
slow (simple int) : (simple int) Length for the MACD slow smoothing parameter calculation.
cycle (simple int) : (simple int) Number of bars for the Stochastic values (length).
d1 (simple int) : (simple int) Length for the initial %D smoothing parameter calculation.
d2 (simple int) : (simple int) Length for the final %D smoothing parameter calculation.
Returns: (float) The oscillator value.
stochFull(periodK, smoothK, periodD)
Calculates the %K and %D values of the Full Stochastic indicator.
Parameters:
periodK (simple int) : (simple int) Number of bars for Stochastic calculation. (length).
smoothK (simple int) : (simple int) Number of bars for smoothing of the %K value (length).
periodD (simple int) : (simple int) Number of bars for smoothing of the %D value (length).
Returns: ( [float, float ]) A tuple of the slow %K and the %D moving average values.
stochRsi(lengthRsi, periodK, smoothK, periodD, source)
Calculates the %K and %D values of the Stochastic RSI indicator.
Parameters:
lengthRsi (simple int) : (simple int) Length for the RSI smoothing parameter calculation.
periodK (simple int) : (simple int) Number of bars for Stochastic calculation. (length).
smoothK (simple int) : (simple int) Number of bars for smoothing of the %K value (length).
periodD (simple int) : (simple int) Number of bars for smoothing of the %D value (length).
source (float) : (series int/float) Series of values to process. Optional. The default is `close`.
Returns: ( [float, float ]) A tuple of the slow %K and the %D moving average values.
supertrend(factor, atrLength, wicks)
Calculates the values of the SuperTrend indicator with the ability to take candle wicks into account, rather than only the closing price.
Parameters:
factor (float) : (series int/float) Multiplier for the ATR value.
atrLength (simple int) : (simple int) Length for the ATR smoothing parameter calculation.
wicks (simple bool) : (simple bool) Condition to determine whether to take candle wicks into account when reversing trend, or to use the close price. Optional. Default is false.
Returns: ( [float, int ]) A tuple of the superTrend value and trend direction.
szo(source, length)
Calculates the value of the Sentiment Zone Oscillator.
Parameters:
source (float) : (series int/float) Series of values to process.
length (simple int) : (simple int) Length for the smoothing parameter calculation.
Returns: (float) The oscillator value.
t3(source, length, vf)
Calculates the value of the Tilson Moving Average (T3).
Parameters:
source (float) : (series int/float) Series of values to process.
length (simple int) : (simple int) Length for the smoothing parameter calculation.
vf (simple float) : (simple float) Volume factor. Affects the responsiveness.
Returns: (float) The Tilson moving average of the `source`.
t3Alt(source, length, vf)
An alternate Tilson Moving Average (T3) function to `t3()`, which allows a "series float" `length` argument.
Parameters:
source (float) : (series int/float) Series of values to process.
length (float) : (series int/float) Length for the smoothing parameter calculation.
vf (simple float) : (simple float) Volume factor. Affects the responsiveness.
Returns: (float) The Tilson moving average of the `source`.
tema(source, length)
Calculates the value of the Triple Exponential Moving Average (TEMA).
Parameters:
source (float) : (series int/float) Series of values to process.
length (simple int) : (simple int) Length for the smoothing parameter calculation.
Returns: (float) The triple exponentially weighted moving average of the `source`.
tema2(source, length)
An alternate Triple Exponential Moving Average (TEMA) function to `tema()`, which allows a "series float" `length` argument.
Parameters:
source (float) : (series int/float) Series of values to process.
length (float) : (series int/float) Length for the smoothing parameter calculation.
Returns: (float) The triple exponentially weighted moving average of the `source`.
trima(source, length)
Calculates the value of the Triangular Moving Average (TRIMA).
Parameters:
source (float) : (series int/float) Series of values to process.
length (int) : (series int) Number of bars (length).
Returns: (float) The triangular moving average of the `source`.
trima2(src, length)
An alternate Triangular Moving Average (TRIMA) function to `trima()`, which allows a "series int" length argument.
Parameters:
src : (series int/float) Series of values to process.
length : (series int) Number of bars (length).
Returns: (float) The triangular moving average of the `src`.
trix(source, length, signalLength, exponential)
Calculates the values of the TRIX indicator.
Parameters:
source (float) : (series int/float) Series of values to process.
length (simple int) : (simple int) Length for the smoothing parameter calculation.
signalLength (simple int) : (simple int) Length for smoothing the signal line.
exponential (simple bool) : (simple bool) Condition to determine whether exponential or simple smoothing is used. Optional. The default is `true` (exponential smoothing).
Returns: ( [float, float, float ]) A tuple of the TRIX value, the signal value, and the histogram.
uo(fastLen, midLen, slowLen)
Calculates the value of the Ultimate Oscillator.
Parameters:
fastLen (simple int) : (series int) Number of bars for the fast smoothing average (length).
midLen (simple int) : (series int) Number of bars for the middle smoothing average (length).
slowLen (simple int) : (series int) Number of bars for the slow smoothing average (length).
Returns: (float) The oscillator value.
vhf(source, length)
Calculates the value of the Vertical Horizontal Filter.
Parameters:
source (float) : (series int/float) Series of values to process.
length (simple int) : (simple int) Number of bars (length).
Returns: (float) The oscillator value.
vi(length)
Calculates the values of the Vortex Indicator.
Parameters:
length (simple int) : (simple int) Number of bars (length).
Returns: ( [float, float ]) A tuple of the viPlus and viMinus values.
vzo(length)
Calculates the value of the Volume Zone Oscillator.
Parameters:
length (simple int) : (simple int) Length for the smoothing parameter calculation.
Returns: (float) The oscillator value.
williamsFractal(period)
Detects Williams Fractals.
Parameters:
period (int) : (series int) Number of bars (length).
Returns: ( [bool, bool ]) A tuple of an up fractal and down fractal. Variables are true when detected.
wpo(length)
Calculates the value of the Wave Period Oscillator.
Parameters:
length (simple int) : (simple int) Length for the smoothing parameter calculation.
Returns: (float) The oscillator value.
█ v7, Nov. 2, 2023
This version includes the following new and updated functions:
atr2(length)
An alternate ATR function to the `ta.atr()` built-in, which allows a "series float" `length` argument.
Parameters:
length (float) : (series int/float) Length for the smoothing parameter calculation.
Returns: (float) The ATR value.
changePercent(newValue, oldValue)
Calculates the percentage difference between two distinct values.
Parameters:
newValue (float) : (series int/float) The current value.
oldValue (float) : (series int/float) The previous value.
Returns: (float) The percentage change from the `oldValue` to the `newValue`.
donchian(length)
Calculates the values of a Donchian Channel using `high` and `low` over a given `length`.
Parameters:
length (int) : (series int) Number of bars (length).
Returns: ( [float, float, float ]) A tuple containing the channel high, low, and median, respectively.
highestSince(cond, source)
Tracks the highest value of a series since the last occurrence of a condition.
Parameters:
cond (bool) : (series bool) A condition which, when `true`, resets the tracking of the highest `source`.
source (float) : (series int/float) Series of values to process. Optional. The default is `high`.
Returns: (float) The highest `source` value since the last time the `cond` was `true`.
lowestSince(cond, source)
Tracks the lowest value of a series since the last occurrence of a condition.
Parameters:
cond (bool) : (series bool) A condition which, when `true`, resets the tracking of the lowest `source`.
source (float) : (series int/float) Series of values to process. Optional. The default is `low`.
Returns: (float) The lowest `source` value since the last time the `cond` was `true`.
relativeVolume(length, anchorTimeframe, isCumulative, adjustRealtime)
Calculates the volume since the last change in the time value from the `anchorTimeframe`, the historical average volume using bars from past periods that have the same relative time offset as the current bar from the start of its period, and the ratio of these volumes. The volume values are cumulative by default, but can be adjusted to non-accumulated with the `isCumulative` parameter.
Parameters:
length (simple int) : (simple int) The number of periods to use for the historical average calculation.
anchorTimeframe (simple string) : (simple string) The anchor timeframe used in the calculation. Optional. Default is "D".
isCumulative (simple bool) : (simple bool) If `true`, the volume values will be accumulated since the start of the last `anchorTimeframe`. If `false`, values will be used without accumulation. Optional. The default is `true`.
adjustRealtime (simple bool) : (simple bool) If `true`, estimates the cumulative value on unclosed bars based on the data since the last `anchor` condition. Optional. The default is `false`.
Returns: ( [float, float, float ]) A tuple of three float values. The first element is the current volume. The second is the average of volumes at equivalent time offsets from past anchors over the specified number of periods. The third is the ratio of the current volume to the historical average volume.
rma2(source, length)
An alternate RMA function to the `ta.rma()` built-in, which allows a "series float" `length` argument.
Parameters:
source (float) : (series int/float) Series of values to process.
length (float) : (series int/float) Length for the smoothing parameter calculation.
Returns: (float) The rolling moving average of the `source`.
supertrend2(factor, atrLength, wicks)
An alternate SuperTrend function to `supertrend()`, which allows a "series float" `atrLength` argument.
Parameters:
factor (float) : (series int/float) Multiplier for the ATR value.
atrLength (float) : (series int/float) Length for the ATR smoothing parameter calculation.
wicks (simple bool) : (simple bool) Condition to determine whether to take candle wicks into account when reversing trend, or to use the close price. Optional. Default is `false`.
Returns: ( [float, int ]) A tuple of the superTrend value and trend direction.
vStop(source, atrLength, atrFactor)
Calculates an ATR-based stop value that trails behind the `source`. Can serve as a possible stop-loss guide and trend identifier.
Parameters:
source (float) : (series int/float) Series of values that the stop trails behind.
atrLength (simple int) : (simple int) Length for the ATR smoothing parameter calculation.
atrFactor (float) : (series int/float) The multiplier of the ATR value. Affects the maximum distance between the stop and the `source` value. A value of 1 means the maximum distance is 100% of the ATR value. Optional. The default is 1.
Returns: ( [float, bool ]) A tuple of the volatility stop value and the trend direction as a "bool".
vStop2(source, atrLength, atrFactor)
An alternate Volatility Stop function to `vStop()`, which allows a "series float" `atrLength` argument.
Parameters:
source (float) : (series int/float) Series of values that the stop trails behind.
atrLength (float) : (series int/float) Length for the ATR smoothing parameter calculation.
atrFactor (float) : (series int/float) The multiplier of the ATR value. Affects the maximum distance between the stop and the `source` value. A value of 1 means the maximum distance is 100% of the ATR value. Optional. The default is 1.
Returns: ( [float, bool ]) A tuple of the volatility stop value and the trend direction as a "bool".
Removed Functions:
allTimeHigh(src)
Tracks the highest value of `src` from the first historical bar to the current bar.
allTimeLow(src)
Tracks the lowest value of `src` from the first historical bar to the current bar.
trima2(src, length)
An alternate Triangular Moving Average (TRIMA) function to `trima()`, which allows a
"series int" length argument.
Double_Triple_EMALibrary "Double_Triple_EMA"
Provides the functions to calculate Double and Triple Exponentional Moving Averages (DEMA & TEMA).
dema(_source, _length) Calculates Double Exponentional Moving Averages (DEMA)
Parameters:
_source : -> Open, Close, High, Low, etc ('close' is used if no argument is supplied)
_length : -> DEMA length
Returns: Double Exponential Moving Average (DEMA) of an input source at the specified input length
tema(_source, _length) Calculates Triple Exponentional Moving Averages (TEMA)
Parameters:
_source : -> Open, Close, High, Low, etc ('close' is used if no argument is supplied)
_length : -> TEMA length
Returns: Triple Exponential Moving Average (TEMA) of an input source at the specified input length
Custom Moving Average LinesHeylo!
This is a script for basic market trend analysis using moving average lines. It features eight lines with eight choices of moving averages and adjustable sources & time periods . The choice of moving averages are stated below:
1. Simple Moving Average (sma)
2. Exponential Moving Average (ema)
3. Weighted Moving Average (wma)
4. Relative Moving Average (rma)
5. Hull Moving Average (hma)
6. Sine-Weighted Moving Average (swma)
7. Volume Weighted Moving Average (vwma)
8. Volume Weighted Average Price (vwap)
Planning on including other formula based indicators soon. Let me know if there can be some improvements made / errors so I can fix it.
Cheers!
Moving Average Crossover with Shading Signals This script uses 3 moving averages (2 simple moving averages and 1 exponential moving average ) to signal long and short opportunities based on moving average crossovers.
A long SMA (Signal SMA2) is used to determine longer term trend. When the EMA crosses above the Slow SMA1 and price is above the Signal SMA2. The space between the moving averages will shade green and the Signal SMA should also be green.
A sell signal occurs when the EMA crosses below the Slow SMA1 and price is below the Signal SMA2. The space between the moving averages will turn red and the Signal SMA should also be red.
A retracement, consolidation, or reversal may be occurring if the shaded color is yellow.
Use the identifying shapes to learn when to open or close positions.
Overbought/Oversold BandsThe basis of this script is my "Hybrid Overbought/Oversold Detector" which uses many different oscillators to confirm overbought/oversold conditions. The main idea is to generate higher and lower bands around the desired moving average using an average of the volatility (ATR) and the standard deviation (StDev), of course by interfering detected overbought/oversold condition.
Simply put, the more the asset become overvalued/undervalued, the tighter the channel would be and every breakout of the bands announces a return back into the channel in near future.
By default, the multiplier of the standard deviation in the indicator settings is set to 2 which means only less than 5% of price actions would appear outside the bands. Also the default multiplier of the ATR is set to 3 which leads to some similar result, but to achieve more strict results setting StDev multiplier to 3 and ATR multiplier to 4 would be useful.
The type of the central moving average could be picked up from 6 different types which are:
- SMA (Simple Moving Average)
- EMA (Exponential Moving Average)
- HMA (Hull Moving Average)
- LSMA (Least Squares Moving Average)
- TMA (Triangular Moving Average)
- MAEMA (My Personalized Momentum Adjusted EMA)
The latter one leads to a useful combination of the channel with the momentum.
Also the script has multi-timeframe features and the user could apply calculations from other time frames to the current chart.
Hope the idea would be helpful!
Auto Fibonacci ComboA combination of Fibonacci indicators including:
1- Moving Auto-calculated Fibo Retracement Levels
2- Dynamic Auto-calculated Fibo Extension Levels
3- Adjustable Auto-calculated Fibo Time Zones
4- ّFlexible Fibo Moving Averages Ribbon
The ribbon consists of 10 moving averages of selected source for different Fibonacci numbers count of bars which could be colorized for a better trend observation. Also the type of the moving averages could be picked up from 6 different types which are:
- SMA (Simple Moving Average)
- EMA (Exponential Moving Average)
- HMA (Hull Moving Average)
- LSMA (Least Squares Moving Average)
- TMA (Triangular Moving Average)
- MAEMA (My Personalized Momentum Adjusted EMA)
I think the latter one makes a nice conjunction with Fibonacci retracements.
Feel free to test the set and send me your thoughts.
MA Crossover Alerts for Small Quick Profits on 3commas/DCA botDear fellow 3commas users,
This is a the most basic Moving Average crossover technique generating Buy Alerts.
This is especially written for those of you who want to link this basic crossover strategy with your 3commas DCA bot .
Buy Alerts
Moving averages available:
- Simple Moving Average (SMA)
- Exponential Moving Average (EMA)
- Weighted Moving Average (WMA)
- Hull Moving Average (HullMA)
- Volume Weighted Moving Average (VMWA)
- Running Moving Average (RMA)
- Triple Exponential Moving Average (TEMA)
Recommended settings for using with 3commas DCA bot:
Interval:
3m to 15m
3commas bot setup:
- TP/TTP: 0.3%/0.1%,
- Base Order: Your choice ,
- Safety Order: 1.2 * Base order
- Safety Order Volume Scale: 1.2,
- Safety Order Step Scale: 1.5,
- Max Active Deals: Your choice ,
- Price Deviation to Open Safety Order (% from initial order): 0.2%,
- Max Safety Trades Count: 7,
- Simulatenous Deals per Same Pair: 3
> Create Alert with Buy Alert and link it to your bot "Message for deal start signal"
@theCF StochasticStochastic with Bullish , Bearish and Neutral Ranges as well as a modification to check the %D line with a Exponential Moving Average .
Since Exponential Moving Averages put more weight onto recent values, they react differently than the Standard Simple Moving Average .
On Stochastic I have observed, that there can often occur false crossover signals. While this also happens with an Exponential Moving Average as %D indeed, the amount is more limited, therefore giving less false signals.
I prefer to display both at the same time, for more information.
The ranges act as general support and resistance zones on Stochastic . Whenever Stochastic oscillates within one of the ranges, one can interpret it as either bullish , neutral or bearish for price.
A Stochastic that oscillates mainly within the bullish range can be interpreted rather bullish , the opposite goes for the bearish range which is interpreted bearish .
I have coded these ranges into the Standard Stochastic Script, as well as the option to display the %D line as a Exponential Moving Average .
For more information about the indicator, feel free to leave a comment and ask.
OSCAR Oscillator by GenZai - NNFXOSCAR Oscillator by GenZai
Green line is the Oscar Rough
Red line is the Oscar
By default based on the 8 last candles and smoothed using RMA
Purple line is the Slow Oscar
By default based on the 16 last candles and smoothed using WMA
HOW TO USE
Exit signaling
This indicator can be used as an exit indicator when line cross each other.
Entry signaling
When the green line crosses up, it indicates a long entry
When the red line crosses up, it indicates a short entry
Overbought/Oversold
When the indicator crosses the dashed grey lines it indicates Overbought Oversold
Slow Oscar Add-on
This is an Add-on to the orignal Oscar indicator
Can be hidden if you want the original experience of the Oscar indicator.
Can be used as a confirmation indicator by looking at the direction of the slope to verify is your are trending long or trending short.
Can be used as a baseline to confirm signals given by Oscar
Can be used to tweak your signals and test different settings.
Stock or Forex?
The program was originally written for stocks, but works equally well with the Forex market.
How this indicator is calculated ?
This is the formula we use to calculate the Oscar:
let A = the highest high of the last eight days (including today)
let B = the lowest low of the past eight days (including today)
let C = today's closing price
let X = yesterday's oscillator figure (Oscar)
Today's "rough" oscillator equals (C-B) divided by (A-B) times 100.
Next we "smooth" our rough number (let's call it Y) like this:
Final oscillator number = ((X divided by 3) times 2), plus (Y divided by 3).
SETTINGS:
You can choose between different smoothing options:
RMA: Moving average used in RSI. It is the Adjusted exponential moving averages (also known as Wilder's exponential moving average)
SMA : Simple moving average
EMA : Exponential moving average
WMA : Weighted moving average
Phicube EMASAR ( EMA Support and Resistance )Indicator based on the Concept created by Bo Williams. But unlike the original that uses MIMAs, EMAs are used here.
Exponential moving averages will be shown according to fractal alignment, in order to show the important support and resistance levels ( SAR ).
When the fractals are aligned to become support,
we will have the EMA in the graph with a bright color.
When the fractals are aligned to become resistance, we will have EMA in the graph with a matte color.
Available exponential moving averages: 17,34,72,144,305,610,1292 and 2584
____________________________________________________//_____________________________________________________________________
Indicador baseado no Conceito criado pelo Bo Williams. Mas diferente do original que utiliza MIMAs, aqui é utilizado EMAs.
As médias móveis exponenciais serão mostradas de acordo com o alinhamento dos fractais, com objetivo de mostrar os níveis importantes
de suporte e resistência( SAR ).
Quando estiver com os fractais alinhados virando suporte, teremos no gráfico a EMA com uma cor em tom brilhante.
Quando estiver com os fractais alinhados virando resistência, teremos no gráfico a EMA com uma cor em tom fosco.
Médias móveis exponenciais disponíveis: 17,34,72,144,305,610,1292 e 2584
DEMA Strategy with MACDThe Double Exponential Moving Average (DEMA) indicator was introduced in January 1994 by Patrick G. Mulloy, in an article in the "Technical Analysis of Stocks & Commodities" magazine: "Smoothing Data with Faster Moving Averages"
It attempts to remove the inherent lag associated to Moving Averages by placing more weight on recent values. The name suggests this is achieved by applying a double exponential smoothing which is not the case. The name double comes from the fact that the value of an EMA (Exponential Moving Average) is doubled. To keep it in line with the actual data and to remove the lag the value "EMA of EMA" is subtracted from the previously doubled ema.
DEMA is a very responsive system. A lot of signals can be generated only when trading with DEMA. In this strategy, I combined Dema buy-sell signals with MACD indicator. When you activate MACD confirmation from settings; When DEMA comes to long situation, the MACD histogram is checked to be positive.
KLemurs DeviationMarket: Stocks and ETF's
This overlay shows the deviation of the exponential moving average of the mid candle price of the currently loaded chart, away from the exponential moving average of the S&P and DOW combined and averaged mid candle price. The top and bottom lines also give a visual perspective of what a certain percentage (default 1%) looks like on the current charts window. This may help with making quick decisions for things like setting trailing stop trades with a percentage. This can be used for stocks, ETF's, and index's and It may be useful in finding potential stocks or ETF's if you are interested in these kinds of deviations. Defaults are set for a dark screen but can be edited to your taste. It's optimized to be an overlay on the current chart window as opposed to being a separate window.
Percentage Lines (editable)
This is three lines. The upper line (default green) plots the set percentage (default 1%) above the current chart’s ema. The middle line (default white) plots the current chart’s ema. The lower line (default red) plots the set percentage (default 1%) below the current chart’s ema.
Deviation Band (editable)
This is the colored band on the overlay between the upper and lower percentage lines. The band’s fill color indicates the deviation of the current charts ema from the ema of the combined S&P and DOW’s ema as follows:
- Red (default) = Current Chart’s ema is descending and the S&P/DOW ema is descending OR the Current Chart’s ema is below (underperforming) the S&P/DOW ema.
- Orange (default) = The Current Chart and S&P/DOW ema’s are both either ascending or descending together.
- Green (default) = The Current Chart’s ema is ascending but the S&P/DOW ema is descending.
To Set Line Colors
BY default, the upper line color uses the same colors as the ascending band color and the lower line uses the same color as the descending band color. To set the line colors, see "plotColor", "plotColorUp", or" plotColorDown" in variable settings within the script or use the “Central Plot Line”, “Upper Plot Line, or “Lower Plot Line” in the input dialogue to change this.
To Set Band Colors
To set the band colors, see "plotColor", "plotColorUp", or "plotColorDown" in variable settings within the script or use the “Color0”, “Color1", or “Color2” in the input dialogue to change this.
To Set EMA Lookback Period
The ema lookback period defaults to 5. This is the number of candles back that the script will use to determine the ema. See “CCemaN” in variable settings within the script or use the “EMA Period” in the input dialogue to change this.
To Set Percentage
To set the percentage that plots the upper and lower lines, see "CCP" in variable settings within the script or use “Upper/Lower Bands Percentage” in the input dialogue to change this. The default is .01 (or 1%).