/** * Bollinger Bands (BB) Indicator * * Hand-optimized implementation using oakscriptjs. * Volatility bands placed above and below a moving average, using standard deviation. */ import { type IndicatorResult, type InputConfig, type PlotConfig, type Bar, type SourceType } from 'oakscriptjs'; /** * BB indicator input parameters */ export interface BBInputs { /** Period length */ length: number; /** Moving average type for basis */ maType: 'SMA' | 'EMA' | 'SMMA (RMA)' | 'WMA' | 'VWMA'; /** Price source */ src: SourceType; /** Standard deviation multiplier */ mult: number; /** Plot offset */ offset: number; } /** * Default input values */ export declare const defaultInputs: BBInputs; /** * Input configuration for UI */ export declare const inputConfig: InputConfig[]; /** * Plot configuration */ export declare const plotConfig: PlotConfig[]; /** * Indicator metadata */ export declare const metadata: { title: string; shortTitle: string; overlay: boolean; }; /** * Calculate BB indicator * * @param bars - OHLCV bar data * @param inputs - Indicator parameters (optional, uses defaults) * @returns Indicator result with plot data */ export declare function calculate(bars: Bar[], inputs?: Partial): IndicatorResult; /** * BB indicator module */ export declare const BollingerBands: { calculate: typeof calculate; metadata: { title: string; shortTitle: string; overlay: boolean; }; defaultInputs: BBInputs; inputConfig: InputConfig[]; plotConfig: PlotConfig[]; }; //# sourceMappingURL=bb.d.ts.map