Skip to content

pytimetk 2.5.1

Latest

Choose a tag to compare

@mdancho84 mdancho84 released this 05 Aug 16:34

Overview

This patch release corrects grouped financial calculations, aligns pandas, Polars, and cuDF backend semantics, and restores documented benchmark-dependent risk metrics.

Highlights

  • Isolates FIP, ADX, and rolling-risk calculations at group boundaries.
  • Fixes Polars lazy-callback binding and warm-up parity for FIP and QSM momentum.
  • Uses exact QSM lookbacks and consistent population volatility across engines.
  • Aligns ADX smoothing and RSI zero-loss behavior across backends.
  • Standardizes Sortino downside deviation and restores Treynor and Information Ratio calculations.
  • Treats downside variances at floating-point precision as zero, preventing older Polars versions from producing extremely large Sortino ratios for windows without downside returns.
  • Adds pandas support for multiple grouping columns in ATR, Bollinger Bands, EWMA volatility, Hurst exponent, QSM, and rolling-risk metrics.
  • Adds regression coverage for group isolation, engine parity, benchmark metrics, no-downside Sortino windows, and multi-column grouping.

Compatibility

There are no public API changes. Corrected quantitative outputs can differ from 2.5.0 where previous calculations leaked across groups, used inconsistent backend formulas, or interpreted floating-point rolling residue as downside risk.

Verification

  • 512 tests passed with Polars 1.35.1.
  • Sortino regressions passed with the locked Polars 1.21.0 release.
  • Poetry metadata validation passed.
  • Resolves #318.

Full Changelog: v2.5.0...v2.5.1