This indicator automatically identifies and draws recent high-probability support and resistance levels (recent key levels). Specifically, yesterdays highs / lows, premarket highs / lows, as well as yesterdays end of day Volume Weighted Average Price and trader specified Moving Average.
This is most useful on charts with intraday time frames (1 minute, 5 minute etc.) commonly used for day trading. This is not ideal for larger time frames (greater than 1 hour) commonly used for swing trading or identifying larger trends.
You can configure:
- Line size, style, and colors
- Label colors
- Which key levels you want to see
- Moving Average Parameters
- Market Hours and Time Zone
This script illustrates:
- A method for iterative management of more complex data objects (not just discrete values) with loops and arrays.
• Added "Near Open" premarket levels.
• Adjusted "Premarket" levels to reset at midnight. This is most useful for things like futures, where new sessions begin the evening prior. This change is unlikely to be noticed unless actively trading overnight.
• Improved "Premarket" level logic, where it will now stop updating near the open if "Near Open" levels are turned on, which should keep the premarket and near open levels from overlapping.
• Fixed bug where Yesterdays Hi / Lo would not reset properly if extended hours were not showing.
• Minor code cleanup.
• Minor improvements to level logic.
• Fixed a bug that truncated older levels, if the max line length was enabled.
• After Hours
Added Price Proximity Features
• Line Length Override
• Toggle Visibility
• ATR Zones
• Refactored arrays for better variable and object management.
• Converted the market hours settings to be TV's session input (their standard time entry field).
• Logic adjustments and max_bar_back adjustments.
• Minor bug fixes.
- - -
All the new levels / features are off by default.
After Hours will capture the high / low after regular trading hours and before the session ends. If "Mkt Hrs Only" is disabled, and the sessions highs / lows occur during this time, "Yesterdays Hi / Lo" and "After Hours" levels will overlap. For this reason, if a After Hours level is identical to Yesterday, the After Hours level will be hidden.
Overnight will capture the high / low before midnight when a session begins after regular trading hours. Sessions beginning after trading hours is not a thing for most securities (thus will not show on most securities), but does occur for things like futures and crypto.
Custom have been added. You are able to set a specific level value in the settings, or drag the level up / down on the chart.
A feature previously introduced was an ability to give lines a maximum length. This truncation aims to help keep charts simple and clean. To this end, a follower suggested having truncated lines extend back to their origin when price was within it's proximity. To accomplish this, two Price Proximity settings are being introduced.
Range of Proximity ( % ) defines how close price needs to be for an enabled proximity settings to take effect. This is a percentage (not monetary) value. For example, how close price should be before a truncated line extends back to its origin.
Line Length Override will extend a line back to its origin, when price is proximal to a given line and "Max Line Length" is enabled.
Given the original intention of truncating lines (decluttering charts), and now having a method to detect price proximity, I extended the concept further.
Toggle Visibility will hide levels by default, and only show a level when price is proximal to a given line. Useful for those who only want to be reminded of an approaching while trading, but otherwise don't want to see it.
This price proximity work also spurred another idea. Price rarely interacts with a key level exactly. In practice they are more like zones, due to order execution variance, better known as volatility. Because the Average True Range (ATR) measures volatility, I decided to pair ATR with price proximity to get a better sense of a given levels area of opportunity.
ATR Zones will show a 5 bar ATR zone around the level, when price is proximal to a given line. Half the ATR is above the line, and half the ATR is below the line.
- - -
The intention of this indicator is to compliment your trading strategy. It is not intended to be a trading strategy in and of itself, but rather make something you are already doing more convenient. While turning everything on is unlikely to help you, enabling only the things that already have your attention makes chart contextualization so much faster. Happy trading.
• Todays open
• Yesterdays open
• Yesterdays close
• Todays high & low
• This / last weeks high & low
• This / last months high & low
• This / last quarters high & low
• This / last years high & low
• Todays VWAP
• Todays Moving Average
• Label tooltips
• Label abbreviation controls
• Code refactor to better manage levels within a single UDT object array
While I have done my best to address all the edge-cases and bugs I could find, the magnitude of code refactoring required to implement these new levels cannot be overstated. It's possible I missed something, so if you discover any quirks, let me know and I'll get it fixed!