/** * Arnaud Legoux Moving Average (ALMA) Indicator * * Hand-optimized implementation using oakscriptjs. * Uses a Gaussian distribution to reduce lag while maintaining smoothness. */ import { type IndicatorResult, type InputConfig, type PlotConfig, type Bar } from 'oakscriptjs'; /** * ALMA indicator input parameters */ export interface ALMAInputs { /** Period length */ lengthInput: number; /** Offset - controls tradeoff between smoothness (closer to 1) and responsiveness (closer to 0) */ offsetInput: number; /** Sigma - standard deviation applied for sharpness */ sigmaInput: number; } /** * Default input values */ export declare const defaultInputs: ALMAInputs; /** * 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 ALMA 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; /** * ALMA indicator module */ export declare const ALMA: { calculate: typeof calculate; metadata: { title: string; shortTitle: string; overlay: boolean; }; defaultInputs: ALMAInputs; inputConfig: InputConfig[]; plotConfig: PlotConfig[]; }; //# sourceMappingURL=alma.d.ts.map