/** * Relative Strength Index (RSI) Indicator * * Hand-optimized implementation using oakscriptjs. * Momentum oscillator measuring the speed and magnitude of price changes. */ import { type IndicatorResult, type InputConfig, type PlotConfig, type HLineConfig, type FillConfig, type Bar, type SourceType } from 'oakscriptjs'; import type { MarkerData } from '../types'; export interface RSIInputs { length: number; src: SourceType; calculateDivergence: boolean; maType: 'None' | 'SMA' | 'SMA + Bollinger Bands' | 'EMA' | 'SMMA (RMA)' | 'WMA' | 'VWMA'; maLength: number; bbMult: number; } export declare const defaultInputs: RSIInputs; export declare const inputConfig: InputConfig[]; export declare const plotConfig: PlotConfig[]; export declare const hlineConfig: HLineConfig[]; export declare const fillConfig: FillConfig[]; export declare const metadata: { title: string; shortTitle: string; overlay: boolean; }; export declare function calculate(bars: Bar[], inputs?: Partial): IndicatorResult & { markers?: MarkerData[]; }; export declare const RSI: { calculate: typeof calculate; metadata: { title: string; shortTitle: string; overlay: boolean; }; defaultInputs: RSIInputs; inputConfig: InputConfig[]; plotConfig: PlotConfig[]; hlineConfig: HLineConfig[]; fillConfig: FillConfig[]; }; //# sourceMappingURL=rsi.d.ts.map