CHOP Zone Entry Strategy + DMI/PSAR ExitThis is a Strategy with associated visual indicators and Long/Short and Reverse/Close Position Alerts for the Choppiness Index (CHOP) . It is used to determine if the market is choppy (trading sideways) or not choppy (trading within a trend in either direction). CHOP is not directional, so a DMI script was ported into this strategy to allow for trend confirmation and direction determination; it consists of an Average Directional Index (ADX) , Plus Directional Indicator (+DI) and Minus Directional Indicator (-DI) . In addition, a Parabolic SAR is also included to act as a trailing stop during any strong trends.
Development Notes
---------------------------
This indicator, and most of the descriptions below, were derived largely from the TradingView reference manual. Feedback and suggestions for improvement are more than welcome, as well are recommended Input settings and best practices for use.
www.tradingview.com
www.tradingview.com
www.tradingview.com
Recommend using the below DMI and PSAR indicators in conjunction with this script to fully visualize and understand how entry and exit conditions are chosen. Variable inputs should correlate between the scripts for uniformity and visual compatibility.
THANKS to LazyBear and his Momentum Squeeze script for helping me quickly develop a momentum state model for coloring the Chop line by trend.
Strategy Description
---------------------------
CHOP produces values that determine whether the market is choppy or trending . The closer the value is to 100 , the higher the choppiness levels , while the closer it is to 0 , the stronger the market is trending . Territories for both levels, and their associated upper and lower thresholds, are popularly defined using the Fibonacci Retracements, 61.8 and 38.2.
Basic Use
---------------------------
CHOP is often used to confirm the market condition to help you stay out of sideways markets and only enter when there is movement or imminent explosions. When readings are above the upper threshold, continued sideways movement may be expected, while readings below the lower threshold are typically indicative of a continuing trend. It is also used to anticipate upcoming trendiness changes, with the general belief that extended periods of consolidation (sideways movement) are followed by extended periods of strong, trending, directional movement, and vice versa.
One limitation in this index is that you must be cautious in deciding whether the range or trend will likely continue, or if it will reverse.
Confidence in price action and trend is higher when two or more indicators are in agreement -- while this strategy combines CHOP with both DMI and PSAR, we would still recommend pairing with other indicators to determine entry or exit trade opportunities.
Recommend also choosing 'Once Per Bar Close' when creating alerts.
Inputs
---------------------------
Strategy Direction - an option to only trade Short, Long, Both, or only in the direction of the Trend (Follow Trend is the Default).
Sensitivity - an incremental variable to test whether the past n candles are in the same trend state before triggering a delayed long or short alert (1 is the Default). Can help filter out noise and reduces active alerts.
Show Chop Index - two visual styles are provided for user preference, a visible Chop line with a background overlay, or a compact column and label only view.
Chop Lookback Period - the time period to be used in calculating CHOP (14 is the Default).
Chop Offset - changing this number will move the CHOP either forwards or backwards relative to the current market (0 is the Default).
Smooth Chop Line and Length - if enabled, the entered time period will be used in calculating a smooth average of the index (Enabled and 4 are the Defaults).
Color Line to Trend Direction - toggles whether the index line is colored to visually depict the current trend direction (Enabled is the Default).
Color Background - toggles the visibility of a background color based on the index state (Enabled is the Default).
Enable DMI Option - if enabled, then entry will be confirmed by and dependent on the ADX Key Level, with any close or reversal confirmed by both ADX and +/-DI to determine whether there is a strong trend present or not (Enabled is the Default).
ADX Smoothing - the time period to be used in calculating the ADX which has a smoothing component (14 is the Default).
DI Length - the time period to be used in calculating the DI (14 is the Default).
ADX Key Level - any trade with the ADX above the key level is a strong indicator that it is trending (23 to 25 is the suggested setting).
Enable PSAR Option - enables trailing stop loss orders (Enabled is the Default).
PSAR Start - the starting value for the Acceleration Force (0.015 is our chosen Default, 0.02 is more common).
PSAR Increment - the increment in which the Acceleration Force will move (0.001 is our chosen Default, 0.02 is more common).
PSAR Max Value - the maximum value of the Acceleration Factor (0.2 is the Default).
Color Candles Option - an option to transpose the CHOP condition levels to the main candle bars. Note that the outer red and green border will still be distinguished by whether each individual candle is bearish or bullish during the specified timeframe.
Note too that if both DMI and PSAR are deselected, then close determinations will default to a CHOP reversal strategy (e.g., close long when below 38.2 and close short when above 61.8). Though if either DMI or PSAR are enabled, then the CHOP reversal for close determination will automatically be disabled.
Indicator Visuals
---------------------------
For the candle colors, black indicates tight chop (45 to 55), yellow is loose chop (38.2 to 45 and 55 to 61.8), dark purple is trending down (< 38.2), and dark blue is trending up (> 61.8).
The background color has additional shades to differentiate a wider range of more levels…
• < 30 is dark purple
• 30 to 38.2 is purple
• 38.2 to 45 is light purple
• 45 to 55 is black
• 55 to 61.8 is light blue
• 61.8 to 70 is blue
• > 70 is dark blue
Long, Short, Close, and Reverse labels are plotted on the Chop line, which itself can be colored based on the trend. The chop line can also be hidden for a clean and compact, columnar view, which is my preferred option (see example image below).
Visual cues are intended to improve analysis and decrease interpretation time during trading, as well as to aid in understanding the purpose of this strategy and how its inclusion can benefit a comprehensive trading plan.
DMI and Trend Strength
---------------------------
To analyze trend strength, the focus should be on the ADX line and not the +DI or -DI lines. An ADX reading above 25 indicates a strong trend , while a reading below 20 indicates a weak or non-existent trend . A reading between those two values would be considered indeterminable. Though what is truly a strong trend or a weak trend depends on the financial instrument being examined; historical analysis can assist in determining appropriate values.
DMI exits trade when ADX is below the user selected key level (e.g., default is 25) and when the +/- DI lines cross (e.g., -DI > +DI exits long position and +DI > -DI exits short position).
PSAR and Trailing Stop
---------------------------
PSAR is a time and price based indicator that excels at measuring direction and duration, though not the actual strength of a trend, which is why we use this in conjunction with DMI. It is also included in this script as a trailing stop option to maximize gains during strong trends and to mitigate any false ADX strengthening signals.
This creates a parabola that is located below the candle during a Bullish trend and above during a Bearish trend. A buy or reversal is signaled when the price crosses above or below the Parabolic SAR.
Long/Short Entry
---------------------------
1. CHOP must be over 61.8 (long) or under 38.2 (short).
2. If DMI is enabled, then the ADX signal line must be above the user selected Key Level (default is 25).
3. If Sensitivity is selected, then that past candle must meet the criteria in step 1, as well as all the intermediate candles in between.
4. If "Follow Trend" is selected and PSAR is enabled, then a long position can only open when the momentum and PSAR are in an uptrend, or short when both are in a downtrend, to include all intermediate candles if the Sensitivity option is set on a past candle.
Close/Reverse
---------------------------
1. If DMI is enabled, then a close flag will be raised when the ADX signal drops below the Key Level (of 25), and -DI crosses over +DI (if long), or +DI crosses over -DI (if short).
2. If PSAR is enabled, then a close flag will be raised when the current trend state is opposite the last state.
3. If both DMI and PSAR are disabled, then a close flag will be raised if the Chop line drops under 38.2 (if long) or goes over 61.8 (if short).
4. If a Long or Short Entry is triggered on the same candle as any of the above close flags, then the position will be reversed, else the position will be closed.
Strategy Alerts
---------------------------
1. Long Entry
2. Short Entry
3. Reverse
4. Close
The provided backtest result is based on a position sizing of 10% equity with 100k initial capital. When testing SPX, disabling the DMI performed the best, but EURUSD performed poorly without it enabled, and TSLA had a small reduction in net profit. Timeframe likewise differed between commodities with TSLA performing best at 30M, SPX at 15M, and EURUSD at 4H. I do not plan on using this as a standalone strategy, but I also was expecting better results with the inclusion of EMI and PSAR to compliment the CHOP. Key elements of this script will likely be included in future, more holistic strategies.
Disclaimer
---------------------------
Past performance may not be indicative of future results. Due to various factors, including changing market conditions, the strategy may no longer perform as well as in historical backtesting. This post and the script are not intended to provide any financial advice. Trade at your own risk.
No known repainting, though there may be if an offset is introduced in the Inputs. I did my best not to code any other variables that repaint, but cannot fully attest to this fact.
Zone
Automatic FibonacciFibonacci retracements are popular among technical traders. In technical analysis, a Fibonacci retracement is created by taking two extreme points (usually a peak and a trough) on a stock chart and dividing the vertical distance by the key Fibonacci ratios of 23.6%, 38.2%, 50%, 61.8%, and 100%. Basic fibo levels are often known to be 14.6%, 23.6%, 38.2%, 50%, 61.8%, 76.4%, 88.6% and 100%.
This indicator will draw the fibonacci levels automatically. Once these levels are identified, horizontal lines are drawn and used to identify possible support and resistance levels including zones. The fibo levels on this indicator gives you the option to use basic fibo or new paradigm fibo levels. New paradigm fibo levels may be new to most traders, however, the application of new paradigm fibo does allow one to trade with least risk due to the precision of the price action surrounding the fibo levels and zones.
One of the most efficient and great ways to apply this auto fibo indicator and the new paradigm fibo is by only leaving the fibo levels that do have hits and un-selecting the fibo levels that do not have any. You can further remove any other levels so you can trade the zones that these fibo levels create.
In addition, you can also switch the timeframe of the fibo from 1D to different number of days to 1W.
NSDT ES Midline Zones**DESIGNED FOR ES/MES** This script provides an easy visualization of potential reversion zones to take trades back to the intraday midline. A common use would be to enter a position once price reached the outer yellow zones and retreats to either the red zone (for a short toward the midline) or a green zone (for a long back to the midline).
NSDT NQ Midline Zones**DESIGNED FOR NQ/MNQ** This script provides an easy visualization of potential reversion zones to take trades back to the intraday midline. A common use would be to enter a position once price reached the outer yellow zones and retreats to either the red zone (for a short toward the midline) or a green zone (for a long back to the midline).
NSDT Triple KeltnerA different spin on Keltner Channels. Using 3 channels of varying widths provides a good visual for potential entries off of extremes. Normal channel is center, green and red "zones" could be used as potential entry/exit areas, and the outside yellow zones may be viewed as extremes (signifying potential breakouts or strong reversal areas).
NSDT Daily Gap RangeSimple script that plots the range between the previous day close and the current day open. This makes it easier to reference the gap up or gap down zone throughout the day.
Adaptive Price Zone Backtest The adaptive price zone (APZ) is a volatility-based technical indicator that helps investors
identify possible market turning points, which can be especially useful in a sideways-moving
market. It was created by technical analyst Lee Leibfarth in the article “Identify the
Turning Point: Trading With An Adaptive Price Zone,” which appeared in the September 2006 issue
of the journal Technical Analysis of Stocks and Commodities.
This indicator attempts to signal significant price movements by using a set of bands based on
short-term, double-smoothed exponential moving averages that lag only slightly behind price changes.
It can help short-term investors and day traders profit in volatile markets by signaling price
reversal points, which can indicate potentially lucrative times to buy or sell. The APZ can be
implemented as part of an automated trading system and can be applied to the charts of all tradeable assets.
WARNING:
- For purpose educate only
- This script to change bars colors.
Adaptive Price Zone Strategy The adaptive price zone (APZ) is a volatility-based technical indicator that helps investors
identify possible market turning points, which can be especially useful in a sideways-moving
market. It was created by technical analyst Lee Leibfarth in the article “Identify the
Turning Point: Trading With An Adaptive Price Zone,” which appeared in the September 2006 issue
of the journal Technical Analysis of Stocks and Commodities.
This indicator attempts to signal significant price movements by using a set of bands based on
short-term, double-smoothed exponential moving averages that lag only slightly behind price changes.
It can help short-term investors and day traders profit in volatile markets by signaling price
reversal points, which can indicate potentially lucrative times to buy or sell. The APZ can be
implemented as part of an automated trading system and can be applied to the charts of all tradeable assets.
Green color is long.
Red color is short.
WARNING:
- For purpose educate only
- This script to change bars colors.
Adaptive Price Zone Indicator The adaptive price zone (APZ) is a volatility-based technical indicator that helps investors
identify possible market turning points, which can be especially useful in a sideways-moving
market. It was created by technical analyst Lee Leibfarth in the article “Identify the
Turning Point: Trading With An Adaptive Price Zone,” which appeared in the September 2006 issue
of the journal Technical Analysis of Stocks and Commodities.
This indicator attempts to signal significant price movements by using a set of bands based on
short-term, double-smoothed exponential moving averages that lag only slightly behind price changes.
It can help short-term investors and day traders profit in volatile markets by signaling price
reversal points, which can indicate potentially lucrative times to buy or sell. The APZ can be
implemented as part of an automated trading system and can be applied to the charts of all tradeable assets.
Zone Moving Average Color Direction Detection This indicator generates a zone for a moving average by means of the high and low source of the same average, the moving average should be worked as zones not as a line, by default a simple average of 200 periods is configured, the indicator has direction detection and represents it by the green and red colors, it also has padding with the same characteristic, it is possible to configure the following:
- Type: SMA, EMA, WMA, VWMA, SMMA, DEMA, THEME, HULLMA, ZEMA, TMA, SSMA
- Period / Length
- Source
- Color Direction Detection
Release Notes: Add a field to change the reaction in the change of color and direction of the Media, set to 1 is the fastest, a larger number filters the address better but is slower, 3 is set by default.
Hashem Extended Stochastic (V2)Extended Stochastic with All Zones. From Neutral to Danger Zones.
The Most Complete and Extended Stochastic Indicator.
EMA ZoneIndicator to fill the ZONE between two EMAs (9 and 21 is the default)
RULES of completion:
CLOSE above "EMAs" and "EMA SLOW", and "EMA FAST" > "EMA SLOW" = green fill
CLOSE below "EMAs" and "EMA SLOW" ,and "EMA FAST" < "EMA SLOW" = red fill
CLOSE between EMAs = white fill
HTF High/LowThis simple script draws the previous higher timeframe candle high/low to your chart.
You can also make the script paint the zone between the low/open and the high/close.
RSI Based Automatic Supply and DemandA script that draws supply and demand zones based on the RSI indicator. For example if RSI is under 30 a supply zone is drawn on the chart and extended for as long as there isn't a new crossunder 30. Same goes for above 70. The threshold which by default is set to 30, which means 30 is added to 0 and subtracted from 100 to give us the classic 30/70 threshold on RSI, can be set in the indicator settings.
By only plotting the Demand Below Supply Above indicator you get automatic SD level that is updated every time RSI reaches either 30 or 70. If you plot the Resistance Zone / Support Zone you get an indicator that extends the zone instead of overwrite the earlier zone. Due to the zone being extended the chart can get a bit messy if there isn't a clear range going on.
There is also a "confirmation bars" setting where you can tell the script how many bars under over 30 / 70 you want before a zone is drawn.
Here is an image of only using the "Demand Below / Supply Above" plot.
As you can see, this could be useful "Price Flow" indicator, where we would only short if a zone appears below another zone, or long if two zones in a row are going up, like stairs.
Breakout IndicatorThis script allows you to set breakout alerts.
An alert will be triggered only when price breaks and closes beyond the specified prices. You will get an alert on the first candle that closes beyond the levels you set.
MA ZonesThis simple indicator paints the zone between up to 3 different Moving Averages and Exponential Moving Averages.
For example:
The green zone is the price between the 50 EMA and the 50 MA .
The orange zone is the price between the 100 EMA and the 100 MA .
The red zone is the price between the 200 EMA and the 200 MA .
Dynamic Support & ResistanceThis indicator paints the background of the chart between 2 EMAs when all 3 given EMAs are in sync.
The default settings are:
Long-term EMA: 200 Period.
Short-term EMA 1: 50 Period.
Short-term EMA 2: 20 Period.
So according to the default settings, when the 20EMA is above the 50EMA, and the 50EMA is above the 200EMA, the area between the 20EMA and the 50EMA will turn green. When the 20EMA is below the 50EMA, and the 50EMA is below the 200EMA, the area will turn red. When the EMAs are all over the place (ie. price is consolidating), the area will be painted white.
You can change the colors in the indicator settings menu. To remove the white background, change the transparency to 100%. Unfortunately pinescript does not allow you to do this using code, otherwise I would have made that a default feature.
Enjoy! Let me know if you have any questions.
Regards,
- Matt
Volume Zone Oscillator and Price Zone (VZO/PZO) [NeoButane]" Volume Precedes Price is the conceptual idea for the oscillator."
"The main idea of the VZO was to try to change the OBV to look like an oscillator rather than an indicator, also to include time; primarily to identify which zone the volume is located in during a specific period "
How to read this indicator:
Positive reading -> bullish
Negative reading -> bearish
-60 or 60 is seen as the limit of the oscillator range, and a pullback should be expected from there.
Plus and minus signs have been added to the top and bottom for VZO and PZO, with an adjustable threshold to trigger.
Alert conditions have been added to this indicator for ease of use.
Volume Zone Oscillator, write-up by the author (recommended reading)
http:capitalsynergy.com/resources/IFTA09VZO.pdf
Volume Zone Oscillator, uses and formula
https:www.investopedia.com/articles/active-trading/072815/how-interpret-volume-zone-oscillator.asp
Price Zone Oscillator, uses and formula
https:www.investopedia.com/terms/p/price-zone-oscillator.asp
Gap finder (gold minds)This tool highlights where gaps happens and outlines in the chart where the gap zones are. If there is a gap up there is a green line, a gap down it is red. The gap zone is highlighted in blue. You can choose the size of your gap with the input menu to the desired size. Feel free to ask comment below. Made for the Gold Minds group
Trading Session IndicatorThis indicator is basically just a back-testing tool. All it does is highlight the background of your charts with the specified color within the specified timezone.
This is useful particularly for back-testing purposes, such as testing a day-trading strategy within a particular period of the day or ignoring signals that fall within the given timeframe (which is useful for ignoring setups during your testing that appear while you're asleep or at work etc.)
Take it easy :)
- Matt.
Dynamic Structure IndicatorThis is a dynamic structure indicator designed to map potential support and resistance zones (in all markets). It does this by looking back x amount of candles to identify major swing highs and lows on the specified reference timeframe, and then it draws a zone between the highest/lowest wick and the highest/lowest candle close across the chart until a new zone is created.
The settings are important because it gathers data from a separate reference timeframe, so sometimes it will map zones that aren’t really appropriate for lower timeframes. On lower timeframes (1Hr and under) I’d recommend setting the reference timeframe to your actual trading timeframe and increasing the lookback period to fine-tune the zone mapping. The script is set for 4 Hour forex charts by default.
Please note: the max zone option is disabled by default because it is different for every instrument, but this is a useful feature that I recommend using. Sometimes the indicator picks up huge gaps that aren’t really considered support or resistance zones. If this happens to you, use the zone size settings to invalidate huge (or tiny) zones. The zone size is in pips.
To be honest I didn’t get this indicator to be quite as accurate as I envisioned and it’s still a work in progress as I learn pine script, but this is the best I’ve been able to get it to function and with the right settings it works fairly well so I figured I might as well release this first version. Maybe someone with better skills than me can help refine it to more accurately identify major fractals and levels - if so, please get in touch! All traders should be able to identify their own major levels by eye anyway, but this script is intended to be a building block for future signal indicators I wish to develop.
Last of all - please don’t use this indicator to trade blindly! Often price will blast right through these zones and the zones aren’t always accurate. Remember that structure levels only work if they’re obvious to other traders, and always wait for confirmation signals that meet your trade plan rules before entering trades – especially reversals or counter-trend trades.
If you have any questions or tips to improve the script, feel free to leave a comment or private message me.
Enjoy, and good luck out there :)
- Matt.
Time zoneRegular script to allocate the specified time range within a day.
TradingView in time is specified by UTC. I Moscow time (GMT +3) and the time specified in the script Default 1:00 - 13:00 Moscow time equal 09:00 - 21:00 ie -8 Hours from the Moscow time (-7 in summer).
========== ==========
Обычный скрипт для выделения указанного диапазона времени внутри дня.
Время в TradingView указывается по UTC. У меня московское время (GMT +3) и время указанное в скрипте по умолчания 01:00 - 13:00 по московскому времени равняется 09:00 - 21:00 , т.е. -8 часов от московского времени (-7 в летнее время).