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:
Cerca negli script per "30年国债收益率"
JS-TechTrading: VWAP Momentum_Pullback StrategyGeneral Description and Unique Features of this Script
Introducing the VWAP Momentum-Pullback Strategy (long-only) that offers several unique features:
1. Our script/strategy utilizes Mark Minervini's Trend-Template as a qualifier for identifying stocks and other financial securities in confirmed uptrends.
NOTE: In this basic version of the script, the Trend-Template has to be used as a separate indicator on TradingView (Public Trend-Template indicators are available on TradingView – community scripts). It is recommended to only execute buy signals in case the stock or financial security is in a stage 2 uptrend, which means that the criteria of the trend-template are fulfilled.
2. Our strategy is based on the supply/demand balance in the market, making it timeless and effective across all timeframes. Whether you are day trading using 1- or 5-min charts or swing-trading using daily charts, this strategy can be applied and works very well.
3. We have also integrated technical indicators such as the RSI and the MA / VWAP crossover into this strategy to identify low-risk pullback entries in the context of confirmed uptrends. By doing so, the risk profile of this strategy and drawdowns are being reduced to an absolute minimum.
Minervini’s Trend-Template and the ‘Stage-Analysis’ of the Markets
This strategy is a so-called 'long-only' strategy. This means that we only take long positions, short positions are not considered.
The best market environment for such strategies are periods of stable upward trends in the so-called stage 2 - uptrend.
In stable upward trends, we increase our market exposure and risk.
In sideways markets and downward trends or bear markets, we reduce our exposure very quickly or go 100% to cash and wait for the markets to recover and improve. This allows us to avoid major losses and drawdowns.
This simple rule gives us a significant advantage over most undisciplined traders and amateurs!
'The Trend is your Friend'. This is a very old but true quote.
What's behind it???
• 98% of stocks made their biggest gains in a Phase 2 upward trend.
• If a stock is in a stable uptrend, this is evidence that larger institutions are buying the stock sustainably.
• By focusing on stocks that are in a stable uptrend, the chances of profit are significantly increased.
• In a stable uptrend, investors know exactly what to expect from further price developments. This makes it possible to locate low-risk entry points.
The goal is not to buy at the lowest price – the goal is to buy at the right price!
Each stock goes through the same maturity cycle – it starts at stage 1 and ends at stage 4
Stage 1 – Neglect Phase – Consolidation
Stage 2 – Progressive Phase – Accumulation
Stage 3 – Topping Phase – Distribution
Stage 4 – Downtrend – Capitulation
This strategy focuses on identifying stocks in confirmed stage 2 uptrends. This in itself gives us an advantage over long-term investors and less professional traders.
By focusing on stocks in a stage 2 uptrend, we avoid losses in downtrends (stage 4) or less profitable consolidation phases (stages 1 and 3). We are fully invested and put our money to work for us, and we are fully invested when stocks are in their stage 2 uptrends.
But how can we use technical chart analysis to find stocks that are in a stable stage 2 uptrend?
Mark Minervini has developed the so-called 'trend template' for this purpose. This is an essential part of our JS-TechTrading pullback strategy. For our watchlists, only those individual values that meet the tough requirements of Minervini's trend template are eligible.
The Trend Template
• 200d MA increasing over a period of at least 1 month, better 4-5 months or longer
• 150d MA above 200d MA
• 50d MA above 150d MA and 200d MA
• Course above 50d MA, 150d MA and 200d MA
• Ideally, the 50d MA is increasing over at least 1 month
• Price at least 25% above the 52w low
• Price within 25% of 52w high
• High relative strength according to IBD.
NOTE: In this basic version of the script, the Trend-Template has to be used as a separate indicator on TradingView (Public Trend-Template indicators are available in TradingView – community scripts). It is recommended to only execute buy signals in case the stock or financial security is in a stage 2 uptrend, which means that the criteria of the trend-template are fulfilled.
This strategy can be applied to all timeframes from 5 min to daily.
The VWAP Momentum-Pullback Strateg y
For the JS-TechTrading VWAP Momentum-Pullback Strategy, only stocks and other financial instruments that meet the selected criteria of Mark Minervini's trend template are recommended for algorithmic trading with this startegy.
A further prerequisite for generating a buy signals is that the individual value is in a short-term oversold state (RSI).
When the selling pressure is over and the continuation of the uptrend can be confirmed by the MA / VWAP crossover after reaching a price low, a buy signal is issued by this strategy.
Stop-loss limits and profit targets can be set variably.
Relative Strength Index (RSI)
The Relative Strength Index (RSI) is a technical indicator developed by Welles Wilder in 1978. The RSI is used to perform a market value analysis and identify the strength of a trend as well as overbought and oversold conditions. The indicator is calculated on a scale from 0 to 100 and shows how much an asset has risen or fallen relative to its own price in recent periods.
The RSI is calculated as the ratio of average profits to average losses over a certain period of time. A high value of the RSI indicates an overbought situation, while a low value indicates an oversold situation. Typically, a value > 70 is considered an overbought threshold and a value < 30 is considered an oversold threshold. A value above 70 signals that a single value may be overvalued and a decrease in price is likely , while a value below 30 signals that a single value may be undervalued and an increase in price is likely.
For example, let's say you're watching a stock XYZ. After a prolonged falling movement, the RSI value of this stock has fallen to 26. This means that the stock is oversold and that it is time for a potential recovery. Therefore, a trader might decide to buy this stock in the hope that it will rise again soon.
The MA / VWAP Crossover Trading Strategy
This strategy combines two popular technical indicators: the Moving Average (MA) and the Volume Weighted Average Price (VWAP). The MA VWAP crossover strategy is used to identify potential trend reversals and entry/exit points in the market.
The VWAP is calculated by taking the average price of an asset for a given period, weighted by the volume traded at each price level. The MA, on the other hand, is calculated by taking the average price of an asset over a specified number of periods. When the MA crosses above the VWAP, it suggests that buying pressure is increasing, and it may be a good time to enter a long position. When the MA crosses below the VWAP, it suggests that selling pressure is increasing, and it may be a good time to exit a long position or enter a short position.
Traders typically use the MA VWAP crossover strategy in conjunction with other technical indicators and fundamental analysis to make more informed trading decisions. As with any trading strategy, it is important to carefully consider the risks and potential rewards before making any trades.
This strategy is applicable to all timeframes and the relevant parameters for the underlying indicators (RSI and MA/VWAP) can be adjusted and optimized as needed.
Backtesting
Backtesting gives outstanding results on all timeframes and drawdowns can be reduced to a minimum level. In this example, the hourly chart for MCFT has been used.
Settings for backtesting are:
- Period from April 2020 until April 2021 (1 yr)
- Starting capital 100k USD
- Position size = 25% of equity
- 0.01% commission = USD 2.50.- per Trade
- Slippage = 2 ticks
Other comments
• This strategy has been designed to identify the most promising, highest probability entries and trades for each stock or other financial security.
• The RSI qualifier is highly selective and filters out the most promising swing-trading entries. As a result, you will normally only find a low number of trades for each stock or other financial security per year in case you apply this strategy for the daily charts. Shorter timeframes will result in a higher number of trades / year.
• As a result, traders need to apply this strategy for a full watchlist rather than just one financial security.
RSI is in Normal Distribution?Does RSI Follow a Normal Distribution?
The value of RSI was converted to a value between 0~2, 2~4, ..., 98~100, and the number of samples was graphed.
The Z values are expressed so that the values corresponding to 30 and 70 of the RSI can be compared with the standard normal distribution.
Additionally, when using the RSI period correction function of the 'RSI Candle Advanced V2' indicator that I made before, it shows no change in standard deviation.
RSI는 정규분포를 따를까요
RSI의 값을 0~2, 2~4, ..., 98~100 사이 값으로 변환하고 그 표본 갯수를 그래프로 표현하였습니다.
Z 값은 RSI의 30, 70에 해당하는 값을 표준정규분포와 비교할 수 있도록 표현하였습니다.
추가적으로 제가 예전에 만들었던 'RSI Candle Advanced V2' 지표의 RSI 기간 보정 함수를 사용할 경우 표준편차의 변화가 없음을 보입니다.
Reverse Relative Strength Indicator [CC]The Reverse Relative Strength Index was created by Giorgos Siligardos (Stocks & Commodities V. 21:6 (18-30)). It is a handy indicator that reverse engineers the RSI price calculation to show what the price would have to be for the RSI value to match our chosen input. You can select your chosen RSI level using the RSI Level input for this indicator. For example if you wanted to see what the price would be for the RSI value to match the oversold level then you would set the RSI Level for 30 and it will plot that price on the chart. This uses some simple math to extrapolate the price with some basic algebra from the typical RSI calculation. This, of course, is a very similar concept to my previous Reverse Moving Average Convergence Divergence script. This indicator formula can be used for any oscillator with some slight tweaking and could also be customized to show the price for overbought and oversold levels, which I will probably do in the near future. This indicator is useful in many ways such as a trend indicator as my example shows or for a price projection tool. For example, if you had a current RSI level of 66 and it was going up and you want to see what the price would be if it reached the overbought level then you could do that. Let me know what works well for you and if you have any suggestions for how to further improve upon this script. I have included darker colors to show stronger signals and lighter colors to show normal signals. Buy when the line turns green and sell when it turns red.
I have a bunch of backlogged scripts that I'm trying to publish, so I figured I would focus on my RSI scripts since I have a bunch, so be prepared to see a bunch of those over the next week or so. Let me know if there are any other scripts you would like to see me publish!
Typical Sweeps: Pivot high/low boxes. Grade sweeps, Handles/PipsTool to show typical pip-grade/ handle-grade sweep distance above pivot highs and pivot lows
-In consolidation/ranging periods (i.e. most of the time); Highs/Lows may by swept by fairly consistent distances in typical stop raids.
-Idea is from ICT teaching on typical Pip-grade sweeps in FX (10,20,30pips). Designed to work on FX, Indices, Commodities, Bitcoin.
-Above chart shows S&P; sweeping below and then above by 5 handles.
///inputs///
~choose sweep distance handles ($) or pips: will auto-calculate depending on the asset: FX= pips; Indices/stocks/commodities = handles ($)
--(2,5,10,20,30,50,100, 500, 1000)
~choose pivot lookback: larger number for more significant swing highs/lows
~choose number of historical boxes to display
~toggle on/off Pivot high boxes and Pivot low boxes independently
~extend boxes fully to the right (default is not extend)
~toggle on/off text
~text & box formatting options
Bitcoin, hourly chart; Pivot lookback = 15; $100 sweep boxes:
Eur/Usd; 15m chart; Pivot lookback = 30; 10pip sweep boxes; Boxes extended fully to the right:
Drip's 11am rule breakout/breakdown (OG)This indicator is based on Drippy2hard's 11:30 am (EST) rule.
In simple terms the rule states that:
If a trending stock makes a new high after 11:15-11:30am EST, there is a 75% chance of closing within 1% of High of day (HOD). Same applies for downtrend.
Please note:
Not all stocks will abide by this, this is backtested on stocks with avg daily volume > 2M and mostly mega cap stocks which have liquid option chains. The backtesting results show very promising results on $SPY/ $SPX so it is advised to trade $SPY/ $SPX using this indicator over any other stocks.
Although the name suggests 11 AM rule, the backtesting shows higher win rate for 11:30 AM so please select that option in the settings.
As always, no indicator is perfect and please follow your risk management and understand that indicators are tools to aid your trading and by no means they are supposed to work as intended in all scenarios
How the script works
1. A HOD/LOD zone is identified based on regular session (9:30am-11:30am) EST. Users can select cut off time to 11AM in the settings. These will be indicated on chart after 11/11:30pm depending on what user selected
2. If the stock breaks above the HOD and the ADX is showing strong momentum to upside then the candlesticks will start showing neon color, if the trend based on moving averages and candle closing is also bullish then the indicator will show trend arrows under the candle indicating to stay in the trade. Same applies for break below LOD, only the colors will change to represent downtrend.
3. An optional cloud is also shown if the trend is developed. The cloud can be used as trail stop or re entry point as long as it is displayed on chart
How to use the indicator in trading
In general, there are three scenarios which are trade worthy
1. If the stocks breaks out above the HOD zone and up trend develops or the stocks breaks below the LOD zone and downtrend develops. See images below
2. You can also use the LOD/HOD zone as demand/ supply if the Price action is range bound like this example below
Thanks for reading, please give thumbs up if you like using it! Please post comments on how to use it.
Advanced ADX[Intellection]█ OVERVIEW
"ADX" is a popular technical analysis indicator used to determine trend strength.
Advanced ADX is divided in two main sectors:
Default ADX
Higher time frame ADX analysis and trend phase
█ DESCRIPTION
You have two ADX's, One has the same time frame as your chart and the other one can be set by yourself in settings, Named Vision time frame.
Default value of "Vision ADX" is on 240minutes means 4hour, We recommend for time frames less than 1h using 4h "Vision time frame".
"Vision main plot" is also based on higher time frame analysis. The higher time frame analysis uses a combination of Three exponential moving averages (67, 89 and 111 periods) and the ADX to determine the position for long or short trades. The "Vision main plot" is shaded and changes color:
Green means bull phase
Red means bear phase
Gray means not defined or neutral
█ TRADING GUIDES
You can filter your signals based on "Vision ADX" value and color
Some trading tips:
When in green zone we don't recommend going short or just lower your risk for short positions. Simply for when ever your position is opposite of the color.
When ADX stays for a long period under 30 then it crosses 30 you might consider a volatility is about to come!
Good volatilities come when there is huge distance between default "ADX" and "Vision ADX"
█ Recap
"Advanced ADX" indicates three analysis:
1-Indicates default "ADX" based on your time frame.
2-Indicates higher time frame "ADX" based on the time frame you choose in settings.
3-Indicates higher time frame trend phase.
Don't forget to take time and learn it before trading it.
Moving Average Cross and RSIThis is the updated version of the MAC cross Short/ Long indicator i had posted earlier in 2022.
This script includes a RSI and EMA of the RSI with fixed OB and OS Levels.
The purpose is to refine the amount of trades taken from the moving average cross on the 30 minute timeframe.
In the overlay, the red and green dots indicate weather the moving cross is a long or a short signal.
The theory when back tested is:
When the short signal is given, the EMA must be below 30 to enter a short.
When the long signal is given, the EMA must be above 64 to enter a long, anything in between is a false signal.
Only the first dot is meant to be a long or a short signal, not meant to be interpreted as being consecutive.
The data window is meant to be built in a way to easily set up indicators or strategies using Tradelab.ai software.
RSI Multi Alerts MTFThis indicator won't plot anything to the chart.
Please follow steps below to set your alarms based on RSI oversold and overbought levels:
1) Add indicator to the chart
2) Go to settings
3) Choose up to 8 different symbols to get alert notification
4) Choose up to 4 different timeframes
5) Set overbought and oversold levels
6) Once all is set go back to the chart and click on 3 dots to set alert in this indicator, rename your alert and confirm
7) You can remove indicator after alert is set and it'll keep working as expected
What is does:
This indicator will generate alerts based on symbols, timeframes and RSI levels settings.
It will consider overbought and oversold levels to alert in each symbol and each timeframe selected. Once these levels are achieved it will send an alert with the following information:
- Symbol name (BTC, ETH, LTC)
- Specific RSI level achieved (e.g: RSI 30, RSI 70 or any custom level)
- Timeframe (e.g: 5m, 1h, 1D)
- Current symbol price
This script will request RSI OB/OS information through request.security() function from all different symbols and timeframes settings. It also requests symbols' price (close).
Due to Tradingview limitation (40 requests calls) it can only request information for 8 symbols for this script (8 symbols X 4 timeframes = 32 + 8 symbols' price (close) = 40)
Standard symbols are Binance USDT-M Futures but you can choose any symbol from Tradingview.
Standard timeframes are 5m|15m|1h|4h but you can choose from a list.
Standard overbought and oversold levels are 70 and 30 but you can change it to other integer values.
Feel free to give feedbacks on comments section below.
Enjoy!
Bull Trend Filtered StochRSI (BTFS)Ride Bull Trends Via Stochastic with Special Rules for Heavy Bullish Bias
TLDR: Long Only Trend Indicator Where you are always entered Long if the stochastic is over the lower band line and the price is above the Donchian Chanel high. Exit when Stochastic RSI is below the lower band.
Indicators:
Filter = Trend/Bullish indicator is Donchian of ema(high) this is set as the highest ema(high, 6) in the last 30 candles. this can be adjusted to fit the market as desired.
**indicator prints green background when the filter condition is satisfied***
Entry Exit = enter when the Stoch RSI is above the given lower trend band. This value is set at 35 but can be adjusted according to risk tolerance and market conditions.
Logic:
this indicator allows a trader to be present during bullish/parabolic trends by only triggering if the close is > than the highest 6 candle average high over the last 30 candles. This filter requires the market to be in a generally bullish posture. If the market is in this condition the stochastic RSI indicator value offers a good gauge of price action and only goes significantly down if price trends below the average range of the rsi period. This filters out noise and keeps a trader from over trading on inconsequential corrections while responding fairly quickly to changes in general trend direction. the response is fast enough to produce an unprofitable amount of false signals if the bull market filter is not implemented. However when used in combination the signals return desirable results in bull trending markets.
Hope this Helps. Happy Trades.
-Snarky Puppy
Stoch RSI 15 min - multi time frame tableABOUT THIS INDICATOR
This indicator calculates the Stochastic RSI for the time frames 15 min, 30 min, 1h, 4h, and 12h. However, the 15 min time frame should always be the default time frame for your chart.
IMPORTANT
* NOTE! It's extremely important that the chosen time frame for your chart is 15 min. Otherwise the Stochastic RSI for the longer time frames won’t be correctly calculated.
* Stochastic RSI will be calculated and displayed in a table for the time frames: 15 min, 30 min, 1h, 4h, 12h.
* All time frames are based on closed bars except the "15minR" that are realtime updated values calculated on a 15 min time frame.
ABOUT STOCHASTIC RSI
The Stochastic RSI (StochRSI) is a momentum indicator that ranges between 0 and 100. A Stochastic RSI value above 80 is considered overbought and below 20 is considered oversold.
By using different time frames you can get a better idea of what direction the trade could take in a "longer" perspective.
SETTINGS
1.) Length RSI = 14 (default period)
2.) Smoothing parameter of Stochastic RSI (Length Moving Average = 3) . Moving average of stochastic RSI
* By default the displayed Stochastic RSI values are smoothed values of the actual Stochastic RSI. The smoothnes is formed by a calculated moving average of with the length of 3 by default.
If you want Stochastic RSI with a sharper signal (higher risk for "false alarms" being more sensitive) change the Length Moving Average to = 1 (no smoothness at all)
You can see the selected "Length RSI" and "Length Moving Average" on top of the Stochastic RSI table.
Next version of this script will be updated with more a more flexible solution for different time frames.
* NOTE, Tradingview comes with a inbuilt Stochastic RSI. See the the chart below. The blue line in the Stochastic-RSI chart represents (K value = 3) the same value as the script calculate/display in the table.
Open DriveOpen Drive is a market profile concept introduced by Jim Dalton. It occurs when the price moves directionally and persistently for the first 30 minutes from the cash market open.
It is necessary to use 30-minute bars as there needs to be enough time to measure an extreme move of the cash open. This means there will be fewer trades than other strategies using faster time periodicities.
The script finds open drives from these time points 0700/ 0800 and 1300/1430.
The entry signal also has a breakout threshold using the 5-bar high and 5-bar low to only take trades moving away from the prior 5-bar range. This weeds out most mid-range trades and small range expansion bars.
If the price has had a strong move from the open and has broken either below the prior 5-bar low or above the prior 5-bar high by an amount equal to the prior 5-bar range a trade is entered in the direction of the move.
The Exit criteria; exit after 3 bars which is 90mins when using a 30min periodicity.
Note, this script is shared to show that momentum generated on or around the cash open tends to persist. The entry and exits of this strategy are quite naive but there are plenty of ways to take more aggressive entries on faster time frames when an open drive occurs. The times chosen for this strategy will suit stock index futures mainly. The user can experiment with other futures products and their corresponding pit/ cash open hours.
Google "open drive market profile" for more information on open drives and market profile concepts.
Happy trading!
Bands Bands (BanB)This indicator uses bands to show the trend of other bands.
The middle bands are used to show the price trend and the other bands are for the middle bands.
The Spike and Plunge bands can also act as a sort of "Bollinger Bands" for middle bands, though not exactly.
----- HOW TO USE IT -----
Zoom out in the 30 minute chart. Use 15 minute chart to pinpoint your entries.
Use with price-action trading and with indicators showing overbought & oversold levels.
The numbers below correlate with the numbers in the chart.
1) Price hits the Middle Spike line. The "ARL" bands hit the Bottom Spike line. This is a good indication that price will proceed under the Bottom Spike line.
2) Price hits the Bottom Plunge line. The "ARL" bands hit the Middle Plunge line. This is a good indication that price will proceed above the Middle Plunge line.
3) Notice how price spikes up near the Spike lines but doesn't touch. Notice how the Plunge lines have a strong pull downwards. This shows a continued down trend.
4) The same pattern as numbers 2 & 3 reoccur. This time, however, the proceeding price spike is substantially lower.
5) The price and middle bands finally bounce off the Top Plunge line and starts to get closer to the Spike bands.
6) Price and middle bands finally touch the Bottom Spike line and the Spike Bands and the Plunge Bands come closer together.
7) Narrowing Spike and Plunge Bands show a sideways market. Notice number 1, the bands are far apart -- more volatility is present.
Middle Bands:
The bottom, blue lines are fairly accurate dip-rebounds on the 30 minute chart. Use level indicators to find reversing trends (e.g., RSI, Stoch, etc.).
Price action hovering in between the blue lines and around the center indicate a low volatility market or a consolidating market.
----- HOW THIS INDICATOR IS ORIGINAL; WHAT IT DOES AND HOW IT DOES IT -----
This indicator has an original, unique ability to view the trend of bands in a substantially larger overview when zoomed out.
Normally, one would have to switch to higher time frames to get a sense of a larger market trend.
However, doing so will change any bands indicator to accommodate the new price action in relation to the new time frame.
To avoid this, the middle bands are placed in between two bands to see the trend of the bands that show the trend of price action.
----- VERSION -----
The "ARL Bands" in this indicator are NOT the same as the "ARL Bands" indicator.
They are "ARLs" set in an entirely different context, format, and amount and so does not constitute as a different version of "ARL Bands".
The "ARL Bands" indicator only has 4 lines and can be adjusted to any level. They are mainly focused on rebounds at desired levels.
The 13 "ARLs" here cannot be adjusted and are mainly focused on anticipating/calculating probabilities of peak and dip rebounds.
If any discrepancy should arise, let it be stated here that the "ARLs" in this indicator are considered to be a forked codebase to conserve the functionality of "ARL Bands".
This is proven by the differences described underneath "VERSION", which is located 7 lines above.
Index_and_Commodity_PricesThis indicator shows real-time current day-to-day performance of 18 different indices and commodities . Here is the list of different sector ETFs that this indicator tracks
/////INDEX//////
1. BİST-100 - XU0100 - TR- Index
2. BİST-30 - XU030 - TR - Index
3. VİOP-30 - XU030D1! - Index
4. DJI - Dow Jones - Index
5. DAX - DAX Index
6. VIX - Volatilite S&P Index
//////FOREX MARKET/////
7. DXY - U.S. Dollar Index
8. EURUSD -
9. BTCUSD -
10. XAUUSD -
11. XAGUSD -
//////COMMODITY///////
12. BR1! - Brent
13. NG1! - Natural Gas
14. HRC1! -
15. ZW1! -
16. HG1! -
17. DJUSCL -
///////OTHER///////
18. US10Y -
dmn's ICT ToolkitThis is my quality of life indicator for forex trading using the methods and concepts of ICT.
The idea is to automate marking up important price levels and times of the day instead of doing it manually every day.
Killzones
Marks the most volatile times of the day on the chart, during which the intraday high/low usually takes place.
Particularly impactful when there's news released during these times.
London Open (02:00-05:00 EST)
New York Open (08:30-11:00 EST)
London Close (10:00-11:30 EST)
True Day delineation
Vertical line at the start of the "true day" (00:00 EST), start of the algorithmic trading day and aids in visualizing the intraday direction.
New York midnight price level
Noteworthy price level at the start of the "true day".
This price level is referenced by the interbank trading algorithms during the day. Buy below it on bullish days, sell above it on bearish days.
Daily open price level
Reference level for optimal trade entries. Buy below it on bullish days, sell above it on bearish days.
Central Banks Dealers Range (CBDR) (14:00-20:00 EST) &
Central Banks Dealers Flout (CBDF) (15:00-24:00 EST) &
Asian Range (AR) (20:00-24:00 EST)
The standard deviation lines available are used to make predictions for short-term future highs/lows when the CBDR and AR are smaller than 40 pips.
Trade them by looking for 5/15min key levels that converge with the projection levels.
X days Average Daily Range (ADR)
Default to 5 days back, gives an idea of how much movement to expect intraday when the ADR high/low is converging with CBDR/CBDF/AR standard deviations.
Current Daily Range (CDR)
Used for comparison against the ADR to help determine if there's enough intraday range left to enter a trade.
Dynamically changes color based on percentage of the ADR. Green below 50% of ADR, orange between 50 and 100%, red when CDR exceeds ADR.
All of the above are used in conjunction with each other and higher timeframe levels of importance to find entries and target.
Note: Preferably use New York's time zone for your charts.
Trend Following based on Trend ConfidenceThis is a Trend Following strategy based on the Trend Confidence indicator.
The goal of this strategy is to be a simple Trend Following strategy, but also to be as precise as possible when it comes to the question 'how confident are we that a linear trend is ongoing?'. For this we calculate the 'confidence' of a linear trend in the past number of closing prices. The idea of this strategy is that past a certain confidence, the ongoing linear trend is more likely to continue than not.
Trend Confidence:
The Trend Confidence shows us how strong of a linear trend the price has made in the past number (given by Length parameter) of closing prices. The steepness of the price change makes the Trend Confidence more extreme (more positive for an uptrend or more negative for a downtrend), and the deviation from a straight line makes the Trend Confidence less extreme (brings the confidence closer to 0). This way we can filter out signals by wild/sudden price moves that don't follow a clear linear trend.
Math behind the Trend Confidence:
A linear fit is made on the past number of closing prices, using Ordinary Linear Regression. We have the steepness of the linear fit: b in y=a+bx . And we have the standard deviation of the distances from the closing prices to the linear fit: sd . The Trend Confidence is the ratio b/sd .
Entries and Exits:
For entry and exit points we look at how extreme the Trend Confidence is. The strategy is based on the assumption that past a certain confidence level, the ongoing linear trend is more likely to continue than not.
So when the Trend Confidence passes above the 'Long entry" threshold, we go Long. After that when the Trend Confidence passes under the 'Long exit' threshold, we exit. The Long entry should be a positive value so that we go Long once a linear uptrend with enough confidence has been detected.
When the Trend Confidence passes below the 'Short entry' threshold, we go Short. After that when the Trend Confidence passes above the 'Short exit' threshold, we exit. The Short entry should be a negative value so that we go Short once a linear downtrend with enough confidence has been detected.
Default Parameters:
The strategy is intended for BTC-USD market, 4 hour timeframe. The strategy also works on ETH-USD with similar parameters.
The Length is arbitrarily set at 30, this means we look at the past 30 closing prices to determine a linear trend. Note that changing the length will change the range of Trend Confidence values encountered.
The default entry and exit thresholds for Longs and Shorts do not mirror each other. This is because the BTC-USD market goes up more heavily and more often than it goes down. So the ideal parameters for Longs and Shorts are not the same.
The positive results of the strategy remain when the parameters are slightly changed (robustness check).
The strategy uses 100% equity per trade, but has a 10% stop loss so that a maximum of 10% is risked per trade.
Commission is set at 0.1% as is the highest commission for most crypto exchanges.
Slippage is set at 5 ticks, source for this is theblock.co.
Volume composition / quantifytools— Overview
While net volume is useful information, it can be a blunt data point. Volume composition breaks down the content of volume, allowing a more detailed look inside each volume node. Volume composition consists of the following information:
Total volume (buy and sell). By default gray node.
Dominating volume (buy or sell). By default dark green/dark red node.
Dominating active volume (buy or sell). By default light green/light red node.
Dominating volume as percentage of total volume.
Dominating active volume as percentage of total active volume.
Buy and sell volume is defined by volume associated with lower timeframe up/down moves. This classification is further broken down to passive/active, standing for decreasing/increasing volume, e.g. a move up with volume higher than previous bar volume = active buy volume, a move up with volume lower than previous bar volume = passive buy volume.
Volume data is fetched from a lower timeframe that is automatically adjusted to fit the timeframe you're using. By default, the following settings are applied:
Charts <= 30 min: 1 minute timeframe
Charts > 30 min & <= 3 hours : 5 minute timeframe
Charts > 3 hours & <= 8 hours : 15 minute timeframe
Charts > 8 hours & <= 1D: 1 hour timeframe
Charts > 1D & <= 3D : 2 hour timeframe
Charts > 3D: 4 hour timeframe
Timeframe settings can be changed via input menu. The lower the timeframe, the more precision you get but with the cost of less historical data and slower loading time. Users can also choose which source to use for determining buy/sell volume, e.g. using close as source, a close that is higher than previous close would be considered as buy volume. This could be replaced with OHLC4 for example, resulting in a volume direction based on OHLC average.
Volume composition of current chart can also be replaced with any other chart volume composition:
— Visuals
Breakdown of visual elements:
1. Symbol and timeframe used for volume composition calculations. By default the chart that is viewed and automatically selected lower timeframe.
2. Dominating volume threshold exceeded. Can be defined via input menu, 70% of total volume by default.
3. Dominating volume as percentage of total volume. Plotted below volume nodes, without % symbol.
4. Dominating active volume, + or - symbol, standing for buy and sell. Plotted below dominating volume percentage. When dominating volume and dominating active volume sides are in a disagreement (e.g. dominating volume is on buy side while dominating active volume is on sell side) this symbol will appear inside brackets, (+) or (-).
5. Dominating active volume as percentage of total active volume. Plotted below +/- symbol.
6. Dominating active volume threshold exceeded. Can be defined via input menu, 70% by default.
Dominating volume & active volume percentages can be rounded to single numbers to avoid clutter caused by overlapping values. The percentage values will be rounded to closest single number value, e.g. dominating volume percentage at 54% = 5, dominating volume percentage at 55% = 6.
Volume anomalies can be highlighted on the chart with a color for studying the events and their past implications in greater detail. Available anomalies for highlights are the following:
Buy volume threshold exceeded
Sell volume threshold exceeded
Active buy volume threshold exceeded
Active sell volume threshold exceeded
Volume & active volume divergence
— Practical guide
Volume is arguably one of the most important data points as it directly relates to liquidity. High volume can be an indication of strength (price likely to continue moving) or absorption (price likely to halt/turn). Same applies to active volume, but with an element of aggression. High active volume serves as an indication of exuberance or otherwise forceful transacting, like stop losses triggering. With these principles in mind, the composition of volume allows distinguishing potentially important events.
Example #1 : Identifying areas of trapped market participants
Often when volume spikes distinctively, we can make the case that price has found sufficient liquidity to halt/turn. Since we know which side was absorbed, in what quantity and type (passive/active), we can identify areas of trapped market participants. In such scenarios, the higher the dominant active volume and volume spike itself, the better.
Example #2 : Identifying a healthy trend
A healthy trend is one that has an active and consistent bid driving it. When this is the case, it can be seen in consistently supportive active volume.
Example #3 : Identifying inflection points
When dominant side of volume and dominant side of active volume diverge, something is up. A divergence often marks an area of indecision, hinting an imminent move one way or the other.
RSI Objective LinesThe RSI is a contrarian indicator bounded between 0 and 100 where values close to the area of 30 represent an oversold condition and values close to the area of 70 represent an overbought condition.
Generally, we use the area of 70/75 and the area of 30/25 as extremes that signal a market reversal or a correction. But what if we calculate a simple way to make these levels more dynamic?
The main idea from these objective support and resistance levels is that market regime and dynamics move and as such fixed levels are unlikely to always provide value which means that we can try creating variable levels. The objective support and resistance levels are created following these steps:
* Calculate a 14-period RSI on the close price, let's call this RSI_Close.
* Calculate a 14-period RSI on the high price, let's call this RSI_High.
* Calculate a 14-period RSI on the low price, let's call this RSI_Low.
* Calculate the maximum range which is the highest value of RSI_High in the last 200 periods minus the lowest value of RSI_Low in the last 200 periods. Let's call this Max_Range
* Define the range width. By default, it is set to 5%. Let's call this Threshold.
* The objective support is calculated as the sum of the RSI_Low + (Max_Range * Threshold).
* The objective resistance is calculated as the sum of the RSI_High - (Max_Range * Threshold).
The levels are used in the same way as the oversold and overbought levels. They are more dynamic as they take into account the fluctuations of the RSI so you might see at some point in time a support at 20 and at another at 35.
Opening Range, Initial Balance, Opening PriceThis script draws Opening Range, Initial Balance and Opening Price with options to show mid levels.
By default, lines changes color depending on whether closing price is above or below the lines. Red if price is below, green if price is above.
Colors and line styles are all configurable.
Options to change label positions.
Some definitions:
Opening Range - The opening range is high and low for a given period after the market opens. This period is generally the first 30 or 60 minutes of trading
Initial Balance - WRT to TPO profile chart, the Initial Balance is the price range resulting from the market’s trade during the first two 30 minute periods of the regular trading hours session.
Why is this useful?
The first hour of the trading day is the most active and dynamic period. The price range defined by this period of trading creates some key support / resistance levels for the rest of the day. Example below:
Index OverlayNote: use this indicator only with New York Timezone + you need to understand ICT concepts already, this indicator simplifies the chart work.
Also, in this script I added some open-source scripts from creators here on tradingview, but I forgot to annotate their names...
If you recognize your script, please text me and I'll add your credits.
features
- displays Midnight and Sunday open lines
- day separation (from midnight)
- FVGs
- VWAP (calculated from midnight open)
- daily labels
- TDH & TDL (liquidity)
- trading time window (from 9:30 to 12:00 ny time)
HOW TO USE
Combined with daily bias, the idea is to wait for 9:30 to open, and then wait for a liquidation of TDH (plotted in blue) or TDL (in red).
Once it happens, you can look for ICT buy / sell model, ideally in the 5m TF.
Time & volume point of control / quantifytoolsWhat are TPOC & VPOC?
TPOC (time point of control) and VPOC (volume point of control) are points in price where highest amount of time/volume was traded. This is considered key information in a market profile, as it shows where market participant interest was highest. Unlike full fledged market profile that shows total time/volume distribution, this script shows the points of control for each candle, plotted with a line (time) and a dot (volume). The script hides your candles/bars by default and forms a line in the middle representing candle range. In case of candles, borders will still be visible. This feature can be turned off in the settings.
Volume and time data are fetched from a lower timeframe that is automatically adjusted to fit the timeframe you're using. By default, the following settings are applied:
Charts <= 30 min: 1 minute timeframe
Charts > 30 min & <= 3 hours : 5 minute timeframe
Charts > 3 hours & <= 8 hours : 15 minute timeframe
Charts > 8 hours & <= 1D: 1 hour timeframe
Charts > 1D & <= 3D : 2 hour timeframe
Charts > 3D: 4 hour timeframe
Timeframe settings can be changed via input menu. The lower the timeframe, the more precision you get but with the cost of less historical data and slower loading time. Users can also choose which source to use for determining price for points of control, e.g. using close as source, the point of control is set to match the value of lower timeframe candle close. This could be replaced with OHLC4 for example, resulting in a point of control based on OHLC average.
To identify more profound points of market participant interest, TPOC & VPOC as percentage of total time/volume thresholds can be set via input menu. When a point of control is equal to or greater than the set percentage threshold, visual elements will be highlighted in a different color, e.g. 50% VPOC threshold will activate a highlight whenever volume traded at VPOC is equal to or greater than 50% of total volume. All colors are customizable.
VPOC is defined by fetching lower timeframe candle with the most amount of volume traded and using its close (by default) as a mark for point of control. For TPOC, each candle is divided into 10 lots which are used for calculating amount of closes taking place within the bracket values. The lot with highest amount of closes will be considered a point of control. This mark is displayed in the middle point of a lot:
How to utilize TPOC & VPOC
Example #1: Trapped market participants
One or both points of control at one end of candle range (wick tail) and candle close at the other end serves as an indication of market participants trapped in an awkward position. When price runs away further from these trapped participants, they are eventually forced to cover and drive price even further to the opposite direction:
Example #2: Trend initiation
A large move that leaves TPOC behind while VPOC is supportive serves as an indication of a trend initiation. Essentially, this is one way to identify an event where price traded sideways most of the time and suddenly moved away with volume:
Example #3: POC supported trend
A trend is healthy when it's supported by a point of control. Ideally you want to see either time or volume supporting a trend:
Public Sentiment Oscillator This is a combination of 9 common use indicators turned into on single oscillator. These indicators are: 200 day moving average cross, 9/12 ema cross, 13/48 sma cross, rsi, stochastic, mfi, cci, macd, and open close trend. I have weighted the scores to be pretty even so that its balances each indicator in the sum. Because of the odd number of indicators, I have decided to normalized the score to 10. I think this has the effect of making it easier to read.
The score definition: oc_trend > 0 ? 1 : 0, fast_e > slow_e ? 1 : 0, fast_s > slow_s ? 1 : 0, rsi < 30 ? 0 : rsi > 30 and rsi < 70 ? 0.5 : rsi > 70 ? 1 : 0, macd1 > macd2 ? 0.5 : macd1 < macd2 ? 0 : 0, (hist >=0 ? (hist < hist ? 0.5 : 0.25) : (hist < hist ? 0.25 : 0)), stoch < 20 ? 0 : stoch > 20 and stoch < 80 ? 0.5 : stoch > 80 ? 1 : 0, source > ma200 ? 1 : ex <= ma200 ? 0 : 0, mfi < 20 ? 0 : mfi > 20 and mfi < 80 ? 0.5 : mfi > 80 ? 1 : 0, cci < -100 ? 0 : cci > -100 and cci < 100 ? 0.5 : cci > 100 ? 1 : 0
I hope you find this useful in your trades. Enjoy!
Orion:Supertrend HybridSupertrend Hybrid
This indicator is a combination of the Supertrend and Donchian Channels.
The original Supertrend indicator shades the area from the mean (hl2) of the bar/candle to the Supertrend line.
This Hybrid uses the mid section of the Donchian channel to the Supertrend line as the area to be shaded.
This provides a visual of when prices are getting close to potentially reversing the trend.
Values:
Length = Length of the Donchian Channels (Default: 12)
ATR Length = Lookback length of the ATR calculation (Default: 10)
Factor = Multiply the ATR by this value to get a trend reversal value (Default: 3.0)
Prices cross above the red line indicating a bullish trend is in play
Prices cross below the green line indicating a bearish trend is in play
Yellow line represents the mid-section of the Donchian Channel.
Suggested usage:
Add a Stochastic and set the Stochastic %K Length to the same value as the Donchian Length.
When below trend (red line dominate) and prices cross into the shaded area, if stochastic crosses above 70, prices may challenge/cross the red trend line.
When above trend (green line dominate) and prices cross into the shaded area, if stochastic crosses below 30, prices may challenge/cross the green trend line.
IF in an up trend (green line dominate) and stochastic crosses/remains above 70, potential higher price movement exists.
IF in an down trend (red line dominate) and stochastic crosses/remains below 30, potential lower price movement exists.