Determinar el
"mínimo verdadero" actual (True Low, TL). TL — el menor del mínimo actual o del precio anterior de cierre.
TL (i) = MIN (LOW (i) || CLOSE (i – 1))
Calcular la "Presión de compra" actual (Buying Pressure, BP), igual a la diferencia entre el precio actual de cierre y el mínimo actual verdadero.
BP (i) = CLOSE (i) - TL (i)
Determinar el "Rango verdadero" (True Range, TR). La mayor de las diferencias: de los máximo y mínimos actuales; del máximo actual del precio anterior de cierre; del precio anterior de cierre y del mínimo actual.
TR (i) = MAX (HIGH (i) - LOW (i) || HIGH (i) - CLOSE (i - 1) || CLOSE (i - 1) - LOW (i))
Calcular la suma de valores del BP para todos los tres periodos de cálculo:
BPSUM (N) = SUM (BP (i), i)
Calcular la suma de valores del TR para todos los tres periodos de cálculo:
TRSUM (N) = SUM (TR (i), i)
Calcular el "valor crudo" del Oscilador Final (The Raw Ultimate Oscillator, RawUO):
RawUO = 4 * (BPSUM (1) / TRSUM (1)) + 2 * (BPSUM (2) / TRSUM (2)) + (BPSUM (3) / TRSUM (3))
Calcular el valor del Oscilador Final (Ultimate Oscillator, UO) según la fórmula:
UO = ( RawUO / (4 + 2 + 1)) * 100, donde
MIN — valor mínimo;
MAX — valor máximo;
|| — lógico O;
LOW (i) — precio mínimo de la barra actual;
HIGH (i) — precio máximo de la barra actual;
CLOSE (i) — precio de cierre de la barra actual;
CLOSE (i — 1) — precio de cierre de la barra anterior;
TL (i) — Mínimo verdadero;
BP (i) — Presión de compra;
TR (i) — Rango verdadero;
BPSUM (N) — Suma matemática de los valores BP para el periodo N (N igual a 1 corresponde i = 7 barras; cuando N = 2, i = 14 barras; cuando N = 3, i = 28 barras);
TRSUM (N) — suma matemática de valores TR para el periodo N (N igual a 1 corresponde i = 7 barras; cuando N = 2, i = 14 barras; cuando N = 3, i = 28 barras);
RawUO — "valor crudo" del Oscilador Final;
UO — valor del Oscilador Final.