Określ aktualne "prawdziwe minimum"(True Low, TL). TL — najniższa z obecnych niskich lub wcześniejszych cen zamknięcia.
TL (i) = MIN (LOW (i) || CLOSE (i – 1))
Oblicz aktualną "moc kupowania" (Buying Pressure, BP) równą różnicy między aktualną ceną zamknięcia a bieżącym prawdziwym minimum.
BP (i) = CLOSE (i) - TL (i)
Zdefiniuj "Prawdziwy zasięg" (True Range, TR). Jest to największa z różnic: aktualne maksimum i minimum; aktualne maksimum i poprzednia cena zamknięcia; poprzednia cena zamknięcia i aktualne minimum.
TR (i) = MAX (HIGH (i) - LOW (i) || HIGH (i) - CLOSE (i - 1) || CLOSE (i - 1) - LOW (i))
Oblicz sumę wartości BP dla wszystkich trzech okresów obliczeniowych:
BPSUM (N) = SUM (BP (i), i)
Oblicz sumę wartości TR dla wszystkich trzech okresów obliczeniowych:
TRSUM (N) = SUM (TR (i), i)
Oblicz "surową wartość" Ostatecznego Oscylatora (The Raw Ultimate Oscillator, RawUO):
RawUO = 4 * (BPSUM (1) / TRSUM (1)) + 2 * (BPSUM (2) / TRSUM (2)) + (BPSUM (3) / TRSUM (3))
Oblicz wartość Ostatecznego Oscylatora (Ultimate Oscillator, UO) według wzoru:
UO = ( RawUO / (4 + 2 + 1)) * 100, gdzie
MIN — wartość minimalna;
MAX — wartość maksymalna;
|| — logiczna OR;
LOW (i) — minimalna cena aktualnego baru;
HIGH (i) — maksymalna cena aktualnego baru;
CLOSE (i) — cena zamknięcia aktualnego baru;
CLOSE (i — 1) — cena zamknięcia poprzedniego baru;
TL (i) — Prawdziwe minimum;
BP (i) — Moc kupowania;
TR (i) — Prawdziwy zasięg;
BPSUM (N) — matematyczna suma wartości BP dla okresu N (N równa 1 odpowiada i = 7 barów; przy N = 2, i = 14 barów; przy N = 3, i = 28 barów);
TRSUM (N) — matematyczna suma wartości TR dla okresu N (N równa 1 odpowiada i = 7 barów; przy N = 2, i = 14 barów; przy N = 3, i = 28 barów);
RawUO — "surowa wartość" Ostatecznego Oscylatora;
UO — wartość Ostatecznego Oscylatora.