Very much similar to :
I have slightly changed code to accommodate multiple zigzags. Also removed possibility of external source to keep it simple.
Indicator shows 2 Level zigzag based supertrends. Second zigzag used is multi level zigzag and hence, this acts as higher timeframe filter and can be considered as overall trend bias.
Experimental and probably can be improved further.
Method of deriving support/resistence is as follows:
Calculate Zigzags and start pushing them to SR array as and when they form
If any of the existing item is within the small distance - merge them. ATR is used to find if the prices are close by.
Whenever we merge two pivots, strength of support keeps...