/** * Ultimate Oscillator Indicator * * Multi-timeframe momentum oscillator that uses weighted average of three periods. * Designed to capture momentum across short, medium, and long-term periods. * * Based on TradingView's Ultimate Oscillator indicator. */ import type { Bar, InputConfig, PlotConfig } from 'oakscriptjs'; export interface UltimateOscillatorInputs { /** Fast period length */ length1: number; /** Medium period length */ length2: number; /** Slow period length */ length3: number; } export declare const defaultInputs: UltimateOscillatorInputs; export declare const inputConfig: InputConfig[]; export declare const plotConfig: PlotConfig[]; export declare const metadata: { title: string; shortTitle: string; overlay: boolean; }; /** * Calculate Ultimate Oscillator * * Algorithm: * 1. Calculate True Range: max(high, close[1]) - min(low, close[1]) * 2. Calculate Buying Pressure: close - min(low, close[1]) * 3. Calculate average BP/TR for each period * 4. Combine with weights: 100 * (4*avg1 + 2*avg2 + avg3) / 7 */ export declare function calculate(bars: Bar[], inputs?: Partial): ReturnType; export declare const UltimateOscillator: { calculate: typeof calculate; metadata: { title: string; shortTitle: string; overlay: boolean; }; defaultInputs: UltimateOscillatorInputs; inputConfig: InputConfig[]; plotConfig: PlotConfig[]; }; //# sourceMappingURL=ultimate-oscillator.d.ts.map