finance flow
Standard financial flow models
Overview
finance-flow provides reusable finance-specific callable models, schemas, and transformations. It owns provider-neutral research and portfolio workflow logic: normalize market data, validate finance structures, build universes, calculate signals, produce target positions, backtest, and generate reports.
It does not own extraction credentials, provider clients, storage destinations, or application orchestration. Those concerns belong in finance-etl, connector packages, or downstream applications.
Quick Start
Normalize provider-shaped daily aggregate rows into typed daily bars:
from finance_flow import normalize_massive_daily_bars
bars = normalize_massive_daily_bars(
{
"results": [
{"T": "AAPL", "o": 184.22, "h": 185.88, "l": 183.43, "c": 184.95, "v": 58414500}
]
},
ticker="AAPL",
session_date="2024-01-03",
)
Use the callable wrapper when composing the transform inside a ccflow graph:
from finance_flow import MassiveDailyBarsNormalizeContext, MassiveDailyBarsNormalizeModel
result = MassiveDailyBarsNormalizeModel()(
MassiveDailyBarsNormalizeContext(
payload=[{"ticker": "AAPL", "open": 1, "high": 2, "low": 1, "close": 2, "volume": 100}],
ticker="AAPL",
session_date="2024-01-03",
)
)
Documentation
Dependency Contract
- Depends on
ccflowfor callable model integration and may depend on dataframe and validation libraries needed for finance transformations. - May be consumed by
finance-etland application-specific packages. - Must not depend on connector packages unless a transformation genuinely needs optional I/O support, and must not depend on application-specific packages.
Test Convention
Default tests should use small synthetic finance datasets and run without external services or provider credentials.
Metadata
Release files for finance-flow 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| finance_flow-0.1.0.tar.gz | 14.2 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| finance_flow-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 32.3 kB
Release files / finance_flow-0.1.0.tar.gz
| Download URL | finance_flow-0.1.0.tar.gz |
|---|---|
| Size | 14.2 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c0ea996a0a3340b5e626eed151eeb630b18c24295f65a721584e108676320f0
|
|
BLAKE2b-256 checksum How to use checksums |
935145b2e28e700b042670bd3fb71401056fe0a8d79dea6601bf44e737a0da61
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Release files / finance_flow-0.1.0-py3-none-any.whl
| Download URL | finance_flow-0.1.0-py3-none-any.whl |
|---|---|
| Size | 18.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1982f900f51a2acdc83bf8974d54668241072101b2e118ab89196e403e5880d7
|
|
BLAKE2b-256 checksum How to use checksums |
aefe4e7b7d554bd74f980f48fc3a8d3d538857fbd734c95c2fb49120454b00e9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.13
|
Security for finance-flow 0.1.0
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.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.