Machine Learning: VWAP [YinYangAlgorithms]Machine Learning: VWAP aims to use Machine Learning to Identify the best location to Anchor the VWAP at. Rather than using a traditional fixed length or simply adjusting based on a Date / Time; by applying Machine Learning we may hope to identify crucial areas which make sense to reset the VWAP and start anew. VWAP’s may act similar to a Bollinger Band in the sense that they help to identify both Overbought and Oversold Price locations based on previous movements and help to identify how far the price may move within the current Trend. However, unlike Bollinger Bands, VWAPs have the ability to parabolically get quite spaced out and also reset. For this reason, the price may never actually go from the Lower to the Upper and vice versa (when very spaced out; when the Upper and Lower zones are narrow, it may bounce between the two). The reason for this is due to how the anchor location is calculated and in this specific Indicator, how it changes anchors based on price movement calculated within Machine Learning.
This Indicator changes the anchor if the Low < Lowest Low of a length of X and likewise if the High > Highest High of a length of X. This logic is applied within a Machine Learning standpoint that likewise amplifies this Lookback Length by adding a Machine Learning Length to it and increasing the lookback length even further.
Due to how the anchor for this VWAP changes, you may notice that the Basis Line (Orange) may act as a Trend Identifier. When the Price is above the basis line, it may represent a bullish trend; and likewise it may represent a bearish trend when below it. You may also notice what may happen is when the trend occurs, it may push all the way to the Upper or Lower levels of this VWAP. It may then proceed to move horizontally until the VWAP expands more and it may gain more movement; or it may correct back to the Basis Line. If it corrects back to the basis line, what may happen is it either uses the Basis Line as a Support and continues in its current direction, or it will change the VWAP anchor and start anew.
Tutorial:
If we zoom in on the most recent VWAP we can see how it expands. Expansion may be caused by time but generally it may be caused by price movement and volume. Exponential Price movement causes the VWAP to expand, even if there are corrections to it. However, please note Volume adds a large weighted factor to the calculation; hence Volume Weighted Average Price (VWAP).
If you refer to the white circle in the example above; you’ll be able to see that the VWAP expanded even while the price was correcting to the Basis line. This happens due to exponential movement which holds high volume. If you look at the volume below the white circle, you’ll notice it was very large; however even though there was exponential price movement after the white circle, since the volume was low, the VWAP didn’t expand much more than it already had.
There may be times where both Volume and Price movement isn’t significant enough to cause much of an expansion. During this time it may be considered to be in a state of consolidation. While looking at this example, you may also notice the color switch from red to green to red. The color of the VWAP is related to the movement of the Basis line (Orange middle line). When the current basis is > the basis of the previous bar the color of the VWAP is green, and when the current basis is < the basis of the previous bar, the color of the VWAP is red. The color may help you gauge the current directional movement the price is facing within the VWAP.
You may have noticed there are signals within this Indicator. These signals are composed of Green and Red Triangles which represent potential Bullish and Bearish momentum changes. The Momentum changes happen when the Signal Type:
The High/Low or Close (You pick in settings)
Crosses one of the locations within the VWAP.
Bullish Momentum change signals occur when :
Signal Type crosses OVER the Basis
Signal Type crosses OVER the lower level
Bearish Momentum change signals occur when:
Signal Type crosses UNDER the Basis
Signal Type Crosses UNDER the upper level
These signals may represent locations where momentum may occur in the direction of these signals. For these reasons there are also alerts available to be set up for them.
If you refer to the two circles within the example above, you may see that when the close goes above the basis line, how it mat represents bullish momentum. Likewise if it corrects back to the basis and the basis acts as a support, it may continue its bullish momentum back to the upper levels again. However, if you refer to the red circle, you’ll see if the basis fails to act as a support, it may then start to correct all the way to the lower levels, or depending on how expanded the VWAP is, it may just reset its anchor due to such drastic movement.
You also have the ability to disable Machine Learning by setting ‘Machine Learning Type’ to ‘None’. If this is done, it will go off whether you have it set to:
Bullish
Bearish
Neutral
For the type of VWAP you want to see. In this example above we have it set to ‘Bullish’. Non Machine Learning VWAP are still calculated using the same logic of if low < lowest low over length of X and if high > highest high over length of X.
Non Machine Learning VWAP’s change much quicker but may also allow the price to correct from one side to the other without changing VWAP Anchor. They may be useful for breaking up a trend into smaller pieces after momentum may have changed.
Above is an example of how the Non Machine Learning VWAP looks like when in Bearish. As you can see based on if it is Bullish or Bearish is how it favors the trend to be and may likewise dictate when it changes the Anchor.
When set to neutral however, the Anchor may change quite quickly. This results in a still useful VWAP to help dictate possible zones that the price may move within, but they’re also much tighter zones that may not expand the same way.
We will conclude this Tutorial here, hopefully this gives you some insight as to why and how Machine Learning VWAPs may be useful; as well as how to use them.
Settings:
VWAP:
VWAP Type: Type of VWAP. You can favor specific direction changes or let it be Neutral where there is even weight to both. Please note, these do not apply to the Machine Learning VWAP.
Source: VWAP Source. By default VWAP usually uses HLC3; however OHLC4 may help by providing more data.
Lookback Length: The Length of this VWAP when it comes to seeing if the current High > Highest of this length; or if the current Low is < Lowest of this length.
Standard VWAP Multiplier: This multiplier is applied only to the Standard VWMA. This is when 'Machine Learning Type' is set to 'None'.
Machine Learning:
Use Rational Quadratics: Rationalizing our source may be beneficial for usage within ML calculations.
Signal Type: Bullish and Bearish Signals are when the price crosses over/under the basis, as well as the Upper and Lower levels. These may act as indicators to where price movement may occur.
Machine Learning Type: Are we using a Simple ML Average, KNN Mean Average, KNN Exponential Average or None?
KNN Distance Type: We need to check if distance is within the KNN Min/Max distance, which distance checks are we using.
Machine Learning Length: How far back is our Machine Learning going to keep data for.
k-Nearest Neighbour (KNN) Length: How many k-Nearest Neighbours will we account for?
Fast ML Data Length: What is our Fast ML Length? This is used with our Slow Length to create our KNN Distance.
Slow ML Data Length: What is our Slow ML Length? This is used with our Fast Length to create our KNN Distance.
If you have any questions, comments, ideas or concerns please don't hesitate to contact us.
HAPPY TRADING!
在腳本中搜尋"bear"
Strong Pullback Indicator [Rami_LB]Strong Pullback Indicator
Description:
The Strong Pullback Indicator is designed to identify potential pullbacks or even trend reversals by utilizing a specific candlestick pattern in conjunction with the Relative Strength Index (RSI). It is advised to employ this indicator in chart intervals of 15 minutes or higher, as intervals below 15 minutes may generate excessive false signals.
Working Mechanism:
Upon detecting the designated candlestick pattern, the indicator examines whether any of the last five candles exhibit RSI values below 30 or above 70 across at least four distinct time intervals, depending on whether the pattern is bullish or bearish. The RSI calculations incorporate eight different intervals: 1 minute (1m), 5 minutes (5m), 15 minutes (15m), 30 minutes (30m), 1 hour (1h), 2 hours (2h), 4 hours (4h), and 1 day (1d). An arrow is rendered above or below the current candle only when these conditions are met.
Users have the option to adjust the number of overbought or oversold intervals, as well as the general settings for the RSI.
SL/TP Lines:
The indicator can also serve as a trade signal to initiate trades in the opposite direction. To evaluate the potential success of a trade in a backtesting scenario, SL (Stop Loss) and TP (Take Profit) lines can be displayed on the chart. The SL is calculated by taking the distance from the close of the current candle to the high/low of the previous candle and multiplying it by 2.
In the settings, you can alter the Risk Reward Ratio (RRR) of the trade. Given the pullback nature of this indicator, a RRR of 1:1 is deemed logical, thus set as the default value.
Bullish vs. Bearish Candle Counter:
An additional feature of this indicator is its ability to analyze the last 100 candles to ascertain the ratio of bullish to bearish candles. When a 60% threshold is reached, the chart background color alters accordingly. This feature was conceived after a thorough analysis of over 50,000 candles of a currency pair revealed nearly identical counts of bullish and bearish candles, suggesting a market tendency to maintain this balance.
Within the settings, you have the flexibility to modify the number of candles to be analyzed and the percentage threshold for each candle type.
Should you have any ideas on how to enhance the accuracy of this indicator, or suggestions for other indicators that could improve the signals, feel free to leave a comment.
Trend Gaussian Channels [DeltaAlgo]This Script Introduces The Use Of The Gaussian Channel Concepts
This indicator consists of three lines: a central line that represents the moving average, and an upper and lower band that represent the volatility of the price movements.
The Gaussian channels is a concept consists of an upper & lower bands along with the basis; the mid band. The use of the Gaussian bands are simple, as described below.👇
Use Case:
There are many ways the Gaussian channel indicator can be used!
1. Look for the price to touch or cross the upper/lower bands of the Gaussian Channel Indicator. This indicates that the price has reached an high level of volatility. a reversal or correction may be imminent.
2. Wait for confirmation of the potential reversal or correction. This can be in the form of a bearish or bullish candlestick pattern, or a signal from another technical indicator.
a. For this reason I have implemented some signals that indicate trend shifts & candle colors to clearly display the switching between a bullish sentiment or bearish.
3. Enter a trade in the direction of the reversal or correction. For example, if the price touches the upper band and a bearish candlestick pattern occurs or if you get a bearish signal, enter a short trade. If the price touches the lower band and indicates bullish candlestick pattern or bullish signal, enter a long trade.
Sometimes this band can act as a support & resistance, THIS is not always the case as it is not meant to be used as support & resistance.
YD_Divergence_RSI+CMFThe ‘YD_Divergence_RSI+CMF’ indicator can find divergence using RSI (Relative Strength Index) and CMF (Chaikin Money Flow) indicators.
📌 Key functions
1. Search pivot high and pivot low points in a certain length of price.
2. Connect pivot high to pivot high , pivot low to pivot low , forming two standards for divergence in result.
The marker then plots only the higher high, lower low lines.
(higher low and lower high in prices are referred to hidden divergence, which are not considered in this indicator)
3. Compare the two standards with RSI and CMF indicators, send an alert if there is a divergence. As a result, the indicator will find four combination of divergence.
A. Higher high price / Lower RSI (Bearish RSI Divergence)
B. Lower low price / Higher RSI (Bullish RSI Divergence)
C. Higher high price / Lower CMF (Bearish CMF Divergence)
D. Lower low price / Higher CMF (Bullish CMF Divergence)
📌 Details
Developing the indicators, we put a lot of effort in making a customizable and user-friendly interface.
#1. Pivot Setting
Users can set the length to find the pivot high / pivot low in ‘Pivot Settings – Pivot Length.’
Increased pivot Length takes more candles to interpret the chart but reduce false signals since the it uses only the most certain pivot high / pivot low values. Obviously, decreased pivot length will act the opposite.
Users can choose whether to use ‘High/Low’ or ‘Close’ in ‘Pivot Reference’ to set the swing point of prices.
Users can also choose whether to display the pivot high / pivot low marker on the chart.
#2 RSI & CMF Settings
Users can adjust the length of RSI & CMF separately. (The default values are set to 14 and 20 each.)
#3 Label Setting
Users can adjust the text displayed on the chart label. (The default values is set to ‘Bullish / Bearish’, ‘RSI/CMF’, ‘Divergence’.)
Users can reduce the length of text label or simply turn the label off. Just click the ‘Bull/Bear’ or ‘None’ button. ‘Divergence’ works the same.
Users can decide whether to display the ‘Divergence Line and Label’, set custom settings for the label and line. (color, thickness, style, etc)
📌 Alert
Alert are provided as a combination of the chart's symbol and the set label text. For example,
‘BINANCE:BTCUSDT.P, Bullish RSI Divergence’
====================================================
"YD_Divergence_RSI+CMF" 지표 는 RSI와 CMF 지표를 이용해서 Divergence 를 찾아낼 수 있습니다.
📌 주요 기능
1. 정해진 가격 움직임 안에서 pivot high와 pivot low 포인트 를 찾아냅니다.
2. Pivot high로만 이어진 라인과, Pivot low로만 이어진 두 라인을 작도한 뒤 divergence의 기준으로 삼습니다.
이 지표에서는 normal divergence만 사용하기 때문에 차트에 higher high와 lower low만 표기 합니다.
(higher low와 lower high는 hidden divergence로 정의되며, 이 지표에서는 다루지 않습니다.
3. 두 기준선과 RSI, CMF 지표를 각각 비교하고, 결과적으로 4개의 조합을 구할 수 있습니다.
A. Higher high price / Lower RSI (Bearish RSI Divergence)
B. Lower low price / Higher RSI (Bullish RSI Divergence)
C. Higher high price / Lower CMF (Bearish CMF Divergence)
D. Lower low price / Higher CMF (Bullish CMF Divergence)
📌 세부 사항
지표를 개발하며 사용자들이 원하는 방향으로 지표를 설정할 수 있게 작업에 많은 공을 들였습니다. 굉장히 다양한 옵션을 선택할 수 있으며, 원하는 방식으로 지표를 사용할 수 있습니다.
#1 Pivot Setting
Pivot setting에서는 Pivot Length를 변경할 수 있습니다.
Pivot Length를 늘릴 경우, 보다 확실한 Swing High와 Swing Low만을 사용하게 되므로, False signal이 줄어들 수 있습니다. 하지만 Swing High/ Low를 판정하는 데에 더 긴 시간이 걸리게 되므로, Signal이 다소 늦게 발생하는 단점이 생기게 됩니다.
Pivot Length를 줄일 경우, 반대로 Swing High/Low의 판정이 더 빨리 일어나기 때문에, Signal을 거래에 이용하기는 좋을 수 있습니다. 다만, Swing High와 Low가 훨씬 더 잦은 빈도로 발생하기 때문에 False Signal을 줄 가능성이 높아집니다.
Pivot Reference에서는 가격의 Swing Point를 설정함에 있어, High/Low(고가/저가)를 이용할 지 Close (종가)를 이용할 지 선택할 수 있습니다.
Pivot High/Low Marker를 선택할 경우 Pivot High/ Low에 Marker가 찍히게 됩니다.
#2 RSI와 CMF Setting
RSI와 CMF Setting에서는 RSI와 CMF의 길이를 각각 설정할 수 있습니다. 기본값은 14와 20으로 설정되어 있습니다.
#3 Label Setting
Label Setting에서는 Label에 표시되는 글자를 선택할 수 있습니다.
기본값은 "Bullish / Bearish", "RSI/CMF", "Divergence"로 선택되어 있으며, 너무 길다고 느껴질 경우 "Bull/Bear" 혹은 "None"을 클릭하여 길이를 줄일 수 있습니다. 마찬가지로 Divergence의 경우도 생략이 가능합니다.
하단에서는 Divergence Line과 Label을 켜고 끌 수 있으며, 선의 색깔, 굵기, 종류, 그리고 Label의 색깔, 크기, 종류를 선택할 수 있습니다. Label의 Text 색 역시 변경이 가능합니다.
📌 얼러트
얼러트는 자신이 설정한 차트의 심볼과 Label의 문구의 조합으로 제공되며 예를 들면 다음과 같습니다.
"BINANCE:BTCUSDT.P, Bullish RSI Divergence"
TPG.Buy sell RSI Scapl XAUThis is a tool that is widely used
Especially for Overbought and Oversold systems, but I have made some changes in this indicator,
How to use it...
I have set it as the default setting
- RSI Length: 6 (<10 for scalping - 5m-15m)
- Overbought: 70
- Oversold: 30
What is unique about this tool?
we can see 3 conditions:
1) RSI Overbought / Oversold with Bullish Engulfing / Bearish Engulfing
2) RSI Overbought / Oversold with Hammer and Shooting Star
3) RSI Overbought / Oversold with 2 Bullish Bars / 2 Bearish Bars
4) RSI Overbought / Oversold with All Patterns at the same time
When the RSI reaches its Oversold line, the code will wait for Bullish Engulfing pattren, when oversold and Bullish engulfing matched, This indicator will generate a buy signal when the condition is met,
and same as for Bear market, When the RSI reaches its Overbought line, the code will wait for Bearish Engulfing pattren, This indicator will generate a sell/exit signal when the condition is met,
2nd condition is that a Hammer candle will be waited for when RSI touches the Overbought line, for Bullish Move
and Shooting Star candle will be waited for when RSI touches the Overbought line, for Bullish Move, for Bearish Move
3rd Condition is also the same as Condition 1 and Condition 2,
When the RSI reaches its Oversold line, the code will wait for 2 Bullish Bars, when oversold and 2 Bullish Bars matched then this indicator will generate a buy signal, and same as for Bear market,
When the RSI reaches its Overbought line, the code will wait for 2 Bearish Bars, when overbought and 2 Bearish Bars matched then this indicator will generate a Sell signal,
4th Condition is that we can use All Conditions at the same time,
- Bullish Engulfing / Bearish Engulfing
- Hammer and Shooting Star
- 2 Bullish Bars / 2 Bearish Bars
Volatility Adjusted Composite RSI with SMA and EMA SignalsOverview
The script "VAC - RSI with SMA and EMA Signals" combines the traditional Relative Strength Index (RSI) with Time-based RSI (T-RSI), and adjusts it for volatility to create a Composite RSI (C-RSI). The script further uses Simple Moving Average (SMA) and Exponential Moving Average (EMA) to generate signals for potential trading opportunities. In the "VAC - RSI with SMA and EMA Signals" script, the combination of price, time, and volatility works as follows:
Price: The script calculates the traditional RSI based on price changes over a specified period.
Time: Alongside the price-based RSI, a Time-based RSI (T-RSI) is calculated, which considers the number of upward and downward closes over the same period.
Volatility: Volatility is integrated into the Composite RSI (C-RSI) by adjusting it with a Z-score based on a standard deviation of closing prices.
These three factors work together to create a more holistic and robust indicator.
How can it be used?
This script is used to identify potential overbought and oversold conditions in the market. It plots the VAC-RSI, SMA, and EMA on a chart, along with overbought and oversold levels, providing visual signals to the trader. When the EMA is below the SMA, it is a bullish signal, and vice versa for a bearish signal.
Default Values for Different Inputs:
Price RSI Weightage (%): 65
Unified Period for RSI & T-RSI: 14
C-RSI SMA Period: 13
C-RSI EMA Period: 33
C-RSI Bull Trend Support: 35
C-RSI Bear Trend Resistance: 65
Use Volatility Adjusted C-RSI (VAC-RSI): true
Standard Deviation Period: 14
Volatility Scaling Factor (α): 5
These values can be adjusted according to the trading strategy to optimize the signals for different assets or timeframes.
Strategies this Can be Used for:
The script can be used in various trading strategies including:
Trend Following: By observing the crosses of EMA and SMA, traders can follow the trend.
Reversion to the Mean: Using the overbought and oversold levels to identify potential reversal points.
Breakout: Identifying breakout points using the Bull and Bear Market Support and Resistance levels.
Comparison with the Standard Indicator:
Enhanced Sensitivity to Market Conditions
Improved Signal Quality
Versatility
Volatility Adjustment
Interpretation of Output Values:
VAC-RSI Value:
The script provides additional overbought (80) and oversold (20) lines to help identify extreme conditions.
SMA and EMA Values:
When the EMA is below the SMA, it is generally considered a bullish signal.
When the EMA is above the SMA, it is generally considered a bearish signal.
The cross of EMA and SMA can be used as a trigger for entry or exit points.
Bull and Bear Market Support and Resistance Lines:
The Bull Market VAC-RSI Support (default at 35) and Bear Market VAC-RSI Resistance (default at 65) lines can be used to identify potential breakout or breakdown points.
In a bull market, if the VAC-RSI stays above the support line, it indicates a strong uptrend.
In a bear market, if the VAC-RSI stays below the resistance line, it indicates a strong downtrend.
AI SuperTrend - Strategy [presentTrading]
█ Introduction and How it is Different
The AI Supertrend Strategy is a unique hybrid approach that employs both traditional technical indicators and machine learning techniques. Unlike standard strategies that rely solely on traditional indicators or mathematical models, this strategy integrates the power of k-Nearest Neighbors (KNN), a machine learning algorithm, with the tried-and-true SuperTrend indicator. This blend aims to provide traders with more accurate, responsive, and context-aware trading signals.
*The KNN part is mainly referred from @Zeiierman.
BTCUSD 8hr performance
ETHUSD 8hr performance
█ Strategy, How it Works: Detailed Explanation
SuperTrend Calculation
Volume-Weighted Moving Average (VWMA): A VWMA of the close price is calculated based on the user-defined length (len). This serves as the central line around which the upper and lower bands are calculated.
Average True Range (ATR): ATR is calculated over a period defined by len. It measures the market's volatility.
Upper and Lower Bands: The upper band is calculated as VWMA + (factor * ATR) and the lower band as VWMA - (factor * ATR). The factor is a user-defined multiplier that decides how wide the bands should be.
KNN Algorithm
Data Collection: An array (data) is populated with recent n SuperTrend values. Corresponding labels (labels) are determined by whether the weighted moving average price (price) is greater than the weighted moving average of the SuperTrend (sT).
Distance Calculation: The absolute distance between each data point and the current SuperTrend value is calculated.
Sorting & Weighting: The distances are sorted in ascending order, and the closest k points are selected. Each point is weighted by the inverse of its distance to the current point.
Classification: A weighted sum of the labels of the k closest points is calculated. If the sum is closer to 1, the trend is predicted as bullish; if closer to 0, bearish.
Signal Generation
Start of Trend: A new bullish trend (Start_TrendUp) is considered to have started if the current trend color is bullish and the previous was not bullish. Similarly for bearish trends (Start_TrendDn).
Trend Continuation: A bullish trend (TrendUp) is considered to be continuing if the direction is negative and the KNN prediction is 1. Similarly for bearish trends (TrendDn).
Trading Logic
Long Condition: If Start_TrendUp or TrendUp is true, a long position is entered.
Short Condition: If Start_TrendDn or TrendDn is true, a short position is entered.
Exit Condition: Dynamic trailing stops are used for exits. If the trend does not continue as indicated by the KNN prediction and SuperTrend direction, an exit signal is generated.
The synergy between SuperTrend and KNN aims to filter out noise and produce more reliable trading signals. While SuperTrend provides a broad sense of the market direction, KNN refines this by predicting short-term price movements, leading to a more nuanced trading strategy.
Local picture
█ Trade Direction
The strategy allows traders to choose between taking only long positions, only short positions, or both. This is particularly useful for adapting to different market conditions.
█ Usage
ToolTips: Explains what each parameter does and how to adjust them.
Inputs: Customize values like the number of neighbors in KNN, ATR multiplier, and moving average type.
Plotting: Visual cues on the chart to indicate bullish or bearish trends.
Order Execution: Based on the generated signals, the strategy will execute buy/sell orders.
█ Default Settings
The default settings are selected to provide a balanced approach, but they can be modified for different trading styles and asset classes.
Initial Capital: $10,000
Default Quantity Type: 10% of equity
Commission: 0.1%
Slippage: 1
Currency: USD
By combining both machine learning and traditional technical analysis, this strategy offers a sophisticated and adaptive trading solution.
Show-BiasThe script looks at the current bar and prints the bullishness or bearishness bias based on the high, low and close values.
Bullish bias:
----------------
Higher High
Higher Low
Higher Close
Green candle
Bearish bias:
----------------
Lower High
Lower Low
Lower Close
Red candle
Momentum Probability Oscillator [SS]This is the momentum based probability indicator.
What it does?
This takes the average of MFI, Stochastics and RSI and plots it out as an independent oscillator.
It then tracks bullish vs bearish instances. Bullish is defined as a greater move from open to high than open to low and inverse for bearish.
It stores this data and these averages and plots these levels as a graph.
The graph depicts the max bullish values at the top, the min bearish values at the bottom and the averages in between:
It will plot the average "threshold" value in yellow:
The threshold value is key. A ticker trading above the threshold is generally bullish. Below is bearish.
The threshold value frequently acts as support and resistance levels (see below):
Resistance:
Support:
The indicator also shows you the amount of time a ticker has spent in each region, over a defined lookback period (defaulted to 500):
When you see that cumulatively, more time has been spent in a bullish range or a bearish range, it can help you ascertain the prevailing sentiment at that time.
The indicator will also calculate the average price range based on the underlying oscillator value. It does this through use of ATR based techniques, as its not usually possible to calculate a price from an oscillator:
This is intended as a general reference and not a precise target, as it is using ATR as opposed to the actual technical value itself.
As this is an oscillator, you can use it to look for divergences as well. The advantage to having it formulated in this way is:
a) You get the power of all 3 indicators (stochastics, MFI and RSI) in one and
b) You are adding context to the underlying technical reading. The indicator is plotting out the average, max and min ranges for the selected ticker and performing assessments based on these ranges that add context to the current PA.
You also have the ability to see the specific technical levels associated with each specific technical indicator. If you open up the settings menu and select "Show Table", this will appear:
This will show you the exact values of each of the technicals the indicator is using in its range assessment.
And that is basically the bulk of the indicator!
I use this predominately on the smaller timeframes, especially when there is a lot of chop, to ascertain the overall sentiment.
I also will reference it on the 1 hour to see what the prevailing sentiment is and whether the stock is at an area of technical resistance or support. For example, here is what I referenced on SPY today:
QUICK NOTE:
It works best with RTH (regular trading hours) turned on and ETH (extended trading hours) turned off!
That's it!
Hopefully you like it and leave your comments and suggestions below!
AI Moving Average (Expo)█ Overview
The AI Moving Average indicator is a trading tool that uses an AI-based K-nearest neighbors (KNN) algorithm to analyze and interpret patterns in price data. It combines the logic of a traditional moving average with artificial intelligence, creating an adaptive and robust indicator that can identify strong trends and key market levels.
█ How It Works
The algorithm collects data points and applies a KNN-weighted approach to classify price movement as either bullish or bearish. For each data point, the algorithm checks if the price is above or below the calculated moving average. If the price is above the moving average, it's labeled as bullish (1), and if it's below, it's labeled as bearish (0). The K-Nearest Neighbors (KNN) is an instance-based learning algorithm used in classification and regression tasks. It works on a principle of voting, where a new data point is classified based on the majority label of its 'k' nearest neighbors.
The algorithm's use of a KNN-weighted approach adds a layer of intelligence to the traditional moving average analysis. By considering not just the price relative to a moving average but also taking into account the relationships and similarities between different data points, it offers a nuanced and robust classification of price movements.
This combination of data collection, labeling, and KNN-weighted classification turns the AI Moving Average (Expo) Indicator into a dynamic tool that can adapt to changing market conditions, making it suitable for various trading strategies and market environments.
█ How to Use
Dynamic Trend Recognition
The color-coded moving average line helps traders quickly identify market trends. Green represents bullish, red for bearish, and blue for neutrality.
Trend Strength
By adjusting certain settings within the AI Moving Average (Expo) Indicator, such as using a higher 'k' value and increasing the number of data points, traders can gain real-time insights into strong trends. A higher 'k' value makes the prediction model more resilient to noise, emphasizing pronounced trends, while more data points provide a comprehensive view of the market direction. Together, these adjustments enable the indicator to display only robust trends on the chart, allowing traders to focus exclusively on significant market movements and strong trends.
Key SR Levels
Traders can utilize the indicator to identify key support and resistance levels that are derived from the prevailing trend movement. The derived support and resistance levels are not just based on historical data but are dynamically adjusted with the current trend, making them highly responsive to market changes.
█ Settings
k (Neighbors): Number of neighbors in the KNN algorithm. Increasing 'k' makes predictions more resilient to noise but may decrease sensitivity to local variations.
n (DataPoints): Number of data points considered in AI analysis. This affects how the AI interprets patterns in the price data.
maType (Select MA): Type of moving average applied. Options allow for different smoothing techniques to emphasize or dampen aspects of price movement.
length: Length of the moving average. A greater length creates a smoother curve but might lag recent price changes.
dataToClassify: Source data for classifying price as bullish or bearish. It can be adjusted to consider different aspects of price information
dataForMovingAverage: Source data for calculating the moving average. Different selections may emphasize different aspects of price movement.
-----------------
Disclaimer
The information contained in my Scripts/Indicators/Ideas/Algos/Systems does not constitute financial advice or a solicitation to buy or sell any securities of any type. I will not accept liability for any loss or damage, including without limitation any loss of profit, which may arise directly or indirectly from the use of or reliance on such information.
All investments involve risk, and the past performance of a security, industry, sector, market, financial product, trading strategy, backtest, or individual's trading does not guarantee future results or returns. Investors are fully responsible for any investment decisions they make. Such decisions should be based solely on an evaluation of their financial circumstances, investment objectives, risk tolerance, and liquidity needs.
My Scripts/Indicators/Ideas/Algos/Systems are only for educational purposes!
Liquidity Voids (FVG) [LuxAlgo]The Liquidity Voids (FVG) indicator is designed to detect liquidity voids/imbalances derived from the fair value gaps and highlight the distribution of the liquidity voids at specific price levels.
Fair value gaps and liquidity voids are both indicators of sell-side and buy-side imbalance in trading. The only difference is how they are represented in the trading chart. Liquidity voids occur when the price moves sharply in one direction forming long-range candles that have little trading activity, whilst a fair value is a gap in price.
🔶 USAGE
Liquidity can help you to determine where the price is likely to head next. In conjunction with higher timeframe market structure, and supply and demand, liquidity can give you insights into potential price movement. It's essential to practice using liquidity alongside trend analysis and supply and demand to read market conditions effectively.
The peculiar thing about liquidity voids is that they almost always fill up. And by “filling”, we mean the price returns to the origin of the gap. The reason for this is that during the gap, an imbalance is created in the asset that has to be made up for. The erasure of this gap is what we call the filling of the void. And while some voids waste no time in filling, some others take multiple periods before they get filled.
🔶 SETTINGS
The script takes into account user-defined parameters and detects the liquidity voids based on them, where detailed usage for each user-defined input parameter in indicator settings is provided with the related input's tooltip.
🔹 Liquidity Detection
Liquidity Voids Threshold: Act as a filter while detecting the Liquidity Voids. When set to 0 basically means no filtering is applied, increasing the value causes the script to check the width of the void compared to a fixed-length ATR value
Bullish: Color customization option for Bullish Liquidity Voids
Bearish: Color customization option for Bearish Liquidity Voids
Labels: Toggles the visibility of the Liquidity Void label
Filled Liquidity Voids: Toggles the visibility of the Filled Liquidity Voids
🔹 Display Options
Mode: Controls the lookback length of detection and visualization
# Bars: Lookback length customization, in case Mode is set to Present
🔶 RELATED SCRIPTS
Buyside-Sellside-Liquidity
Fair-Value-Gaps
ATR VisualizerAdvance Your Market Analysis with the True Range Indicator
The True Range Indicator is a sophisticated screener meticulously developed to bolster your trading execution by presenting an exceptional understanding of the market direction. The centerpiece of this instrument is a distinctive candle configuration depicting the Average True Range (ATR) and the Bear/Bull range. However, it traverses beyond the conventional channels to offer specific market settings to boost your trading decisions.
User-Defined Settings
Broadly, the indicator offers five dynamic settings:
Bear/Bull Range
The Bear/Bull Range outlines the ATR for each candle type - bearish and bullish - and then smartly opts for the pertinent one based on the prevalent market circumstances. This feature aids in comparing the range of bullish and bearish candlesticks, which deepens your understanding of the price action and volatility.
Bearish Range
The Bearish Range isolates and computes the ATR for bearish candles solely. Utilizing this option spots the bear-dominated periods and provides insights about potential market reversals or downward continuations.
Bullish Range
Opposite to the Bearish Range, the Bullish Range setting tabulates the ATR exclusively for bullish candles. It assists in tracking the periods when bulls control, enlightening traders about the possibility of upward continuations or trend reversals.
Average Range
The Average Range provides an unbiased measure of range without prioritizing either bull or bear trends. This model is ideal for traders looking for a holistic interpretation of market behavior, regardless of direction.
Cumulative Average Range
Equally significant is the Cumulative Average Range which calculates the aggregate moving average of the true ranges for an expressed period. This setting is extremely valuable when evaluating the long-term volatility and spotting potential breakouts.
Dual Candle Configuration
Going a step ahead, the True Range Indicator uniquely offers the possibility to incorporate more than one candle estimate on your screen. This ensures simultaneous analysis of multiple market dynamics, thereby enhancing your trading precision multifold.
Concluding Thoughts
In essence, the True Range Indicator is an indispensable companion for traders looking to not only leverage market volatility but also make educated predictions. Equipped with an array of insightful market settings and the ability to display dual candle estimates on-screen, you can customize the functionality to suit your unique trading style and magnify your market performance dramatically.
ADW - MomentumADW - Momentum is a trading indicator based on the Relative Momentum Index (RMI) and Exponential Moving Averages (EMAs). This indicator plots the RMI along with its EMAs and highlights regions where RMI crosses its slow EMA. Additionally, it provides alerts when the momentum flips bullish or bearish.
Key Features:
The RMI helps to identify momentum in the market.
Three EMAs (Fast, Standard, and Slow) were calculated on the RMI. These can be utilized to analyze the momentum trend over different periods.
Highlighted regions and colour coding to indicate when RMI crosses its Slow EMA, signalling potential momentum shifts.
Customizable parameters: Users can specify the lengths of the RMI and EMAs, boundaries for RMI, and colours for various components of the plot.
Alerts: The script can alert users when the momentum has flipped bullish or bearish.
The script is organized into several sections:
Inputs: The user can customize several parameters including the RMI averaging length, momentum lookback, RMI boundaries, and the EMA lengths. In addition, users can also specify the colours for the RMI line, Slow EMA line, and the fill colour.
RMI Calculation: The script calculates the RMI based on the user-provided length and momentum lookback. This is done by first calculating two EMAs - one for the positive differences between closing prices (emaInc), and one for the negative differences (emaDec). Then, the RMI is computed using these EMAs.
Plotting: The script plots the RMI line, Slow EMA line, and two horizontal lines indicating the RMI boundaries. In addition, it also fills the region between the RMI and Slow EMA lines.
Conditions: The script computes the conditions for bullish and bearish momentum flips. These are defined as when the RMI crosses above or below the Slow EMA respectively.
Alerts: Finally, the script sets up two alert conditions based on the bullish and bearish conditions. These alert the user when the momentum has flipped bullish or bearish, with a message that includes the current RMI value.
Leveraged Share VolumeHello everyone,
Did this quick reference indicator and figured I would share it as nothing like it exists that I could find.
What this does is it pulls leveraged share data and displays the bull share and bear share volume.
There are 5 pre-programmed shares. These include:
SPY
Pulls bull share data from: SPXL and UPRO
Pulls bear share data from: SPXU and SPXS
IWM
Pulls bull share data from: TNA
Pulls bear share data from: TZA
DIA
Pulls bull share data from: UDOW
Pulls bear share data from: SDOW
QQQ
Pulls bull share data from: TQQQ
Pulls bear share data from: SQQQ
XLE
Pulls bull share data from: ERX
Pulls bear share data from: ERY
As there continues to be more leveraged shares available (for example, AAPU, APPD, MSFT, TSLA, etc.) there is also the option to use these manual tickers as these shares become available. The image below shows the data input screen:
The indicator will default to show the data as a ratio. The ratio is calculated by the total bear shares over the total bull shares (sell to buy ratio). If you unselect the Ratio option (displayed in the image above), it will show the raw volume.
When data is displayed as a ratio, you will see the white SMA line. This will show you the average ratio over a 14 period lookback. This is customizeable under the SMA Length input (shown in the image above).
Indicator's purpose:
The aim of the indicator is to provide context as to where the current sentiment is. Its similar in concept to a put to call ratio. The idea is, the more bearish people are, the more inverse shares are being bought, the higher the ratio or raw volume for bear shares and vice versa for bullish situations.
If you would like some more contextual information about the powers of tracking this type of data for trading purposes, you can check out this idea I published about the relationship between leveraged shares and market sentiment/behaviour:
Otherwise, the indicator is pretty straight forward!
Its not meant to be anything but a reference indicator to help give you context of the current market positioning.
If you have any questions or suggestions, please feel free to leave them below.
Thank you for reading and checking out the indicator!
Safe trades everyone!
Volatility patterns / quantifytools- Overview
Volatility patterns detect various forms of indecisive price action, on a larger scale as a compressed range and on a smaller scale as indecision candles. Indecisive and volatility suppressing price action can be thought of as a spring being pressed down. The more suppression, the more tension is built and eventually released as a spike or series of spikes in volatility. Each volatility pattern is assigned an influence period, during which average and peak relative volatility is recorded and stored to volatility metrics.
- Patterns
The following scenarios are qualified as indecision candles: inside candles, indecision engulfing candles and volatility shifts.
By default, each indecision candle is considered a valid pattern only when another indecision candle has taken place within 3 periods, e.g. prior inside candle + indecision engulfing candle = valid volatility pattern. This measurement is taken to filter noise by looking for multiple hints of pending volatility, rather than just one. Level of tolerated noise can be changed via input menu by using sensitivity setting, by default set to 2.
Sensitivity at 1: Any single indecision candle is considered a valid pattern
Sensitivity at 2: 2 indecision candles within 3 bars is considered a valid pattern
Sensitivity at 3: 2 indecision candles within 2 bars (consecutive) is considered a valid pattern
The following scenarios are qualified as range patterns: series of lower highs/higher lows and series of low volatility pivots.
A pivot is defined by highest/lowest point in price, by default within 2 periods back and 2 periods forward. When 4 pivots with qualities mentioned above are found, a box indicating compressed range will appear. Both required pivots and pivot definition can be adjusted via input menu.
- Influence time and metrics
By default, influence time for each volatility pattern is set to 6 candles, a period for which spike(s) in volatility is expected. For each influence period, average relative volatility (volatility relative to volatility SMA 20) and peak relative volatility is recorded and stored to volatility metrics. All metrics used in calculations are visible in "Data Window "tab. Average and peak volatility during influence period will vary depending on chart, timeframe and chosen settings. Tweaking the settings might result in an improvement and is worth experimenting with.
- Visuals
By default, indecision candles are visualized as yellow lines and range patterns as orange boxes. Influence time periods are respectively visualized as colored candle borders, applied as long as influence time period is active. All colors are fully customizable via input menu.
- Practical guide
Volatility patterns depict moments of equal strength from both bulls and bears. While this equilibrium is in place, price is stagnant and compresses until either side initiates volatility, releasing the built up tension. On top of hedging and playing the volatility using volatility based instruments, some other methods can be applied to take advantage of the somewhat tricky areas of indecision.
Example #1: Trading volatility
Volatility is not a bad thing from a trading perspective, but can actually be fertile ground for executing trade setups. Trading volatility influence periods from higher timeframes on lower timeframes gives greater resolution to work with and opportunities to take advantage of the wild swings created.
Example #2: Finding bias for patterns
Points of confluence where it anyway makes sense to favor one side over the other can be used for establishing bias for indecisive price action as well. At face value, it makes sense to expect bearish reactions at range highs and bullish reactions at range low, for which volatility patterns can provide a catalyst.
Example #3: Betting on initiation direction
Betting on direction of the first volatile move can easily go against you, but if risk/reward is able to compensate for the poor win rate, it's a valid idea to consider and explore.
FTR, WMA, OBV & RSI StrategyThis Pine Script code is a trading strategy that uses several indicators such as Fisher Transform (FTR), On-Balance Volume (OBV), Relative Strength Index (RSI), and a Weighted Moving Average (WMA). The strategy generates buy and sell signals based on the conditions of these indicators.
The Fisher Transform function is a technical indicator that uses past prices to determine whether the current market is bullish or bearish. The Fisher Transform function takes in four multipliers and a length parameter. The four multipliers are used to calculate four Fisher Transform values, and these values are used in combination to determine if the market is bullish or bearish.
The Weighted Moving Average (WMA) is a technical indicator that smooths out the price data by giving more weight to the most recent prices.
The Relative Strength Index (RSI) is a momentum indicator that measures the strength of a security's price action. The RSI ranges from 0 to 100 and is typically used to identify overbought or oversold conditions in the market.
The On-Balance Volume (OBV) is a technical indicator that uses volume to predict changes in the stock price. OBV values are calculated by adding volume on up days and subtracting volume on down days.
The strategy uses the Fisher Transform values to generate buy and sell signals when all four Fisher Transform values change color. It also uses the WMA to determine if the trend is bullish or bearish, the OBV to confirm the trend, and the RSI to filter out false signals.
The red and green triangular arrows attempt to indicate that the trend is bullish or bearish and should not be traded against in the opposite direction. This helps with my FOMO :)
All comments welcome!
The script should not be relied upon alone, there are no stop loss or take profit filters. The best results have been back-tested using Tradingview on the 45m - 3 hour timeframes.
COT-index rangeA graph showing the commercials (part of COT-data) positioning in relation to its own range, X periods back. I usually choose the look-back period to equal approximately one year. This will be around 52 on a weekly chart and 250 on a daily chart.
In my opinion a high data-point for the commercials is bullish and vice versa. But instead of only looking att absolute values I now look more at how the commercials are positioned compared to the previous 12 och 6 months.
Example:
a) if COT-index range = 0.8, then the commercials are in the 80th percentile for this specific look-back period, i.e. the commercials has only been more bullish 20% of the time and more bearish 80% of the time.
b) a) if COT-index range = 0.5, then the commercials are in the 50th percentile for this specific look-back period, i.e. the commercials has been more bullish 50% of the time and more bearish 50% of the time.
c) if COT-index range = 0.2, then the commercials are in the 20th percentile for this specific look-back period, i.e. the commercials has been more bullish 80% of the time and more bearish 20% of the time.
In other words, a high reading is bullish and a low reading is bearish.
Range Filter x Hull SuiteRange Filter x Hull Suite
This indicator is a hybrid of two popular indicators, with a twist; namely the Range Filter (Guikroth version) and the Hull Suite (by Insilico) .
Originally developed as a 1 minute trend following strategy and traded during the New York Session for it's typically high volume / likely trending nature, it provides entry signals based on the following logic:
For bullish entry signals:
The first bullish* candle (*defined by the Range Filter bar color logic, blue by default - which is not necessarily technically a bullish candle as defined by the OHLC values) which appears after the consolidation candles (also defined by the Range Filter bar color logic, orange by default), and where the Hull Suite moving average is also bullish.
For bearish entry signals:
The first bearish* candle (*defined by the Range Filter bar color logic, red by default - which is not necessarily technically a bearish candle as defined by the OHLC values) which appears after the consolidation candles (also defined by the Range Filter bar color logic, orange by default), and where the Hull Suite moving average is also bearish.
The indicator aims to filter out signals where possible consolidation is occurring and comes with styling options and alternative filter options such as a triple moving average trend detection method. Signals can also be filtered by a specific trading session. Standard options for the Range Filter and Hull Suite settings are also able to be customised within the settings menu.
Alerts
Various alerts are built-in, including the custom entry signals unique to this strategy.
Note : The above features listed above are accurate at the time of publishing, but may be altered in future.
Many thanks to guikroth & Insilico for sharing their open source indicators, and also to the original developer of the strategy itself for sharing it.
Candle Combo ScreenerThe Candle Combo Screener allows you to see candlestick combinations for up to 5 different tickers at the same time . If one of the candle combination is detected the corresponding cell will be highlighted to alert you.
Candle Combinations Detected
Bullish Kicker
Bullish & Bearish Oops Reversals
Open Equals High / Low
Inside Day
Select any 5 tickers. Colors and table settings are fully customizable to fit your style.
Bullish Kicker
The opening price of the current candle gaps up above the body of the prior day's candle AND the prior day's candle close was less than the open.
Oops Reversals
Bullish: Price opens below the prior day’s low and closes above.
Bearish: Price opens above the prior day's high and closes below.
Open Equals High / Low
The current candles opening price is equal to either the high or low of the day.
Inside Day
The current candles high and low are contained within the prior day's high and low.
Impulse Momentum MACD - Slow and FastImpulse Momentum MACD - Slow and Fast
The Momentum indicator is a technical indicator that measures the speed and strength of the price movement of a financial asset. This indicator is used to identify the underlying strength of a trend and predict potential changes in price direction, when the indicator crosses the zero line, it can signal a change of direction in the price trend.
On the other hand, the MACD is an indicator used to identify the trend and strength of the market and shows the difference between two exponential moving averages ( EMA ) of different periods. The MACD is commonly used to determine the direction of an asset's price trend.
COPOSITION AND USE OF THE INDICATOR
This script is an implementation of the Impulse Momentum MACD indicator with two variations: slow and fast. It uses a combination of the Momentum indicator and the Moving Average Convergence/Divergence (MACD) indicator to identify trend reversals and momentum changes in an asset's price.
The combination of both indicators can help traders identify market entry and exit opportunities. The Impulse Momentum MACD is a Modified MACD, it is formed by filtering the values in a range of Modifiable Moving Averages by calculating their high and low ranges,This indicator has two parts: a slow part and a fast part. The slow part uses input values for the lengths of the moving averages and the length of the signal for the MACD indicator. The fast part uses different input values for the lengths of the moving averages. Also, each part has its own set of line colors and histogram colors for easy visualization.
The script also includes inputs to choose the type of moving average to use (SMA, EMA, etc.), the lookback period, the colors for the histogram lines and bars, and a zero trend line (also known as a horizontal trend line). ).
* Highest performing custom settings for the zero trend line. For Operations of:
- One Minute: Trend Line Time Frame = Five Minutes.
- Three Minutes: Trend Line Time Frame = Fifteen Minutes.
- Five Minutes: Trend Line Time Frame = Thirty Minutes.
- Fifteen Minutes: Trend Line Time Frame = Sixty Minutes.
Rules For Trading
🔹 Bullish:
* The Zero Horizontal Trend Line should be in Green Color.
* The Slow Histogram Bar should be in Green Color.
* The Fast Histogram Bar must be in Blue or Black Color or No Bar Appears.
* The Momentum Line or Momentum Area must be in Green Color.
crosses:
- When the Impulse Momentum MACD Slow line crosses the Impulse Momentum MACD Slow signal line upwards.
- When the Impulse Momentum MACD Fast line crosses the Impulse Momentum MACD Fast signal line upwards.
- Note 1: A Position is Opened when the condition of any of the aforementioned crossovers is met.
- Note 2: If the two aforementioned crossings anticipate the condition of the Zero Horizontal Tendency Line because it is in Red; A position is only opened immediately when the Zero Horizontal Trend line turns Green.
🔹 Bearish:
* The Zero Horizontal Trend Line should be in Red Color.
* The Slow Histogram Bar should be in Red Color.
* The Fast Histogram Bar must be in Blue or Black Color or No Bar Appears.
* The Momentum Line or Momentum Area must be in Red Color.
crosses:
- When the Impulse Momentum MACD Slow line crosses the Impulse Momentum MACD Slow signal line downwards.
- When the Impulse Momentum MACD Fast line crosses the Impulse Momentum MACD Fast signal line downwards.
- Note 1: A Position is Opened when the condition of any of the aforementioned crossovers is met.
- Note 2: If the two aforementioned crossings anticipate the condition of the Zero Horizontal Tendency Line because it is Green, an immediate position is only opened when the Zero Horizontal Tendency line turns Red.
This script can be used in different markets such as forex, indices and cryptocurrencies for analysis and trading. However, it is important to note that no trading strategy is guaranteed to be profitable, and traders should always conduct their own research and risk management.
Hikkake Hunter 2.0This script serves as a successor to a previous script I wrote for identifying Hikkakes nearly two years ago.
The old version has been preserved here:
█ OVERVIEW
This script is a rework of an old script that identified the Hikkake candlestick pattern. While this pattern is not usually considered a part of the standard candlestick patterns set, I found a lot of value when finding a solution to identifying it. A Hikkake pattern is a 3-candle pattern where a middle candle is nested in between the range of the prior candle, and a candle that follows has a higher high and a higher low (bearish setup) or a lower high and a lower low (bullish setup). What makes this pattern unique is the "confirmation" status of the pattern; within 3 candles of this pattern's appearance, there must be a candle that closes above the high (bullish setup) or below the low (bearish setup) of the second candle. Additional flexibility has been added which allows the user to specify the number of candles (up to 5) that the pattern may have to confirm after its appearance.
█ CONCEPTS
This script will cover concepts mainly focusing on candlestick analysis, price analysis (with higher timeframes), and statistical analysis. I believe there is also educational value presented with the use of user-defined-types (UDTs) in accomplishing these concepts that I hope others will find useful.
Candlestick Analysis - Identification and confirmation of the patterns in the deprecated script were clunky and inefficient. While the previous script required the use of 6 candles to perform the confirmations of patterns (restricted solely to identifying patterns that confirmed in 3 candles or less), this script only requires 3 candles to identify and process patterns by utilizing a UDT representing a 'pattern object'. An object representing a pattern will be created when it has been identified, and fields within that object will be set for processing by the functions it is passed to. Pattern objects are held by a var array (values within the array persist between bars) and will be removed from this array once they have been confirmed or non-confirmed.
This is a significant deviation from the previous script's methods, as it prevents unnecessary re-evaluations of the confirmation status of patterns (i.e. Hikkakes confirmed on the first candle will no longer need to be checked for confirmations on the second or third; a pitfall of the deprecated version which required multiple booleans tracking prior confirmation statuses). This deviation is also what provides the flexibility in changing the number of candles that can pass before a pattern is deemed non-confirmed.
As multiple patterns can be confirmed simultaneously, this script uses another UDT representing a linked-list reduction of the pattern object used to process it. This liked-list object will then be used for Price Analysis.
Price Analysis - This script employs the use of a UDT which contains all the returns of confirmed patterns. The user specifies how many candles ahead of the confirmed pattern to calculate its return, as well as where this calculation begins. There are two settings: FROM APPEARANCE and FROM CONFIRMATION (default). Price differences are calculated from the open of the candle immediately following the candle which had confirmed the pattern to the close of the candle X candles ahead (default 10). ( SEE FEATURES )
Because of how Pine functions, this calculation necessitates a lookback on prior candles to identify when a pattern had been confirmed. This is accomplished with the following pseudo-code:
if not na(confirmed linked-list )
for all confirmed in list
GET MATRIX PLACEMENT
offset = FROM CONFIRMATION ? 0 : # of candles to confirm
openAtFind = open
percent return = ((close - openAtFind) / openAtFind) * 100
ADD percent return TO UDT IN MATRIX
All return UDTs are held in a matrix which breaks up these patterns into specific groups covered in the next section.
Higher Timeframes - This script makes a request.security call to a higher timeframe in order to identify a price range which breaks up these patterns into groups based on the 'partition' they had appeared in. The default values for this partitioning will break up the chart into three sections: upper, middle, and lower. The upper section represents the highest 20% of the yearly trading range that an asset has experienced. The lower section represents the trading range within a third (33%) of the yearly low. And the middle section represents the yearly high-low range between these two partitions.
The matrix containing all return UDTs will have these returns split up based on the number of candles required to confirm the pattern as well as the partition the pattern had appeared in. The underlying rationale is that patterns may perform better or worse at different parts of an asset's trading range.
Statistical Analysis - Once a pattern has been confirmed, the matrix containing all return UDTs will be queried to check if a 'returnArray' object has been created for that specific pattern. If not, one will be initialized and a confirmed linked-list object will be created that contains information pertinent to the matrix position of this object.
This matrix contains the returns of both the Bullish and Bearish Hikkake patterns, separated by the number of candles needed to confirm them, and by the partitions they had appeared in. For the standard 3 candles to confirm, this means the matrix will contain 18 elements (dependent on the number of candles allowed for confirmations; its size will range from 12 to 30).
When the required number of candles for Price Analysis passes, a percent return is calculated and added to the returnArray contained in the matrix at the location derived from the confirmed linked-list object's values. The return is added, and all values in the returnArray are updated using Pine's built in array.___ functions. This returnArray object contains the array of all returns, its size, its average, the median, the standard deviation of returns, and a separate 3-integer array which holds values that correspond to the types of returns experienced by this pattern (negative, neutral, and positive)*.
After a pattern has been confirmed, this script will place the partition and all of the aforementioned stats values (plus a 95% confidence interval of expected returns) related to that pattern onto the tooltip of the label that identifies it. This allows users to scroll over the label of a confirmed pattern to gauge its prior performance under specific conditions. The percent return of the specific pattern identified will later be placed onto the label tooltip as well. ( SEE LIMITATIONS )
The stats portion of this script also plays a significant role in how patterns are presented when using the Adaptive Coloring mode described in FEATURES .
*These values are incremented based on user-input related to what constitutes a 'negative' or 'positive' return. Default values would place any return by a pattern between -3% and 3% in the 'neutral' category, and values exceeding either end will be placed in the 'negative' or 'positive' categories.
█ FEATURES
This script contains numerous inputs for modifying its behavior and how patterns are presented/processed, separated into 5 groups.
Confirmation Setting - The most important input for this script's functioning. This input is a 'confirm=true' input and must be set by the user before the script is applied to the chart. It sets the number of candles that a pattern has to confirm once it has been identified.
Alert Settings - This group of booleans sets which types of alerts will fire during the scripts execution on the chart. If enabled, the four alerts will trigger when: a pattern has been identified, a pattern has been confirmed, a pattern has been non-confirmed, and show the return for that confirmed pattern in an alert. Because this script uses the 'alert' function and not 'alertcondition', these must be enabled before 'any alert() function call' is set in TradingView's 'alerts' settings.
Partition Settings - This group of inputs are responsible for creating (and viewing) the partitions that breaks the returns of the patterns identified up into their respective groups. The user may set the resolution to grab the range from, the length back of this resolution the partitions get their values from, the thresholds which breaks the partitions up into their groups, and modify the visibility (if they're shown, the colors, opacity) of these partitions.
Stats Settings - These inputs will drastically alter how patterns are presented and the resulting information derived from them after their appearance. Because of this section's importance, some of these inputs will be described in more detail.
P/L Sample Length - Defines the number of candles after the starting point to grab values from in the % return calculation for that pattern.
P/L Starting Point - Defines the starting point where the P/L calculation will take place. 'FROM APPEARANCE' will set the starting point at the candle immediately following the pattern's appearance. 'FROM CONFIRMATION' will place the starting point immediately following the candle which had confirmed the pattern. ( SEE LIMITATIONS )
Min Returns Needed - Sets how many times a specific pattern must appear (both by number of candles needed to confirm and by partition) before the statistics for that pattern are displayed onto the tooltip (and for gradient coloration in Adaptive Coloring mode).
Enable Adaptive Coloring - Changes the coloration of the patterns based on the bullish/bearishness of the specified Gradient Reference value of that pattern compared to the Return Tolerance values OR the minimum and maximum values of that specified Gradient Reference value contained in the matrix of all returns. This creates a color from a gradient using the user-specified colors and alters how many of the patterns may appear if prior performance is taken into account.
Gradient Reference - Defines which stats measure of returns will be used in the gradient color generation. The two settings are 'AVG' and 'MEDIAN'.
Hard Limit - This boolean sets whether the Return Tolerance values will not be replaced by values that exceed them from the matrix of returns in color gradient generation. This changes the scale of the gradient where any Gradient Reference values of patterns that exceed these tolerances will be colored the full bullish or bearish gradient colors, and anything in between them will be given a color from the gradient.
Visibility Settings - This last section includes all settings associated with the overall visibility of patterns found with this script. This includes the position of the labels and their colors (+ pattern colors without Adaptive Coloring being enabled), and showing patterns that were non-confirmed.
Most of these inputs in the script have these kinds of descriptions to what they do provided by their tooltips.
█ HOW TO USE
I attempted to make this script much easier to use in terms of analyzing the patterns and displaying the information to the user. The previous script would have the user go to the 'data window' side bar on TradingView to view the returns of a pattern after they had specified which pattern to analyze through the settings, needlessly convoluted. This aim at simplicity was achieved through the use of UDTs and specific code-design.
To use, simply apply the indicator to a chart, set the number of candles (between 2 and 5) for confirming this specific pattern and adjust the many settings described above at your leisure.
█ LIMITATIONS
Disclaimer - This is a tool created with the hopes of helping identify a specific pattern and provide an informative view about the performance of that pattern. Previous performance is not indicative of future results. None of this constitutes any form of financial advice, *use at your own risk*.
Statistical Analysis - This script assumes that all patterns will yield a NORMAL DISTRIBUTION regarding their returns which may not be reflective of reality. I personally have limited experience within the field of statistics apart from a few high school/college courses and make no guarantees that the calculation of the 95% confidence interval is correct. Please review the source code to verify for yourself that this interval calculation is correct (Function Name: f_DisplayStatsOnLabel).
P/L Starting Point - Because of when the object related to the confirmation status of a pattern is created (specifically the linked-list object) setting the 'P/L Starting Point' to 'FROM APPEARANCE' will yield the results of that P/L calculation at the same time as 'FROM CONFIRMATION'.
█ EXAMPLES
Default Settings:
Partition Background (default):
Partition Background (Resolution D : Length 30):
Adaptive Coloration:
Show Non-Confirmed:
MARS - Moving Average Relative StrengthThe original idea from this script is from the script " Percentage Relative Strength " by dman103 . The original script compared a symbol to an index by their everyday percentage change. The symbol percentage was subtracted from percentage change of the index, & the results were then smoothed by moving averages.
Instead of daily percentage changes, this script directly calculates relative strength via a moving average. We call this simpler approach as MARS (Moving Average Relative Strength) .
MARS compares a symbol to the index by making use of the price's distance from a moving average. By default, we compare the distance from the 50-day simple moving average of the stock vs that of the index. Both the type & the length of the moving average is customisable.
Background color indicates the index being above or below its moving average.
Blue background: index is above its moving average
Pink background: index is below its moving average
The histogram indicates whether the stock is under-performing or out-performing the index.
Up-bars : stock is out-performing the index i.e. between the stock & the index, the difference between the distance to/from the 50-day moving average is a positive value.
Down-bars : stock is under-performing the index i.e. between the stock & the index, the difference between the distance to/from the 50-day moving average is a negative value.
The color of the histogram indicates the type of out-performance or under-performance. There can be a total of 6 such colors:
Relative out-performance : both index & stock are bearish, but stock is less bearish. The script prints light green up-bars on a pink background.
Gross out-performance : both index & stock are bullish, but stock is more bullish. The script prints green up-bars on a blue background.
Absolute out-performance : index is bearish, but stock is bullish! The script prints blue up-bars on a pink background.
Relative under-performance : both index & stock are bullish, but stock is less bullish. The script prints light red bars on a blue background.
Gross under-performance : both index & stock are bearish, but stock is more bearish. The script prints dark red bars on a pink background.
Absolute under-performance : index is bullish, but stock is bearish! The script prints black down-bars on a blue background.
Additional customisation options:
Paint bars option changes the bar colors to mirror the histogram colors.
Easy colors option just changes the histogram colors to either blue or pink, indicating out-performance or under-performance, respectively. This is when the trader does not wish to demarcate between the above-mentioned 6 conditions.
Multiple Standard MomentumMultiple Standard Momentum
The momentum indicator is a technical indicator that measures the speed and strength of the price movement of a financial asset. This indicator is used to identify the underlying strength of a trend and predict potential changes in price direction.
The calculation of the momentum indicator is based on the difference between the current price and the price of a previous period. The result is displayed on a chart, which can be positive or negative, depending on whether the current price is higher or lower than the price of the previous period. The indicator can be used on any time frame, but is generally used on short-term charts.
To use the momentum indicator , you look for two types of signals:
🔹 Crossover Signal – When the indicator crosses the zero line, it can signal a change of direction in the price trend.
🔹 Divergence – When the asset price moves in one direction and the indicator moves in the opposite direction, a divergence can be identified. This divergence may indicate a possible trend reversal.
COMPOSITION AND MODE OF USE OF THE INDICATOR
🔹 This indicator displays multiple Momentum levels on a single chart, allowing you to view multiple Momentum lines. Each level is represented on the chart where it can be hidden or shown as desired for better market analysis.
🔹 In addition, a zero trend line (also known as a horizontal trend line) has been added. The zero trend line is a horizontal line that indicates the point at which the current price equals the opening price, which allows users to draw a custom zero trend line on the chart using different colors and time periods of calculation.
* Highest performing custom setup for the Zero Trend Line. For Operations of:
- One Minute: Trend Line Time Frame = Five Minutes.
- Three Minutes: Trend Line Time Frame = Fifteen Minutes.
- Five Minutes: Trend Line Time Frame = Thirty Minutes.
- Fifteen Minutes: Trend Line Time Frame = Sixty Minutes.
Rules For Trading
🔹 Bullish:
* The Zero Trend Line must be in Green Color.
* When the Momentum Line Crosses the Zero Line from Bottom to Top.
🔹 Bearish:
* The Zero Trend Line must be in Red Color.
* When the Momentum Line Crosses the Zero Line from Top to Bottom.
In addition, parameters were defined to activate or deactivate the graphic signal taking into account the previous requirement (Bullish and Bearish):
🔹 Long or Buy = ▲
🔹 Short or Sell = ▼
This script can be used in different markets such as forex, indices, and cryptocurrencies for analysis and trading. However, it is important to note that no trading strategy is guaranteed to be profitable, and traders should always conduct their own research and risk management.