Skip to main content

Regime-aware quantitative backtesting and research bindings for the RegimeFlow C++ engine

Project description

RegimeFlow Python Bindings

regimeflow is a Python package for regime-aware quantitative research, backtesting, reporting, visualization, and walk-forward analysis.

It is meant for Python users who want to:

  • run historical backtests from Python
  • write event-driven Python strategies
  • turn results into dataframes, NumPy arrays, JSON, CSV, and HTML
  • inspect regime-aware metrics instead of only a single total-return number
  • run parity and research-session workflows
  • generate strategy-tester dashboards from Python

This README is intentionally Python-only. It documents the published Python package as a Python library and focuses on what users can do after pip install regimeflow.

What The Package Contains

The package groups its functionality into a few clear surfaces:

  • Native engine bindings for backtests, orders, fills, portfolio state, market data, regime state, and walk-forward optimization.
  • Python strategy support through regimeflow.Strategy.
  • Analysis helpers for performance summaries, regime metrics, report export, HTML/CSV/JSON output, notebook helpers, and NumPy-friendly accessors.
  • Data helpers for CSV ingestion, dataframe conversion, and simple preprocessing.
  • Research helpers for parity workflows and notebook-facing research sessions.
  • Visualization helpers for charts, dashboards, live dashboards, and HTML export.

Installation

Basic installation:

pip install regimeflow

Visualization extras:

pip install "regimeflow[viz]"

Development extras:

pip install "regimeflow[dev]"

Everything exposed by the published Python package:

pip install "regimeflow[full]"

Runtime Notes

  • Python 3.9 through 3.12 are supported.
  • Wheels are preferred when available.
  • The package exposes a compiled extension behind a Python API, so import and usage remain normal Python.

What You Can Do With The Package

The package is broad enough that it helps to think in workflows instead of only in class names.

Use Case 1: Run A Backtest From Python

import regimeflow as rf

cfg = rf.BacktestConfig.from_yaml("examples/backtest_basic/config.yaml")
engine = rf.BacktestEngine(cfg)
results = engine.run("moving_average_cross")

print(rf.analysis.performance_summary(results))

Use this when you already have a config file and want a direct research run.

Use Case 2: Write A Python Strategy

import regimeflow as rf

class ThresholdStrategy(rf.Strategy):
    def initialize(self, ctx):
        self.ctx = ctx

    def on_bar(self, bar):
        if bar.close > bar.open:
            self.ctx.submit_order(
                rf.Order("AAPL", rf.OrderSide.BUY, rf.OrderType.MARKET, 1.0)
            )

cfg = rf.BacktestConfig.from_yaml("examples/backtest_basic/config.yaml")
results = rf.BacktestEngine(cfg).run(ThresholdStrategy())

Use this when the strategy logic itself belongs in Python.

Use Case 3: Export Reports

rf.analysis.write_report_json(results, "report.json")
rf.analysis.write_report_csv(results, "report.csv")
rf.analysis.write_report_html(results, "report.html")

Use this when you want machine-readable and human-readable outputs from the same run.

Use Case 4: Work With Pandas And NumPy

tables = rf.data.results_to_dataframe(results)
equity_times, equity_values = rf.analysis.equity_to_numpy(results)

Use this when your workflow continues into notebooks, analytics pipelines, or custom reports.

Use Case 5: Validate Regime Attribution

ok, message = rf.metrics.validate_regime_attribution(results)
print(ok, message)

Use this when you need an independent check that regime metrics reconcile correctly.

Use Case 6: Generate A Dashboard

rf.visualization.export_dashboard_html(results, "strategy_tester_report.html")

Use this when you need a shareable HTML report from a Python run.

Use Case 7: Run A Research Session

session = rf.research.ResearchSession(
    config_path="examples/backtest_basic/config.yaml"
)
results = session.run_backtest("moving_average_cross")
parity = session.parity_check(
    live_config_path="examples/live_paper_alpaca/config.yaml"
)

Use this when a notebook or research tool wants one object to own config, runs, and parity checks.

Use Case 8: Run Walk-Forward Analysis

Use the exported walk-forward types when you need parameter search and rolling out-of-sample validation:

  • ParameterDef
  • WalkForwardConfig
  • WalkForwardOptimizer
  • WalkForwardResults
  • WindowResult

Quick Start

import regimeflow as rf

cfg = rf.BacktestConfig.from_yaml("examples/backtest_basic/config.yaml")
engine = rf.BacktestEngine(cfg)
results = engine.run("moving_average_cross")

