MMXM ICT [TradingFinder] Market Maker Model PO3 CHoCH/CSID + FVG🔵 Introduction
The MMXM Smart Money Reversal leverages key metrics such as SMT Divergence, Liquidity Sweep, HTF PD Array, Market Structure Shift (MSS) or (ChoCh), CISD, and Fair Value Gap (FVG) to identify critical turning points in the market. Designed for traders aiming to analyze the behavior of major market participants, this setup pinpoints strategic areas for making informed trading decisions.
The document introduces the MMXM model, a trading strategy that identifies market maker activity to predict price movements. The model operates across five distinct stages: original consolidation, price run, smart money reversal, accumulation/distribution, and completion. This systematic approach allows traders to differentiate between buyside and sellside curves, offering a structured framework for interpreting price action.
Market makers play a pivotal role in facilitating these movements by bridging liquidity gaps. They continuously quote bid (buy) and ask (sell) prices for assets, ensuring smooth trading conditions.
By maintaining liquidity, market makers prevent scenarios where buyers are left without sellers and vice versa, making their activity a cornerstone of the MMXM strategy.
SMT Divergence serves as the first signal of a potential trend reversal, arising from discrepancies between the movements of related assets or indices. This divergence is detected when two or more highly correlated assets or indices move in opposite directions, signaling a likely shift in market trends.
Liquidity Sweep occurs when the market targets liquidity in specific zones through false price movements. This process allows major market participants to execute their orders efficiently by collecting the necessary liquidity to enter or exit positions.
The HTF PD Array refers to premium and discount zones on higher timeframes. These zones highlight price levels where the market is in a premium (ideal for selling) or discount (ideal for buying). These areas are identified based on higher timeframe market behavior and guide traders toward lucrative opportunities.
Market Structure Shift (MSS), also referred to as ChoCh, indicates a change in market structure, often marked by breaking key support or resistance levels. This shift confirms the directional movement of the market, signaling the start of a new trend.
CISD (Change in State of Delivery) reflects a transition in price delivery mechanisms. Typically occurring after MSS, CISD confirms the continuation of price movement in the new direction.
Fair Value Gap (FVG) represents zones where price imbalance exists between buyers and sellers. These gaps often act as price targets for filling, offering traders opportunities for entry or exit.
By combining all these metrics, the Smart Money Reversal provides a comprehensive tool for analyzing market behavior and identifying key trading opportunities. It enables traders to anticipate the actions of major players and align their strategies accordingly.
MMBM :
MMSM :
🔵 How to Use
The Smart Money Reversal operates in two primary states: MMBM (Market Maker Buy Model) and MMSM (Market Maker Sell Model). Each state highlights critical structural changes in market trends, focusing on liquidity behavior and price reactions at key levels to offer precise and effective trading opportunities.
The MMXM model expands on this by identifying five distinct stages of market behavior: original consolidation, price run, smart money reversal, accumulation/distribution, and completion. These stages provide traders with a detailed roadmap for interpreting price action and anticipating market maker activity.
🟣 Market Maker Buy Model
In the MMBM state, the market transitions from a bearish trend to a bullish trend. Initially, SMT Divergence between related assets or indices reveals weaknesses in the bearish trend. Subsequently, a Liquidity Sweep collects liquidity from lower levels through false breakouts.
After this, the price reacts to discount zones identified in the HTF PD Array, where major market participants often execute buy orders. The market confirms the bullish trend with a Market Structure Shift (MSS) and a change in price delivery state (CISD). During this phase, an FVG emerges as a key trading opportunity. Traders can open long positions upon a pullback to this FVG zone, capitalizing on the bullish continuation.
🟣 Market Maker Sell Model
In the MMSM state, the market shifts from a bullish trend to a bearish trend. Here, SMT Divergence highlights weaknesses in the bullish trend. A Liquidity Sweep then gathers liquidity from higher levels.
The price reacts to premium zones identified in the HTF PD Array, where major sellers enter the market and reverse the price direction. A Market Structure Shift (MSS) and a change in delivery state (CISD) confirm the bearish trend. The FVG then acts as a target for the price. Traders can initiate short positions upon a pullback to this FVG zone, profiting from the bearish continuation.
Market makers actively bridge liquidity gaps throughout these stages, quoting continuous bid and ask prices for assets. This ensures that trades are executed seamlessly, even during periods of low market participation, and supports the structured progression of the MMXM model.
The price’s reaction to FVG zones in both states provides traders with opportunities to reduce risk and enhance precision. These pullbacks to FVG zones not only represent optimal entry points but also create avenues for maximizing returns with minimal risk.
🔵 Settings
Higher TimeFrame PD Array : Selects the timeframe for identifying premium/discount arrays on higher timeframes.
PD Array Period : Specifies the number of candles for identifying key swing points.
ATR Coefficient Threshold : Defines the threshold for acceptable volatility based on ATR.
Max Swing Back Method : Choose between analyzing all swings ("All") or a fixed number ("Custom").
Max Swing Back : Sets the maximum number of candles to consider for swing analysis (if "Custom" is selected).
Second Symbol for SMT : Specifies the second asset or index for detecting SMT divergence.
SMT Fractal Periods : Sets the number of candles required to identify SMT fractals.
FVG Validity Period : Defines the validity duration for FVG zones.
MSS Validity Period : Sets the validity duration for MSS zones.
FVG Filter : Activates filtering for FVG zones based on width.
FVG Filter Type : Selects the filtering level from "Very Aggressive" to "Very Defensive."
Mitigation Level FVG : Determines the level within the FVG zone (proximal, 50%, or distal) that price reacts to.
Demand FVG : Enables the display of demand FVG zones.
Supply FVG : Enables the display of supply FVG zones.
Zone Colors : Allows customization of colors for demand and supply FVG zones.
Bottom Line & Label : Enables or disables the SMT divergence line and label from the bottom.
Top Line & Label : Enables or disables the SMT divergence line and label from the top.
Show All HTF Levels : Displays all premium/discount levels on higher timeframes.
High/Low Levels : Activates the display of high/low levels.
Color Options : Customizes the colors for high/low lines and labels.
Show All MSS Levels : Enables display of all MSS zones.
High/Low MSS Levels : Activates the display of high/low MSS levels.
Color Options : Customizes the colors for MSS lines and labels.
🔵 Conclusion
The Smart Money Reversal model represents one of the most advanced tools for technical analysis, enabling traders to identify critical market turning points. By leveraging metrics such as SMT Divergence, Liquidity Sweep, HTF PD Array, MSS, CISD, and FVG, traders can predict future price movements with precision.
The price’s interaction with key zones such as PD Array and FVG, combined with pullbacks to imbalance areas, offers exceptional opportunities with favorable risk-to-reward ratios. This approach empowers traders to analyze the behavior of major market participants and adopt professional strategies for entry and exit.
By employing this analytical framework, traders can reduce errors, make more informed decisions, and capitalize on profitable opportunities. The Smart Money Reversal focuses on liquidity behavior and structural changes, making it an indispensable tool for financial market success.
在腳本中搜尋"accumulation"
Chaikin Oscillator with StdDev MarkersJust a Chaikin Oscillator slightly tuned to show extreme changes in A/D momentum.
- Red histogram means the fast EMA is way above the slow EMA (strong distribution).
- Green histogram means the fast EMA is way below the slow EMA (strong accumulation).
Divergences are also easy to identify. When the price pushes more than the histogram, hidden selling could be taking place near tops, and when the price drops but the histogram doesn't follow, accumulation could be taking place.
This, coupled with VSA analysis, is all you'll ever need to understand price action.
Smart DCA Strategy (Public)INSPIRATION
While Dollar Cost Averaging (DCA) is a popular and stress-free investment approach, I noticed an opportunity for enhancement. Standard DCA involves buying consistently, regardless of market conditions, which can sometimes mean missing out on optimal investment opportunities. This led me to develop the Smart DCA Strategy – a 'set and forget' method like traditional DCA, but with an intelligent twist to boost its effectiveness.
The goal was to build something more profitable than a standard DCA strategy so it was equally important that this indicator could backtest its own results in an A/B test manner against the regular DCA strategy.
WHY IS IT SMART?
The key to this strategy is its dynamic approach: buying aggressively when the market shows signs of being oversold, and sitting on the sidelines when it's not. This approach aims to optimize entry points, enhancing the potential for better returns while maintaining the simplicity and low stress of DCA.
WHAT THIS STRATEGY IS, AND IS NOT
This is an investment style strategy. It is designed to improve upon the common standard DCA investment strategy. It is therefore NOT a day trading strategy. Feel free to experiment with various timeframes, but it was designed to be used on a daily timeframe and that's how I recommend it to be used.
You may also go months without any buy signals during bull markets, but remember that is exactly the point of the strategy - to keep your buying power on the sidelines until the markets have significantly pulled back. You need to be patient and trust in the historical backtesting you have performed.
HOW IT WORKS
The Smart DCA Strategy leverages a creative approach to using Moving Averages to identify the most opportune moments to buy. A trigger occurs when a daily candle, in its entirety including the high wick, closes below the threshold line or box plotted on the chart. The indicator is designed to facilitate both backtesting and live trading.
HOW TO USE
Settings:
The input parameters for tuning have been intentionally simplified in an effort to prevent users falling into the overfitting trap.
The main control is the Buying strictness scale setting. Setting this to a lower value will provide more buying days (less strict) while higher values mean less buying days (more strict). In my testing I've found level 9 to provide good all round results.
Validation days is a setting to prevent triggering entries until the asset has spent a given number of days (candles) in the overbought state. Increasing this makes entries stricter. I've found 0 to give the best results across most assets.
In the backtest settings you can also configure how much to buy for each day an entry triggers. Blind buy size is the amount you would buy every day in a standard DCA strategy. Smart buy size is the amount you would buy each day a Smart DCA entry is triggered.
You can also experiment with backtesting your strategy over different historical datasets by using the Start date and End date settings. The results table will not calculate for any trades outside what you've set in the date range settings.
Backtesting:
When backtesting you should use the results table on the top right to tune and optimise the results of your strategy. As with all backtests, be careful to avoid overfitting the parameters. It's better to have a setup which works well across many currencies and historical periods than a setup which is excellent on one dataset but bad on most others. This gives a much higher probability that it will be effective when you move to live trading.
The results table provides a clear visual representation as to which strategy, standard or smart, is more profitable for the given dataset. You will notice the columns are dynamically coloured red and green. Their colour changes based on which strategy is more profitable in the A/B style backtest - green wins, red loses. The key metrics to focus on are GOA (Gain on Account) and Avg Cost.
Live Trading:
After you've finished backtesting you can proceed with configuring your alerts for live trading.
But first, you need to estimate the amount you should buy on each Smart DCA entry. We can use the Total invested row in the results table to calculate this. Assuming we're looking to trade on
BTCUSD
Decide how much USD you would spend each day to buy BTC if you were using a standard DCA strategy. Lets say that is $5 per day
Enter that USD amount in the Blind buy size settings box
Check the Blind Buy column in the results table. If we set the backtest date range to the last 10 years, we would expect the amount spent on blind buys over 10 years to be $18,250 given $5 each day
Next we need to tweak the value of the Smart buy size parameter in setting to get it as close as we can to the Total Invested amount for Blind Buy
By following this approach it means we will invest roughly the same amount into our Smart DCA strategy as we would have into a standard DCA strategy over any given time period.
After you have calculated the Smart buy size, you can go ahead and set up alerts on Smart DCA buy triggers.
BOT AUTOMATION
In an effort to maintain the 'set and forget' stress-free benefits of a standard DCA strategy, I have set my personal Smart DCA Strategy up to be automated. The bot runs on AWS and I have a fully functional project for the bot on my GitHub account. Just reach out if you would like me to point you towards it. You can also hook this into any other 3rd party trade automation system of your choice using the pre-configured alerts within the indicator.
PLANNED FUTURE DEVELOPMENTS
Currently this is purely an accumulation strategy. It does not have any sell signals right now but I have ideas on how I will build upon it to incorporate an algorithm for selling. The strategy should gradually offload profits in bull markets which generates more USD which gives more buying power to rinse and repeat the same process in the next cycle only with a bigger starting capital. Watch this space!
MARKETS
Crypto:
This strategy has been specifically built to work on the crypto markets. It has been developed, backtested and tuned against crypto markets and I personally only run it on crypto markets to accumulate more of the coins I believe in for the long term. In the section below I will provide some backtest results from some of the top crypto assets.
Stocks:
I've found it is generally more profitable than a standard DCA strategy on the majority of stocks, however the results proved to be a lot more impressive on crypto. This is mainly due to the volatility and cycles found in crypto markets. The strategy makes its profits from capitalising on pullbacks in price. Good stocks on the other hand tend to move up and to the right with less significant pullbacks, therefore giving this strategy less opportunity to flourish.
Forex:
As this is an accumulation style investment strategy, I do not recommend that you use it to trade Forex.
For more info about this strategy including backtest results, please see the full description on the invite only version of this strategy named "Smart DCA Strategy"
Weighted Fourier Transform: Spectral Gating & Main Frequency🙏🏻 This drop has 2 purposes:
1) to inform every1 who'd ever see it that Weighted Fourier Tranform does exist, while being available nowhere online, not even in papers, yet there's nothing incredibly complicated about it, and it can/should be used in certain cases;
2) to show TradingView users how they can use it now in dem endevours, to show em what spectral filtering is, and what can they do with all of it in diy mode.
... so we gonna have 2 sections in the description
Section 1: Weighted Fourier Transform
It's quite easy to include weights in Fourier analysis: you just premultiply each datapoint by its corresponding weight -> feed to direct Fourier Transform, and then divide by weights after inverse Fourier transform. Alternatevely, in direct transform you just multiply contributions of each data point to the real and imaginary parts of the Fourier transform by corresponding weights (in accumulation phase), and in inverse transform you divide by weights instead during the accumulation phase. Everything else stays the same just like in non-weighted version.
If you're from the first target group let's say, you prolly know a thing or deux about how to code & about Fourier Transform, so you can just check lines of code to see the implementation of Weighted Discrete version of Fourier Transform, and port it to to any technology you desire. Pine Script is a developing technology that is incredibly comfortable in use for quant-related tasks and anything involving time series in general. While also using Python for research and C++ for development, every time I can do what I want in Pine Script, I reach for it and never touch matlab, python, R, or anything else.
Weighted version allows you to explicetly include order/time information into the operation, which is essential with every time series, although not widely used in mainstream just as many other obvious and right things. If you think deeply, you'll understand that you can apply a usual non-weighted Fourier to any 2d+ data you can (even if none of these dimensions represent time), because this is a geometric tool in essence. By applying linearly decaying weights inside Fourier transform, you're explicetly saying, "one of these dimensions is Time, and weights represent the order". And obviously you can combine multiple weightings, eg time and another characteristic of each datum, allows you to include another non-spatial dimension in your model.
By doing that, on properly processed (not only stationary but Also centered around zero data), you can get some interesting results that you won't be able to recreate without weights:
^^ A sine wave, centered around zero, period of 16. Gray line made by: DWFT (direct weighted Fourier transform) -> spectral gating -> IWFT (inverse weighted Fourier transform) -> plotting the last value of gated reconstructed data, all applied to expanding window. Look how precisely it follows the original data (the sine wave) with no lag at all. This can't be done by using non-weighted version of Fourier transform.
^^ spectral filtering applied to the whole dataset, calculated on the latest data update
And you should never forget about Fast Fourier Transform, tho it needs recursion...
Section 2: About use cases for quant trading, about this particular implementaion in Pine Script 6 (currently the latest version as of Friday 13, December 2k24).
Given the current state of things, we have certain limits on matrix size on TradingView (and we need big dope matrixes to calculate polynomial regression -> detrend & center our data before Fourier), and recursion is not yet available in Pine Script, so the script works on short datasets only, and requires some time.
A note on detrending. For quality results, Fourier Transform should be applied to not only stationary but also centered around zero data. The rightest way to do detrending of time series
is to fit Cumulative Weighted Moving Polynomial Regression (known as WLSMA in some narrow circles xD) and calculate the deltas between datapoint at time t and this wonderful fit at time t. That's exactly what you see on the main chart of script description: notice the distances between chart and WLSMA, now look lower and see how it matches the distances between zero and purple line in WFT study. Using residuals of one regression fit of the whole dataset makes less sense in time series context, we break some 'time' and order rules in a way, tho not many understand/cares abouit it in mainstream quant industry.
Two ways of using the script:
Spectral Gating aka Spectral filtering. Frequency domain filtering is quite responsive and for a greater computational cost does not introduce a lag the way it works with time-domain filtering. Works this way: direct Fourier transform your data to get frequency & phase info -> compute power spectrum out of it -> zero out all dem freqs that ain't hit your threshold -> inverse Fourier tranform what's left -> repeat at each datapoint plotting the very first value of reconstructed array*. With this you can watch for zero crossings to make appropriate trading decisions.
^^ plot Freq pass to use the script this way, use Level setting to control the intensity of gating. These 3 only available values: -1, 0 and 1, are the general & natural ones.
* if you turn on labels in script's style settings, you see the gray dots perfectly fitting your data. They get recalculated (for the whole dataset) at each update. You call it repainting, this is for analytical & aesthetic purposes. Included for demonstration only.
Finding main/dominant frequency & period. You can use it to set up Length for your other studies, and for analytical purposes simply to understand the periodicity of your data.
^^ plot main frequency/main period to use the script this way. On the screenshot, you can see the script applied to sine wave of period 16, notice how many datapoints it took the algo to figure out the signal's period quite good in expanding window mode
Now what's the next step? You can try applying signal windowing techniques to make it all less data-driven but your ego-driven, make a weighted periodogram or autocorrelogram (check Wiener-Khinchin Theorem ), and maybe whole shiny spectrogram?
... you decide, choice is yours,
The butterfly reflect the doors ...
∞
Real Relative Strength Indicator (Multi-Index Comparison)The Real Relative Strength (RRS) indicator implements the "Real Relative Strength" equation, as detailed on the Real Day Trading subreddit wiki. This equation measures whether a stock is outperforming a benchmark (such as SPY or any preferred ETF/index) by calculating price change normalized by the Average True Range (ATR) of both the stock and the indices it’s being compared to.
The RRS metric often highlights potential accumulation by institutional players. For example, in this chart, you can observe accumulation in McDonald’s beginning at 1:25 pm ET on the 5-minute chart and continuing until 2:55 pm ET. When used in conjunction with other indicators or technical analysis, RRS can provide valuable buy and sell signals.
This indicator also supports multi-index analysis, allowing you to plot relative strength against two indices simultaneously—defaulting to SPY and QQQ—to gain insights into the "real relative strength" across different benchmarks. Additionally, this indicator includes an EMA line and background coloring to help automatically identify relative strength trends, providing a clearer visualization than typical Relative Strength Comparison indicators.
Relative volume zone + Smart Order Flow Dynamic S/ROverview:
The Relative Volume Zone + Smart Order Flow with Dynamic S/R indicator is designed to help traders identify key trading opportunities by combining multiple technical components. This script integrates relative volume analysis, order flow detection, VWAP, RSI filtering, and dynamic support and resistance levels to offer a comprehensive view of the market conditions. It is particularly effective on shorter timeframes (M5, M15), making it suitable for scalping and day trading strategies.
Key Components:
1. Relative Volume Zones:
• The script calculates the relative volume by comparing the current volume with the average volume over a defined lookback period (volLookback). When the relative volume exceeds a specified multiplier (volMultiplier), it indicates a high volume zone, signaling potential accumulation or distribution areas.
• Purpose: Identifies high-volume trading zones that may act as significant support or resistance, indicating possible entry or exit points.
2. Smart Order Flow Analysis:
• The indicator uses Volume Delta (the difference between buying and selling volume) and a Cumulative Delta to detect order imbalances in the market.
• Order Imbalance is identified using a moving average of the Volume Delta (orderImbalance), which helps highlight hidden buying or selling pressure.
• Purpose: Reveals market sentiment by showing whether buyers or sellers dominate the market, aiding in the identification of trend reversals or continuations.
3. VWAP (Volume Weighted Average Price):
• VWAP is calculated over a default daily length (vwapLength) to show the average price a security has traded at throughout the day, based on both volume and price.
• Purpose: Provides insight into the fair value of the asset, indicating whether the market is in an accumulation or distribution phase.
4. RSI (Relative Strength Index) Filter:
• RSI is used to filter buy and sell signals, preventing trades in overbought or oversold conditions. It is calculated using a specified period (rsiPeriod).
• Purpose: Reduces false signals and improves trade accuracy by only allowing trades when RSI conditions align with volume and order flow signals.
5. Dynamic Support and Resistance Levels:
• The script dynamically plots support and resistance levels based on recent swing highs and lows (swingLookback).
• Purpose: Identifies potential reversal zones where price action may change direction, allowing for more precise entry and exit points.
How It Works:
• Buy Signal:
A buy signal is generated when:
• The price enters a high-volume zone.
• The price crosses above a 5-period moving average.
• The cumulative delta shows more buying pressure (cumulativeDelta > SMA of cumulativeDelta).
• The RSI is below 70 (not in overbought conditions).
• Sell Signal:
A sell signal is generated when:
• The price enters a high-volume zone.
• The price crosses below a 5-period moving average.
• The cumulative delta shows more selling pressure (cumulativeDelta < SMA of cumulativeDelta).
• The RSI is above 30 (not in oversold conditions).
• Dynamic Support and Resistance Lines:
Drawn based on recent swing highs and lows, these lines provide context for potential price reversals or breakouts.
• VWAP and Order Imbalance Lines:
Plotted to show the average traded price and highlight order flow shifts, helping to validate buy/sell signals.
How to Use:
1. Apply the Indicator:
Add the script to your chart and adjust the settings to match your trading style and preferred timeframe (optimized for M5/M15).
2. Interpret the Signals:
Use the buy and sell signals in conjunction with dynamic support/resistance, VWAP, and order imbalance lines to identify high-probability trade setups.
3. Monitor Alerts:
Set alerts for significant order flow events to receive notifications when there is a positive or negative order imbalance, indicating potential market shifts.
What Makes It Unique:
This script is unique because it combines multiple market analysis tools — relative volume zones, smart order flow, VWAP, RSI filtering, and dynamic support/resistance — to provide a well-rounded, multi-dimensional view of the market. This integration allows traders to make more informed decisions by validating signals across various indicators, enhancing overall trading accuracy and effectiveness.
Rocket RSI from John EhlersWhat is Rocket RSI
Welles Wilder's original description of the relative strength index (RSI) in his 1978 New Concepts In Technical Trading Systems specified a calculation period of 14 days. This requirement led him on a 40-year quest to find the right length of data for calculating indicators and trading strategy rules. Many technicians touched on RSI and explained its applications. In this study we will obtain a more flexible and easier to interpret formulation (of the indicator). We will also estimate the algorithm to properly handle a statistical approach to technical analysis. Start with RSI Here is the original definition of the RSI indicator:
RSI = 100 - 100 / (1 + RS)
RS = Average gain from downtime over the specified time period / Average loss from downtime over the specified time period My first observation is that the factor of 100 is insignificant. Second, there is no need for averages because we take the ratio of closes (CU) to closes (CD) and if we accumulate the wins and losses independently, the averages emerge. Therefore We will only accumulate CU and CD. He can then write the RSI equation as:
RSI = 1 – 1 / (1 + CU / CD)
If he use a little algebra to put everything on a common denominator on the right side of the equation, the indicator equation becomes:
RSI = CU / (CU + CD)
In this formulation, if CU accumulation is zero, the RSI value is zero, and if CD accumulation is zero, the RSI value is 1. If you reduce the price action to its primitive level as a sine wave, it is easy to see that this RSI only has CU going from valley to peak and only CD going from peak to valley. This RSI follows the shape of the sine wave between these two limits. However, the sine wave oscillates between -1 and +1, not between 0 and +1. If we multiply the above equation by 2 and then subtract 1, we can make the RSI have the same swing limits as the sine wave. the product is as follows:
RSI = 2*CU / (CU + CD) – 1
Again, using a little algebra to put the right-hand side of the equation on a common denominator, the equation develops like this:
MyRSI = (CU – CD) / (CU + CD)
Again, the vertical scale of the RocketRSI indicator is in standard deviations. For example, -2 means it is two standard deviations below the mean. Since exceeding two standard deviations in the Gaussian probability distribution occurs in only 2.4% of the results
Because we are using the momentum of the dominant cycle period, the spike where the indicator falls below -2 provides a surgically precise timing signal to enter a long position. Similarly, exceeding the +2 standard deviation level is a timing signal to exit a long position or return to a short position. Therefore using the RocketRSI indicator is relatively intuitive. The only concern is whether a dominant cycle is present in the data, setting the indicator to half the dominant cycle period, and whether smoothing causes lag.
DETERMINING CYCLICAL TURNING POINTS
When you insert the chart you see an example of what the RocketRSI indicator looks like. Here you see that RocketRSI precisely displays cyclical turning points as statistical events. Cator can be applied. I used RS Length 10 because according to Ehlers, stocks and stock indexes usually have a more or less monthly cycle (about 20 bars). A cursory examination of Figure 2 shows that negative increases in the indicator correspond to excellent buying opportunities, while positive increases correspond to excellent selling opportunities. Exceeding +/- 2 on the indicator scale indicates that a cyclical reversal is a high probability event.
Asset Rotation ApertureAsset Rotation Aperture visualizes volume accumulation momentum, of multiple assets, side by side.
It's a surgical, multi-purpose leading indicator of price, market narratives and capital rotation.
Each colored line represents the rolling cumulative volume (or open interest) of an asset, index, narrative, or symbol equation. Normalized to each other, relative to each other.
This enables Asset Rotation Aperture to visualize assets and narratives with dramatically different market caps (and therefore different volume accumulation profiles), side by side.
METRIC CONSTRUCTION
Asset Rotation Aperture is a fork of Money Flow Index, like a centered On Balance Volume.
Modified to more effectively lead price, smoothed to more clearly visualize with clarity, and recursively printed.
SYMBOL SELECTION
I highly recommend selecting symbols from exchanges that dominate volume for the asset(s) you're visualizing.
For crypto, this typically means Binance pairs.
Keep the exchange consistent across symbols whenever possible.
To construct an index / narrative, use the following formula format:
(BINANCE:UNIUSDT*BINANCE:SNXUSDT*BINANCE:AAVEUSDT*BINANCE:CRVUSDT)^(1/4)
THE Y AXIS
The Y axis represents the asset's percentage of volume accumulated, relative to its norm AND relative to other assets.
It's a made up figure, and I recommend ignoring it.
A visual scan of the data viz is more effective than studying any Y-axis output.
The Flash-Strategy with Minervini Stage Analysis QualifierThe Flash-Strategy (Momentum-RSI, EMA-crossover, ATR) with Minervini Stage Analysis Qualifier
Introduction
Welcome to a comprehensive guide on a cutting-edge trading strategy I've developed, designed for the modern trader seeking an edge in today's dynamic markets. This strategy, which I've honed through my years of experience in the trading arena, stands out for its unique blend of technical analysis and market intuition, tailored specifically for use on the TradingView platform.
As a trader with a deep passion for the financial markets, my journey began several years ago, driven by a relentless pursuit of a trading methodology that is both effective and adaptable. My background in trading spans various market conditions and asset classes, providing me with a rich tapestry of experiences from which to draw. This strategy is the culmination of that journey, embodying the lessons learned and insights gained along the way.
The cornerstone of this strategy lies in its ability to generate precise long signals in a Stage 2 uptrend and equally accurate short signals in a Stage 4 downtrend. This approach is rooted in the principles of trend following and momentum trading, harnessing the power of key indicators such as the Momentum-RSI, EMA Crossover, and Average True Range (ATR). What sets this strategy apart is its meticulous design, which allows it to adapt to the ever-changing market conditions, providing traders with a robust tool for navigating both bullish and bearish scenarios.
This strategy was born out of a desire to create a trading system that is not only highly effective in identifying potential trade setups but also straightforward enough to be implemented by traders of varying skill levels. It's a reflection of my belief that successful trading hinges on clarity, precision, and disciplined execution. Whether you are a seasoned trader or just beginning your journey, this guide aims to provide you with a comprehensive understanding of how to harness the full potential of this strategy in your trading endeavors.
In the following sections, we will delve deeper into the mechanics of the strategy, its implementation, and how to make the most out of its features. Join me as we explore the nuances of a strategy that is designed to elevate your trading to the next level.
Stage-Specific Signal Generation
A distinctive feature of this trading strategy is its focus on generating long signals exclusively during Stage 2 uptrends and short signals during Stage 4 downtrends. This approach is based on the widely recognized market cycle theory, which divides the market into four stages: Stage 1 (accumulation), Stage 2 (uptrend), Stage 3 (distribution), and Stage 4 (downtrend). By aligning the signal generation with these specific stages, the strategy aims to capitalize on the most dynamic and clear-cut market movements, thereby enhancing the potential for profitable trades.
1. Long Signals in Stage 2 Uptrends
• Characteristics of Stage 2: Stage 2 is characterized by a strong uptrend, where prices are consistently rising. This stage typically follows a period of accumulation (Stage 1) and is marked by increased investor interest and bullish sentiment in the market.
• Criteria for Long Signal Generation: Long signals are generated during this stage when the technical indicators align with the characteristics of a Stage 2 uptrend.
• Rationale for Stage-Specific Signals: By focusing on Stage 2 for long trades, the strategy seeks to enter positions during the phase of strong upward momentum, thus riding the wave of rising prices and investor optimism. This stage-specific approach minimizes exposure to less predictable market phases, like the consolidation in Stage 1 or the indecision in Stage 3.
2. Short Signals in Stage 4 Downtrends
• Characteristics of Stage 4: Stage 4 is identified by a pronounced downtrend, with declining prices indicating prevailing bearish sentiment. This stage typically follows the distribution phase (Stage 3) and is characterized by increasing selling pressure.
• Criteria for Short Signal Generation: Short signals are generated in this stage when the indicators reflect a strong bearish trend.
• Rationale for Stage-Specific Signals: Targeting Stage 4 for shorting capitalizes on the market's downward momentum. This tactic aligns with the natural market cycle, allowing traders to exploit the downward price movements effectively. By doing so, the strategy avoids the potential pitfalls of shorting during the early or late stages of the market cycle, where trends are less defined and more susceptible to reversals.
In conclusion, the strategy’s emphasis on stage-specific signal generation is a testament to its sophisticated understanding of market dynamics. By tailoring the long and short signals to Stages 2 and 4, respectively, it leverages the most compelling phases of the market cycle, offering traders a clear and structured approach to aligning their trades with dominant market trends.
Strategy Overview
At the heart of this trading strategy is a philosophy centered around capturing market momentum and trend efficiency. The core objective is to identify and capitalize on clear uptrends and downtrends, thereby allowing traders to position themselves in sync with the market's prevailing direction. This approach is grounded in the belief that aligning trades with these dominant market forces can lead to more consistent and profitable outcomes.
The strategy is built on three foundational components, each playing a critical role in the decision-making process:
1. Momentum-RSI (Relative Strength Index): The Momentum-RSI is a pivotal element of this strategy. It's an enhanced version of the traditional RSI, fine-tuned to better capture the strength and velocity of market trends. By measuring the speed and change of price movements, the Momentum-RSI provides invaluable insights into whether a market is potentially overbought or oversold, suggesting possible entry and exit points. This indicator is especially effective in filtering out noise and focusing on substantial market moves.
2. EMA (Exponential Moving Average) Crossover: The EMA Crossover is a crucial component for trend identification. This strategy employs two EMAs with different timeframes to determine the market trend. When the shorter-term EMA crosses above the longer-term EMA, it signals an emerging uptrend, suggesting a potential long entry. Conversely, a crossover below indicates a possible downtrend, hinting at a short entry opportunity. This simple yet powerful tool is key in confirming trend directions and timing market entries.
3. ATR (Average True Range): The ATR is instrumental in assessing market volatility. This indicator helps in understanding the average range of price movements over a given period, thus providing a sense of how much a market might move on a typical day. In this strategy, the ATR is used to adjust stop-loss levels and to gauge the potential risk and reward of trades. It allows for more informed decisions by aligning trade management techniques with the current volatility conditions.
The synergy of these three components – the Momentum-RSI, EMA Crossover, and ATR – creates a robust framework for this trading strategy. By combining momentum analysis, trend identification, and volatility assessment, the strategy offers a comprehensive approach to navigating the markets. Whether it's capturing a strong trend in its early stages or identifying a potential reversal, this strategy aims to provide traders with the tools and insights needed to make well-informed, strategically sound trading decisions.
Detailed Component Analysis
The efficacy of this trading strategy hinges on the synergistic functioning of its three key components: the Momentum-RSI, EMA Crossover, and Average True Range (ATR). Each component brings a unique perspective to the strategy, contributing to a well-rounded approach to market analysis.
1. Momentum-RSI (Relative Strength Index)
• Definition and Function: The Momentum-RSI is a modified version of the classic Relative Strength Index. While the traditional RSI measures the velocity and magnitude of directional price movements, the Momentum-RSI amplifies aspects that reflect trend strength and momentum.
• Significance in Identifying Trend Strength: This indicator excels in identifying the strength behind a market's move. A high Momentum-RSI value typically indicates strong bullish momentum, suggesting the potential continuation of an uptrend. Conversely, a low Momentum-RSI value signals strong bearish momentum, possibly indicative of an ongoing downtrend.
• Application in Strategy: In this strategy, the Momentum-RSI is used to gauge the underlying strength of market trends. It helps in filtering out minor fluctuations and focusing on significant movements, providing a clearer picture of the market's true momentum.
2. EMA (Exponential Moving Average) Crossover
• Definition and Function: The EMA Crossover component utilizes two exponential moving averages of different timeframes. Unlike simple moving averages, EMAs give more weight to recent prices, making them more responsive to new information.
• Contribution to Market Direction: The interaction between the short-term and long-term EMAs is key to determining market direction. A crossover of the shorter EMA above the longer EMA is an indicator of an emerging uptrend, while a crossover below signals a developing downtrend.
• Application in Strategy: The EMA Crossover serves as a trend confirmation tool. It provides a clear, visual representation of the market's direction, aiding in the decision-making process for entering long or short positions. This component ensures that trades are aligned with the prevailing market trend, a crucial factor for the success of the strategy.
3. ATR (Average True Range)
• Definition and Function: The ATR is an indicator that measures market volatility by calculating the average range between the high and low prices over a specified period.
• Role in Assessing Market Volatility: The ATR provides insights into the typical market movement within a given timeframe, offering a measure of the market's volatility. Higher ATR values indicate increased volatility, while lower values suggest a calmer market environment.
• Application in Strategy: Within this strategy, the ATR is instrumental in tailoring risk management techniques, particularly in setting stop-loss levels. By accounting for the market's volatility, the ATR ensures that stop-loss orders are placed at levels that are neither too tight (risking premature exits) nor too loose (exposing to excessive risk).
In summary, the combination of Momentum-RSI, EMA Crossover, and ATR in this trading strategy provides a comprehensive toolkit for market analysis. The Momentum-RSI identifies the strength of market trends, the EMA Crossover confirms the market direction, and the ATR guides in risk management by assessing volatility. Together, these components form the backbone of a strategy designed to navigate the complexities of the financial markets effectively.
1. Signal Generation Process
• Combining Indicators: The strategy operates by synthesizing signals from the Momentum-RSI, EMA Crossover, and ATR indicators. Each indicator serves a specific purpose: the Momentum-RSI gauges trend momentum, the EMA Crossover identifies the trend direction, and the ATR assesses the market’s volatility.
• Criteria for Signal Validation: For a signal to be considered valid, it must meet specific criteria set by each of the three indicators. This multi-layered approach ensures that signals are not only based on one aspect of market behavior but are a result of a comprehensive analysis.
2. Conditions for Long Positions
• Uptrend Confirmation: A long position signal is generated when the shorter-term EMA crosses above the longer-term EMA, indicating an uptrend.
• Momentum-RSI Alignment: Alongside the EMA crossover, the Momentum-RSI should indicate strong bullish momentum. This is typically represented by the Momentum-RSI being at a high level, confirming the strength of the uptrend.
• ATR Consideration: The ATR is used to fine-tune the entry point and set an appropriate stop-loss level. In a low volatility scenario, as indicated by the ATR, the stop-loss can be set tighter, closer to the entry point.
3. Conditions for Short Positions
• Downtrend Confirmation: Conversely, a short position signal is indicated when the shorter-term EMA crosses below the longer-term EMA, signaling a downtrend.
• Momentum-RSI Confirmation: The Momentum-RSI should reflect strong bearish momentum, usually seen when the Momentum-RSI is at a low level. This confirms the bearish strength of the market.
• ATR Application: The ATR again plays a role in determining the stop-loss level for the short position. Higher volatility, as indicated by a higher ATR, would warrant a wider stop-loss to accommodate larger market swings.
By adhering to these mechanics, the strategy aims to ensure that each trade is entered with a high probability of success, aligning with the market’s current momentum and trend. The integration of these indicators allows for a holistic market analysis, providing traders with clear and actionable signals for both entering and exiting trades.
Customizable Parameters in the Strategy
Flexibility and adaptability are key features of this trading strategy, achieved through a range of customizable parameters. These parameters allow traders to tailor the strategy to their individual trading style, risk tolerance, and specific market conditions. By adjusting these parameters, users can fine-tune the strategy to optimize its performance and align it with their unique trading objectives. Below are the primary parameters that can be customized within the strategy:
1. Momentum-RSI Settings
• Period: The lookback period for the Momentum-RSI can be adjusted. A shorter period makes the indicator more sensitive to recent price changes, while a longer period smoothens the RSI line, offering a broader view of the momentum.
• Overbought/Oversold Thresholds: Users can set their own overbought and oversold levels, which can help in identifying extreme market conditions more precisely according to their trading approach.
2. EMA Crossover Settings
• Timeframes for EMAs: The strategy uses two EMAs with different timeframes. Traders can modify these timeframes, choosing shorter periods for a more responsive approach or longer periods for a more conservative one.
• Source Data: The choice of price data (close, open, high, low) used in calculating the EMAs can be varied depending on the trader’s preference.
3. ATR Settings
• Lookback Period: Adjusting the lookback period for the ATR impacts how the indicator measures volatility. A longer period may provide a more stable but less responsive measure, while a shorter period offers quicker but potentially more erratic readings.
• Multiplier for Stop-Loss Calculation: This parameter allows traders to set how aggressively or conservatively they want their stop-loss to be in relation to the ATR value.
Here are the standard settings:
sᴛᴀɢᴇ ᴀɴᴀʏʟsɪsStage analysis is a technical analysis approach that involves categorizing a stock's price movements into different stages to help traders and investors make more informed decisions. It was popularized by Stan Weinstein in his book, "Secrets for Profiting in Bull and Bear Markets." The stages are used to identify the overall trend and to time entries and exits in the market. Here's an explanation of the typical stages in stage analysis:
1. **Stage 1: Accumulation Phase**
- In this stage, the stock is in a downtrend or has been trading sideways for an extended period.
- Volume is relatively low, indicating that institutions and smart money may be quietly accumulating shares.
- The stock may test and hold support levels, showing signs of stability.
- The goal for traders in this stage is to identify the potential for a trend reversal.
2. **Stage 2: Markup (Bull Market) Phase**
- This is the stage where the stock starts a significant uptrend.
- Volume increases as institutional and retail investors become more interested in the stock.
- Technical indicators like moving averages and trendlines confirm the uptrend.
- Traders and investors look for buying opportunities during pullbacks or consolidations within the uptrend.
3. **Stage 3: Distribution Phase**
- In this stage, the stock's price begins to show signs of weakness.
- Volume might decrease as institutions and smart money start selling their positions.
- The stock may start forming a trading range or exhibit bearish chart patterns.
- Traders should consider taking profits or reducing exposure to the stock as it may enter a downtrend.
4. **Stage 4: Markdown (Bear Market) Phase**
- This is the stage where the stock enters a significant downtrend.
- Volume may remain elevated as selling pressure dominates.
- Technical indicators confirm the downtrend.
- Traders and investors should avoid buying the stock and may consider short-selling or staying on the sidelines.
Stage analysis helps traders and investors make decisions based on the current stage of a stock's price movement. The goal is to enter during the accumulation phase or early in the markup phase and exit during the distribution phase or before the markdown phase to maximize profits and minimize losses.
=============================================================
try to just show the Stage number in a table, but always double check for yourself
Volume With ColorVolume with color helps to quickly identify accumulation or distribution.
An accumulation day is an up day with volume greater than a user selected average.
A distribution day is a down day with volume greater than a user selected average.
This indicator will highlight those days by changing the volume bar colors for an easy visual.
ADX W. Wilders(DI+, DI-, DX, ADXR, Equilibrium Point)The reason for publishing the script was the lack of display of important components in the standard ADX indicator, such as DI+, DI-, DX , ADXR, and the absence of a choice of methods for calculating moving averages in the indicator.
According to the book by the author of the ADX indicator, W. Wilder, the indicator components were calculated using the SMA formula, however, the RMA moving average is used in the code of the built-in indicator in TradingView, which shows excellent results, but this is not a classic calculation method. In addition to SMA and RMA, there are also EMA , HMA , WMA , VWMA moving averages to choose from. Added the ability to display lines ADX , ADXR , DX , DI+, DI- and Equilibrium points (when DI+ and DI- are equal or intersect).
ADX Trading Rules
1. Trade the intersections of DI+ and DI-
2. Extreme Point Rule(EPR). EPR is formed when DI+, DI- (Equilibrium point) crosses, forming a trend reversal point at the extremum of the current bar. In the example on the ADX RMA chart, the DI- line is above DI+. Being in a short position at the reverse intersection of the DI- and DI + lines, it is necessary to take the high price of the crossing bar for the reversal point, upon breakdown of which, turn to long. In this example, the breakdown did not take place and the short position remained active, despite the intersection of the DI+ lines over DI-. This rule is an excellent filter that removes unnecessary transactions in the trading system.
3. DI+ > ADX and DI- > ADX. Stop trading trend-following systems.
4. If ADXR > 25, the trading system will be profitable. With ADXR < 20, trend-following systems need to stop trading. Many mistakenly use ADX values instead of ADXR . The author explicitly pointed to ADXR in his book.
5. Equilibrium Point - balance points. The accumulation of these points on the chart means the presence of a flat in the market. Accumulation often appears on a declining ADX after a top has been established on the ADX indicator. The smaller the distance between the points, the less significant movements occurred in the market.
6. For intraday trading of cryptocurrencies use can the following ADX settings:
DI Length = 100
ADX Smoothing = 14
MA Type = VWMA
Flat Zone = 30
P.S. Fragment from an interview with W. Wilder:
OH: You are probably best known for inventing the Relative Strength Index ( RSI ), Average Directional Index ( ADX ) and Average True Range (ATR). Which of these is the most powerful tool for a trader?
WW: The ADX .
OH: Is it the indicator you are most proud of?
WW: I guess so.
Directional Movement IndexADX is an oscillating indicator, displayed as a single line, ranging from 0 to 100, it only indicates the strength of the trend and does not indicate its direction. In other words, the ADX is non-directional, meaning that it measures the strength of a trend, but doesn’t distinguish between uptrend and downtrends. So, during a strong uptrend, the ADX rises and during a strong downtrend, the ADX also rises.
Here is how you correctly read what ADX is saying about the market. Here are 5 aspects regarding the interpretation of the ADX:
1- When ADX is above 25, trend strength is strong. Usually, once the ADX gets above 25 this signals the beginning of a trend. Big moves (upwards or downwards) tend to happen when ADX is right around this number. You can experiment with this number, some traders that want faster signals, tend to use a 20 threshold when trading with the ADX.
2- When ADX is below 25, traders must avoid trend trading strategies as the market is in accumulation or distribution phase. So, when we see the ADX line below 20 or 25 level, we forget about trend following strategies and we apply strategies suitable for a ranging market.
3- When ADX is above 25 and Positive Directional Movement Indicator (+DMI) is above the Negative Directional Movement Indicator (-DMI). ADX measures the strength of an uptrend. The crossover between the 2 Directional Movement Indicator, as the ADX line is well above 25 can result in an excellent bullish move.
4- The Positive Directional Movement Indicator (+DMI) should be above the Negative Directional Movement and the ADX should be above 25 signals for a strong upward trend for long opportunities. When ADX is above 25 and Positive Directional Movement Indicator is below the Negative Directional Movement Indicator, ADX measures the strength of a downtrend and short opportunities.
5- Values over 50 of the ADX indicate a very strong trend
There are pros and cons of ADX.
So, why is the ADX useful for traders: First, is excellent at quantifying trend strength. Also, it allows traders to see the strength of bulls and bears at the same time. It is good at filtering out trades, during accumulation periods and is good at identifying trending conditions.
But the ADX also has its limitations. The most important disadvantage is the fact that ADX is a lagging indicator that follows the price, so we must be very careful when we apply this indicator, because we might miss the inception of the trend and join it when it’s nearly over.
Also, it offers many false signals when used on shorter time frames, so it’s advisable to trade it on higher time frames Also, the ADX does not contain all of the data necessary a for proper analysis of price action, so it must be used in combination with other tools or indicators.
Now that we fully covered the good and the bad regarding ADX, let’s see how it is used in a trading strategy.
The trading strategy involves a DMI crossover, confirmed by ADX above consolidation threshold. If +DMI crossover, we take long position and if -DMI crosses over, we take a short position.
Candles are re-colored for easy demonstration of uptrend, downtrend and consolidation periods.
Green candles – ADX > Consolidation Threshold and +DMI > -DMI
Red candles – ADX > Consolidation Threshold and +DMI < -DMI
Black candles – ADX < Consolidation Threshold
Repaint – This is a non-repainting strategy - All the signals are generated at candle closing. All the calculations are made on previous candle’s open, high, low, close. No request security function is used. No data is being used from higher time frame. Trade exit uses close function instead of exit to avoid limit orders. Only one long trade at a time (no pyramiding) is allowed.
Strategy Time frame – D (To filter out false signals, higher time frame is recommended)
Strategy For – Swing Traders
Assets – Cryptocurrencies + Stocks
BTC Active1Y holders: OnchainUse this Indicator in The Weekly timeframe
This indicator is based on "Percent of Supply Last Active 1+ Years Ago".
This is so important indicator that shows " The percent of circulating supply that has not moved in at least 1 year."
It can show the situation of the holders who have been holding their coins for more than a year. When this indicator starts to decline, it means that the price has risen so much that the holders are selling their coins. When this indicator starts to increase, it means that the number of coins held has been increasing for more than a year. This is because the price is too low for investors.
This indicator can be used to indicate accumulation and distribution areas. When the indicator enters the overlow area (red) it means that the distribution is happening
When the indicator enters the overhigh range (blue), it means that accumulation is taking place by the holders
Intraday Power 3 VisualDescription
This indicator draws a dynamic "Open High Low Close" type visual on intraday charts so the trader can easily keep track of the daily/weekly movement. This indicator was inspired by the Inner Circle Trader’s (ICT) “Power 3” concept, which is Accumulation, Manipulation, and Distribution of price on a daily timeframe.
Visual
This indicator plots the chosen timeframes opening price along with a live line for the current price. This makes it very easy to identify the daily/weekly range along it’s open. And the user can combine this indicator with my other indicator “Futures Exchange Sessions” to plot the midnight EST & 8:30 AM EST lines to get a great summation of over night price action.
Inputs and Style
In the Input section the user can dynamically switch between Daily and Weekly timeframes. Built in ability to move the entire Visual to the right makes preventing indicator overlap a breeze. All of the lines can be configured: color, style, and width. Independently toggle ON/OFF the Power 3 labels (Accumulation, Manipulation, Range Extension, Distribution) and can change labels color. The labels dynamically move and switch positions based upon bear or bull daily/weekly range.
Special Notes
The Futures market is open 23/5. It is closed everyday for 1-hour at 5pm EST and closed over the weekends. Because this Intraday Power 3 Visual is drawing in the 'future' on the users TradingView chart, when the visual is close or in a time when the market is closed, the visual doesn't behave properly. This is because TradingView doesn't display times when the Market is closed, thus the drawings cannot be displayed during those times. There is nothing wrong with the script. Please wait until the Market is open and the visual will be drawn normally.
This indicator is intended for use in the Futures Market
Adaptive Average Vortex Index [lastguru]As a longtime fan of ADX, looking at Vortex Indicator I often wondered, where is the third line. I have rarely seen that anybody is calculating it. So, here it is: Average Vortex Index - an ADX calculated from Vortex Indicator. I interpret it similarly to the ADX indicator: higher values show stronger trend. If you discover other interpretation or have suggestions, comments are welcome.
Both VI+ and VI- lines are also drawn. As I use adaptive length calculation in my other scripts (based on the libraries I've developed and published), I have also included the possibility to have an adaptive length here, so if you hate the idea of calculating ADX from VI, you can disable that line and just look at the adaptive Vortex Indicator.
Note that as with all my oscillators, all the lines here are renormalized to -1..1 range unlike the original Vortex Indicator computation. To do that for VI+ and VI- lines, I subtract 1 from their values. It does not change the shape or the amplitude of the lines.
Adaptation algorithms are roughly subdivided in two categories: classic Length Adaptations and Cycle Estimators (they are also implemented in separate libraries), all are selected in Adaptation dropdown. Length Adaptation used in the Adaptive Moving Averages and the Adaptive Oscillators try to follow price movements and accelerate/decelerate accordingly (usually quite rapidly with a huge range). Cycle Estimators, on the other hand, try to measure the cycle period of the current market, which does not reflect price movement or the rate of change (the rate of change may also differ depending on the cycle phase, but the cycle period itself usually changes slowly).
VIDYA - based on VIDYA algorithm. The period oscillates from the Lower Bound up (slow)
VIDYA-RS - based on Vitali Apirine's modification of VIDYA algorithm (he calls it Relative Strength Moving Average). The period oscillates from the Upper Bound down (fast)
Kaufman Efficiency Scaling - based on Efficiency Ratio calculation originally used in KAMA
Fractal Adaptation - based on FRAMA by John F. Ehlers
MESA MAMA Cycle - based on MESA Adaptive Moving Average by John F. Ehlers
Pearson Autocorrelation* - based on Pearson Autocorrelation Periodogram by John F. Ehlers
DFT Cycle* - based on Discrete Fourier Transform Spectrum estimator by John F. Ehlers
Phase Accumulation* - based on Dominant Cycle from Phase Accumulation by John F. Ehlers
Length Adaptation usually take two parameters: Bound From (lower bound) and To (upper bound). These are the limits for Adaptation values. Note that the Cycle Estimators marked with asterisks(*) are very computationally intensive, so the bounds should not be set much higher than 50, otherwise you may receive a timeout error (also, it does not seem to be a useful thing to do, but you may correct me if I'm wrong).
The Cycle Estimators marked with asterisks(*) also have 3 checkboxes: HP (Highpass Filter), SS (Super Smoother) and HW (Hann Window). These enable or disable their internal prefilters, which are recommended by their author - John F. Ehlers . I do not know, which combination works best, so you can experiment.
If no Adaptation is selected ( None option), you can set Length directly. If an Adaptation is selected, then Cycle multiplier can be set.
The oscillator also has the option to configure the internal smoothing function with Window setting. By default, RMA is used (like in ADX calculation). Fast Default option is using half the length for smoothing. Triangle , Hamming and Hann Window algorithms are some better smoothers suggested by John F. Ehlers.
After the oscillator a Moving Average can be applied. The following Moving Averages are included: SMA , RMA, EMA , HMA , VWMA , 2-pole Super Smoother, 3-pole Super Smoother, Filt11, Triangle Window, Hamming Window, Hann Window, Lowpass, DSSS.
Postfilter options are applied last:
Stochastic - Stochastic
Super Smooth Stochastic - Super Smooth Stochastic (part of MESA Stochastic ) by John F. Ehlers
Inverse Fisher Transform - Inverse Fisher Transform
Noise Elimination Technology - a simplified Kendall correlation algorithm "Noise Elimination Technology" by John F. Ehlers
Momentum - momentum (derivative)
Except for Inverse Fisher Transform , all Postfilter algorithms can have Length parameter. If it is not specified (set to 0), then the calculated Slow MA Length is used. If Filter/MA Length is less than 2 or Postfilter Length is less than 1, they are calculated as a multiplier of the calculated oscillator length.
More information on the algorithms is given in the code for the libraries used. I am also very grateful to other TradingView community members (they are also mentioned in the library code) without whom this script would not have been possible.
Adaptive Oscillator constructor [lastguru]Adaptive Oscillators use the same principle as Adaptive Moving Averages. This is an experiment to separate length generation from oscillators, offering multiple alternatives to be combined. Some of the combinations are widely known, some are not. Note that all Oscillators here are normalized to -1..1 range. This indicator is based on my previously published public libraries and also serve as a usage demonstration for them. I will try to expand the collection (suggestions are welcome), however it is not meant as an encyclopaedic resource , so you are encouraged to experiment yourself: by looking on the source code of this indicator, I am sure you will see how trivial it is to use the provided libraries and expand them with your own ideas and combinations. I give no recommendation on what settings to use, but if you find some useful setting, combination or application ideas (or bugs in my code), I would be happy to read about them in the comments section.
The indicator works in three stages: Prefiltering, Length Adaptation and Oscillators.
Prefiltering is a fast smoothing to get rid of high-frequency (2, 3 or 4 bar) noise.
Adaptation algorithms are roughly subdivided in two categories: classic Length Adaptations and Cycle Estimators (they are also implemented in separate libraries), all are selected in Adaptation dropdown. Length Adaptation used in the Adaptive Moving Averages and the Adaptive Oscillators try to follow price movements and accelerate/decelerate accordingly (usually quite rapidly with a huge range). Cycle Estimators, on the other hand, try to measure the cycle period of the current market, which does not reflect price movement or the rate of change (the rate of change may also differ depending on the cycle phase, but the cycle period itself usually changes slowly).
Chande (Price) - based on Chande's Dynamic Momentum Index (CDMI or DYMOI), which is dynamic RSI with this length
Chande (Volume) - a variant of Chande's algorithm, where volume is used instead of price
VIDYA - based on VIDYA algorithm. The period oscillates from the Lower Bound up (slow)
VIDYA-RS - based on Vitali Apirine's modification of VIDYA algorithm (he calls it Relative Strength Moving Average). The period oscillates from the Upper Bound down (fast)
Kaufman Efficiency Scaling - based on Efficiency Ratio calculation originally used in KAMA
Deviation Scaling - based on DSSS by John F. Ehlers
Median Average - based on Median Average Adaptive Filter by John F. Ehlers
Fractal Adaptation - based on FRAMA by John F. Ehlers
MESA MAMA Alpha - based on MESA Adaptive Moving Average by John F. Ehlers
MESA MAMA Cycle - based on MESA Adaptive Moving Average by John F. Ehlers , but unlike Alpha calculation, this adaptation estimates cycle period
Pearson Autocorrelation* - based on Pearson Autocorrelation Periodogram by John F. Ehlers
DFT Cycle* - based on Discrete Fourier Transform Spectrum estimator by John F. Ehlers
Phase Accumulation* - based on Dominant Cycle from Phase Accumulation by John F. Ehlers
Length Adaptation usually take two parameters: Bound From (lower bound) and To (upper bound). These are the limits for Adaptation values. Note that the Cycle Estimators marked with asterisks(*) are very computationally intensive, so the bounds should not be set much higher than 50, otherwise you may receive a timeout error (also, it does not seem to be a useful thing to do, but you may correct me if I'm wrong).
The Cycle Estimators marked with asterisks(*) also have 3 checkboxes: HP (Highpass Filter), SS (Super Smoother) and HW (Hann Window). These enable or disable their internal prefilters, which are recommended by their author - John F. Ehlers . I do not know, which combination works best, so you can experiment.
Chande's Adaptations also have 3 additional parameters: SD Length (lookback length of Standard deviation), Smooth (smoothing length of Standard deviation) and Power ( exponent of the length adaptation - lower is smaller variation). These are internal tweaks for the calculation.
Oscillators section offer you a choice of Oscillator algorithms:
Stochastic - Stochastic
Super Smooth Stochastic - Super Smooth Stochastic (part of MESA Stochastic) by John F. Ehlers
CMO - Chande Momentum Oscillator
RSI - Relative Strength Index
Volume-scaled RSI - my own version of RSI. It scales price movements by the proportion of RMS of volume
Momentum RSI - RSI of price momentum
Rocket RSI - inspired by RocketRSI by John F. Ehlers (not an exact implementation)
MFI - Money Flow Index
LRSI - Laguerre RSI by John F. Ehlers
LRSI with Fractal Energy - a combo oscillator that uses Fractal Energy to tune LRSI gamma
Fractal Energy - Fractal Energy or Choppiness Index by E. W. Dreiss
Efficiency ratio - based on Kaufman Adaptive Moving Average calculation
DMI - Directional Movement Index (only ADX is drawn)
Fast DMI - same as DMI, but without secondary smoothing
If no Adaptation is selected (None option), you can set Length directly. If an Adaptation is selected, then Cycle multiplier can be set.
Before an Oscillator, a High Pass filter may be executed to remove cyclic components longer than the provided Highpass Length (no High Pass filter, if Highpass Length = 0). Both before and after the Oscillator a Moving Average can be applied. The following Moving Averages are included: SMA, RMA, EMA, HMA , VWMA, 2-pole Super Smoother, 3-pole Super Smoother, Filt11, Triangle Window, Hamming Window, Hann Window, Lowpass, DSSS. For more details on these Moving Averages, you can check my other Adaptive Constructor indicator:
The Oscillator output may be renormalized and postprocessed with the following Normalization algorithms:
Stochastic - Stochastic
Super Smooth Stochastic - Super Smooth Stochastic (part of MESA Stochastic) by John F. Ehlers
Inverse Fisher Transform - Inverse Fisher Transform
Noise Elimination Technology - a simplified Kendall correlation algorithm "Noise Elimination Technology" by John F. Ehlers
Except for Inverse Fisher Transform, all Normalization algorithms can have Length parameter. If it is not specified (set to 0), then the calculated Oscillator length is used.
More information on the algorithms is given in the code for the libraries used. I am also very grateful to other TradingView community members (they are also mentioned in the library code) without whom this script would not have been possible.
Adaptive MA constructor [lastguru]Adaptive Moving Averages are nothing new, however most of them use EMA as their MA of choice once the preferred smoothing length is determined. I have decided to make an experiment and separate length generation from smoothing, offering multiple alternatives to be combined. Some of the combinations are widely known, some are not. This indicator is based on my previously published public libraries and also serve as a usage demonstration for them. I will try to expand the collection (suggestions are welcome), however it is not meant as an encyclopaedic resource, so you are encouraged to experiment yourself: by looking on the source code of this indicator, I am sure you will see how trivial it is to use the provided libraries and expand them with your own ideas and combinations. I give no recommendation on what settings to use, but if you find some useful setting, combination or application ideas (or bugs in my code), I would be happy to read about them in the comments section.
The indicator works in three stages: Prefiltering, Length Adaptation and Moving Averages.
Prefiltering is a fast smoothing to get rid of high-frequency (2, 3 or 4 bar) noise.
Adaptation algorithms are roughly subdivided in two categories: classic Length Adaptations and Cycle Estimators (they are also implemented in separate libraries), all are selected in Adaptation dropdown. Length Adaptation used in the Adaptive Moving Averages and the Adaptive Oscillators try to follow price movements and accelerate/decelerate accordingly (usually quite rapidly with a huge range). Cycle Estimators, on the other hand, try to measure the cycle period of the current market, which does not reflect price movement or the rate of change (the rate of change may also differ depending on the cycle phase, but the cycle period itself usually changes slowly).
Chande (Price) - based on Chande's Dynamic Momentum Index (CDMI or DYMOI), which is dynamic RSI with this length
Chande (Volume) - a variant of Chande's algorithm, where volume is used instead of price
VIDYA - based on VIDYA algorithm. The period oscillates from the Lower Bound up (slow)
VIDYA-RS - based on Vitali Apirine's modification of VIDYA algorithm (he calls it Relative Strength Moving Average). The period oscillates from the Upper Bound down (fast)
Kaufman Efficiency Scaling - based on Efficiency Ratio calculation originally used in KAMA
Deviation Scaling - based on DSSS by John F. Ehlers
Median Average - based on Median Average Adaptive Filter by John F. Ehlers
Fractal Adaptation - based on FRAMA by John F. Ehlers
MESA MAMA Alpha - based on MESA Adaptive Moving Average by John F. Ehlers
MESA MAMA Cycle - based on MESA Adaptive Moving Average by John F. Ehlers, but unlike Alpha calculation, this adaptation estimates cycle period
Pearson Autocorrelation* - based on Pearson Autocorrelation Periodogram by John F. Ehlers
DFT Cycle* - based on Discrete Fourier Transform Spectrum estimator by John F. Ehlers
Phase Accumulation* - based on Dominant Cycle from Phase Accumulation by John F. Ehlers
Length Adaptation usually take two parameters: Bound From (lower bound) and To (upper bound). These are the limits for Adaptation values. Note that the Cycle Estimators marked with asterisks(*) are very computationally intensive, so the bounds should not be set much higher than 50, otherwise you may receive a timeout error (also, it does not seem to be a useful thing to do, but you may correct me if I'm wrong).
The Cycle Estimators marked with asterisks(*) also have 3 checkboxes: HP (Highpass Filter), SS (Super Smoother) and HW (Hann Window). These enable or disable their internal prefilters, which are recommended by their author - John F. Ehlers. I do not know, which combination works best, so you can experiment.
Chande's Adaptations also have 3 additional parameters: SD Length (lookback length of Standard deviation), Smooth (smoothing length of Standard deviation) and Power (exponent of the length adaptation - lower is smaller variation). These are internal tweaks for the calculation.
Length Adaptaton section offer you a choice of Moving Average algorithms. Most of the Adaptations are originally used with EMA, so this is a good starting point for exploration.
SMA - Simple Moving Average
RMA - Running Moving Average
EMA - Exponential Moving Average
HMA - Hull Moving Average
VWMA - Volume Weighted Moving Average
2-pole Super Smoother - 2-pole Super Smoother by John F. Ehlers
3-pole Super Smoother - 3-pole Super Smoother by John F. Ehlers
Filt11 -a variant of 2-pole Super Smoother with error averaging for zero-lag response by John F. Ehlers
Triangle Window - Triangle Window Filter by John F. Ehlers
Hamming Window - Hamming Window Filter by John F. Ehlers
Hann Window - Hann Window Filter by John F. Ehlers
Lowpass - removes cyclic components shorter than length (Price - Highpass)
DSSS - Derivation Scaled Super Smoother by John F. Ehlers
There are two Moving Averages that are drown on the chart, so length for both needs to be selected. If no Adaptation is selected ( None option), you can set Fast Length and Slow Length directly. If an Adaptation is selected, then Cycle multiplier can be selected for Fast and Slow MA.
More information on the algorithms is given in the code for the libraries used. I am also very grateful to other TradingView community members (they are also mentioned in the library code) without whom this script would not have been possible.
DominantCycleCollection of Dominant Cycle estimators. Length adaptation used in the Adaptive Moving Averages and the Adaptive Oscillators try to follow price movements and accelerate/decelerate accordingly (usually quite rapidly with a huge range). Cycle estimators, on the other hand, try to measure the cycle period of the current market, which does not reflect price movement or the rate of change (the rate of change may also differ depending on the cycle phase, but the cycle period itself usually changes slowly). This collection may become encyclopaedic, so if you have any working cycle estimator, drop me a line in the comments below. Suggestions are welcome. Currently included estimators are based on the work of John F. Ehlers
mamaPeriod(src, dynLow, dynHigh) MESA Adaptation - MAMA Cycle
Parameters:
src : Series to use
dynLow : Lower bound for the dynamic length
dynHigh : Upper bound for the dynamic length
Returns: Calculated period
Based on MESA Adaptive Moving Average by John F. Ehlers
Performs Hilbert Transform Homodyne Discriminator cycle measurement
Unlike MAMA Alpha function (in LengthAdaptation library), this does not compute phase rate of change
Introduced in the September 2001 issue of Stocks and Commodities
Inspired by the @everget implementation:
Inspired by the @anoojpatel implementation:
paPeriod(src, dynLow, dynHigh, preHP, preSS, preHP) Pearson Autocorrelation
Parameters:
src : Series to use
dynLow : Lower bound for the dynamic length
dynHigh : Upper bound for the dynamic length
preHP : Use High Pass prefilter (default)
preSS : Use Super Smoother prefilter (default)
preHP : Use Hann Windowing prefilter
Returns: Calculated period
Based on Pearson Autocorrelation Periodogram by John F. Ehlers
Introduced in the September 2016 issue of Stocks and Commodities
Inspired by the @blackcat1402 implementation:
Inspired by the @rumpypumpydumpy implementation:
Corrected many errors, and made small speed optimizations, so this could be the best implementation to date (still slow, though, so may revisit in future)
High Pass and Super Smoother prefilters are used in the original implementation
dftPeriod(src, dynLow, dynHigh, preHP, preSS, preHP) Discrete Fourier Transform
Parameters:
src : Series to use
dynLow : Lower bound for the dynamic length
dynHigh : Upper bound for the dynamic length
preHP : Use High Pass prefilter (default)
preSS : Use Super Smoother prefilter (default)
preHP : Use Hann Windowing prefilter
Returns: Calculated period
Based on Spectrum from Discrete Fourier Transform by John F. Ehlers
Inspired by the @blackcat1402 implementation:
High Pass, Super Smoother and Hann Windowing prefilters are used in the original implementation
phasePeriod(src, dynLow, dynHigh, preHP, preSS, preHP) Phase Accumulation
Parameters:
src : Series to use
dynLow : Lower bound for the dynamic length
dynHigh : Upper bound for the dynamic length
preHP : Use High Pass prefilter (default)
preSS : Use Super Smoother prefilter (default)
preHP : Use Hamm Windowing prefilter
Returns: Calculated period
Based on Dominant Cycle from Phase Accumulation by John F. Ehlers
High Pass and Super Smoother prefilters are used in the original implementation
doAdapt(type, src, len, dynLow, dynHigh, chandeSDLen, chandeSmooth, chandePower, preHP, preSS, preHP) Execute a particular Length Adaptation or Dominant Cycle Estimator from the list
Parameters:
type : Length Adaptation or Dominant Cycle Estimator type to use
src : Series to use
len : Reference lookback length
dynLow : Lower bound for the dynamic length
dynHigh : Upper bound for the dynamic length
chandeSDLen : Lookback length of Standard deviation for Chande's Dynamic Length
chandeSmooth : Smoothing length of Standard deviation for Chande's Dynamic Length
chandePower : Exponent of the length adaptation for Chande's Dynamic Length (lower is smaller variation)
preHP : Use High Pass prefilter for the Estimators that support it (default)
preSS : Use Super Smoother prefilter for the Estimators that support it (default)
preHP : Use Hann Windowing prefilter for the Estimators that support it
Returns: Calculated period (float, not limited)
doEstimate(type, src, dynLow, dynHigh, preHP, preSS, preHP) Execute a particular Dominant Cycle Estimator from the list
Parameters:
type : Dominant Cycle Estimator type to use
src : Series to use
dynLow : Lower bound for the dynamic length
dynHigh : Upper bound for the dynamic length
preHP : Use High Pass prefilter for the Estimators that support it (default)
preSS : Use Super Smoother prefilter for the Estimators that support it (default)
preHP : Use Hann Windowing prefilter for the Estimators that support it
Returns: Calculated period (float, not limited)
Jake Bernstein - Moving Average ChannelWe all know that moving averages, in particular, moving averages of closing prices tend to be highly inaccurate indicators and frequently miss major tops and bottoms. In backtesting, they tend to be accurate some 30 to 40% of the time which is to my way of thinking unacceptable. On the contrary moving averages of opens versus closes for highs versus lows, when used properly avoid the drawbacks of closing moving averages, particularly when combined with a trigger. Shown above is my moving average channel method which uses the 57 SMA of Williams accumulation distribution as a setup or trigger. As shown by the arrows two consecutive price bars completely below the MA channel low and triggered by Williams below SMA constitutes a sell signal. Conversely, two consecutive price bars or more above the moving average channel high accompanied by Williams above its moving average constitutes a sell trigger. The moving average channel high, the red line is a 10 period Moving average of highs. The Moving average channel low, the green line is an 8 period Moving average of the low. There are at least a dozen applications of this methodology including its ability to spot trend changes, support, resistance, swing trades, market strength, market weakness, and more. I will post some of these additional uses of the moving average channel as they present themselves. Do note that in this chart there were two instances above the moving average channel high but these were not triggered by Williams AD and therefore the trend remains down for the duration of this chart. The methodology associated with my MAC is completely rules-based and works in any timeframe. Thank you my friend Larry Williams for developing your excellent version of accumulation-distribution
Baekdoo multi OverSold OverBuy colored CandleHi forks,
I'm trader Baekdoosan who trading Equity from South Korea. This Baekdoo multi OverSold OverBuy colored candle will give you the idea of
multiple indicators in one shot with colored candle. Those indicators tell us that oversold or overbuy statistically. For the color, you can freely change
based on your comfort. For me, in Korea white candle has red color and black candle has blue color. So somewhat confusing for you. Anyway you can
easily modify color in the script. Please refer this line.
barcolor(open<close and result_pos == 4 ? color.new(color.red, 0) : open<close and result_pos == 3 ? color.new(color.red, 25) : open<close and result_pos == 2 ? color.new(color.red, 50) : open<close and result_pos == 1? color.new(color.red, 75) : na)
you can see I put different transparency at color.new() function with color code. Let me divide and conquer to explain for up candle
white candle and black candle.
1. White candle
with 4 oversold signal case with white candle tells us it is almost reached real bottom and try to rebound. In this case, I put vivid color (no transparency) on the candle. And all 4 signal case, I put text on "OverSold". It will not happen frequently. Then 2 approaches can be made.
(a) short term approach
You can buy on this time. and you set stop loss with open price. This is mainly aimed for technical rebound.
(b) long term approach
You can accumulate based on your budget with 5 times dividing. At that day might not be the very bottom but those period will most probably real bottom. You can put more weight on latter buy. Let say, 1 : 1.25 : 1.5 : 1.75 : 2.5. So for example, if you have $8,000 to investigate then, buy $1,000 and then $1,250, $1,500, accordingly. If price rebound then don't adding weight on accumulation but with the first amount that you buy(i.e., $1,000 with above example). With this approach, you will not have much stress and you will get profit well. If this is grand bottom case, then you can HODL this long term. What you needs is stick to the plan. :)
with 3 signals the color is less vivid, 2 signals is much less vivid, accordingly.
2. Black candle
The approaches are opposite to above. The signal will tells us for 4 overBuy signals, then vivid blue candle will be shown. Our strategy is distribute to sell. Please do not sell in one shot. As Newton said, "I can calculate the motions of the heavenly bodies, but not the madness of the people". Strong buy phase, we don't know how far will it go. But indicators will tell us it is quite overSold situation. So what I can suggest you is sell it 10% to 20% on resistance price, and put 50% of lower than certain support price. Remember, accumulation and distribution will always better than one shot trading if you want to survive long time on this war field.
Hope this will help your trading on equity as well as crypto. I didn't try it on futures. Best of luck all of you. Gazua~!
CMT's ProGo indicatorThis is an experiment. I've never traded with it and won't tell you to. The nuances of how effective this is have yet to be seen.
Shoutout to @BillionaireLau, who very recently posted Larry William's original ProGo indicator. I hypothesized that a few minor changes to values and operations would allow for greater utility and responsiveness. I believe this has been achieved. What we're looking at here appears to offer a new means of spotting divergences. Have fun. To quote BillionaireLau regarding the nature of this indicator:
"ProGo, created by Larry William, (earlier than 2002), is a 2 line graph using daily data.
1. Professional Line (color orange) is a professional Accumulation/Distribution line is constructed by using the change from today's open to today's close.
2. The Public Line (color blue) is done by creating a public accumulation/distribution line that shows the change from yesterdays close to today's open.
The graph is an index of the previous close to open +/- values (public) and then taking a 14 day average which is plotted against a 14 day average of the +/- values of the open to close(pro).
Background color:
Green colored area is where "pro" line crossover line, and the "pro" line is also positive."
William's ProGo indicatorProGo, created by Larry William, (earlier than 2002), is a 2 line graph using daily data.
1. Professional Line (color orange) is a professional Accumulation/Distribution line is constructed by using the change from today's open to today's close.
2. The Public Line (color blue) is done by creating a public accumulation/distribution line that shows the change from yesterdays close to today's open.
The graph is an index of the previous close to open +/- values (public) and then taking a 14 day average which is plotted against a 14 day average of the +/- values of the open to close(pro).
Background color:
Green colored area is where "pro" line crossover "amatuers" line, and the "pro" line is also positive.
Created this for literature review.