What is Ultimate Oscillator?
The Ultimate Oscillator measures buying pressure, how far each close finished above that bar's true low, as a share of the bar's true range. It does this over three windows, 7, 14 and 28 bars by default, and averages them with weights of 4, 2 and 1, so the shortest window counts most. Using several windows at once is meant to cut down the false divergences a single-period oscillator produces. The result is a line from 0 to 100 in its own pane.
The Ultimate Oscillator shows where closes have been finishing within their ranges. It does not show trend direction, and the indicator draws no overbought or oversold levels of its own.
How to use Ultimate Oscillator
- High and low readings. High readings mean closes have been finishing near the top of their true ranges across all three windows; low readings mean near the bottom. Many traders add their own levels around 70 and 30, but they are not part of the indicator.
- The middle of the scale. Around 50, closes have been finishing near the middle of their ranges on balance.
- Divergence. A new price high with a lower oscillator high means closes are finishing less strongly within their ranges than before. Divergence was the main use the indicator was designed for.
- The three lengths. Shortening them makes the line faster and noisier; lengthening them makes it smoother. The 4:2:1 weighting stays the same whatever lengths you choose.
These are ways to read the line, not entry signals on their own.
Settings
| Setting | Default | What it changes |
|---|---|---|
| Fast Length | 7 | Bars in the shortest window, which carries a weight of 4. Lower makes the line react faster. Minimum 1. |
| Middle Length | 14 | Bars in the middle window, which carries a weight of 2. Minimum 1. |
| Slow Length | 28 | Bars in the longest window, which carries a weight of 1. It also sets how many bars pass before the first value. Minimum 1. |
Adjust the three window lengths in the indicator settings. The weights and the use of high, low and close are fixed.
Calculation
Each bar's buying pressure and true range are measured against the previous close, so a gap is counted. Each is summed over three windows, and the three ratios are averaged with weights 4, 2 and 1:
true low = min(low, previous close)
true high = max(high, previous close)
BP = close - true low
TR = true high - true low
avg7 = sum(BP, 7) / sum(TR, 7)
avg14 = sum(BP, 14) / sum(TR, 14)
avg28 = sum(BP, 28) / sum(TR, 28)
UO = 100 * (4 * avg7 + 2 * avg14 + avg28) / 7
The 7 in the denominator is 4 + 2 + 1, which keeps the result on a 0 to 100 scale. The first bar has no previous close, so buying pressure and true range start on the second bar, and the 28-bar sum puts the first value on the 29th bar of loaded history.
The weights are fixed. Changing the lengths changes which bars each window covers, not how much each window counts.
Limitations
- No levels by default. The indicator draws no overbought or oversold lines, so any thresholds are a choice you make.
- Divergences can fail. Using three windows reduces false divergences but does not remove them. Price can keep trending while the oscillator diverges.
- It lags. The 28-bar window means part of the reading reflects price action from weeks ago on a daily chart.
- The live candle moves. The current bar's value changes until that bar closes.
- It depends on timeframe. The same lengths cover very different spans of time on 15m and 1D.
Frequently asked questions
The Ultimate Oscillator is a momentum oscillator that measures where closes finish within their true range over three windows, 7, 14 and 28 bars by default, and averages them with weights of 4, 2 and 1. It reads from 0 to 100.
High readings mean closes have been finishing near the top of their ranges, low readings near the bottom. The indicator was designed mainly for divergences between the oscillator and price. Altrady Charts draws no levels for it, so if you want overbought and oversold thresholds you choose them yourself.
Yes. The indicator declares three inputs: Fast Length, default 7; Middle Length, default 14; and Slow Length, default 28, each with a minimum of 1. Open the indicator's settings on the chart to change them. The 4:2:1 weights are fixed.
Values on bars that have already closed are not revised. The current candle's value moves while it is still live and settles when it closes. Each value uses only fixed windows of past bars, so loading older history does not change it.
Buying pressure needs a previous close, so it starts on the second bar, and the slow window needs 28 of those values. With the defaults the first value appears on the 29th bar of loaded history.
Use the Add to chart button at the top of this page. It opens BTC/USDT on Binance in the Altrady Charts terminal with the built-in Ultimate Oscillator already applied. On any other market, open the indicator picker on the chart and choose Ultimate Oscillator from the Oscillator group.