But after all, it was a tedious work creating this indicator because like I've already said, pine script is a very odd and weak language which does not have many ordinary features like useful loops, simple line drawing and even reasonable variable casting!
So I was forced to use its built-in pivothigh() and pivotlow() functions without any handy documentation. I assume that even these functions don't work as expected, and because of that, I embedded "Sensitivity" and "Lookback Time" options in the indicator as a workaround.
Feel free to use it and send me your comments/solutions.
Added an option to use bars for looking back instead of time
In true TradingView spirit, the author of this script has published it open-source, so traders can understand and verify it. Cheers to the author! You may use it for free, but reuse of this code in a publication is governed by House Rules. You can favorite it to use it on a chart.