Simple script made to identify trading ranges in any timeframe The oscillator bounces between 1 and 0. 1 means that the current asset is in a trading range and 0 meaning it is not. The determination of a trading range is determined by the following:
ATR(14)<SMA(20)
RSI>40 and RSI<60
ADX<25
Due to all 3 having to be fulfilled in order for the oscillator to show there is a trading range, this causes a problem where 2 of the conditions are fulfilled and therefore still shows 0 on the oscillator, however, the asset could very well be in a trading range.
So what in the world do you use this for if there is such a significant margin of error? Since all 3 conditions need to be fulfilled in order for it to be considered a trading range, this gives a very strong indicator of said trading ranges. So if a person is looking at individual stock tickers or the SPY index ticker, then when the oscillator reads a 1, it could be ideal to open an Iron Condor on said ticker. This means that this indicator is not well suiting for traditional long and short stock positions, but rather it is made for options traders who by using an Iron Condor can make money of a range-bound market.
リリースノート
Updated from using RSI to IMI (Intraday Momentum Index). All credit for the IMI code goes to everget
リリースノート
Changed indicator colour from blue to purple and fixed a screenshot
リリースノート
Added Bollinger bands width as a trading range requirement. BB width<0.1 contributes to the trading range oscillator changing to 1. Changed the success condition of a trading range from lasting 1 bar to now last the two latest bars (Less false flags).