Skip to main content

Heimdall

A host-agnostic data-provider SDK. Finance data first (Yahoo Finance OHLCV, FRED economic series), built so that any data source - yours or the community's - can plug in behind one small contract.

A provider takes a FetchRequest and returns a FetchResult: a Polars frame, a SchemaSpec that describes and validates it, and some metadata. That's the whole surface. Nothing in the core is finance-specific; OHLCV bars and economic observations are just two predefined schemas.

Install

pip install heimdall-mimird[fred,yfinance]   # or: heimdall-mimird[all]

The core depends only on polars (plus a small logging shim). Each provider pulls its own client library through an extra, so you install only what you use.

Quick start

import heimdall

# string shorthand -> FetchRequest(resource="DGS10")
result = heimdall.fetch("fred", "DGS10")
result.schema.validate(result.frame)  # raises SchemaError if it doesn't conform
print(result.frame.head())

bars = heimdall.fetch("yfinance", "AAPL", interval="1d")
print(bars.frame.tail())
print(bars.metadata)  # {"ticker": "AAPL", "interval": "1d", "rows": ...}

heimdall.list_providers() shows what's registered. Providers are registered automatically when their extra is installed; register your own with heimdall.register(MyProvider).

Writing a provider

Subclass heimdall.Provider, set id + capabilities, implement fetch. See docs/writing-a-provider.md for a full worked example, and run heimdall.testing.assert_provider_conformance(...) to check it against the contract.

Status

Early. The provider contract and the two bundled providers are usable today. The ingestion/storage layer, entry-point plugin discovery, and retry/rate-limit middleware are on the roadmap.

Metadata

Release files for heimdall-mimird 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for heimdall-mimird 0.2.0
File Size Uploaded
heimdall_mimird-0.2.0.tar.gz 145.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for heimdall-mimird 0.2.0
File Interpreter ABI Platform
heimdall_mimird-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 162.7 kB

Release files / heimdall_mimird-0.2.0.tar.gz

Download URL heimdall_mimird-0.2.0.tar.gz
Size 145.2 kB
Tags Source
SHA-256 checksum
How to use checksums
0174ab83df3bba69bcfaa49c3e174271631aa49f68346620f2b94f2423c102be
BLAKE2b-256 checksum
How to use checksums
3d007921c7b08a0e5909cfd42ca76618797025c05ce994f04755f7bb79dcc2c9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / heimdall_mimird-0.2.0-py3-none-any.whl

Download URL heimdall_mimird-0.2.0-py3-none-any.whl
Size 17.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7d5b6485ac2be0fd673982e19518278948dc8926e714c83a72741f737461abdc
BLAKE2b-256 checksum
How to use checksums
b7a3e86d0dc0222e4f0cb9271dd44fd8e5824f2ff8c8b97887b3ac9292b69e0d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.14 {"installer":{"name":"uv","version":"0.11.14","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Arch Linux","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.5.1

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page