What the Ultimate Oscillator shows
The Ultimate Oscillator is a momentum indicator. A momentum indicator measures how strongly price is moving. Larry Williams designed it to measure buying pressure, which is how far each close sits above the bar's true low, over short, medium and long lookback periods at once.
Many oscillators use a single period, which can make them jumpy. The Ultimate Oscillator blends several periods to reduce false swings. It moves in a fixed range, with an overbought zone near the top and an oversold zone near the bottom. See overbought and oversold for what these terms do and do not mean.
Ready to try it on a real or demo account?
Partner link · trading carries a high risk of loss
Formula and default settings
For each bar:
- Buying pressure (BP) = Close − the lower of (Low, previous Close)
- True range (TR) = the higher of (High, previous Close) − the lower of (Low, previous Close)
For each of the short, medium and long periods, the indicator adds up BP and divides it by the sum of TR. It then combines these averages into one weighted average. The short period gets the most weight and the long period gets the least. The result is scaled to the oscillator's fixed range.
The default periods, weights and levels are shown in the indicator's Parameters tab. Check them there, because custom versions do not always use the same defaults.
How to add it in MT4/MT5
- Open Insert > Indicators and look under Oscillators or Custom.
- If it is not listed, get a custom version as an .mq4 or .mq5 file. Place it via File > Open Data Folder > MQL4 (or MQL5) > Indicators, then refresh the Navigator.
- Drag it onto the chart and set the periods and levels.
Platform guides are on the MetaTrader 4 and MetaTrader 5 pages.
How to read it: a drawn example
The sketch shows a divergence: price and the oscillator disagree. Williams' original method looks for this kind of divergence with the first low inside the oversold zone. It then waits for the oscillator to rise above the peak between the two lows. Treat this as a description of the pattern, not an instruction to trade. Read more in divergence trading.
Parameter choices for experienced traders
- Shorter periods react faster but produce more noise. Longer periods smooth the line and lag more.
- Keep the short, medium and long periods in proportion to each other. If you change only one, the weighting stops meaning what it was designed to mean.
- Moving the levels closer to the middle produces more zone touches. Moving them out produces fewer.
- Compare readings across multiple timeframes rather than tuning settings until past charts look good.
Where it misleads
- Strong trends: the line can stay overbought or oversold for a long time.
- Gaps: the previous close feeds both BP and TR. A weekend or news gap can distort a single bar.
- Low-range sessions: when TR is small, small price changes swing the ratio sharply.
- Repeated divergences: price can produce several divergences before it turns, or never turn at all.
- Different code: custom indicators may calculate the formula differently. Check the source code.
No indicator removes risk. Leveraged forex and CFD trading can lose money fast. Pair any reading with risk management.
Frequent questions
Is the Ultimate Oscillator a leading or lagging indicator?
It is built from past prices, so it lags. Divergences are sometimes read as early warnings. See leading vs lagging.
What are the best ultimate oscillator settings?
No setting is best for every market. Start with the defaults shown in the Parameters tab and test any change on a demo account.
How is it different from RSI or Stochastic?
RSI and the Stochastic oscillator each use one lookback. The Ultimate Oscillator blends short, medium and long periods based on true range.
Does it repaint?
The standard formula does not change closed bars. The current bar updates until it closes.
