Skip to main content

Unified interface for querying financial time-series data

Project description

Metapyle

PyPI Python License: MIT

Early-stage research framework — Not for production use.

A unified interface for querying financial time-series data from multiple sources.

Requires Python 3.12+

Overview

Financial data lives in many places—Bloomberg terminals, internal APIs, CSV exports—each with its own ticker syntax, authentication, and quirks. Metapyle provides a YAML-based catalog that maps human-readable names to source-specific details, giving you a single client.get() interface regardless of where the data comes from.

Currently supports Bloomberg (via xbbg) and local files (CSV/Parquet).

Installation

uv add metapyle[bloomberg]

Or with pip:

pip install metapyle[bloomberg]

Note: Bloomberg support requires a Bloomberg Terminal running on your machine.

Quick Start

1. Create a catalog file (catalog.yaml):

- my_name: sp500_close
  source: bloomberg
  symbol: SPX Index
  field: PX_LAST

- my_name: gdp_us
  source: localfile
  symbol: GDP_US          # column name in the file
  path: /data/macro.csv   # file path

2. Query data:

from metapyle import Client

with Client(catalog="catalog.yaml") as client:
    df = client.get(["sp500_close"], start="2024-01-01", end="2024-12-31")

Documentation

See the User Guide for complete documentation, including:

  • Catalog configuration
  • Frequency alignment
  • Caching
  • Available data sources
  • Error handling

License

MIT License - see LICENSE for details.

Project details


Download files

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

Source Distribution

metapyle-0.1.0.tar.gz (121.0 kB view details)

Uploaded Source

Built Distribution

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

metapyle-0.1.0-py3-none-any.whl (19.4 kB view details)

Uploaded Python 3

File details

Details for the file metapyle-0.1.0.tar.gz.

File metadata

  • Download URL: metapyle-0.1.0.tar.gz
  • Upload date:
  • Size: 121.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for metapyle-0.1.0.tar.gz
Algorithm Hash digest
SHA256 962570a2686c0ca05bf3847688a441e9764ded7a5f5d2329ac619af5423af9eb
MD5 8d6b1ddfe93440e2e0092bdc8551f442
BLAKE2b-256 ecbc172691aaaa064701f09487c9c0401106b835960762effc653051c0ef9fb5

See more details on using hashes here.

File details

Details for the file metapyle-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: metapyle-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 19.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.11 {"installer":{"name":"uv","version":"0.9.11"},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for metapyle-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 887b97b98992384e2bb1cae457ed1d33e87be03e9b7b9202151548c917aa3eea
MD5 284ca5d9adda729031b9bd5f9c02bc5b
BLAKE2b-256 10135762c261cfee09f2b78dfadf45f56eb93d06bf2574b97f1279e39af5ddf4

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