RiskPY
A risk and actuarial engine: a C++ core with no Python dependencies, and a modelling layer in readable Python that covers Monte Carlo with dependence, life contingencies, claims reserving, yield curves and short-rate models, credit risk, option pricing, and twenty-two charts — with a verification suite that checks every identity the library claims on every push.
📖 Documentation → slimboi34.github.io/RiskPY
pip install open-riskpy # core, zero dependencies
pip install "open-riskpy[sim]" # + NumPy: simulation and the numeric layers
pip install "open-riskpy[viz]" # + Matplotlib: the charts
from riskpy.mc import Model, Poisson, LogNormal, Normal
model = Model(
claim_count = Poisson(mean=140),
severity = LogNormal.from_moments(mean=18_000, sd=42_000),
inflation = Normal(mean=0.043, sd=0.012),
)
model.correlate("claim_count", "inflation", 0.3)
@model.formula
def annual_loss(claim_count, severity, inflation):
return claim_count * severity * (1 + inflation)
result = model.run(200_000, seed=42, sampling="lhs")
print(result.summary()) # mean, VaR, TVaR at every level
result.plot("dashboard") # distribution, exceedance, convergence, tornado
v0.5.2 — a pickled error keeps its value and notes across processes,
riskpy-tools traceno longer crashes on a broken trace file, and an overflowingaggregate_losssays which argument to fix. No result changes.v0.5.1 — fixes from black-box testing 0.5.0: parametric
value_at_riskreports the normal expected shortfall (it returned the historical one),bornhuetter_fergusonrefuses a loss ratio typed as a percentage, errors name the tool's own argument, the wheels no longer drop OpenXLSX's headers and libraries intosite-packages, and macOS x86_64 wheels ship again. See RELEASE_NOTES.md.v0.5.0 — RiskPY tells you (and your agent) exactly what went wrong. Every error has a stable code, names the parameter and says how to fix it (
riskpy-explain RP105); the tools and the MCP server return{"error": {code, message, param, hint}}instead of tracebacks and refuse percentages where decimals belong (r=5,sigma=20) rather than compute a confident wrong answer.riskpy-doctorchecks an installation end to end, a call trace shows what an agent has been doing (riskpy-tools trace,riskpy_status), and eleven more verified calculators are tools (27 in all). On a scripted set of 19 agent mistakes the share of failures that come back with a code, the parameter, a fix and structured JSON goes from 4% (0.4.0) to 100%. Ships the unpublished 0.4.1 security fixes. No numerical result changes. See RELEASE_NOTES.md.v0.4.0 — for AI agents: sixteen verified calculators as tools with JSON schemas (
riskpy-tools,riskpy.tools.call), an MCP server (riskpy-mcp,pip install "open-riskpy[mcp]") so Claude Code and friends can price, reserve and simulate with numbers the verification suite stands behind, andriskpy-context, a description of the library generated from the installed package for the model about to use it. It builds on v0.3.x: four fields of risk (life, reserving, rates, credit), a rewritten Monte Carlo engine, twenty-two charts and the verification suite. See RELEASE_NOTES.md.
What is in the box
| Module | What it does | Needs |
|---|---|---|
riskpy.mc |
Generic Monte Carlo — any formula, twenty distributions with pdf/cdf/ppf/moments, mixtures and truncation, Latin hypercube, Iman–Conover rank correlation, a copula hook, and a Result that answers VaR, TVaR, sensitivity and convergence |
NumPy |
riskpy.viz |
Twenty-two charts, one theme, light and dark, palettes validated for contrast and colour-vision deficiency | Matplotlib |
riskpy.quant |
Black–Scholes, Greeks, implied vol (pure Python); GBM and jump-diffusion paths; historical, parametric and expected-shortfall VaR; Heston by Fourier inversion | — / NumPy |
riskpy.life |
Life tables (Gompertz, Makeham, the AMLCR standard table), insurances, annuities, premiums, reserves, joint lives, commutation functions | — |
riskpy.reserving |
Chain ladder, Mack standard errors, Bornhuetter–Ferguson, Cape Cod, ODP bootstrap, tail fitting — reproduces R's ChainLadder on GenIns to the unit |
NumPy |
riskpy.rates |
Yield curves (bootstrap, Nelson–Siegel, Svensson), bonds with duration, convexity, DV01, z-spread; Vasicek and CIR with closed-form bonds and simulated paths | — / NumPy |
riskpy.credit |
Merton, hazard rates and CDS, Vasicek / Basel ASRF with IRB capital, one-factor copula portfolio simulation, rating transition matrices | — / NumPy |
riskpy.verify |
The verification suite: 111 checks against closed forms, published tables and identities — 125 with SciPy installed as an oracle — plus benchmarks. riskpy-verify on the command line |
NumPy |
| Compiled core | FactorModel, MonteCarloSimulator, LossTriangle, FourierTransform, ExperienceRating, ExposureRating, RateAnalyzer, ActuarialMath, RiskEngine, ExcelExporter, the optional Tkinter UnderwritingApp |
— |
Every layer is imported lazily, so import riskpy on a machine with nothing
but the wheel installed works and gives you the compiled core.
A taste of each
from riskpy import life, reserving, rates, credit, quant, viz
# Life: the textbook's own numbers
sult = life.LifeTable.sult()
life.whole_life_annuity_due(sult, 40, i=0.05) # ä_40 = 18.457757 (AMLCR Table D.3)
life.net_premium_reserve(sult, 40, t=10, i=0.05, kind="endowment", n=20)
# Reserving: the GenIns triangle, with uncertainty
tri = reserving.genins()
mack = reserving.mack_chain_ladder(tri)
mack.total_reserve, mack.total_se # 18,680,856 ± 2,447,095
boot = reserving.bootstrap_chain_ladder(tri, n=5000, seed=1)
viz.exceedance(boot.result()) # a reserve distribution, charted
# Rates: a bond on a bootstrapped curve
curve = rates.YieldCurve.bootstrap([0.020, 0.025, 0.028, 0.030], [1, 2, 3, 4])
bond = rates.Bond(face=100, coupon=0.05, maturity=4, frequency=2)
bond.z_spread(bond.price(0.045), curve)
# Credit: Basel capital and a correlated portfolio
credit.basel_irb_capital(pd=0.01, lgd=0.45, ead=1e6).risk_weight # 92.32%
pds, lgds, eads = [0.01] * 500, [0.45] * 500, [1e6] * 500 # 500 identical loans
credit.credit_portfolio_loss(pds, lgds, eads, rho=0.2, trials=100_000, seed=1).var(0.999)
# Quant: still pure Python for the closed forms
quant.black_scholes(S=100, K=100, T=1, r=0.05, sigma=0.2) # 10.4506
quant.heston_price(S=100, K=100, T=1, r=0.03, v0=0.04, kappa=2, theta=0.04, xi=0.5, rho=-0.7)
For AI agents
riskpy-tools # 27 verified calculators as tools, with JSON schemas
riskpy-tools call black_scholes '{"S": 100, "K": 100, "T": 1, "r": 0.05, "sigma": 0.2}' # 10.4506
riskpy-mcp # the same tools over MCP (pip install "open-riskpy[mcp]")
riskpy-context # the library described for the model about to use it
riskpy-doctor # is this installation healthy? (--json; exit 1 on a failure)
riskpy-explain RP104 # what an error code means and how to fix the call
riskpy-tools trace # the recent tool calls, with durations and error codes
A call that goes wrong comes back as data an agent can act on, never a traceback:
$ riskpy-tools call black_scholes '{"S": 100, "K": 100, "T": 1, "r": 5, "sigma": 0.2}'
{"error": {"code": "RP104", "param": "r",
"message": "r = 5 looks like a percentage: rates are decimals, so |r| must be at most 1",
"hint": "Divide by 100 — 5% is 0.05.", "docs": "https://slimboi34.github.io/RiskPY/errors/#rp104"}}
from riskpy import tools; tools.manifest() is the list as data and tools.call(name, {...})
runs one; every tool wraps a public function the verification suite checks, takes plain
numbers (rates as decimals, times in years) and returns JSON. riskpy-mcp --config prints
the client configuration for Claude Code, Claude Desktop or Cursor. riskpy-context
generates the conventions that bite, every module's public signatures and the tool list
from the installed package, so it cannot go stale. Over MCP, riskpy_status, riskpy_doctor
and riskpy_explain let the agent see its recent calls, check the installation and look up a
code or a tool's formula. See the docs,
diagnostics and the
error codes.
Verification
riskpy-verify # 111 checks (125 with SciPy), ~1 second
riskpy-verify --bench # plus timings
riskpy-verify -m life # one module; a module whose extra is missing is skipped, not failed
A test suite says the code does what it did yesterday. The verification suite
says it is right: put–call parity, A_x = 1 − d·ä_x, Mack's standard error
on the reference triangle, the Basel risk-weight table, Φ⁻¹(Φ(x)) = x, the
contrast ratio of every palette colour — each computed and compared to a
source the library had no hand in. It runs in CI on every push, nightly with
the SciPy oracle, and the docs site publishes the latest report.
Install (developers)
git clone https://github.com/slimboi34/RiskPY.git
cd RiskPY
make install # pip install -e ".[dev]"
make test # pytest — 522 test cases
make verify # the verification suite
Without Make:
pip install -e ".[dev]"
pytest tests/
python -m riskpy.verify
From source you need a C++17 compiler and CMake ≥ 3.15 (pulled automatically by the build backend when missing). Pre-built wheels ship for Python 3.10–3.14 on Linux, macOS and Windows.
The compiled core
from riskpy import FactorModel, FourierTransform, MonteCarloSimulator, LossTriangle
model = FactorModel(initial_base_rate=1000.0)
model.add_multiplier("state", "FL", 3.0)
model.add_numeric_band_multiplier("age", 16, 25, 2.0)
model.calculate({"state": "FL", "age": 19.0}) # 6000.0
# Severity always 1 → aggregate is Poisson(λ), with no sampling error at all
pmf = FourierTransform.compound_poisson_pmf([0.0, 1.0], expected_frequency=2.0, grid_size=64)
sim = MonteCarloSimulator(trials=200_000, seed=7)
losses = sim.simulate_aggregate_loss(5.0, 8.0, 0.5)
import riskpy is headless-safe; the Tkinter GUI (UnderwritingApp) loads
only when you use it.
Releasing (maintainers)
# After merging to main and bumping version in pyproject.toml:
make release # tags vX.Y.Z and pushes — that is the whole release
The tag push checks the tag against the version, builds the sdist and wheels and smoke-tests their imports, uploads to PyPI via Trusted Publishing, and cuts the GitHub Release with artifacts attached. Details in docs/PUBLISHING.md.
| Workflow | When | What |
|---|---|---|
| CI | every push/PR to main |
build + pytest + verification on Linux/macOS/Windows, Python 3.10–3.13 |
| Verify | nightly | verification with the SciPy oracle, benchmarks, JSON report as an artifact |
| Docs | push to main |
regenerate the gallery and the verification report, build and publish the site |
| Publish | push of a v* tag |
version guard → sdist + cp310–cp314 wheels (import-tested) → PyPI → GitHub Release |
License
RiskPY is Copyright © 2026 Joshua Harty and is released under the MIT License — see LICENSE. Free for personal and commercial use, modification and redistribution; keep the copyright and permission notice with any copy.
- GitHub: github.com/slimboi34/RiskPY
- PyPI: pypi.org/project/open-riskpy
Metadata
Release files for open-riskpy 0.5.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| open_riskpy-0.5.2.tar.gz | 340.3 kB | Details |
Built distributions (wheels)
Total release size: 18.3 MB
Release files / open_riskpy-0.5.2.tar.gz
| Download URL | open_riskpy-0.5.2.tar.gz |
|---|---|
| Size | 340.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8d6e166441593c9bfdce8f8cb4a14ffd9d41cbd46ecffcf844e8466b8b9197e4
|
|
BLAKE2b-256 checksum How to use checksums |
e5eb3df72a9654709dee339dd733f68693bf5a0b3e23370c78b6b5a0419ae4f4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp314-cp314-win_amd64.whl
| Download URL | open_riskpy-0.5.2-cp314-cp314-win_amd64.whl |
|---|---|
| Size | 711.4 kB |
| Tags | CPython 3.14 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
355de40660987f21cfa1b5ac7fbb13f16a23e56e2f87d846531e09982e55da6f
|
|
BLAKE2b-256 checksum How to use checksums |
5a166e71c88ec44ac0905473b0cc972e0b9571cc3c79a10b4e4cb8d97e7747d8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 966.5 kB |
| Tags | CPython 3.14 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d39bd38227eee2a24c8538f00c09bbfc39ca69374d42f90084870f9941415a45
|
|
BLAKE2b-256 checksum How to use checksums |
b63884a3fbb23c78ed90d0ec2feda13256f987e18f59b52df496b596bfb088a8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | open_riskpy-0.5.2-cp314-cp314-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 889.1 kB |
| Tags | CPython 3.14 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
b6c95bba41b7907e753fa1a2e22afea6308fb584297d3d83014145fc7069b232
|
|
BLAKE2b-256 checksum How to use checksums |
e4bdf7f47d683a3d8269f1e8c6f9efa912d6dcbef7021dc32e73acf9b7478a49
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp314-cp314-macosx_11_0_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp314-cp314-macosx_11_0_x86_64.whl |
|---|---|
| Size | 539.2 kB |
| Tags | CPython 3.14 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
aabcf661c1f3837978cb0d323b03484f37b8f6ee9b4b8dc662048c8ef60df9ce
|
|
BLAKE2b-256 checksum How to use checksums |
bc74edd1116f915c5a318e1fce835c276f1e3fd81a33ed3bed81e1fffe988bb9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp314-cp314-macosx_11_0_arm64.whl
| Download URL | open_riskpy-0.5.2-cp314-cp314-macosx_11_0_arm64.whl |
|---|---|
| Size | 509.6 kB |
| Tags | CPython 3.14 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
d32d1fbef92cd5b1a5b840633937ca8c1b45a4253335997f9fe1c8f437f1aebd
|
|
BLAKE2b-256 checksum How to use checksums |
3c404cd33a86f4a2b1a74ae20e19a2ac63a561d33edf9e6b97160bcb9f4387a1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp313-cp313-win_amd64.whl
| Download URL | open_riskpy-0.5.2-cp313-cp313-win_amd64.whl |
|---|---|
| Size | 693.6 kB |
| Tags | CPython 3.13 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
8822431361d97ed85ffa40c408ae97caffd522e6eb42ad6695dda233fc903b8f
|
|
BLAKE2b-256 checksum How to use checksums |
78b2398a1ad33e63b42de8a3c67fcb50bda3468f359ffa5d182937e30969276b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 966.3 kB |
| Tags | CPython 3.13 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
1d48d845a5ad5acb8467ab9fcb69f59c5ebf7f781d26853573863248ee9ef316
|
|
BLAKE2b-256 checksum How to use checksums |
13c068119774ecb69dd4196be2b1460ddd21b1167ecfd8d8b84c05c5b988a25d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | open_riskpy-0.5.2-cp313-cp313-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 889.0 kB |
| Tags | CPython 3.13 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
aef6b4f8b1df983af40cb10242565d304f098df8e67904e02bfc29427a4757f3
|
|
BLAKE2b-256 checksum How to use checksums |
08e9b58cdbffb77a3d7d4fb3a183331f473973bce95250e96b5bdbc50c2b9554
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp313-cp313-macosx_11_0_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp313-cp313-macosx_11_0_x86_64.whl |
|---|---|
| Size | 539.1 kB |
| Tags | CPython 3.13 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
da032a686be21afc2d2402980e854450ebd318b9821d3f6916ddce5d90946bc0
|
|
BLAKE2b-256 checksum How to use checksums |
852d9128d950404be253dde4c154574cc89631eab81f2ee60bbbbc1d16e6af0c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp313-cp313-macosx_11_0_arm64.whl
| Download URL | open_riskpy-0.5.2-cp313-cp313-macosx_11_0_arm64.whl |
|---|---|
| Size | 509.3 kB |
| Tags | CPython 3.13 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
8377e2bf7eb03ac964483e072e3ac30bc142383f40580dcc6731d061ea1c730f
|
|
BLAKE2b-256 checksum How to use checksums |
e95ecda6fcd5523c3d91047778df9cdfb88fa695b008e65ab0ad60307e3a0729
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp312-cp312-win_amd64.whl
| Download URL | open_riskpy-0.5.2-cp312-cp312-win_amd64.whl |
|---|---|
| Size | 693.6 kB |
| Tags | CPython 3.12 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
1c656c7e6ecc583300d2390d1646dc2b29e31557509617bca95df264df5b8eed
|
|
BLAKE2b-256 checksum How to use checksums |
0b5dafdcb74136bf191bc0328c384221f5ac87f2333d56656ada4e00c359a9e5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 966.1 kB |
| Tags | CPython 3.12 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
dd482e19e82ccaf853ff4b7c75ae61f2fc3257bb03f82d90d2961e76796e932c
|
|
BLAKE2b-256 checksum How to use checksums |
45a6163cfedd42d208c613e561bf435befb62b88f824465b6f047a91eda05537
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | open_riskpy-0.5.2-cp312-cp312-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 889.0 kB |
| Tags | CPython 3.12 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
c2b8628de6e0b872e018b13b1fb8267a03b8660dde170b32c59a2221a1b804ca
|
|
BLAKE2b-256 checksum How to use checksums |
cf15faf99e65f02b72bedd1a199e934cb6f759737b7be5f9a8f7c45578d03489
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp312-cp312-macosx_11_0_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp312-cp312-macosx_11_0_x86_64.whl |
|---|---|
| Size | 539.0 kB |
| Tags | CPython 3.12 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
24c6ce5aba768a93d46888c26ef6f499a179a09595b9208e765a0ce009c04632
|
|
BLAKE2b-256 checksum How to use checksums |
c576c0bf98cb3e1f3a84cf5563c2f0ca6712048b59f2949320f13d3698b36ae4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp312-cp312-macosx_11_0_arm64.whl
| Download URL | open_riskpy-0.5.2-cp312-cp312-macosx_11_0_arm64.whl |
|---|---|
| Size | 509.3 kB |
| Tags | CPython 3.12 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
eebf78cd2bb0ea3d56694199f4cbeb7988cb0ea5a2a119ef3abcd504ce3914c3
|
|
BLAKE2b-256 checksum How to use checksums |
aa70ef2921d140c4a00f6c13b778cba997cf1b1907615c7a927ec1ef26d22024
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp311-cp311-win_amd64.whl
| Download URL | open_riskpy-0.5.2-cp311-cp311-win_amd64.whl |
|---|---|
| Size | 692.2 kB |
| Tags | CPython 3.11 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
b21a1850909765e9d917a7d947a1b4172d0cf3fd0240cc6c6312d95bfec14012
|
|
BLAKE2b-256 checksum How to use checksums |
474e1bcb52aca65a22b5d178807f71360ef53d9c0d13cbe581b510d6d0f26587
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 964.6 kB |
| Tags | CPython 3.11 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
a9b2de5806c99116711e442e34c00c19c49e5e251a2ba6ef592b0008fccb2a3a
|
|
BLAKE2b-256 checksum How to use checksums |
54ed1736dbdcc026cb323e67648e216de5d67667000d1ab944d803938538d7ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | open_riskpy-0.5.2-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 888.1 kB |
| Tags | CPython 3.11 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
c874e74f59e2f37dc1c4e2adabe681828de5ea5c7e8190790283bab2ea576b81
|
|
BLAKE2b-256 checksum How to use checksums |
37b421ccb0ebe4a549fa50883bc991a664202d2df3b17a92b5aa775c353a6519
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp311-cp311-macosx_11_0_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp311-cp311-macosx_11_0_x86_64.whl |
|---|---|
| Size | 536.8 kB |
| Tags | CPython 3.11 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
396d22c53ce37d8c95e7eab41861545db53beb77e0b3f5bbd4bc78fa538577eb
|
|
BLAKE2b-256 checksum How to use checksums |
426520c5a0d97978c928c8c586daf4d33455776d2b3abaa0f0aa52902bd72aa7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp311-cp311-macosx_11_0_arm64.whl
| Download URL | open_riskpy-0.5.2-cp311-cp311-macosx_11_0_arm64.whl |
|---|---|
| Size | 508.8 kB |
| Tags | CPython 3.11 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
d5ef6590c6ba3e3904eb14113e15bb716fff4afdd46d905083993d5827fd40db
|
|
BLAKE2b-256 checksum How to use checksums |
3cbc2e78f2d65bc7754a45fd53a684c79880eedfebb9c517d6bc21dc3bc5b048
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp310-cp310-win_amd64.whl
| Download URL | open_riskpy-0.5.2-cp310-cp310-win_amd64.whl |
|---|---|
| Size | 691.3 kB |
| Tags | CPython 3.10 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
d83cb3b1b244451da2812b848c3e6d93ddf9fc705ebaa28dd61cf28ea85fdbb4
|
|
BLAKE2b-256 checksum How to use checksums |
424f3747de4c5da9d6d27bfaaf9bb465c829e75eec163514161d949be5b0f1ff
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp310-cp310-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl |
|---|---|
| Size | 963.3 kB |
| Tags | CPython 3.10 Linux glibc 2.27+ x86-64 Linux glibc 2.28+ x86-64 |
|
SHA-256 checksum How to use checksums |
d63e6f4f23f34e2c3786db97b871a63c256941d2b5a0b84c93d3a782dc3428d9
|
|
BLAKE2b-256 checksum How to use checksums |
7b38e0a9785b5bd36ed9ed67e89ac5827e04b5acfeaab5917ee75bbe0e795693
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl
| Download URL | open_riskpy-0.5.2-cp310-cp310-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl |
|---|---|
| Size | 887.1 kB |
| Tags | CPython 3.10 Linux glibc 2.26+ ARM64 Linux glibc 2.28+ ARM64 |
|
SHA-256 checksum How to use checksums |
f8c4fd1d2008507dc4103de9dad11f154be037a955aa3a4476a946d595af8b71
|
|
BLAKE2b-256 checksum How to use checksums |
4cf803ca66e3cd5dd5b3d1df2323d27969b239f79691384537784114b460b27c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp310-cp310-macosx_11_0_x86_64.whl
| Download URL | open_riskpy-0.5.2-cp310-cp310-macosx_11_0_x86_64.whl |
|---|---|
| Size | 535.5 kB |
| Tags | CPython 3.10 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
41f30e231ee3fd9aa35814ba661257e23b2a72e1fa144459d4e08b262db39bd2
|
|
BLAKE2b-256 checksum How to use checksums |
a1f192844112fb2d95e967efb361d001bc29cebdb91dbd034584760ce6f636ea
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency logRelease files / open_riskpy-0.5.2-cp310-cp310-macosx_11_0_arm64.whl
| Download URL | open_riskpy-0.5.2-cp310-cp310-macosx_11_0_arm64.whl |
|---|---|
| Size | 507.7 kB |
| Tags | CPython 3.10 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
fa4dfd40426b2f506792aa156a89f059bcd9c9568373cb594a4a743b7a87314b
|
|
BLAKE2b-256 checksum How to use checksums |
0dee3a52b0f5ae6b66327444fd447d53e7a16267b91a052ac3e9bb9ce02eff4a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Oct 17, 2026.
Transparency log