quantitivecalc
Version:
A TypeScript library providing advanced quantitative finance functions for risk analysis, performance metrics, and technical indicators. (Currently in development)
23 lines (22 loc) • 2.19 kB
TypeScript
/**
* Performance Metrics Utilities
*
* Functions:
* - calculateCompoundReturns: Calculates compound values from a series of daily returns.
* - calculateDailyReturns: Calculates daily returns from a series of values.
* - calculateAnnualizedReturns: Converts returns to annualized format
* - calculateAlpha: Calculates alpha (excess return vs benchmark)
* - calculateInformationRatio: Active return per unit of tracking error
* - calculateCalmarRatio: Annual return divided by maximum drawdown
* - calculateSortinoRatio: Return adjusted for downside deviation
*
* All functions operate on arrays of objects (list of dicts) and allow you to specify source/result columns.
*/
export declare function calculateCompoundReturns(data: Array<Record<string, any>>, returnsColumn: string | undefined, resultColumn: string, initialValue?: number): Array<Record<string, any>>;
export declare function calculateDailyReturns(data: Array<Record<string, any>>, sourceColumn: string, resultColumn?: string, initialValue?: number | null): Array<Record<string, any>>;
export declare function calculateAnnualizedReturns(data: Array<Record<string, any>>, returnsColumn: string, resultColumn: string, frequency?: 'daily' | 'weekly' | 'monthly', method?: 'compound' | 'simple'): Array<Record<string, any>>;
export declare function calculateAlpha(data: Array<Record<string, any>>, assetReturnsColumn: string, benchmarkReturnsColumn: string, resultColumn: string, windowSize?: number, // 1 year for daily data
riskFreeRate?: number): Array<Record<string, any>>;
export declare function calculateInformationRatio(data: Array<Record<string, any>>, assetReturnsColumn: string, benchmarkReturnsColumn: string, resultColumn: string, windowSize?: number): Array<Record<string, any>>;
export declare function calculateCalmarRatio(data: Array<Record<string, any>>, returnsColumn: string, priceColumn: string, resultColumn: string, windowSize?: number): Array<Record<string, any>>;
export declare function calculateSortinoRatio(data: Array<Record<string, any>>, returnsColumn: string, resultColumn: string, windowSize?: number, riskFreeRate?: number, targetReturn?: number | null): Array<Record<string, any>>;