print(results.report_json())

The shortest mental model is:

  1. load a BacktestConfig
  2. construct BacktestEngine
  3. run a built-in strategy name or a Python Strategy
  4. inspect BacktestResults

Python Package Layout

The package has one top-level surface and several helper modules.

Top-Level Runtime Objects

Category Symbols
Config and timestamps Config, load_config, Timestamp
Orders and fills Order, Fill, OrderSide, OrderType, OrderStatus, TimeInForce
Regime state RegimeType, RegimeState, RegimeTransition
Engine runtime BacktestConfig, BacktestEngine, BacktestResults, Portfolio, Position
Market data Bar, Tick, Quote, OrderBook, BookLevel, BarType
Strategy surface Strategy, StrategyContext, register_strategy
Walk-forward ParameterDef, WalkForwardConfig, WalkForwardOptimizer, WalkForwardResults, WindowResult

Top-Level Module Exports

These are available directly from the package:

  • regimeflow.analysis
  • regimeflow.config
  • regimeflow.data
  • regimeflow.metrics
  • regimeflow.research
  • regimeflow.visualization

Compatibility aliases are also exported:

  • regimeflow.walkforward
  • regimeflow.core_strategy
  • regimeflow.strategy_module

Top-Level Imports

The top-level package exports the core types most research workflows need:

  • BacktestConfig
  • BacktestEngine
  • BacktestResults
  • Portfolio
  • Position
  • Order
  • Fill
  • OrderSide
  • OrderType
  • OrderStatus
  • TimeInForce
  • Timestamp
  • RegimeType
  • RegimeState
  • RegimeTransition
  • Strategy
  • StrategyContext
  • Bar
  • Tick
  • Quote
  • OrderBook
  • BookLevel
  • BarType
  • WalkForwardConfig
  • WalkForwardOptimizer
  • WalkForwardResults
  • WindowResult
  • ParameterDef

Helper modules and aliases also exposed from the package root:

  • regimeflow.analysis
  • regimeflow.config
  • regimeflow.data
  • regimeflow.metrics
  • regimeflow.research
  • regimeflow.visualization
  • regimeflow.walkforward
  • regimeflow.core_strategy
  • regimeflow.strategy_module

Backtest Configuration

BacktestConfig is the main configuration object. It supports YAML loading and lets Python workflows opt into the same execution and risk structure used by the native engine.

Typical fields include:

  • data-source selection and data-source-specific settings
  • symbol list, date bounds, and bar type
  • capital and currency
  • regime detector selection and detector parameters
  • strategy parameters
  • execution model and execution parameters
  • slippage and commission settings
  • plugin search paths and plugin load lists
  • risk parameters

YAML loading:

cfg = rf.BacktestConfig.from_yaml("examples/backtest_basic/config.yaml")

The Python bindings also expose convenience helpers for richer execution realism configuration, including:

  • session windows and halted dates/symbols
  • queue-dynamics settings
  • account-margin configuration
  • enforcement rules for margin calls and stop-out behavior
  • financing parameters

This matters because the Python surface is not limited to a flat commission + slippage model. It can drive richer session, queue, account, margin, and financing controls directly from Python.

In practice, BacktestConfig is where you set:

  • symbols
  • date range
  • bar type
  • capital
  • data source and source parameters
  • regime detector and regime parameters
  • strategy parameters
  • execution and account assumptions
  • slippage and transaction-cost assumptions
  • plugin/search-path settings

Strategy Contract

Custom Python strategies subclass regimeflow.Strategy.

The core lifecycle methods are:

  • initialize(ctx)
  • on_start()
  • on_stop()
  • on_bar(bar)
  • on_tick(tick)
  • on_quote(quote)
  • on_order_book(book)
  • on_order_update(order)
  • on_fill(fill)
  • on_regime_change(transition)
  • on_end_of_day()
  • on_timer(timer_id)

Minimal example:

import regimeflow as rf

class MyStrategy(rf.Strategy):
    def initialize(self, ctx):
        self.ctx = ctx

    def on_bar(self, bar):
        pass

cfg = rf.BacktestConfig.from_yaml("examples/backtest_basic/config.yaml")
engine = rf.BacktestEngine(cfg)
results = engine.run(MyStrategy())

The engine also accepts a registered or built-in strategy name:

results = engine.run("moving_average_cross")

