Multi-TimeFrame Extremum Points Support/Resistance


This is my newest Support/Resistance indicator based on the idea of my previous script which had been featured in Editors' Picks.
Everyone seems to have their own idea of how you should measure support and resistance levels. This code finds the exact highest and lowest price points (Extrema) on the chart and then draws the support and resistance levels on them.
In my opinion, the advantage of this method is that the most powerful resistance/support levels which usually cover the supply/demand areas would be formed on these extremum points, as the following facts state.


1. Support and resistance levels are one of the key concepts used by technical analysts and form the basis of a wide variety of technical analysis tools. Technical analysts use support and resistance levels to identify price points on a chart where the probabilities favor a pause or reversal of a prevailing trend.
2. Supply and demand zones are natural support and resistance levels and a popular analysis technique used in day trading. The zones are the periods of sideways price action that come before explosive price moves. A supply zone forms before a downtrend and a demand zone forms before an uptrend. When the price leaves the supply/ demand zone and starts trending, the strong imbalance between buyers and sellers leads to strong and explosive price movements.
3. Based on Dow Theory, trends persist until a clear reversal occurs. A reversal is a change in the price direction of an asset. Reversals typically refer to large price changes, where the trend changes direction.


The most challenging part in implementing a S/R indicator which draws all the levels on the chart is the problem of congestion!
But we should notice two other facts:
1. The more times the price tests a support or resistance area , the more significant the level becomes.
2. A previous support level will sometimes become a resistance level when the price attempts to move back up, and conversely, a resistance level will become a support level as the price temporarily falls back.
So, I solved the problem using these two approaches:
  • Merging nearby levels and showing the role of the levels in colors and numbers
  • Avoiding many weaker levels by checking higher time frames

Settings and Usage

There are some options in the indicator settings as described below:
  • Calculations Time Frame: By changing the time frame, user could keep only the stronger S/R levels on the chart.
  • Level Colors: By default, lowest points (Supports) are green, highest points (Resistances) are red and merged levels are blue. Note that the transparency of the colors would be calculated automatically; The more opaque the color is, the stronger the level is!
  • Lines Style and Width: The style of the levels could be solid, dashed or dotted and user could also change the lines width in pixels.
  • Length of the lines: This option is based on the count of bars, but user could simply choose to extend the levels
  • Merge Nearby Levels: The proximity of the levels would be calculated automatically based on ATR ( Average True Range ) and the default length of the formula could be changed.
  • Labels: Each level could have a label consisting the count of merged levels into one, the percentage of merged supports/resistances and the price of the level. Note that if user choose to see the percentage of S/R roles, the color of each label changes automatically based on the main role of corresponding merged level (e.g., a blue level with a red label means that the level more acted as resistance).

I think the users of my previous S/R indicators could check this one
That's it for now! Feel free to send me your thoughts!

本著真正的TradingView精神,該腳本的作者將其開源發布,以便交易者可以理解和驗證它。為作者喝彩吧!您可以免費使用它,但在出版物中重複使用此代碼受網站規則的約束。 您可以收藏它以在圖表上使用。