The Ultimate Oscillator uses weighted sums of 3 oscillators (typically 7, 14 and 28 period time frames) to smooth out the variations that occur in indicators which only use one time period. The oscillator is plotted as a single line from 0 to 100.
The ultimate oscillator was developed by Larry Williams.
- True Low : TL(t) = min(low(t), close(t-1))
- Buy Pressure : BP(t) = close(t) - TL(t)
- True Range : TR(t) = max(high(t) - low(t), high(t) - close(t-1), close(t-1) - low(t))
- Buy Pressure Sums over 1st period (resp. 2nd and 3rd) : BPSum(p1) = BP(t) + ... + BP(t-p1)
- True Range Sums over 1st period (resp. 2nd and 3rd) : TRSum(p1) = TR(t) + ... + TR(t-p1)
- Raw Ultimate Oscillator : RawUO = 4 * (BPSum(p1) / TRSum(p1)) + 2 * (BPSum(p2) / TRSum(p2)) + (BPSum(p3) / TRSum(p3))
- Final Ultimate Oscillator : UO = 100 * (RawUO / (4 + 2 + 1))
The Ultimate Oscillator has 3 parameters for the 3 periods over which the buy pressures and true ranges are calculated.
A buy signal appears when:
- There is a bullish divergence (the price reaches a lower low but the Ultimate Oscillator does not)
- The Ultimate Oscillator falls below 30 (oversold territory) and then rises above the highest point reached during the bullish divergence
A sell signal appears when:
- There is a bearish divergence (the price reaches a higher high but the Ultimate Oscillator does not)
- The Ultimate Oscillator rises above 50 and then falls below the lowest point reached during the bearish divergence
A long position should be closed when:
- A sell signal (described above) occurs OR
- The Ultimate Oscillator rises above 50 and then falls below 45, or it rises above 70
A short position should be closed when:
- A buy signal (described above) occurs OR
- The Ultimate Oscillator rises above 65, or falls below 30