StrategyContext gives Python strategies the operational methods they usually need:

  • submit_order
  • cancel_order
  • portfolio
  • get_position
  • current_regime
  • current_time
  • get_latest_bar
  • get_latest_quote
  • get_latest_book
  • get_bars
  • schedule_timer
  • cancel_timer

Results Surface

BacktestResults is the main output object. Common downstream workflows include:

  • summary reporting
  • equity-curve export
  • trade export
  • regime attribution inspection
  • account-state analysis
  • dashboard generation

Representative usage:

report_json = results.report_json()
report_csv = results.report_csv()
equity = results.equity_curve()
trades = results.trades()

Additional result surfaces exposed to Python:

  • results.account_curve()
  • results.account_state()
  • results.venue_fill_summary()
  • results.performance_summary()
  • results.performance_stats()
  • results.regime_performance()
  • results.transition_metrics()
  • results.regime_metrics()
  • results.regime_history()
  • results.dashboard_snapshot()
  • results.dashboard_snapshot_json()
  • results.dashboard_terminal()
  • results.tester_report()
  • results.tester_journal()

The portfolio equity history now includes account-state columns such as:

  • initial_margin
  • maintenance_margin
  • available_funds
  • margin_excess
  • buying_power
  • margin_call
  • stop_out

That matters for users who want margin-aware or enforcement-aware backtests from Python, not only mark-to-market equity.

Analysis Module

regimeflow.analysis provides report and metric helpers for turning native engine results into research outputs.

Available helpers include:

  • performance_summary
  • performance_stats
  • regime_performance
  • transition_metrics
  • equity_curve
  • trades
  • summary_dataframe
  • stats_dataframe
  • regime_dataframe
  • transitions_dataframe
  • report_json
  • report_csv
  • report_html
  • write_report_json
  • write_report_csv
  • write_report_html
  • display_report
  • display_equity
  • equity_to_numpy
  • trades_to_numpy

Example:

import regimeflow as rf

summary = rf.analysis.performance_summary(results)
html = rf.analysis.report_html(results)

Use analysis when you want:

  • summary statistics
  • regime-aware performance slices
  • ready-to-export reports
  • notebook display helpers
  • NumPy-friendly access to equity/trade data

Data Module

regimeflow.data provides dataframe conversion and loader helpers for Python-side research preprocessing.

Exposed helpers include:

  • bars_to_dataframe
  • dataframe_to_bars
  • ticks_to_dataframe
  • dataframe_to_ticks
  • results_to_dataframe
  • DataFrameDataSource
  • load_csv_bars
  • load_csv_ticks
  • load_csv_dataframe
  • normalize_timezone
  • fill_missing_time_bars

This is useful when you want to keep feature engineering and exploratory work in Pandas while still feeding the native engine predictable structures.

Typical patterns:

  • CSV to dataframe for preprocessing
  • dataframe to bars/ticks for engine input
  • results to dataframe tables for downstream analysis
  • timezone normalization before runs
  • filling missing bars for more uniform time-series processing

Research Utilities

regimeflow.research exposes notebook-oriented helpers, especially for parity workflows where you want to compare a backtest/research baseline against another runtime configuration.

Available types:

  • ResearchSession
  • ParityResult
  • parity_check

Example:

import regimeflow as rf

session = rf.research.ResearchSession(config_path="examples/backtest_basic/config.yaml")
report = session.parity_check(live_config_path="examples/live_paper_alpaca/config.yaml")
print(report.status)

Use this module when:

  • you want a notebook-friendly session object
  • you want parity checks near the research loop
  • you want one object to own config path and run orchestration

Visualization

The browser-based strategy tester dashboard belongs to the Python package.

regimeflow.visualization exports:

  • plot_results
  • create_dashboard
  • create_strategy_tester_dashboard
  • create_live_dashboard
  • dashboard_snapshot_to_live_dashboard
  • create_interactive_dashboard
  • create_dash_app
  • launch_dashboard
  • create_live_dash_app
  • launch_live_dashboard
  • export_dashboard_html

This gives Python users a direct route from engine output to a sharable dashboard or interactive session.

Typical use cases:

  • static chart generation
  • shareable HTML strategy-tester reports
  • interactive dashboard sessions
  • conversion from dashboard snapshots to a live-style dashboard view

Command-Line Entry Point

The package installs:

regimeflow-backtest

It supports:

  • YAML config loading
  • strategy selection
  • JSON strategy-parameter injection
  • report export
  • equity/trade CSV export
  • optional printed summary output

Typical usage:

