Skip to content

Releases: Jebel-Quant/jquantstats

v0.6.3

31 Mar 09:51

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.6.3 - 2026-03-31

Maintenance

  • Chore(deps)(deps): bump the python-dependencies group with 2 updates (#636)

Signed-off-by: dependabot[bot] support@github.com
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

  • Chore(deps)(deps): bump github/codeql-action from 4.35.0 to 4.35.1 in the github-actions group (#635)

Signed-off-by: dependabot[bot] support@github.com
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com

  • Improve test layout, module naming consistency, and fixture magic numbers (#633)

Other Changes

  • Fix code block formatting in README.md (#627)

Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com
Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com

  • Release on RhizaSkip branch!? (#629)

Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com
Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Replace test CSV dependency in README with inline random price data (#631)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Improve code quality: precise type hints, caching docs, implicit-rename warning (#637)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com
Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Getting started
  • Bump version 0.6.2 → 0.6.3

PyPI Package

jquantstats

v0.6.2

30 Mar 15:51

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.6.2 - 2026-03-30

Bug Fixes

  • Define prices and positions in execution-delay example
  • Remove RHIZA_SKIP flags and fix all executable code blocks

Other Changes

  • Fix code block formatting in README.md

Removed unnecessary RHIZA_SKIP from code blocks in README

  • Update README.md

Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com

  • Bump version 0.6.1 → 0.6.2

PyPI Package

jquantstats

v0.6.1

30 Mar 08:06

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.6.1 - 2026-03-30

Documentation

  • Surface CostModel as public API and add dedicated usage guide (#622)
  • Expand API mapping table and add jquantstats-only stats section
  • Add Docs nav section with all docs/ markdown files
  • Acknowledge QuantStats and clarify jquantstats' purpose
  • Rewrite introduction to clarify conceptual differences between jquantstats and QuantStats
  • Remove comprehensive markdown docs in favor of simpler guidance

Maintenance

  • Drop plot_ prefix from DataPlots methods (#616)
  • Disable scheduled runs, workflow dispatch, and unused steps in rhiza_validate.yml

New Features

  • Property-based tests for financial metric invariants via hypothesis (#620)

Other Changes

  • Move app.py from repo root to api/app.py (#614)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com
Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Copilot/move app py to api directory (#615)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Remove annualisation details for information_ratio

Removed section on information_ratio annualisation from migration documentation

  • Extract shared computation layer into _stats/_internals.py (#618)
  • Delete docs/migration.md (#626)
  • Migration
  • Bump version 0.6.0 → 0.6.1

Performance

  • Cache expensive Portfolio NAV/returns/tilt/turnover properties (#624)

PyPI Package

jquantstats

v0.6.0

29 Mar 18:14

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.6.0 - 2026-03-29

Bug Fixes

  • Pin pygments<2.19 in mkdocs build to avoid NoneType crash
  • Update test_local import to reflect app.py move to api/ directory

Documentation

  • Sync root migration.md with recent library changes

Maintenance

  • Rename test_quantstats.py to test_autocorrelation.py
  • Simplify conditional_value_at_risk API and remove deprecation shim
  • Add pytest integration tests for FastAPI endpoints in app.py

New Features

  • Add null_strategy parameter to Data.from_returns / from_prices (#609)
  • Move app.py to api/app.py and update railway.toml

Other Changes

  • Port quantstats test suite to jquantstats (#598)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Add annualise parameter to information_ratio for QuantStats parity (#607)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Fix double-multiplied and raw-decimal percentage values in performance tables (#602)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com

  • Fix avg_drawdown sign convention to match QuantStats (negative fraction) (#608)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com

  • Add confidence deprecation shim to conditional_value_at_risk (#610)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com

  • Add minimal FastAPI app and Railway deployment config (#611)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com
Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Add railway.toml to fix uvicorn not found on Railway deployment (#612)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Delete Procfile (#613)
  • Delete architecture section from README

Removed architecture section detailing entry points and their functionalities

  • Initial plan
  • Bump version 0.5.1 → 0.6.0

PyPI Package

jquantstats

v0.5.2

29 Mar 09:26

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.5.2 - 2026-03-29

Bug Fixes

  • Resolve 404 for Marimo Notebooks and Reports pages in deployed book (#600)

Maintenance

  • Update MARIMO_FOLDER path in .env

New Features

  • Add comprehensive plots & reports gallery notebook (#596)

Other Changes

  • Initial plan
  • Clean up .env by removing book variables (#594)
  • Merge branch 'main' into copilot/bring-tests-from-quantstats
  • Initial plan for porting quantstats tests to jquantstats

Agent-Logs-Url: https://github.com/Jebel-Quant/jquantstats/sessions/4ce55d80-842c-44e2-a0cc-75403d794aaf

Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Port quantstats test suite to jquantstats (31 new tests)

Agent-Logs-Url: https://github.com/Jebel-Quant/jquantstats/sessions/4ce55d80-842c-44e2-a0cc-75403d794aaf

Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Merge branch 'main' into copilot/bring-tests-from-quantstats
  • Minor test cleanup: inline DataFrames and tighten raises match

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

  • Merge branch 'main' into copilot/bring-tests-from-quantstats

  • Fix _NOTEBOOK_DIR scope and add HTML report exports via NOTEBOOK_OUTPUT_FOLDER

  • Rename _NOTEBOOK_DIR → NOTEBOOK_DIR (underscore-prefixed vars are cell-local in marimo)

  • Add os import to app.setup

  • Add export cells for data and portfolio HTML reports, using the same NOTEBOOK_OUTPUT_FOLDER pattern as rhiza.py

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

  • Fix multiple-definition errors: prefix cell-local vars with underscore

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

  • Bump version 0.5.1 → 0.5.2

PyPI Package

jquantstats

v0.5.1

29 Mar 06:05

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.5.1 - 2026-03-29

Bug Fixes

  • Add security exception docs to test_portfolio conftest
  • Mark illustrative README snippets +RHIZA_SKIP to pass validate

Documentation

  • Update CHANGELOG with 0.5.0 release details
  • Rewrite README to foreground the Portfolio route and execution-delay analysis

Maintenance

  • Consolidate root-level files into .github/ and docs/ (#591)
  • Split test_portfolio.py into focused modules
  • Split portfolio.py into focused mixin modules (#593)

New Features

  • License workflow produces LICENSES.md artifact (#590)
  • Add _utils subpackage mirroring qs.utils API

Other Changes

  • Delete .rhiza/templates/minibook directory
  • Delete .rhiza/make.d/gh-aw.mk (#588)
  • Marimushka go (#592)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Bump version 0.5.0 → 0.5.1

PyPI Package

jquantstats

v0.5.0

28 Mar 20:19

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.5.0 - 2026-03-28

Bug Fixes

  • Update Rhiza badge URL in test to reflect GitHub org rename
  • Update all remaining tschm → jebel-quant org references

Documentation

  • Update README and paper for v0.4.0
  • Update links and badges in README for GitHub organization rename
  • Update links and badges in README for GitHub organization rename
  • Update links and badges in README for GitHub organization rename
  • Add REPOSITORY_ANALYSIS.md via make analyse-repo

Maintenance

  • Chore(deps)(deps): bump github/codeql-action from 4.34.1 to 4.35.0 in the github-actions group (#543)

Signed-off-by: dependabot[bot] support@github.com
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

  • Chore(deps)(deps): bump the python-dependencies group with 2 updates (#542)

Signed-off-by: dependabot[bot] support@github.com
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com

  • Merge rhiza_deptry and rhiza_pre-commit into rhiza_quality
  • Merge rhiza_docs into rhiza_quality
  • Merge rhiza_typecheck into rhiza_validate
  • Merge rhiza_pip_audit into rhiza_validate
  • Merge rhiza_security into rhiza_validate
  • Merge rhiza_semgrep into rhiza_validate
  • Consolidate rhiza_validate push/PR jobs into one
  • Integrate link_check into rhiza_quality

New Features

  • Add Omega ratio (#554)
  • Add outliers, remove_outliers, outlier_win_ratio, outlier_loss_ratio
  • Add comp, compsum, ghpr (#582)
  • Add drawdown_details, expected_return, rolling_greeks, t… (#583)

Other Changes

  • Implement autocorrelation() and acf() in Stats (#544)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com
Co-authored-by: Copilot 175728472+Copilot@users.noreply.github.com

  • Quantstats bench (#579)

Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Simplify (#584)
  • Update README.md
  • Merge remote-tracking branch 'origin/main'

Conflicts:

README.md

  • Delete REPOSITORY_ANALYSIS.md
  • Sync out (#587)

Co-authored-by: Claude Sonnet 4.6 noreply@anthropic.com

  • Decompose complex Reports.metrics() into focused helpers (#586)
  • Bump version 0.4.0 → 0.5.0

PyPI Package

jquantstats

v0.4.0

26 Mar 18:45

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.4.0 - 2026-03-26

Bug Fixes

  • Raise ValueError when CostModel is constructed with both cost fields non-zero (#528)
  • Fix generate_svgs path scope, update coverage badge URL, add from_position tests

Documentation

  • Add paper badge linking to compiled PDF on paper branch
  • Reorder Figure 1 facades column to report > stats > plots
  • Reorder Figure 1 facades column to stats > report > plots
  • Update CHANGELOG for v0.2.0 through v0.3.4 and unreleased
  • Add 2026-03-26 v0.3.4 repository analysis entry

Maintenance

  • Remove deploy-versioned-docs job from rhiza_docs workflow
  • Remove generate_svgs.py from repository

New Features

  • Autopilot loop — analyse → create issues → solve with Claude (#523)
  • Add companion paper and LaTeX CI workflow
  • Add portfolio initialization from positions, enhance plotting features, and update snapshots

Other Changes

  • Add 1/n equal-weight portfolio SVG charts from real AAPL/META data (#519)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Delete .github/workflows/autopilot.yml
  • Move mkdocs.yml to root level (#526)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Update README.md
  • Remove exclusion of mail links from link check
  • Revisit pyproject
  • [WIP] Add kaleido static-export tests to CI matrix (#538)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com

  • Add .github/CODEOWNERS (#540)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Bump version 0.3.4 → 0.4.0

PyPI Package

jquantstats

v0.3.4

26 Mar 03:00

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.3.4 - 2026-03-26

Bug Fixes

  • Move mkdocs.yml to repo root to resolve docs_dir config error (#501)
  • Limit API Reference TOC depth to 3 to reduce clutter

Documentation

  • Append 2026-03-25 repository analysis entry (v0.3.3)

Maintenance

  • Add kaleido static image export tests (#504)
  • Move mkdocs.yml to repo root (#514)
  • Add kaleido marker and dedicated CI job for static image export (#520)

New Features

  • Replace minibook with MkDocs-based book pipeline (#502)
  • Add per-subcategory 1–10 scores to analyser agent
  • Add vol-normalisation cap and input validation to from_risk_position (#521)

Other Changes

  • Potential fix for code scanning alert no. 1: Workflow does not contain permissions (#503)

Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>

  • Revert "chore: move mkdocs.yml to repo root" (#517)
  • [WIP] Fix PortfolioLike protocol to align with CostModel abstraction (#522)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Analysis
  • Bump version 0.3.3 → 0.3.4

Performance

  • Vectorise trading_cost_impact — O(1) allocations for the cost sweep (#516)
  • Add slots=True to Portfolio and Data frozen dataclasses (#515)

PyPI Package

jquantstats

v0.3.3

24 Mar 09:51

Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

0.3.3 - 2026-03-24

Other Changes

  • Fix mkdocs site_dir nested inside docs_dir

Set site_dir to ../site so the build output is placed at the repo root
level instead of inside docs/, which caused an aborted build error.

Co-Authored-By: Claude Sonnet 4.6 noreply@anthropic.com

  • Remove obsolete notebook
  • Add Data.from_prices classmethod (#499)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com
Co-authored-by: Thomas Schmelzer thomas.schmelzer@gmail.com

  • Reorganize tests/ to mirror src/jquantstats/ structure (#500)

Co-authored-by: copilot-swe-agent[bot] 198982749+Copilot@users.noreply.github.com
Co-authored-by: tschm 2046079+tschm@users.noreply.github.com

  • Bump version 0.3.2 → 0.3.3

PyPI Package

jquantstats