Changes I've made:
1. Added a visual symbol of an overbought/oversold threshold cross in the form of a red/green circle, respectively. Sometimes it can be hard to see when a cross actually occurs, and if your scaling isn't set up properly you can get misleading visuals. This way removes all doubt. Bear in mind they aren't meant as trading signals, so DO NOT use them as such. Research the if you're unsure, but I use them as an early warning and that particular market/stock is added to my watchlist.
2. Added 60/ 40 lines as the respects these incredibly well in trends. E.g. in a solid uptrend the won't go below 40 , and vice versa. Use the idea of levels on the indicator and it'll be a great help. I've coloured the zones. Strong uptrends should stay above 60, strong downtrends should stay below 40 . The zone in between 40-60 I've called the transition zone. often stays here in consolidation periods, and in the last leg of a cycle/trend the will often drop into this zone after being above 60 or below 40 . This is a great sign that you should get out and start looking to reverse your position. Hopefully it helps to spot divergences as well.
3. Added alerts based on an overbought/oversold cross. Also added an alert for when either condition is triggered, so hopefully that's useful for those struggling with low alert limits. Feel free to change the overbought/oversold levels, the alerts + crossover visual are set to adapt.
Like any indicator, don't use this one alone. It works best paired with indicators/techniques that contradict it. You'll often see a OB/OS cross, and price will continue on it's way for many weeks more. But is a great tool for identifying upcoming trend changes.
Any queries please comment or PM me.
Cleaned up the coding slightly.
Added support for multiple time frames (MTF). Script defaults to the current time frame, so if you want a different time frame uncheck the relevant box and enter your custom variable. It's been done this way to get around the fact that TradingView's default resolution input variable only supports a limited numbers of resolutions. If you want to use monthly time frames then use "XM", where X is the number of months. For daily time frames use "XD", where X is the number of days. For hourly/minute time frames use the total number of minutes - e.g. 4 hours should be entered as "240".
Always bear in mind that higher time frames will repaint until the relevant bar closes. This is logical if you think about it, so don't comment saying it repaints :)
Here's some cool things you can do with MTF (I like overlaying them on one panel):
Minor error fix.
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.