Skip to content

Releases: JohnDReynolds/perfattr

perfattr 0.12.0

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 09 Sep 17:50

perfattr 0.12.0 makes the complete source-neutral attribution package available as a
stable installation. It includes:

  • pandas DataFrame and CSV preparation with validation, selection, period alignment,
    fixed-frequency consolidation, and static or effective-dated classifications;
  • Brinson-Fachler and Brinson-Hood-Beebower two- and three-effect calculations with
    Carino, Frongello, or Menchero arithmetic effect linking;
  • separate geometric attribution, hierarchical result roll-up, Karnosky-Singer
    currency attribution, and multi-period currency roll-up;
  • deterministic result frames with explicit financial reconciliation; and
  • public onboarding documentation and Python 3.11–3.14 support.

The release also preserves the exact one-period Menchero identity across platform math
libraries. It adds no runtime dependency beyond NumPy and pandas.

perfattr 0.12.0a1

perfattr 0.12.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 08 Sep 23:31

Adds independently validated multi-period currency-attribution roll-up with cumulative log returns and effects, full-horizon market and currency identifier effects, positive reconciliation evidence, and direct performance coverage.

perfattr 0.11.0a1

perfattr 0.11.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 08 Sep 18:09

Adds a separate, single-period Karnosky-Singer currency-attribution family.

  • Accepts separate portfolio and benchmark market and currency frames.
  • Reports four explicit, reconciled log-effect channels.
  • Preserves all existing domestic attribution APIs, schemas, defaults, and ppar behavior.
  • Supports Python 3.11 through 3.14 with pandas and NumPy as the only runtime dependencies.

perfattr 0.10.0a1

perfattr 0.10.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 08 Sep 00:11

Adds a separate Bacon/Burnie geometric excess-return attribution boundary with identifier-period effects, compounded cumulative prefixes, authoritative-contribution support, and explicit multiplicative reconciliation.\n\nThe existing arithmetic attribution APIs, defaults, schemas, dependencies, and ppar integration remain unchanged.

perfattr 0.9.0a1

perfattr 0.9.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 06 Sep 18:04

Adds an opt-in hierarchical result roll-up boundary that aggregates already calculated leaf attribution into a validated static parent forest without recalculating Brinson effects. Includes deterministic parent-period and horizon frames, complete hierarchy validation, and parent/root reconciliation evidence.

perfattr 0.8.0a1

perfattr 0.8.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 06 Sep 13:16

Full Changelog: v0.7.0a1...v0.8.0a1

perfattr 0.7.0a1

perfattr 0.7.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 05 Sep 21:58

Adds opt-in Frongello recursive effect linking through EffectLinkingMethod.FRONGELLO for all four attribution methods. Carino remains the default, portfolio and benchmark contributions remain logarithmically linked, and public result-frame schemas remain unchanged. Includes independent primary-source fixtures, full reconciliation coverage, direct performance evidence, and unchanged ppar compatibility verification.

perfattr 0.6.0a1

perfattr 0.6.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 05 Sep 19:30

Adds opt-in compact Brinson-Hood-Beebower two-effect attribution. The new method retains BHB allocation and total while absorbing interaction into portfolio-weighted selection, reuses the established two-effect schemas and Carino linking, and preserves all released method behavior.

perfattr 0.5.0a1

perfattr 0.5.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 05 Sep 17:30

Adds opt-in Brinson-Hood-Beebower three-effect attribution while preserving the default Brinson-Fachler two-effect method and the released Brinson-Fachler three-effect method. Reuses the existing three-effect schemas, Carino linking, reconciliation, and portable preparation boundary. Includes independent hand-calculated fixtures, expanded edge-case coverage, updated documentation, released-method compatibility verification, direct-core benchmarks, and the complete unchanged ppar 500x integration gate.

perfattr 0.4.0a1

perfattr 0.4.0a1 Pre-release
Pre-release

Choose a tag to compare

@JohnDReynolds JohnDReynolds released this 05 Sep 15:46

Adds opt-in Brinson-Fachler three-effect attribution with explicit interaction while preserving the existing two-effect default. Includes method-specific deterministic schemas, reconciliation, linked and cumulative interaction effects, independently calculated fixtures, documentation, and benchmark coverage.