regimeflow-backtest \
  --config examples/backtest_basic/config.yaml \
  --strategy moving_average_cross \
  --output-json report.json \
  --output-equity equity.csv \
  --output-trades trades.csv \
  --print-summary

For Python strategies, the CLI accepts the module:Class form and expects the class to inherit from regimeflow.Strategy.

This is useful when your team wants:

  • one reproducible shell command per run
  • YAML-driven backtests without writing a wrapper script
  • report export in CI or scheduled jobs

Walk-Forward Optimization

The top-level package also exports walk-forward optimization types:

  • ParameterDef
  • WalkForwardConfig
  • WalkForwardOptimizer
  • WalkForwardResults
  • WindowResult

These are intended for parameterized research loops where you need rolling-window evaluation rather than a single static in-sample run.

Use this surface when:

  • one in-sample backtest is not enough
  • you want repeated train/test windows
  • you need parameter selection logic exposed in Python

What This Package Is Good At

  • Python-first research workflows backed by a native engine
  • repeatable backtests
  • regime-aware strategy experiments
  • analysis/report export
  • dashboard generation
  • parity-oriented research tooling

What This Package Does Not Claim

  • It does not turn PyPI installation alone into a fully configured live-trading stack.
  • Broker access, venue permissions, account balances, and regional restrictions remain external constraints.
  • The Python web dashboard is a visualization surface, not proof of production readiness.

Documentation And Examples

Project documentation:

Repository:

Maintainer

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

regimeflow-1.0.10-cp312-cp312-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.12Windows x86-64

regimeflow-1.0.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.17+ x86-64

regimeflow-1.0.10-cp312-cp312-macosx_15_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.12macOS 15.0+ x86-64

regimeflow-1.0.10-cp312-cp312-macosx_14_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.12macOS 14.0+ ARM64

regimeflow-1.0.10-cp311-cp311-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.11Windows x86-64

regimeflow-1.0.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.11manylinux: glibc 2.17+ x86-64

regimeflow-1.0.10-cp311-cp311-macosx_15_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.11macOS 15.0+ x86-64

regimeflow-1.0.10-cp311-cp311-macosx_14_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.11macOS 14.0+ ARM64

regimeflow-1.0.10-cp310-cp310-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.10Windows x86-64

regimeflow-1.0.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.17+ x86-64

regimeflow-1.0.10-cp310-cp310-macosx_15_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.10macOS 15.0+ x86-64

regimeflow-1.0.10-cp310-cp310-macosx_14_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.10macOS 14.0+ ARM64

regimeflow-1.0.10-cp39-cp39-win_amd64.whl (13.5 MB view details)

Uploaded CPython 3.9Windows x86-64

regimeflow-1.0.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (3.8 MB view details)

Uploaded CPython 3.9manylinux: glibc 2.17+ x86-64

regimeflow-1.0.10-cp39-cp39-macosx_15_0_x86_64.whl (3.0 MB view details)

Uploaded CPython 3.9macOS 15.0+ x86-64

regimeflow-1.0.10-cp39-cp39-macosx_14_0_arm64.whl (2.9 MB view details)

Uploaded CPython 3.9macOS 14.0+ ARM64

File details

