Expand description
Pure performance statistics library for trading.
All functions are pure math - no I/O, no async, WASM-compatible.
§Example
use quant_metrics::{total_return, sharpe_ratio, max_drawdown};
use rust_decimal_macros::dec;
let equity = vec![dec!(10000), dec!(10150), dec!(10230), dec!(10080), dec!(10350)];
let rf_rate = dec!(0.02); // 2% annual risk-free rate
let ret = total_return(&equity);
let sharpe = sharpe_ratio(&equity, rf_rate, 252); // 252 trading days
let max_dd = max_drawdown(&equity);Modules§
- analytics
- Portfolio analytics: attribution, correlation, diversification, tail risk.
- cointegration
- Engle-Granger cointegration test and pair-trading statistics.
- composition
- Portfolio composition — weighted return aggregation.
- risk_
metrics - Value at Risk and Conditional Value at Risk calculations.
Structs§
- Kelly
Fraction - A validated Kelly fraction in the range [0.0, 1.0].
- Rolling
Window - Rolling window calculator for time-series metrics.
Enums§
- Kelly
Mode - Kelly sizing mode — controls what fraction of the theoretical optimum to use.
- Metrics
Error - Errors that can occur during metrics calculations.
Functions§
- annualized_
return - Calculate annualized return from period return.
- avg_
loss - Calculate average losing trade.
- avg_win
- Calculate average winning trade.
- cagr
- Calculate Compound Annual Growth Rate (CAGR).
- calmar_
ratio - Calculate Calmar ratio.
- compute_
kelly_ fraction - Compute the Kelly fraction for given trade statistics.
- compute_
kelly_ inputs - Compute Kelly inputs (win rate as fraction, reward ratio, trade count) from PnL values.
- drawdown_
series - Calculate drawdown at each point in the equity curve.
- expectancy
- Calculate expectancy (expected value per trade).
- information_
ratio - Calculate Information Ratio.
- max_
drawdown - Calculate maximum drawdown as a percentage.
- max_
drawdown_ duration - Calculate maximum drawdown duration in periods.
- profit_
factor - Calculate profit factor.
- recovery_
time - Calculate time to recover from maximum drawdown in periods.
- sharpe_
ratio - Calculate Sharpe ratio.
- sortino_
ratio - Calculate Sortino ratio.
- total_
return - Calculate total return as a percentage.
- win_
rate - Calculate win rate as a percentage.