Follow the Volumes / Path of Least ResistanceThis indicator tracks price movements following significant volume increases. It identifies volume spikes by comparing recent average volume to a longer-term average. After a spike, it monitors price changes over a specified number of bars.
In plain English, the point of this is to “let the market show it’s hand”, vs. other common and preemptive methods of execution.
You can think of it as a better version of a volume up/down indicator which only uses opening and closing prices to identify "bullish" or "bearish" behavior.
To optimize this, I used a very small range chart, hence the small values. You will need to experiment with other values, ESPECIALLY the % change. If you do not do this, the indicator will generate a lot of noise.
The indicator has three main conditions:
1. Significant price increase, bullish: A green triangle appears below the bar.
2. Significant price decrease, bearish: A red triangle appears above the bar.
3. Price change within thresholds: A fuschia triangle appears, pointing up or down based on the overall (short-term) trend. This is common behavior during trends. A spike in volume will appear, and price simply does not budge. Volume/price is essentially declaring a new found value, in which case prices tend to follow the impulse movement (see market profile theory).
The color scheme is intuitive: green for positive moves, red for negative, and fuschia for subtle changes following the existing trend. Blue circles mark volume spikes for reference, which I recommend using only for reference, and disabling to remove unneeded noise.
Because this indicator "lags" in the sense of waiting for the market to show its hand, best opportunities are typically found on retests of the volume spikes themselves. On drives, however, the market will unlikely pullback, which (in my view) is one of its best use cases.
Bottom line, you will need to adjust the parameters to the instrument. This is not a plug and play solution, but far more accurate than those which are.
Settings, and what they mean:
Volume spike average bars: length for identification of high volumes. On smaller timeframes, such as my optimization period, you’ll want several bars. But on something such as a 5 minute or higher, only 1.
Lookback period: for identification of high volumes.
Volume Increase Threshold (%): % which constitutes a jump in volume
Bars After Spike: How long to wait for ensuing price movement. Also sensitive to the timeframe you are using. 1-2 recommended for 5m+, more for smaller range-based.
Negative Price Change Threshold (%): For red arrows (Volume + Price Movement)
Positive Price Change Threshold (%): Inverse of above
WMA Period for Stability Function: When price spikes on high volumes but does not move (price is “trapped” between negative and positive price change thresholds) the indicator marks direction (in fuchsia) in the direction of the underlying trend. This short-term MA identifies that trend.
Finally, because this indicator is volume-based, I recommend using primary instruments only and discourage its use on CFDs or other firm-generated instruments. Just use the primary. I would ignore signals off the open, which is subject to erroneous behavior. Other methods are far more effective for that.
This script is purposely uncomplicated. Feel free to play with settings and change code to suit your needs.
Komut dosyalarını "bear" için ara
MACD Trail | Flux Charts💎 GENERAL OVERVIEW
Introducing our new MACD Trail indicator! Moving average convergence/divergence (MACD) is a well-known indicator among traders. It's a trend-following indicator that uses the relationship between two exponential moving averages (EMAs). This indicator aims to use MACD to generate a trail that follows the current price of the ticker, which can act as a support / resistance zone. More info about the process in the "How Does It Work" section.
Features of the new MACD Trail Indicator :
A Trail Generated Using MACD Calculation
Customizable Algorithm
Customizable Styling
📌 HOW DOES IT WORK ?
First of all, this indicator calculates the current MACD of the ticker using the user's input as settings. Let X = MACD Length setting ;
MACD ~= X Period EMA - (X * 2) Period EMA
Then, two MACD Trails are generated, one being bullish and other being bearish. Let ATR = 30 period ATR (Average True Range)
Bullish MACD Trail = Current Price + MACD - (ATR * 1.75)
Bearish MACD Trail = Current Price + MACD + (ATR * 1.75)
The indicator starts by rendering only the Bullish MACD Trail. Then if it's invalidated (candlestick closes below the trail) it switches to Bearish MACD Trail. The MACD trail switches between bullish & bearish as they get invalidated.
The trail type may give a hint about the current trend of the price action. The trail itself also can act as a support / resistance zone, here is an example :
🚩 UNIQUENESS
While MACD is one of the most used indicators among traders, this indicator aims to add another functionality to it by rendering a trail based on it. This trail may act as a support / resistance zone as described above, and gives a glimpse about the current trend. The indicator also has custom MACD Length and smoothing options, as well as various style options.
⚙️ SETTINGS
1. General Configuration
MACD Length -> This setting adjusts the EMA periods used in MACD calculation. Increasing this setting will make MACD more responseive to longer trends, while decreasing it may help with detection of shorter trends.
Smoothing -> The smoothing of the MACD Trail. Increasing this setting will help smoothen out the MACD Trail line, but it can also make it less responsive to the latest changes.
Internal/External Market Structure [UAlgo]The "Internal/External Market Structure " indicator is a tool designed to identify and visualize internal and external market structure based on swing highs and lows. It helps traders understand short-term (internal) and long-term (external) price behavior.
🔶 What are ChoCH and BoS?
Change of Character (ChoCH)
Change of character refers to the reversal of market trend either from bullish to bearish or bearish to bullish. ChoCH is also a break of market structure but in opposite direction.
If market is in bullish trend but it breaks it previous (higher) low and makes a lower low, it will be termed a “bearish change of character” as price changed its trend from bullish to bearish.
Like wise if price is in bearish trend and it breaks its previous (lower) high making a higher high it will be marked as “bullish change of character” as price changed its trend from bearish to bullish.
Break of Structure (BoS)
When price breaks its structure in direction of previous trend its called break of structure (BoS). So its a trend continuation pattern.
As you know in bullish trend price makes higher highs. Each time when price break a previous high and marks a new high its known as bullish break of structure.
But in bearish trend price makes lower lows so every time when price breaks previous low and makes a new low it is called as bearish break of structure.
🔶 Key Features
Internal Swing Length: Allowing for fine-tuning of sensitivity to smaller, more frequent market movements.
External Swing Length: Focusing on capturing broader market trends.
The indicator differentiates between internal and external market structures, using different styles and colors to represent each. Internal structures are shown with solid lines, while external structures use dashed lines, providing clear visual cues.
Internal Market Structure:
The internal market structure focuses on shorter-term swings and is useful for identifying minor trend changes and short-term price movements. Breaks of internal swing highs or lows can indicate potential changes in the market's direction or momentum. The labels "CHoCH" and "BoS" help distinguish between changes in character and break of structure events, respectively.
External Market Structure:
The external market structure captures larger, more significant market moves. It is particularly useful for identifying major trend changes and key support and resistance levels. The dashed lines and corresponding labels "CHoCH+" and "BoS+" indicate more substantial shifts in market sentiment.
For BoS (Break of Structure):
For ChoCH (Change of Character):
🔶 Disclaimer
Use with Caution: This indicator is provided for educational and informational purposes only and should not be considered as financial advice. Users should exercise caution and perform their own analysis before making trading decisions based on the indicator's signals.
Not Financial Advice: The information provided by this indicator does not constitute financial advice, and the creator (UAlgo) shall not be held responsible for any trading losses incurred as a result of using this indicator.
Backtesting Recommended: Traders are encouraged to backtest the indicator thoroughly on historical data before using it in live trading to assess its performance and suitability for their trading strategies.
Risk Management: Trading involves inherent risks, and users should implement proper risk management strategies, including but not limited to stop-loss orders and position sizing, to mitigate potential losses.
No Guarantees: The accuracy and reliability of the indicator's signals cannot be guaranteed, as they are based on historical price data and past performance may not be indicative of future results.
Special Engulfing BarsExplanation of the Code:
Bullish Engulfing:
low <= low : The low of the current candle is lower than or equal to the low of the previous candle.
close >= close : The close of the current candle is higher than or equal to the close of the previous candle.
close > open: The current candle is bullish.
open > close : The previous candle is bearish.
Bearish Engulfing:
high >= high : The high of the current candle is higher than or equal to the high of the previous candle.
close <= close : The close of the current candle is lower than or equal to the close of the previous candle.
close < open: The current candle is bearish.
open < close : The previous candle is bullish.
Plot shape : Displays a signal on the chart when a bullish engulfing pattern (green color) or a bearish engulfing pattern (red color) is detected.
Alert condition : Sets an alert to send a notification when a bullish or bearish engulfing pattern is detected.
Algo Market Structure (Nephew_Sam_)This indicator takes a different approach into reading market structure.
The key difference between this logic compared to the pivot logic is; we read highs and lows based on bullish and bearish candles. Ie:
Pivot method - highest/lowest point in previous and next X candles
Algo method - Bullish candle(s) followed by a bearish candle and vice versa
More explanation in each of the key feature below.
Here are all of the concepts and features included in the indicator:
Timeframe
- You can select the timeframe of the indicator (has to be higher or equal to the chart timeframe)
- Min option is the minimum timeframe to show the indicator. If you show daily structure on 1m chart, you can run into a timeout error so keep it close to the chart timeframe.
- Recommended timeframe for no bugs is the current chart timeframe.
Structure
The structure is calculated using a combination of candle patterns (ie. pivot top = Bullish x3-Bearish-Bullish) and marks out circle labels after a new HH or LL
Structure high = 1 or more consecutive bull candles followed by a bear candle
Structure low = 1 or more consecutive bear candles followed by a bull candle
Structure direction change = when the second previous H/L is taken out (TLQ)
ILQ - Inducement Liquidity concept
In a bearish example this is the most recent structure high.
TLQ
In a bearish example this is the second most recent structure high.
This is also what helps define our structure direction. If broken, the structure changes (bullish / bearish) and plots a bos line.
EPA - Efficient price action
When price returns back to previous structure point after bos. Similar to an ICT breaker.
Note: It might be a little, just a little buggy if you have set your indicator timeframe to higher than the chart timeframe.
Extremes Zones
The final zone to find a trade entry before a structural shift. These are wick of the TLQ candle. This is select the wick of the current timeframe candle even if indicator is set to higher timeframe.
MSU
Tiny arrow labels at the bottom of your chart. Plots the arrows when price is between an ILQ and TLQ
VTA
Valid trading range. This is when we get some sort of a structure pattern. Plots a box when price induces previous structure point and then breaks structure in the opposite direction. Here are the patterns:
Bull VTA - HH-LL-HH
Bear VTA - LL-HH-LL
Bull Strict VTA - LL-HH-LL-HH
Bear Strict VTA - HH-LL-HH-LL
Bar colors
Changes the bar color based on the structure to all green/red.
Note: for this to work, you will have to right click on the indicator, then under visual order select 'bring to front'
Table
This table plots the structure stats/data
1. If structure is bullish / bearish
2. If price is efficient or not
3. If there is an MSU
4. If price is inside a VTA
Disclaimer: This indicator is fully written from scratch by me, the idea behind the concepts come from AlgoHub material on Youtube. Do NOT use this code for reselling purposes and if anything is created using any part of this code, the source code should be public.
Crab Harmonic Pattern [TradingFinder] Harmonic Chart patterns🔵 Introduction
The Crab pattern is recognized as a reversal pattern in technical analysis, utilizing Fibonacci numbers and percentages for chart analysis. This pattern can predict suitable price reversal areas on charts using Fibonacci ratios.
The structure of the Crab pattern can manifest in both bullish and bearish forms on the chart. By analyzing this structure, traders can identify points where the price direction changes, which are essential for making informed trading decisions.
The pattern's structure is visually represented on charts as shown below. To gain a deeper understanding of the Crab pattern's functionality, it is beneficial to become familiar with its various harmonic forms.
🟣 Types of Crab Patterns
The Crab pattern is categorized into two types based on its structure: bullish and bearish. The bullish Crab is denoted by the letter M, while the bearish Crab is indicated by the letter W in technical analysis.
Typically, a bullish Crab pattern signals a potential price increase, whereas a bearish Crab pattern suggests a potential price decrease on the chart.
The direction of price movement depends significantly on the price's position within the chart. By identifying whether the pattern is bullish or bearish, traders can determine the likely direction of the price reversal.
Bullish Crab :
Bearish Crab :
🔵 How to Use
When trading using the Crab pattern, crucial parameters include the end time of the correction and the point at which the chart reaches its peak. Generally, the best time to buy is when the chart nears the end of its correction, and the best time to sell is when it approaches the peak price.
As we discussed, the end of the price correction and the time to reach the peak are measured using Fibonacci ratios. By analyzing these levels, traders can estimate the end of the correction in the chart waves and select a buying position for their stock or asset upon reaching that ratio.
🟣 Bullish Crab Pattern
In this pattern, the stock price is expected to rise at the pattern's completion, transitioning into an upward trend. The bullish Crab pattern usually begins with an upward trend, followed by a price correction, after which the stock resumes its upward movement.
If a deeper correction occurs, the price will change direction at some point on the chart and rise again towards its target price. Price corrections play a critical role in this pattern, as it aims to identify entry and exit points using Fibonacci ratios, allowing traders to make purchases at the end of the corrections.
When the price movement lines are connected on the chart, the bullish Crab pattern resembles the letter M.
🟣 Bearish Crab Pattern
In this pattern, the stock price is expected to decline at the pattern's completion, leading to a strong downward trend. The bearish Crab pattern typically starts with a price correction in a downward trend and, after several fluctuations, reaches a peak where the direction changes downward, resulting in a significant price drop.
This pattern uses Fibonacci ratios to identify points where the price movement is likely to change direction, enabling traders to exit their positions at the chart's peak. When the price movement lines are connected on the chart, the bearish Crab pattern resembles the letter W.
🔵 Setting
🟣 Logical Setting
ZigZag Pivot Period : You can adjust the period so that the harmonic patterns are adjusted according to the pivot period you want. This factor is the most important parameter in pattern recognition.
Show Valid Format : If this parameter is on "On" mode, only patterns will be displayed that they have exact format and no noise can be seen in them. If "Off" is, the patterns displayed that maybe are noisy and do not exactly correspond to the original pattern.
Show Formation Last Pivot Confirm : if Turned on, you can see this ability of patterns when their last pivot is formed. If this feature is off, it will see the patterns as soon as they are formed. The advantage of this option being clear is less formation of fielded patterns, and it is accompanied by the latest pattern seeing and a sharp reduction in reward to risk.
Period of Formation Last Pivot : Using this parameter you can determine that the last pivot is based on Pivot period.
🟣 Genaral Setting
Show : Enter "On" to display the template and "Off" to not display the template.
Color : Enter the desired color to draw the pattern in this parameter.
LineWidth : You can enter the number 1 or numbers higher than one to adjust the thickness of the drawing lines. This number must be an integer and increases with increasing thickness.
LabelSize : You can adjust the size of the labels by using the "size.auto", "size.tiny", "size.smal", "size.normal", "size.large" or "size.huge" entries.
🟣 Alert Setting
Alert : On / Off
Message Frequency : This string parameter defines the announcement frequency. Choices include: "All" (activates the alert every time the function is called), "Once Per Bar" (activates the alert only on the first call within the bar), and "Once Per Bar Close" (the alert is activated only by a call at the last script execution of the real-time bar upon closing). The default setting is "Once per Bar".
Show Alert Time by Time Zone : The date, hour, and minute you receive in alert messages can be based on any time zone you choose. For example, if you want New York time, you should enter "UTC-4". This input is set to the time zone "UTC" by default.
VWAP with RSIVWAP with RSI Indicator
Overview
The VWAP with RSI Indicator is a powerful tool that combines the Volume Weighted Average Price (VWAP) with the Relative Strength Index (RSI) to provide traders with comprehensive insights into price trends, volume-weighted price levels, and market momentum. This dual-indicator setup enhances your trading strategy by offering a clearer understanding of the market conditions, potential entry and exit points, and trend reversals.
Key Features
VWAP (Volume Weighted Average Price):
Calculation: The VWAP is calculated using the high, low, and close prices, weighted by trading volume over a specified period.
Purpose: VWAP provides an average price that reflects the trading volume at different price levels, helping traders identify the true average price over a given period.
Visualization: The VWAP line is plotted in blue on the price chart, indicating the volume-weighted average price.
RSI (Relative Strength Index):
Calculation: RSI is based on the average gains and losses over a specified period (default is 14 periods) and ranges from 0 to 100.
Purpose: RSI measures the speed and change of price movements, identifying overbought or oversold conditions in the market.
Overbought/Oversold Levels:
Overbought: RSI above 70 (red line).
Oversold: RSI below 30 (green line).
Midline: RSI at 50 (gray dashed line).
Visualization: The RSI line changes color based on its value (purple for normal, red for overbought, green for oversold) and is plotted below the price chart.
Background Fill for RSI:
Overbought Area: Shaded red when RSI is above 70.
Oversold Area: Shaded green when RSI is below 30.
Bullish and Bearish Divergence Detection:
Bullish Divergence: Occurs when price forms a lower low, but RSI forms a higher low, indicating potential upward reversal.
Visualization: Bullish divergence points are marked with a green line and labeled "Bull."
Bearish Divergence: Occurs when price forms a higher high, but RSI forms a lower high, indicating potential downward reversal.
Visualization: Bearish divergence points are marked with a red line and labeled "Bear."
Alerts: Conditions for bullish and bearish divergences trigger alerts.
Settings
VWAP Settings:
hideonDWM: Option to hide VWAP on daily or higher timeframes.
src: Source for VWAP calculation (default is hlc3 - (high + low + close)/3).
offset: Offset for plotting the VWAP.
RSI Settings:
rsiLengthInput: Period length for RSI calculation (default is 14).
rsiSourceInput: Source for RSI calculation (default is close price).
maTypeInput: Type of moving average applied to RSI (options: SMA, EMA).
maLengthInput: Length of the moving average applied to RSI.
How to Use
Trend Identification: Use VWAP to identify the average price level and market trend. If the price is above VWAP, it suggests an uptrend, and if below, it suggests a downtrend.
Overbought/Oversold Conditions: Use RSI to identify potential reversal points. RSI above 70 indicates overbought conditions, and below 30 indicates oversold conditions.
Divergence: Look for bullish or bearish divergences between price and RSI to anticipate potential trend reversals.
Conclusion
By combining VWAP and RSI, this indicator provides a robust framework for analyzing market conditions, identifying trends, and making more informed trading decisions. Enhance your trading strategy today with the VWAP with RSI Indicator!
Auto Volume Spread Analysis (VSA) [TANHEF]Auto Volume Spread Analysis (visible volume and spread bars auto-scaled): Understanding Market Intentions through the Interpretation of Volume and Price Movements.
All the sections below contain the same descriptions as my other indicator "Volume Spread Analysis" with the exception of 'Auto Scaling'.
█ Auto-Scaling
This indicator auto-scales spread bars to match the visible volume bars, unlike the previous "Volume Spread Analysis " version which limited the number of visible spread bars to a fixed count. The auto-scaling feature allows for easier navigation through historical data, enabling both more historical spread bars to be viewed and more historical VSA pattern labels being displayed without requiring using the bar replay tool. Please note that this indicator’s auto-scaling feature recalculates the visible bars on the chart, causing the indicator to reload whenever the chart is moved.
Auto-scaled spread bars have two display options (set via 'Spread Bars Method' setting):
Lines: a bar lookback limit of 500 bars.
Polylines: no bar lookback limit as only plotted on visible bars on chart, which uses multiple polylines are used.
█ Simple Explanation:
The Volume Spread Analysis (VSA) indicator is a comprehensive tool that helps traders identify key market patterns and trends based on volume and spread data. This indicator highlights significant VSA patterns and provides insights into market behavior through color-coded volume/spread bars and identification of bars indicating strength, weakness, and neutrality between buyers and sellers. It also includes powerful volume and spread forecasting capabilities.
█ Laws of Volume Spread Analysis (VSA):
The origin of VSA begins with Richard Wyckoff, a pivotal figure in its development. Wyckoff made significant contributions to trading theory, including the formulation of three basic laws:
The Law of Supply and Demand: This fundamental law states that supply and demand balance each other over time. High demand and low supply lead to rising prices until demand falls to a level where supply can meet it. Conversely, low demand and high supply cause prices to fall until demand increases enough to absorb the excess supply.
The Law of Cause and Effect: This law assumes that a 'cause' will result in an 'effect' proportional to the 'cause'. A strong 'cause' will lead to a strong trend (effect), while a weak 'cause' will lead to a weak trend.
The Law of Effort vs. Result: This law asserts that the result should reflect the effort exerted. In trading terms, a large volume should result in a significant price move (spread). If the spread is small, the volume should also be small. Any deviation from this pattern is considered an anomaly.
█ Volume and Spread Analysis Bars:
Display: Volume and spread bars that consist of color coded levels, with the spread bars scaled to match the volume bars. A displayable table (Legend) of bar colors and levels can give context and clarify to each volume/spread bar.
Calculation: Levels are calculated using multipliers applied to moving averages to represent key levels based on historical data: low, normal, high, ultra. This method smooths out short-term fluctuations and focuses on longer-term trends.
Low Level: Indicates reduced volatility and market interest.
Normal Level: Reflects typical market activity and volatility.
High Level: Indicates increased activity and volatility.
Ultra Level: Identifies extreme levels of activity and volatility.
This illustrates the appearance of Volume and Spread bars when scaled and plotted together:
█ Forecasting Capabilities:
Display: Forecasted volume and spread levels using predictive models.
Calculation: Volume and Spread prediction calculations differ as volume is linear and spread is non-linear.
Volume Forecast (Linear Forecasting): Predicts future volume based on current volume rate and bar time till close.
Spread Forecast (Non-Linear Dynamic Forecasting): Predicts future spread using a dynamic multiplier, less near midpoint (consolidation) and more near low or high (trending), reflecting non-linear expansion.
Moving Averages: In forecasting, moving averages utilize forecasted levels instead of actual levels to ensure the correct level is forecasted (low, normal, high, or ultra).
The following compares forecasted volume with actual resulting volume, highlighting the power of early identifying increased volume through forecasted levels:
█ VSA Patterns:
Criteria and descriptions for each VSA pattern are available as tooltips beside them within the indicator’s settings. These tooltips provide explanations of potential developments based on the volume and spread data.
Signs of Strength (🟢): Patterns indicating strong buying pressure and potential market upturns.
Down Thrust
Selling Climax
No Effort ➤ Bearish Result
Bearish Effort ➤ No Result
Inverse Down Thrust
Failed Selling Climax
Bull Outside Reversal
End of Falling Market (Bag Holder)
Pseudo Down Thrust
No Supply
Signs of Weakness (🔴): Patterns indicating strong selling pressure and potential market downturns.
Up Thrust
Buying Climax
No Effort ➤ Bullish Result
Bullish Effort ➤ No Result
Inverse Up Thrust
Failed Buying Climax
Bear Outside Reversal
End of Rising Market (Bag Seller)
Pseudo Up Thrust
No Demand
Neutral Patterns (🔵): Patterns indicating market indecision and potential for continuation or reversal.
Quiet Doji
Balanced Doji
Strong Doji
Quiet Spinning Top
Balanced Spinning Top
Strong Spinning Top
Quiet High Wave
Balanced High Wave
Strong High Wave
Consolidation
Bar Patterns (🟡): Common candlestick patterns that offer insights into market sentiment. These are required in some VSA patterns and can also be displayed independently.
Bull Pin Bar
Bear Pin Bar
Doji
Spinning Top
High Wave
Consolidation
This demonstrates the acronym and descriptive options for displaying bar patterns, with the ability to hover over text to reveal the descriptive text along with what type of pattern:
█ Alerts:
VSA Pattern Alerts: Notifications for identified VSA patterns at bar close.
Volume and Spread Alerts: Alerts for confirmed and forecasted volume/spread levels (Low, High, Ultra).
Forecasted Volume and Spread Alerts: Alerts for forecasted volume/spread levels (High, Ultra) include a minimum percent time elapsed input to reduce false early signals by ensuring sufficient bar time has passed.
█ Inputs and Settings:
Indicator Bar Color: Select color schemes for bars (Normal, Detail, Levels).
Indicator Moving Average Color: Select schemes for bars (Fill, Lines, None).
Price Bar Colors: Options to color price bars based on VSA patterns and volume levels.
Legend: Display a table of bar colors and levels for context and clarity of volume/spread bars.
Forecast: Configure forecast display and prediction details for volume and spread.
Average Multipliers: Define multipliers for different levels (Low, High, Ultra) to refine the analysis.
Moving Average: Set volume and spread moving average settings.
VSA: Select the VSA patterns to be calculated and displayed (Strength, Weakness, Neutral).
Bar Patterns: Criteria for bar patterns used in VSA (Doji, Bull Pin Bar, Bear Pin Bar, Spinning Top, Consolidation, High Wave).
Colors: Set exact colors used for indicator bars, indicator moving averages, and price bars.
More Display Options: Specify how VSA pattern text is displayed (Acronym, Descriptive), positioning, and sizes.
Alerts: Configure alerts for VSA patterns, volume, and spread levels, including forecasted levels.
█ Usage:
The Volume Spread Analysis indicator is a helpful tool for leveraging volume spread analysis to make informed trading decisions. It offers comprehensive visual and textual cues on the chart, making it easier to identify market conditions, potential reversals, and continuations. Whether analyzing historical data or forecasting future trends, this indicator provides insights into the underlying factors driving market movements.
Heads UpAn indicator that gives you the "heads up" that that bullish/ bearish strength is increasing.
I wanted an indicator that could give me the "heads up" that bullish/ bearish strength is increasing. This would help me get into a breakout early or avoid entering a breakout that had a high probability of failure.
Here are my definitions for this indicator:
My bull bar definition:
- A green candle that closes above 75% of it's candle range.
- The candle's body does not overlap the previous candle's body. Tails/ wicks CAN overlap.
My bear bar definition:
- A red candle that closes below 75% of it's candle range.
- the candle's body does not overlap the previous candle's body. Tails/ ticks CAN overlap.
Bullish strength increasing (arrow up):
- Bull bars are increasing in size (the candle's range) compared to previous 5 bars.
- 2 consecutive bull bars.
Bearish strength increasing (arrow down):
- Bear bars are increasing in size (the candle's range) compared to previous 5 bars.
- 2 consecutive bear bars.
You will not see this indicator trigger very often but when it does - it's because there is a change in bullish bearish strength.
Things to be aware of:
Use the indicator in line with the context of the previous trend. You will get triggers that fail. These are usually because they appear counter trend. When in doubt zoom out.
It will not call every successful breakout. If you understand the definitions you'll understand why it appears.
This is my first indicator and used for my personal use. Feedback and other ideas are welcome.
CandleAnalysisLibrary "CandleAnalysis"
A collection of frequently used candle analysis functions in my scripts.
isBullish(barsBack)
Checks if a specific bar is bullish.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar is bullish, otherwise returns false.
isBearish(barsBack)
Checks if a specific bar is bearish.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar is bearish, otherwise returns false.
isBE(barsBack)
Checks if a specific bar is break even.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar is break even, otherwise returns false.
getBodySize(barsBack, inPriceChg)
Calculates a specific candle's body size.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
inPriceChg (bool) : (bool) True to return the body size as a price change value. The default is false (in points).
Returns: The candle's body size in points.
getTopWickSize(barsBack, inPriceChg)
Calculates a specific candle's top wick size.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
inPriceChg (bool) : (bool) True to return the wick size as a price change value. The default is false (in points).
Returns: The candle's top wick size in points.
getBottomWickSize(barsBack, inPriceChg)
Calculates a specific candle's bottom wick size.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
inPriceChg (bool) : (bool) True to return the wick size as a price change value. The default is false (in points).
Returns: The candle's bottom wick size in points.
getBodyPercent(barsBack)
Calculates a specific candle's body size as a percentage of its entire size including its wicks.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: The candle's body size percentage.
isHammer(fib, bullish, barsBack)
Checks if a specific bar is a hammer candle based on a given fibonacci level.
Parameters:
fib (float) : (float) The fibonacci level to base candle's body on. The default is 0.382.
bullish (bool) : (bool) True if the candle must to be green. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a hammer candle, otherwise returns false.
isShootingStar(fib, bearish, barsBack)
Checks if a specific bar is a shooting star candle based on a given fibonacci level.
Parameters:
fib (float) : (float) The fibonacci level to base candle's body on. The default is 0.382.
bearish (bool) : (bool) True if the candle must to be red. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a shooting star candle, otherwise returns false.
isDoji(wickSize, bodySize, barsBack)
Checks if a specific bar is a doji candle based on a given wick and body size.
Parameters:
wickSize (float) : (float) The maximum top wick size compared to the bottom and vice versa. The default is 1.5.
bodySize (float) : (bool) The maximum body size as a percentage compared to the entire candle size. The default is 5.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a doji candle.
isBullishEC(gapTolerance, rejectionWickSize, engulfWick, barsBack)
Checks if a specific bar is a bullish engulfing candle.
Parameters:
gapTolerance (int)
rejectionWickSize (int) : (int) The maximum top wick size compared to the body as a percentage. The default is 10.
engulfWick (bool) : (bool) True if the engulfed candle's wick requires to be engulfed as well. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a bullish engulfing candle.
isBearishEC(gapTolerance, rejectionWickSize, engulfWick, barsBack)
Checks if a specific bar is a bearish engulfing candle.
Parameters:
gapTolerance (int)
rejectionWickSize (int) : (int) The maximum bottom wick size compared to the body as a percentage. The default is 10.
engulfWick (bool) : (bool) True if the engulfed candle's wick requires to be engulfed as well. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a bearish engulfing candle.
MarcosLibraryLibrary "MarcosLibrary"
A colection of frequently used functions in my scripts.
bullFibRet(priceLow, priceHigh, fibLevel)
Calculates a bullish fibonacci retracement value.
Parameters:
priceLow (float) : (float) The lowest price point.
priceHigh (float) : (float) The highest price point.
fibLevel (float) : (float) The fibonacci level to calculate.
Returns: The fibonacci value of the given retracement level.
bearFibRet(priceLow, priceHigh, fibLevel)
Calculates a bearish fibonacci retracement value.
Parameters:
priceLow (float) : (float) The lowest price point.
priceHigh (float) : (float) The highest price point.
fibLevel (float) : (float) The fibonacci level to calculate.
Returns: The fibonacci value of the given retracement level.
bullFibExt(priceLow, priceHigh, thirdPivot, fibLevel)
Calculates a bullish fibonacci extension value.
Parameters:
priceLow (float) : (float) The lowest price point.
priceHigh (float) : (float) The highest price point.
thirdPivot (float) : (float) The third price point.
fibLevel (float) : (float) The fibonacci level to calculate.
Returns: The fibonacci value of the given extension level.
bearFibExt(priceLow, priceHigh, thirdPivot, fibLevel)
Calculates a bearish fibonacci extension value.
Parameters:
priceLow (float) : (float) The lowest price point.
priceHigh (float) : (float) The highest price point.
thirdPivot (float) : (float) The third price point.
fibLevel (float) : (float) The fibonacci level to calculate.
Returns: The fibonacci value of the given extension level.
isBullish(barsBack)
Checks if a specific bar is bullish.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar is bullish, otherwise returns false.
isBearish(barsBack)
Checks if a specific bar is bearish.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar is bearish, otherwise returns false.
isBE(barsBack)
Checks if a specific bar is break even.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar is break even, otherwise returns false.
getBodySize(barsBack, inPriceChg)
Calculates a specific candle's body size.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
inPriceChg (bool) : (bool) True to return the body size as a price change value. The default is false (in points).
Returns: The candle's body size in points.
getTopWickSize(barsBack, inPriceChg)
Calculates a specific candle's top wick size.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
inPriceChg (bool) : (bool) True to return the wick size as a price change value. The default is false (in points).
Returns: The candle's top wick size in points.
getBottomWickSize(barsBack, inPriceChg)
Calculates a specific candle's bottom wick size.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
inPriceChg (bool) : (bool) True to return the wick size as a price change value. The default is false (in points).
Returns: The candle's bottom wick size in points.
getBodyPercent(barsBack)
Calculates a specific candle's body size as a percentage of its entire size including its wicks.
Parameters:
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: The candle's body size percentage.
isHammer(fib, bullish, barsBack)
Checks if a specific bar is a hammer candle based on a given fibonacci level.
Parameters:
fib (float) : (float) The fibonacci level to base candle's body on. The default is 0.382.
bullish (bool) : (bool) True if the candle must to be green. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a hammer candle, otherwise returns false.
isShootingStar(fib, bearish, barsBack)
Checks if a specific bar is a shooting star candle based on a given fibonacci level.
Parameters:
fib (float) : (float) The fibonacci level to base candle's body on. The default is 0.382.
bearish (bool) : (bool) True if the candle must to be red. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a shooting star candle, otherwise returns false.
isDoji(wickSize, bodySize, barsBack)
Checks if a specific bar is a doji candle based on a given wick and body size.
Parameters:
wickSize (float) : (float) The maximum top wick size compared to the bottom and vice versa. The default is 1.5.
bodySize (float) : (bool) The maximum body size as a percentage compared to the entire candle size. The default is 5.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a doji candle.
isBullishEC(gapTolerance, rejectionWickSize, engulfWick, barsBack)
Checks if a specific bar is a bullish engulfing candle.
Parameters:
gapTolerance (int)
rejectionWickSize (int) : (int) The maximum top wick size compared to the body as a percentage. The default is 10.
engulfWick (bool) : (bool) True if the engulfed candle's wick requires to be engulfed as well. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a bullish engulfing candle.
isBearishEC(gapTolerance, rejectionWickSize, engulfWick, barsBack)
Checks if a specific bar is a bearish engulfing candle.
Parameters:
gapTolerance (int)
rejectionWickSize (int) : (int) The maximum bottom wick size compared to the body as a percentage. The default is 10.
engulfWick (bool) : (bool) True if the engulfed candle's wick requires to be engulfed as well. The default is false.
barsBack (int) : (int) The number of bars to look back. The default is 0 (current bar).
Returns: True if the bar matches the requirements of a bearish engulfing candle.
Scaled Historical ATR [SS]Hello again everyone,
This is the Scaled ATR Range indicator. This was done in response to an article/analysis I posted regarding the expected high and range on SPX. I would encourage you to read it here:
Essentially, I took SPX data, scaled it to correct for inflation, then calculated the ATR for Bullish years to get our average range to expect and our close range to expected.
I accomplished this analysis using Excel; however, I figured Pinescript would handle this type of task more elegantly, and I was correct!
This indicator is the result.
What it does:
This indicator permits the analyst to select a historic period in time. The indicator will then scale the period into returns and convert the range to a corrected range based on the current position of the ticker. How it does this is by converting the returns of the historic period selected, then multiplying the returns by the current period open, to ensure that the range amounts are corrected for inflation and natural growth of a ticker.
I say analyst because this indicator is intended to be used by both professional and recreational analysts, to give them an easy way to:
a) Scale historic data and correct it based on the current rate; and
b) Offer insight into a ticker’s ATR and behaviour during bullish and bearish periods.
Prior to this indicator, the only way to do this would be manually or the use of statistical software.
How to use?
The indicator’s use is quite simple. Once launched, the indicator will ask the user to input a timeframe period that the user is interested in assessing. In the main chart above, I chose SPX between 1995 and 2001.
The user can further filter down the data using the settings menu. In the settings menu, there is an option to filter by “All”, “Bullish Periods” or “Bearish Periods”.
Filtering by “All”
Filtering by “All” will include all candles selected within the timeframe. This includes both bearish and bullish candles. It will give you the averaged out range for the entire period of time, including both bearish and bullish instances.
Filtering by “Bullish”
Filtering by “Bullish” will omit any red candles from the analysis. It will only return the ATR ranges for green, bullish candles.
Filtering by “Bearish”
Inverse to filtering by Bullish, if you filter by Bearish, it will only include the red, bearish candles in the analysis.
My suggestion? If you are trying to determine t he likely outcome of a bullish year, filter by Bullish instances. If you want the likely outcome of a bearish year, filter by Bearish.
Other features of the Indicator:
The indicator will display the current period statistics. In the main chart above, you can see that the current ranges for this year are displayed. This allows you to do a side by side comparison of the current period vs. the historic period you are looking at. This can alert you to further upside, further downside and the anticipated close range. It can also alert you to whether or not we are following a similar trajectory as the historical periods you are looking at.
As well, the indicator will list target prices for the current period based on the historical periods you are looking at. This helps to put things into perspective.
Concluding Remarks
And that is the indicator in a nutshell! I encourage you to read the article I linked above to see how you may use it in an analysis. This would be the best example of a real world application of this indicator!
Otherwise, I hope you enjoy and, as always, safe trades!
Flush Percent RangeFans of Woodies CCI may recognize the approach to this one. This is my attempt at using the same methods but for taking the highs and lows into account without the standard deviation of the CCI. The smoothness of other oscillators may not be ideal however the Williams Percent Range is a fast stochastic that also operates within a channel. This provides an alternative yet still complex view for the virtuoso. A unique feature is total utilization of the weighted moving average, from the standard to the more complex. A fun fact is the Hull Moving Average is actually calculated using weighted moving averages.
How to use:
The base length is for accuracy, the fast length is for catching all the moves(even the wrong ones sometimes.)
The bars back option will not flip the histogram/base trend to its bullish/bearish alternative until the base plot remains on the latter half of the oscillator for a certain number of bars. This can be set to zero if desired.
The factor controls the chop on the various levels. A higher number will increase it.
The oscillator levels are measuring slope, price relative to the average, and a summation of percent changes between the two. Both the baseline/histogram and the levels have color coding for bullishness, bearishness, and indecision(depending on the factor.) The fast line matches the indecision color by default. This is all customizable.
There are many potential ways to trade with this indicator. From hooks back toward the trend and range line crossovers to divergence and reversals. It's important to note the current performance of the oscillator levels. Time cycles may come in handy along with other forecasting tools.
Lastly, there are optional linear regression lines plotted on the chart. They're synchronized to the lengths in the oscillator. This is an additional visual aid to provide context to the direction of the channel.
Overall the Flush Percent Range is for analyzing multiple regression models within a single price channel. No smoothing, fast averages, and specified timeframes of highs/lows. Credit to Larry Williams for the original calculation and Ken Woods for design/methodology inspiration.
MTF Regime Filter II [CHE]Regime Filter II - Comprehensive Guide
Introduction
The "Regime Filter II " indicator is a tool designed to help traders identify market trends by smoothing price data and applying a color scheme to visualize bullish and bearish conditions. This guide provides a detailed explanation of the script's functionality, benefits, and how to use it effectively in TradingView.
Key Benefits
1. Trend Identification: Smooths price data to highlight underlying trends, making it easier for traders to spot potential buying or selling opportunities.
2. Visual Clarity: Uses distinct color schemes to differentiate between bullish and bearish market conditions, enhancing visual analysis.
3. Customization: Offers various settings to adjust smoothing and averaging lengths, choose between different color schemes, and set visibility for different timeframes.
4. Neutral Candle Option: Provides an option to display neutral candles for clearer visual representation when market conditions are neither strongly bullish nor bearish.
5. Timeframe Adaptability: Includes functions to determine appropriate step sizes based on different timeframes, ensuring the indicator remains accurate across various trading periods.
Script Breakdown
1. Indicator Declaration
The script starts by declaring itself as a TradingView indicator using the latest version of Pine Script. This sets up the framework for the indicator's functionality.
2. User Inputs for Smoothing and Averaging Lengths
The script allows users to input specific lengths for smoothing and averaging intervals. These inputs are crucial for determining how the price data is processed to identify trends. By adjusting these lengths, users can fine-tune the sensitivity of the indicator to market movements.
3. Color Scheme Selection
Users can choose between two color schemes: "Traditional" and "WT1 0 Rule". The selected color scheme will determine how the indicator colors the candles to represent bullish and bearish conditions. This customization enhances the visual appeal and usability of the indicator according to personal preferences.
4. Settings for Timeframe Visibility
The script includes settings that allow users to specify which timeframes the indicator should be visible on. This feature helps traders focus on the most relevant timeframes for their trading strategies. Additionally, users can set the number of recent candles to display, providing a clear view of the most recent market trends.
5. Color Definitions
The indicator defines specific colors for bearish and bullish candles. Bearish candles are colored red, while bullish candles are green. These color definitions are applied based on the selected color scheme and the calculated trend, providing a quick visual reference for market conditions.
6. Time Constants
To manage different timeframes effectively, the script uses constants that represent various time intervals in milliseconds, such as minutes, hours, and days. These constants are used to convert timeframes into a format that the script can work with to determine the appropriate step size for calculations.
7. Step Size Determination
The script includes a function that determines the step size based on the selected timeframe. This function ensures that the indicator adapts to different timeframes, maintaining its accuracy and relevance across various trading periods. The step size is calculated based on time intervals, and appropriate labels (like "60", "240", "1D") are assigned.
- For timeframes less than or equal to 1 minute, the step size is set to "60".
- For timeframes less than or equal to 5 minutes, the step size is set to "240".
- For timeframes less than or equal to 1 hour, the step size is set to "1D" (daily).
- For timeframes less than or equal to 4 hours, the step size is set to "3D" (three days).
- For timeframes less than or equal to 12 hours, the step size is set to "7D" (weekly).
- For timeframes less than or equal to 1 day, the step size is set to "1M" (monthly).
- For timeframes less than or equal to 1 week, the step size is set to "3M" (three months).
- For all other timeframes, the step size is set to "12M" (yearly).
8. Trend Calculation
The core of the indicator is its ability to calculate market trends. Here's a detailed breakdown of how the `calculateTrend` function works:
- Initialization: Variables for the middle price and scale, and summations of high/low prices and ranges, are initialized.
- Summation Loop: A loop runs over the smoothing length to calculate the sum of high and low prices and their range.
- Middle and Scale Calculation: The middle price is determined as the average of high/low sums, and the scale is calculated as a fraction of the average range.
- Normalization: The high, low, and close prices are normalized based on the middle price and scale.
- HT Calculation: The normalized prices are smoothed using a simple moving average (SMA).
- Frequency and Exponential Calculations: The frequency and related constants (a, c1, c2, c3) are calculated for further smoothing.
- Smoothed Moving Average (SMA): A smoothed moving average is computed using the HT values and exponential constants.
- WT1 and WT2 Calculation: The final smoothed values (WT1) and their average (WT2) are derived.
9. Color Application Based on Trend
Once the trend is calculated, the script applies the appropriate color to the candles based on the selected color scheme. This function ensures that the visual representation of the trend is consistent with the user’s preferences.
10. Label Plotting for Timeframes
If the option to display timeframe labels is enabled, the script plots labels on the chart to indicate the current timeframe. This feature helps users quickly identify which timeframe they are analyzing.
11. Shape Plotting Based on Trend and Color Scheme
The indicator plots shapes (squares) on the chart based on the calculated trend and selected color scheme. These shapes provide an additional visual cue for market conditions, enhancing the overall clarity of the indicator.
12. Neutral Candle Color Option
The script includes an option to set the color of neutral candles when market conditions are neither strongly bullish nor bearish. This option helps traders better visualize periods of market indecision.
Summary
The "Regime Filter II " is a powerful and customizable tool for traders, offering clear visual cues for market trends and adaptability to various timeframes. By smoothing price data and applying intuitive color schemes, it helps traders make more informed decisions. With features like adjustable smoothing lengths, multiple color schemes, and optional neutral candle displays, this indicator enhances market analysis and trading strategy development. By following this comprehensive guide, traders can effectively utilize the "Regime Filter II " indicator to enhance their market analysis and make more informed trading decisions.
Best regards
Advanced Gold Scalping Strategy with RSI Divergence# Advanced Gold Scalping Strategy with RSI Divergence
## Overview
This Pine Script implements an advanced scalping strategy for gold (XAUUSD) trading, primarily designed for the 1-minute timeframe. The strategy utilizes the Relative Strength Index (RSI) indicator along with its moving average to identify potential trade setups based on divergences between price action and RSI movements.
## Key Components
### 1. RSI Calculation
- Uses a customizable RSI length (default: 60)
- Allows selection of the source for RSI calculation (default: close price)
### 2. Moving Average of RSI
- Supports multiple MA types: SMA, EMA, SMMA (RMA), WMA, VWMA, and Bollinger Bands
- Customizable MA length (default: 3)
- Option to display Bollinger Bands with adjustable standard deviation multiplier
### 3. Divergence Detection
- Implements both bullish and bearish divergence identification
- Uses pivot high and pivot low points to detect divergences
- Allows for customization of lookback periods and range for divergence detection
### 4. Entry Conditions
- Long Entry: Bullish divergence when RSI is below 40
- Short Entry: Bearish divergence when RSI is above 60
### 5. Trade Management
- Stop Loss: Customizable, default set to 11 pips
- Take Profit: Customizable, default set to 33 pips
### 6. Visualization
- Plots RSI line and its moving average
- Displays horizontal lines at 30, 50, and 70 RSI levels
- Shows Bollinger Bands when selected
- Highlights divergences with "Bull" and "Bear" labels on the chart
## Input Parameters
- RSI Length: Adjusts the period for RSI calculation
- RSI Source: Selects the price source for RSI (close, open, high, low, hl2, hlc3, ohlc4)
- MA Type: Chooses the type of moving average applied to RSI
- MA Length: Sets the period for the moving average
- BB StdDev: Adjusts the standard deviation multiplier for Bollinger Bands
- Show Divergence: Toggles the display of divergence labels
- Stop Loss: Sets the stop loss distance in pips
- Take Profit: Sets the take profit distance in pips
## Strategy Logic
1. **RSI Calculation**:
- Computes RSI using the specified length and source
- Calculates the chosen type of moving average on the RSI
2. **Divergence Detection**:
- Identifies pivot points in both price and RSI
- Checks for higher lows in RSI with lower lows in price (bullish divergence)
- Checks for lower highs in RSI with higher highs in price (bearish divergence)
3. **Trade Entry**:
- Enters a long position when a bullish divergence is detected and RSI is below 40
- Enters a short position when a bearish divergence is detected and RSI is above 60
4. **Position Management**:
- Places a stop loss order at the entry price ± stop loss pips (depending on the direction)
- Sets a take profit order at the entry price ± take profit pips (depending on the direction)
5. **Visualization**:
- Plots the RSI and its moving average
- Draws horizontal lines for overbought/oversold levels
- Displays Bollinger Bands if selected
- Shows divergence labels on the chart for identified setups
## Usage Instructions
1. Apply the script to a 1-minute XAUUSD (Gold) chart in TradingView
2. Adjust the input parameters as needed:
- Increase RSI Length for less frequent but potentially more reliable signals
- Modify MA Type and Length to change the sensitivity of the RSI moving average
- Adjust Stop Loss and Take Profit levels based on current market volatility
3. Monitor the chart for Bull (long) and Bear (short) labels indicating potential trade setups
4. Use in conjunction with other analysis and risk management techniques
## Considerations
- This strategy is designed for short-term scalping and may not be suitable for all market conditions
- Always backtest and forward test the strategy before using it with real capital
- The effectiveness of divergence-based strategies can vary depending on market trends and volatility
- Consider using additional confirmation signals or filters to improve the strategy's performance
Remember to adapt the strategy parameters to your risk tolerance and trading style, and always practice proper risk management.
Inside Bar Setup [as]Inside Bar Setup Indicator Description
The **Inside Bar Setup ** indicator is a powerful tool for traders to identify and visualize inside bar patterns on their charts. An inside bar pattern occurs when the current candle's high is lower than the previous candle's high, and the current candle's low is higher than the previous candle's low. This pattern can indicate a potential breakout or a continuation of the existing trend.
Key Features:
1. **Highlight Inside Bar Patterns:**
- The indicator highlights inside bar patterns with distinct colors for bullish and bearish bars. Bullish inside bars are colored with the user-defined bull bar color (default lime), and bearish inside bars are colored with the user-defined bear bar color (default maroon).
2. **Marking Mother Candle High and Low:**
- The high and low of the mother candle (the candle preceding the inside bar) are marked with horizontal lines. The high is marked with a green line, and the low is marked with a red line.
- These levels are labeled as "Range High" and "Range Low" respectively, with the labels displayed a few bars to the right for clarity. The labels have a semi-transparent background for better visibility.
3. **Target Levels:**
- The indicator calculates and plots potential target levels (T1 and T2) for both long and short positions based on user-defined multipliers of the mother candle's range.
- For long positions, T1 and T2 are plotted above the mother candle's high.
- For short positions, T1 and T2 are plotted below the mother candle's low.
- These target levels are optional and can be toggled on or off via the input settings.
4. **Customizable Inputs:**
- **Colors:**
- Bull Bar Color: Customize the color for bullish inside bars.
- Bear Bar Color: Customize the color for bearish inside bars.
- **Long Targets:**
- Show Long T1: Toggle the display of the first long target.
- Show Long T2: Toggle the display of the second long target.
- Long T1: Multiplier for the first long target above the mother candle's high.
- Long T2: Multiplier for the second long target above the mother candle's high.
- **Short Targets:**
- Show Short T1: Toggle the display of the first short target.
- Show Short T2: Toggle the display of the second short target.
- Short T1: Multiplier for the first short target below the mother candle's low.
- Short T2: Multiplier for the second short target below the mother candle's low.
5. **New Day Detection:**
- The indicator detects the start of a new day and clears the inside bar arrays, ensuring that the pattern detection is always current.
#### Usage:
- Add the indicator to your TradingView chart.
- Customize the inputs to match your trading strategy.
- Watch for highlighted inside bars to identify potential breakout opportunities.
- Use the marked range highs and lows, along with the calculated target levels, to plan your trades.
This indicator is ideal for traders looking to capitalize on inside bar patterns and their potential breakouts. It provides clear visual cues and customizable settings to enhance your trading decisions.
Note:
This indicator is based on famous 15 min inside bar strategy shared by Subashish Pani on his youtube channel Power of stocks. Please watch his videos to use this indicator for best results.
Quantiple Direction IndexThis indicator indicates market trends by analyzing the following signals:
1. RSI which is a momentum oscillator
2. Directional Movement Index (DMI) which measures the direction of the movement
3. Price in comparison to EMA 13 and 21 to determine whether the trend is clear or there is an ambiguity
4. ADX that shows the strength of the momentum
Scoring logic
While we have kept the source code open which gives the scoring logic, for ease of the user, I am summarizing the scoring logic
A. We break down RSI and DMI into a 9 point scale (-4 to +4) from extremely bearish to bullish. Then we give equal weight to both and come out with a direction score.
B. We use EMA to determine if their is clarity in the price trend. While the direction is deduced from point A, if there is clarity we know that the confidence on the direction is high. If EMA 13 is higher than EMA 21 and the price is above EMA 13, then we assign it as a score of +1 as we get clear bullish trend. Similarly if EMA 13 is below EMA 21 and the price is below both the EMAs then we assign it a score of -1 as we get clear bearish trend. Anything else is considered as inconclusive and given a score of 0
C. We use ADX to determine the strength of the directional momentum. It is like acceleration. We use ADX score as an strength adjustment factor. If the value is above 25 - we multiply A+B by 1.25. Similarly we multiply it by 0.75 if the strength is weak and no change if the strength is neutral.
Finally this indicator categorizes market direction into five levels:
- Very Bullish
- Bullish
- Neutral
- Bearish
- Very Bearish
Scores range from +6 (very bullish) to -6 (very bearish), with the user setting thresholds for each category. The midpoint between Bullish and Bearish defines the neutral zone.
Again all the exact values are in the code and the user can also customize as per their trading system.
Why does it make sense to combine these different indicators rather than looking at them in isolation?
We give equal weight to RSI and DMI to derive the direction of the price movement. Using two different indicators provide a better confirmation on the direction. However, this alone is not sufficient.
We want clarity of the direction and for that we use the EMA score (please refer to point B above). If we have clarity, the probability of the direction being right goes up.
Once we know the direction, we want to know what is the strength of that direction. This point is very valuable for an option trader. This is where this indicator brings value.
Please note that by looking at these indicators in isolation one can get a sense of direction or a sense of strength of the direction. But, when you combine them, you get whether the direction move is with strength or not. If you are into option trading, you will clearly understand the rational behind it when you look at the trading rules provided in this description. For example if one knows that the direction is bullish (which one can potentially get from RSI or DMI), one can either buy a call or sell a put. But one knows that not only the direction is bullish, but it has the right acceleration (strength of the momentum), then one will assign higher probability of higher profit from buying call than from selling put.
To summarize we have combined indicators to achieve the following
1. Get confirmation from two different indicators on the direction of the price movement (RSI and DMI)
2. Confirm that the direction is clear (Price relative to EMA)
3. Combine with the strength of the direction (ADX)
Direction, clarity of the direction and the strength of the directional movement is a valuable trading indicator in our opinion.
Suggested trading rules
1. Short strangle strategy when the trend is neutral with one's usual option selling quantity. Equal quantity on put and call.
2. Full quantity short put and half quantity short call when the trend is bullish.
3. Full quantity short put and call long when the indicator is very bullish.
4. Vice versa for bearish ( full call short, half put short) and very bearish (full call short, put long)
Suggested to use 5 min timeframe for scalping, 15 min for intraday positions, 1 hour for weekly and monthly positions, and daily/weekly for investments.
The value of this indicator oscillates between +6 to -6. You can tweak the range for V bullish, bullish, bearish, and v bearish. The values in between will default to the neutral zone.
Disclaimers:
1. While the creator has used this in the live market, no claim is being made on its effectiveness or profit making ability. Please use it for trading only after you have tested it and are satisfied.
2. There may be thousands or millions of better trader in this world than the creator of this script. The creator makes no claim of his intelligence or trading ability.
3. The creator has no intention of selling this particular script now or in future. This is purely for community use and there's no intention to make any monetary profit from it.
4. The creator is not requesting or soliciting anyone to like or promote this script. The creator is also not asking anyone to give him any business now or in future even if they like this script and benefit from it.
Chuck Dukas Market Phases of Trends (based on 2 Moving Averages)This script is based on the article “Defining The Bull And The Bear” by Chuck Duckas, published in Stocks & Commodities V. 25:13 (14-22); (S&C Bonus Issue, 2007).
The article “Defining The Bull And The Bear” discusses the concepts of “bullish” and “bearish” in relation to the price behavior of financial instruments. Chuck Dukas explains the importance of analyzing price trends and provides a framework for categorizing price activity into six phases. These phases, including recovery, accumulation, bullish, warning, distribution, and bearish, help to assess the quality of the price structure and guide decision-making in trading. Moving averages are used as tools for determining the context preceding the current price action, and the slope of a moving average is seen as an indicator of trend and price phase analysis.
The six phases of trends
// Definitions of Market Phases
recovery_phase = src > ma050 and src < ma200 and ma050 < ma200 // color: blue
accumulation_phase = src > ma050 and src > ma200 and ma050 < ma200 // color: purple
bullish_phase = src > ma050 and src > ma200 and ma050 > ma200 // color: green
warning_phase = src < ma050 and src > ma200 and ma050 > ma200 // color: yellow
distribution_phase = src < ma050 and src < ma200 and ma050 > ma200 // color: orange
bearish_phase = src < ma050 and src < ma200 and ma050 < ma200 // color red
Recovery Phase : This phase marks the beginning of a new trend after a period of consolidation or downtrend. It is characterized by the gradual increase in prices as the market starts to recover from previous losses.
Accumulation Phase : In this phase, the market continues to build a base as prices stabilize before making a significant move. It is a period of consolidation where buying and selling are balanced.
Bullish Phase : The bullish phase indicates a strong upward trend in prices with higher highs and higher lows. It is a period of optimism and positive sentiment in the market.
Warning Phase : This phase occurs when the bullish trend starts to show signs of weakness or exhaustion. It serves as a cautionary signal to traders and investors that a potential reversal or correction may be imminent.
Distribution Phase : The distribution phase is characterized by the market topping out as selling pressure increases. It is a period where supply exceeds demand, leading to a potential shift in trend direction.
Bearish Phase : The bearish phase signifies a strong downward trend in prices with lower lows and lower highs. It is a period of pessimism and negative sentiment in the market.
These rules of the six phases outline the cyclical nature of market trends and provide traders with a framework for understanding and analyzing price behavior to make informed trading decisions based on the current market phase.
60-period channel
The 60-period channel should be applied differently in each phase of the market cycle.
Recovery Phase : In this phase, the 60-period channel can help identify the beginning of a potential uptrend as price stabilizes or improves. Traders can look for new highs frequently in the 60-period channel to confirm the trend initiation or continuation.
Accumulation Phase : During the accumulation phase, the 60-period channel can highlight that the current price is sufficiently strong to be above recent price and longer-term price. Traders may observe new highs frequently in the 60-period channel as the slope of the 50-period moving average (SMA) trends upwards while the 200-period moving average (SMA) slope is losing its downward slope.
Bullish Phase : In the bullish phase, the 60-period channel showing a series of higher highs is crucial for confirming the uptrend. Additionally, traders should observe an upward-sloping 50-period SMA above an upward-sloping 200-period SMA for further validation of the bullish phase.
Warning Phase : When in the warning phase, the 60-period channel can provide insights into whether the current price is weaker than recent prices. Traders should pay attention to the relationship between the price close, the 50-period SMA, and the 200-period SMA to gauge the strength of the phase.
Distribution Phase : In the distribution phase, traders should look for new lows frequently in the 60-period channel, hinting at a weakening trend. It is crucial to observe that the 50-period SMA is still above the 200-period SMA in this phase.
Bearish Phase : Lastly, in the bearish phase, the 60-period channel reflecting a series of lower lows confirms the downtrend. Traders should also note that the price close is below both the 50-period SMA and the 200-period SMA, with the relationship of the 50-period SMA being less than the 200-period SMA.
By carefully analyzing the 60-period channel in each phase, traders can better understand market trends and make informed decisions regarding their investments.
Volume Spread Analysis [TANHEF]Volume Spread Analysis: Understanding Market Intentions through the Interpretation of Volume and Price Movements.
█ Simple Explanation:
The Volume Spread Analysis (VSA) indicator is a comprehensive tool that helps traders identify key market patterns and trends based on volume and spread data. This indicator highlights significant VSA patterns and provides insights into market behavior through color-coded volume/spread bars and identification of bars indicating strength, weakness, and neutrality between buyers and sellers. It also includes powerful volume and spread forecasting capabilities.
█ Laws of Volume Spread Analysis (VSA):
The origin of VSA begins with Richard Wyckoff, a pivotal figure in its development. Wyckoff made significant contributions to trading theory, including the formulation of three basic laws:
The Law of Supply and Demand: This fundamental law states that supply and demand balance each other over time. High demand and low supply lead to rising prices until demand falls to a level where supply can meet it. Conversely, low demand and high supply cause prices to fall until demand increases enough to absorb the excess supply.
The Law of Cause and Effect: This law assumes that a 'cause' will result in an 'effect' proportional to the 'cause'. A strong 'cause' will lead to a strong trend (effect), while a weak 'cause' will lead to a weak trend.
The Law of Effort vs. Result: This law asserts that the result should reflect the effort exerted. In trading terms, a large volume should result in a significant price move (spread). If the spread is small, the volume should also be small. Any deviation from this pattern is considered an anomaly.
█ Volume and Spread Analysis Bars:
Display: Volume and/or spread bars that consist of color coded levels. If both of these are displayed, the number of spread bars can be limited for visual appeal and understanding, with the spread bars scaled to match the volume bars. While automatic calculation of the number of visual bars for auto scaling is possible, it is avoided to prevent the indicator from reloading whenever the number of visual price bars on the chart is adjusted, ensuring uninterrupted analysis. A displayable table (Legend) of bar colors and levels can give context and clarify to each volume/spread bar.
Calculation: Levels are calculated using multipliers applied to moving averages to represent key levels based on historical data: low, normal, high, ultra. This method smooths out short-term fluctuations and focuses on longer-term trends.
Low Level: Indicates reduced volatility and market interest.
Normal Level: Reflects typical market activity and volatility.
High Level: Indicates increased activity and volatility.
Ultra Level: Identifies extreme levels of activity and volatility.
This illustrates the appearance of Volume and Spread bars when scaled and plotted together:
█ Forecasting Capabilities:
Display: Forecasted volume and spread levels using predictive models.
Calculation: Volume and Spread prediction calculations differ as volume is linear and spread is non-linear.
Volume Forecast (Linear Forecasting): Predicts future volume based on current volume rate and bar time till close.
Spread Forecast (Non-Linear Dynamic Forecasting): Predicts future spread using a dynamic multiplier, less near midpoint (consolidation) and more near low or high (trending), reflecting non-linear expansion.
Moving Averages: In forecasting, moving averages utilize forecasted levels instead of actual levels to ensure the correct level is forecasted (low, normal, high, or ultra).
The following compares forecasted volume with actual resulting volume, highlighting the power of early identifying increased volume through forecasted levels:
█ VSA Patterns:
Criteria and descriptions for each VSA pattern are available as tooltips beside them within the indicator’s settings. These tooltips provide explanations of potential developments based on the volume and spread data.
Signs of Strength (🟢): Patterns indicating strong buying pressure and potential market upturns.
Down Thrust
Selling Climax
No Effort → Bearish Result
Bearish Effort → No Result
Inverse Down Thrust
Failed Selling Climax
Bull Outside Reversal
End of Falling Market (Bag Holder)
Pseudo Down Thrust
No Supply
Signs of Weakness (🔴): Patterns indicating strong selling pressure and potential market downturns.
Up Thrust
Buying Climax
No Effort → Bullish Result
Bullish Effort → No Result
Inverse Up Thrust
Failed Buying Climax
Bear Outside Reversal
End of Rising Market (Bag Seller)
Pseudo Up Thrust
No Demand
Neutral Patterns (🔵): Patterns indicating market indecision and potential for continuation or reversal.
Quiet Doji
Balanced Doji
Strong Doji
Quiet Spinning Top
Balanced Spinning Top
Strong Spinning Top
Quiet High Wave
Balanced High Wave
Strong High Wave
Consolidation
Bar Patterns (🟡): Common candlestick patterns that offer insights into market sentiment. These are required in some VSA patterns and can also be displayed independently.
Bull Pin Bar
Bear Pin Bar
Doji
Spinning Top
High Wave
Consolidation
This demonstrates the acronym and descriptive options for displaying bar patterns, with the ability to hover over text to reveal the descriptive text along with what type of pattern:
█ Alerts:
VSA Pattern Alerts: Notifications for identified VSA patterns at bar close.
Volume and Spread Alerts: Alerts for confirmed and forecasted volume/spread levels (Low, High, Ultra).
Forecasted Volume and Spread Alerts: Alerts for forecasted volume/spread levels (High, Ultra) include a minimum percent time elapsed input to reduce false early signals by ensuring sufficient bar time has passed.
█ Inputs and Settings:
Display Volume and/or Spread: Choose between displaying volume bars, spread bars, or both with different lookback periods.
Indicator Bar Color: Select color schemes for bars (Normal, Detail, Levels).
Indicator Moving Average Color: Select schemes for bars (Fill, Lines, None).
Price Bar Colors: Options to color price bars based on VSA patterns and volume levels.
Legend: Display a table of bar colors and levels for context and clarity of volume/spread bars.
Forecast: Configure forecast display and prediction details for volume and spread.
Average Multipliers: Define multipliers for different levels (Low, High, Ultra) to refine the analysis.
Moving Average: Set volume and spread moving average settings.
VSA: Select the VSA patterns to be calculated and displayed (Strength, Weakness, Neutral).
Bar Patterns: Criteria for bar patterns used in VSA (Doji, Bull Pin Bar, Bear Pin Bar, Spinning Top, Consolidation, High Wave).
Colors: Set exact colors used for indicator bars, indicator moving averages, and price bars.
More Display Options: Specify how VSA pattern text is displayed (Acronym, Descriptive), positioning, and sizes.
Alerts: Configure alerts for VSA patterns, volume, and spread levels, including forecasted levels.
█ Usage:
The Volume Spread Analysis indicator is a helpful tool for leveraging volume spread analysis to make informed trading decisions. It offers comprehensive visual and textual cues on the chart, making it easier to identify market conditions, potential reversals, and continuations. Whether analyzing historical data or forecasting future trends, this indicator provides insights into the underlying factors driving market movements.
Expansion Candles by Alex EntrepreneurHey people! Thanks for using Expansion Candles. I designed this tool to help me identify price runs (expansions) based on consecutive bullish or bearish candle closes and then trade continuations on the lower timeframes. Here's what makes it awesome:
How Does It Work?
An “expansion” is confirmed after multiple closes above the previous candle’s high (in the bull case) or below the previous candle’s low (in the bear case) while also having a higher candle low than the previous candle (in the bull case) or having lower candle high that the previous candle (in the bear case). After an expansion is confirmed, then the indicator will be displayed on the next candle.
You can set the number of required candle closes that confirm an “expansion” by increasing or decreasing the "Required Candles For Valid Expansion" setting.
An expansion will continue until an “invalidation” event occurs this will cause the indicator to stop displaying.
This “invalidation” can either be a lower candle low than the previous candle (in the bull case) and a higher candle high than the previous candle (in the bear case), or a close below the previous candle’s low (in the bull case) or a close above the previous candle’s high (in the bear case).
You can choose whether you want to use candle highs and lows as invalidation or candle closes as invalidation by changing the “Invalidation Type” setting to either “Wick” or “Candle Close”.
Key Features
Price Run Detection : Identify when price is expanding through consecutive bullish or bearish candle closes. You can chose whether a wick or opposite candle close finishes the run.
Timeframe Selection : Select your preferred timeframe for expansion candles and then view the indicator on lower timeframes for precise continuation entries.
Custom Display Options : Tailor the way expansions are shown on your chart. Choose your bullish and bearish colours and then display expansions as coloured candles, background colours, boxes, or arrows.
Sensitivity Adjustment : Adjust the indicator's sensitivity by changing the number of "Required Candles For Valid Expansion" to suit your analysis.
Set Alerts : Detect new bullish or bearish expansions in your favourite instruments with customisable alerts.
Best,
Alex Entrepreneur
Johnny's Adjusted BB Buy/Sell Signal"Johnny's Adjusted BB Buy/Sell Signal" leverages Bollinger Bands and moving averages to provide dynamic buy and sell signals based on market conditions. This indicator is particularly useful for traders looking to identify strategic entry and exit points based on volatility and trend analysis.
How It Works
Bollinger Bands Setup: The indicator calculates Bollinger Bands using a specified length and multiplier. These bands serve to identify potential overbought (upper band) or oversold (lower band) conditions.
Moving Averages: Two moving averages are calculated — a trend moving average (trendMA) and a long-term moving average (longTermMA) — to gauge the market's direction over different time frames.
Market Phase Determination: The script classifies the market into bullish or bearish phases based on the relationship of the closing price to the long-term moving average.
Strong Buy and Sell Signals: Enhanced signals are generated based on how significantly the price deviates from the Bollinger Bands, coupled with the average candle size over a specified lookback period. The signals are adjusted based on whether the market is bullish or bearish:
In bullish markets, a strong buy signal is triggered if the price significantly drops below the lower Bollinger Band. Conversely, a strong sell signal is activated when the price rises well above the upper band.
In bearish markets, these signals are modified to be more conservative, adjusting the thresholds for triggering strong buy and sell signals.
Features:
Flexibility: Users can adjust the length of the Bollinger Bands and moving averages, as well as the multipliers and factors that determine the strength of buy and sell signals, making it highly customizable to different trading styles and market conditions.
Visual Aids: The script vividly plots the Bollinger Bands and moving averages, and signals are visually represented on the chart, allowing traders to quickly assess trading opportunities:
Regular buy and sell signals are indicated by simple shapes below or above price bars.
Strong buy and sell signals are highlighted with distinctive colors and placed prominently to catch the trader's attention.
Background Coloring: The background color changes based on the market phase, providing an immediate visual cue of the market's overall sentiment.
Usage:
This indicator is ideal for traders who rely on technical analysis to guide their trading decisions. By integrating both Bollinger Bands and moving averages, it provides a multi-faceted view of market trends and volatility, making it suitable for identifying potential reversals and continuation patterns. Traders can use this tool to enhance their understanding of market dynamics and refine their trading strategies accordingly.
FVG Positioning Average [LuxAlgo]The FVG Positioning Average indicator aims to uncover potential price levels of interest by averaging together recent Fair Value Gap (FVG) initiation levels.
This indicator is grounded in the theory that significant buying or selling activity is the primary catalyst for creating FVGs.
By averaging together the prices where each FVG initiated, we may potentially reveal where major participants are positioned.
🔶 USAGE
By analyzing the average price of bullish or bearish FVGs, users can identify potential support or resistance areas where the larger participants may re-enter or defend their positions.
These areas could be used to adjust entries and exits or assist with risk management such as take-profit or stop-loss levels.
The indicator displays 2 lines, the Bull Average and the Bear Average.
The Bull Average is only displayed when the price holds above the bull Average.
The Bear Average is only displayed when the price holds below the bear average.
When only one average is displayed alone, this level is seen as support or resistance, it is anticipated that this level would be defended for the current trend to stay valid.
When both averages are displayed simultaneously, it can be interpreted as one side attempting to take over the trend.
The movements and reactions during these attempts can be analyzed to provide helpful information about where the price might be headed.
Possible outcomes:
Trend Confirmation/Re-Entry (From Weak Attempts)
Trend Reversal (Creating Support or Resistance)
Consolidation (Oscillating between/around Bull & Bear Averages)
🔶 DETAILS
🔹 Lookback Types
This indicator includes 2 lookback types:
Bar Count: Uses Bars to determine what data to include. This type can be utilized for averages that are more locally relevant to the current chart data.
FVG Count: Uses a specific # of FVGs for calculations. This type can be utilized for a continuous & consistent view, typically relevant with longer term analysis.
Note: When using bar lookback, if no data is in range, no lines will be displayed.
Below is an example of the 'FVG Count' Display.
🔹 Initiation Levels
Initiation Levels are the specific price points where each FVG starts, these are the last points the price was traded at before creating the gap.
Bull Initiation Level: Lowest Point (Bottom) of FVG
Bear Initiation Level: Highest Point (Top) of FVG
🔹 FVG Display
Each FVG being used for the current calculation of averages is displayed on the chart for reference.
Note: If you prefer to not display the FVGs, they can be toggled off in the settings, uncheck "Show FVGs on Chart".
🔶 Settings
FVG Lookback: As mentioned above in the 'Lookback Types', this sets the number of FVGs or Bars to use for consideration.
Lookback Type: As also mentioned above in 'Lookback Types', this determines the method of lookback to be used.
ATR Multiplier: The FVGs are required to have a Greater Width than (ATR * Multiplier) in order to be used for calculations. This allows you to focus on the data being considered if needed.
Bullish Cassiopeia A Harmonic Patterns [theEccentricTrader]█ OVERVIEW
This indicator automatically detects and draws bullish Cassiopeia A harmonic patterns and price projections derived from the ranges that constitute the patterns.
Cassiopeia A, B and C harmonic patterns are patterns that I created/discovered myself. They are all inspired by the Cassiopeia constellation and each one is based on different rotations of the constellation as it moves through the sky. The range ratios are also based on the constellation's right ascension and declination listed on Wikipedia:
Right ascension 22h 57m 04.5897s–03h 41m 14.0997s
Declination 77.6923447°–48.6632690°
en.wikipedia.org
I actually developed this idea quite a while ago now but have not felt audacious enough to introduce a new harmonic pattern, let alone 3 at the same time! But I have since been able to run backtests on tick data going back to 2002 across a variety of market and timeframe combinations and have learned that the Cassiopeia patterns can certainly hold their own against the currently known harmonic patterns. As can be seen in the picture above the bullish Cassiopeia A caught the 2009 bear market bottom almost perfectly.
I would also point out that the Cassiopeia constellation does actually look like a harmonic pattern and the Cassiopeia A star is literally the 'strongest source of radio emission in the sky beyond the solar system', so its arguably more of a real harmonic phenomenon than the current patterns.
www.britannica.com
chandra.si.edu
█ CONCEPTS
Green and Red Candles
• A green candle is one that closes with a close price equal to or above the price it opened.
• A red candle is one that closes with a close price that is lower than the price it opened.
Swing Highs and Swing Lows
• A swing high is a green candle or series of consecutive green candles followed by a single red candle to complete the swing and form the peak.
• A swing low is a red candle or series of consecutive red candles followed by a single green candle to complete the swing and form the trough.
Peak and Trough Prices (Basic)
• The peak price of a complete swing high is the high price of either the red candle that completes the swing high or the high price of the preceding green candle, depending on which is higher.
• The trough price of a complete swing low is the low price of either the green candle that completes the swing low or the low price of the preceding red candle, depending on which is lower.
Historic Peaks and Troughs
The current, or most recent, peak and trough occurrences are referred to as occurrence zero. Previous peak and trough occurrences are referred to as historic and ordered numerically from right to left, with the most recent historic peak and trough occurrences being occurrence one.
Range
The range is simply the difference between the current peak and current trough prices, generally expressed in terms of points or pips.
Upper Trends
• A return line uptrend is formed when the current peak price is higher than the preceding peak price.
• A downtrend is formed when the current peak price is lower than the preceding peak price.
• A double-top is formed when the current peak price is equal to the preceding peak price.
Lower Trends
• An uptrend is formed when the current trough price is higher than the preceding trough price.
• A return line downtrend is formed when the current trough price is lower than the preceding trough price.
• A double-bottom is formed when the current trough price is equal to the preceding trough price.
Muti-Part Upper and Lower Trends
• A multi-part return line uptrend begins with the formation of a new return line uptrend and continues until a new downtrend ends the trend.
• A multi-part downtrend begins with the formation of a new downtrend and continues until a new return line uptrend ends the trend.
• A multi-part uptrend begins with the formation of a new uptrend and continues until a new return line downtrend ends the trend.
• A multi-part return line downtrend begins with the formation of a new return line downtrend and continues until a new uptrend ends the trend.
Double Trends
• A double uptrend is formed when the current trough price is higher than the preceding trough price and the current peak price is higher than the preceding peak price.
• A double downtrend is formed when the current peak price is lower than the preceding peak price and the current trough price is lower than the preceding trough price.
Muti-Part Double Trends
• A multi-part double uptrend begins with the formation of a new uptrend that proceeds a new return line uptrend, and continues until a new downtrend or return line downtrend ends the trend.
• A multi-part double downtrend begins with the formation of a new downtrend that proceeds a new return line downtrend, and continues until a new uptrend or return line uptrend ends the trend.
Wave Cycles
A wave cycle is here defined as a complete two-part move between a swing high and a swing low, or a swing low and a swing high. The first swing high or swing low will set the course for the sequence of wave cycles that follow; for example a chart that begins with a swing low will form its first complete wave cycle upon the formation of the first complete swing high and vice versa.
Figure 1.
Retracement and Extension Ratios
Retracement and extension ratios are calculated by dividing the current range by the preceding range and multiplying the answer by 100. Retracement ratios are those that are equal to or below 100% of the preceding range and extension ratios are those that are above 100% of the preceding range.
Fibonacci Retracement and Extension Ratios
The Fibonacci sequence is a series of numbers in which each number is the sum of the two preceding numbers, starting with 0 and 1. For example 0 + 1 = 1, 1 + 1 = 2, 1 + 2 = 3, and so on. Ultimately, we could go on forever but the first few numbers in the sequence are as follows: 0 , 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144.
The extension ratios are calculated by dividing each number in the sequence by the number preceding it. For example 0/1 = 0, 1/1 = 1, 2/1 = 2, 3/2 = 1.5, 5/3 = 1.6666..., 8/5 = 1.6, 13/8 = 1.625, 21/13 = 1.6153..., 34/21 = 1.6190..., 55/34 = 1.6176..., 89/55 = 1.6181..., 144/89 = 1.6179..., and so on. The retracement ratios are calculated by inverting this process and dividing each number in the sequence by the number proceeding it. For example 0/1 = 0, 1/1 = 1, 1/2 = 0.5, 2/3 = 0.666..., 3/5 = 0.6, 5/8 = 0.625, 8/13 = 0.6153..., 13/21 = 0.6190..., 21/34 = 0.6176..., 34/55 = 0.6181..., 55/89 = 0.6179..., 89/144 = 0.6180..., and so on.
1.618 is considered to be the 'golden ratio', found in many natural phenomena such as the growth of seashells and the branching of trees. Some now speculate the universe oscillates at a frequency of 0,618 Hz, which could help to explain such phenomena, but this theory has yet to be proven.
Traders and analysts use Fibonacci retracement and extension indicators, consisting of horizontal lines representing different Fibonacci ratios, for identifying potential levels of support and resistance. Fibonacci ranges are typically drawn from left to right, with retracement levels representing ratios inside of the current range and extension levels representing ratios extended outside of the current range. If the current wave cycle ends on a swing low, the Fibonacci range is drawn from peak to trough. If the current wave cycle ends on a swing high the Fibonacci range is drawn from trough to peak.
Harmonic Patterns
The concept of harmonic patterns in trading was first introduced by H.M. Gartley in his book "Profits in the Stock Market", published in 1935. Gartley observed that markets have a tendency to move in repetitive patterns, and he identified several specific patterns that he believed could be used to predict future price movements.
Since then, many other traders and analysts have built upon Gartley's work and developed their own variations of harmonic patterns. One such contributor is Larry Pesavento, who developed his own methods for measuring harmonic patterns using Fibonacci ratios. Pesavento has written several books on the subject of harmonic patterns and Fibonacci ratios in trading. Another notable contributor to harmonic patterns is Scott Carney, who developed his own approach to harmonic trading in the late 1990s and also popularised the use of Fibonacci ratios to measure harmonic patterns. Carney expanded on Gartley's work and also introduced several new harmonic patterns, such as the Shark pattern and the 5-0 pattern.
The bullish and bearish Gartley patterns are the oldest recognized harmonic patterns in trading and all the other harmonic patterns are ultimately modifications of the original Gartley patterns. Gartley patterns are fundamentally composed of 5 points, or 4 waves.
Bullish and Bearish Cassiopeia A Harmonic Patterns
• Bullish Cassiopeia A patterns are fundamentally composed of three troughs and two peaks. The second peak being higher than the first peak. And the third trough being higher than both the first and second troughs, while the second trough is also higher than the first.
• Bearish Cassiopeia A patterns are fundamentally composed of three peaks and two troughs. The second trough being lower than the first trough. And the third peak being lower than both the first and second peaks, while the second peak is also lower than the first.
The ratio measurements I use to detect the patterns are as follows:
• Wave 1 of the pattern, generally referred to as XA, has no specific ratio requirements.
• Wave 2 of the pattern, generally referred to as AB, should retrace by at least 11.34%, but no further than 22.31% of the range set by wave 1.
• Wave 3 of the pattern, generally referred to as BC, should extend by at least 225.7%, but no further than 341% of the range set by wave 2.
• Wave 4 of the pattern, generally referred to as CD, should retrace by at least 77.69%, but no further than 88.66% of the range set by wave 3.
Measurement Tolerances
In general, tolerance in measurements refers to the allowable variation or deviation from a specific value or dimension. It is the range within which a particular measurement is considered to be acceptable or accurate. In this script I have applied this concept to the measurement of harmonic pattern ratios to increase to the frequency of pattern occurrences.
For example, the AB measurement of Gartley patterns is generally set at around 61.8%, but with such specificity in the measuring requirements the patterns are very rare. We can increase the frequency of pattern occurrences by setting a tolerance. A tolerance of 10% to both downside and upside, which is the default setting for all tolerances, means we would have a tolerable measurement range between 51.8-71.8%, thus increasing the frequency of occurrence.
█ FEATURES
Inputs
• AB Lower Tolerance
• AB Upper Tolerance
• BC Lower Tolerance
• BC Upper Tolerance
• CD Lower Tolerance
• CD Upper Tolerance
• Pattern Color
• Label Color
• Show Projections
• Extend Current Projection Lines
Alerts
Users can set alerts for when the patterns occur.
█ LIMITATIONS
All green and red candle calculations are based on differences between open and close prices, as such I have made no attempt to account for green candles that gap lower and close below the close price of the preceding candle, or red candles that gap higher and close above the close price of the preceding candle. This may cause some unexpected behaviour on some markets and timeframes. I can only recommend using 24-hour markets, if and where possible, as there are far fewer gaps and, generally, more data to work with.
█ NOTES
I know a few people have been requesting a single indicator that contains all my patterns and I definitely hear you on that one. However, I have been very busy working on other projects while trying to trade and be a human at the same time. For now I am going to maintain my original approach of releasing each pattern individually so as to maintain consistency. But I am now also working on getting my some of my libraries ready for public release and in doing so I will finally be able to fit all patterns into one script. I will also be giving my scripts some TLC by making them cleaner once I have the libraries up and running. Please bear with me in the meantime, this may take a while. Cheers!