UNPKG

@railpath/finance-toolkit

Version:

Production-ready finance library for portfolio construction, risk analytics, quantitative metrics, and ML-based regime detection

88 lines (87 loc) 2.44 kB
/** * Statistical Utility Functions for Machine Learning * * Provides statistical functions commonly used in ML algorithms */ /** * Calculate Gaussian Probability Density Function * * @param x - Value to evaluate * @param mean - Mean of the Gaussian * @param variance - Variance of the Gaussian * @returns PDF value * * @example * ```typescript * const pdf = gaussianPDF(1.0, 0.0, 1.0); // Standard normal at x=1 * ``` */ export declare function gaussianPDF(x: number, mean: number, variance: number): number; /** * Calculate log of Gaussian PDF for numerical stability * * @param x - Value to evaluate * @param mean - Mean of the Gaussian * @param variance - Variance of the Gaussian * @returns Log PDF value */ export declare function logGaussianPDF(x: number, mean: number, variance: number): number; /** * Calculate mean of values * * @param values - Array of numbers * @returns Mean value * * @example * ```typescript * const mean = calculateMean([1, 2, 3, 4, 5]); // 3 * ``` */ export declare function calculateMean(values: number[]): number; /** * Calculate variance of values * * @param values - Array of numbers * @param mean - Pre-computed mean (optional) * @returns Variance * * @example * ```typescript * const variance = calculateVariance([1, 2, 3, 4, 5]); // 2 * ``` */ export declare function calculateVariance(values: number[], mean?: number): number; /** * Standardize values (z-score normalization) * * Transforms values to have mean=0 and variance=1 * * @param values - Array of numbers * @returns Standardized values * * @example * ```typescript * const standardized = standardize([1, 2, 3, 4, 5]); * ``` */ export declare function standardize(values: number[]): number[]; /** * Calculate multivariate Gaussian PDF * * For a feature vector x with independent features * * @param x - Feature vector * @param means - Mean for each feature * @param variances - Variance for each feature * @returns PDF value */ export declare function multivariateGaussianPDF(x: number[], means: number[], variances: number[]): number; /** * Calculate log of multivariate Gaussian PDF for numerical stability * * @param x - Feature vector * @param means - Mean for each feature * @param variances - Variance for each feature * @returns Log PDF value */ export declare function logMultivariateGaussianPDF(x: number[], means: number[], variances: number[]): number;