Details for the file regimeflow-1.0.10-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 db8f3e3e702145efe3b5c0a8f6f91f43f03120cc0d6049a04de91ab7a32bd78d
MD5 f650eafffaa6c1d89fae0546728c254f
BLAKE2b-256 fab1c685c289cc0f263f759577c7660463d3d10d0f15c0b90f5a6b2bcb997656

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 495eb1c621abe57b347ae28b7ca3e8ec3c581a850f448d8968f061db92cde502
MD5 dd82b52fa2d2f3cf2dbc61d8bf439f52
BLAKE2b-256 b97fcc78174c3f48f3e80a1c13ea0efa2e2b02093f2d5c890b5c7ee2acd5b29c

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp312-cp312-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp312-cp312-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 f37a79ec04a762ab27d77b782899888bc721ce46be1c78457043e901cd1fe500
MD5 c9b4725ace23d51561f909d2fa6334d4
BLAKE2b-256 854c644ac7783c15aae00f57003d7854b2d86704c14e3e2fc740fc989b024b5c

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp312-cp312-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp312-cp312-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 c2a3a111301aa5a850c0b8be176de6f4b7878dca3b564b735ecd9640234c7332
MD5 5fabb454777bd4d4d6c4c9ec5118f8e0
BLAKE2b-256 c9e3242367ddc5eb2fd31c3f8c591ea79b9043f66064f7fb403b4eae2199447a

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 024606b90a58c11eb6e1a7c5734d373d089ad4ae3c021223aba8df5bec484fdd
MD5 d0d8a484bd912476b3d820023f76f8f1
BLAKE2b-256 faa2f9ae0a3f897802f1b9af58b1aada2ec6f3225086e36402ba6bc3607af144

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 22d6609bea2a9b2fb783a67e9994f8e3e09449acacdf091e0d32fa5d4d377612
MD5 83939612e7be36a13a87b2788d8b37c0
BLAKE2b-256 15f57526cc248ad9d3c244350b95067f293810744819e267bbe0647e2cbfcc2b

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp311-cp311-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp311-cp311-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 608bf029203238b097b25d4554832a80a02175cfd943636d36aa7bf1c2ee49f8
MD5 a822f79610459e9ee8f13cc47a842019
BLAKE2b-256 bf94f6f0652f614d6cad32998c58e642858b646a724d19e4b4f9214d33fb2ee4

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp311-cp311-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp311-cp311-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 d0328a48abf248c95da9aba779574e7631dde8a7fe24ff75be8c54d1158dde00
MD5 f6bf24031f5e055ebca6b11f20daeaa4
BLAKE2b-256 d0ca0b7dfba9b89d0958d672fc715688b66b73eeee03cc704b6adca37eb3dbdc

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 50cb5e3e9d49b9a441c81b04b94d60288b5a3486404a3b2add6b43dbd54768d9
MD5 ba36e885f0f213b45768a889100f1337
BLAKE2b-256 9bba85241bb3f72e11574dfd1e25a89d2b28351211e0c939d7c52d5ab213d70e

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3b2910e325df0a9330ce3d57468af04f9d226d7a05954144070a01744f6a1219
MD5 5d0a426834452d8ee270567ec81a1440
BLAKE2b-256 7c4073559daad3022f9b203afdbbbd03069cdbd4b0e9da9738629fb183acb229

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp310-cp310-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp310-cp310-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 c177d3e09007348ca77c06b491adf108eff9a22ecde1b7fa6fefaf8b9cbf9ab5
MD5 20b50646be9d639b1b8a9a866f470bb8
BLAKE2b-256 20093f68a32f578fb9e7e137a0df221aeed2c82a8ae7999f6ce3b07785fd38fc

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp310-cp310-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp310-cp310-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 c0a1ac6145ddc4c8eafaacdb0135e4515225ca89f28142b9214b2404ab62feac
MD5 bc43b4d888a565ceac0603214ff964c1
BLAKE2b-256 3cc546efae070c8e53c0cbfda2bc60ed44ad428cd65326a43ce59841f45e45a5

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: regimeflow-1.0.10-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 13.5 MB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for regimeflow-1.0.10-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 f1d3fed74e3f363fa38788584ce9290743d4542a689e70e9a5929a40fb2eb7f7
MD5 fbfdf48703c82a785ef17af25220466c
BLAKE2b-256 f72b4bd8c04940429e031d592b7f36a646860f2ae7d1ffd1fa8186cfba07ebce

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 a74c3c2790c8d5f1a73e63b3a0d670017799aa0614090e8c75a50268621941fc
MD5 46126e1d5f3414b735b56225904bd1de
BLAKE2b-256 b2fca151fac5bd6d603164dae30549a86891c81931ed1ead686b60ed9e789a78

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp39-cp39-macosx_15_0_x86_64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp39-cp39-macosx_15_0_x86_64.whl
Algorithm Hash digest
SHA256 cab4c10eff6a6ce3f81a5f41eaf29e61c77b1d7aa41770e7952db992cf88655d
MD5 0db2fb2a90ada4b0b4aac1408c6b58b9
BLAKE2b-256 967cfcb21a944af69fab453b28aa5c87c61cb97666335c8b72793d81cea97a09

See more details on using hashes here.

File details

Details for the file regimeflow-1.0.10-cp39-cp39-macosx_14_0_arm64.whl.

File metadata

File hashes

Hashes for regimeflow-1.0.10-cp39-cp39-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 cb92ddb6fa815c2ff0ccd550242ef7315bfcc588308f24cfe4766beb22ab5012
MD5 f536bf4ab737bf3a5ab2412b08b94e45
BLAKE2b-256 1fa753c3bb08c6afcf729637a72a1fd07064f79aab67ed215606acd17017c450

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page