pyalloq-core
pyalloq-core provides the foundational data structures, pure interfaces, and core abstractions for the PyAlloq quantitative portfolio optimization SDK.
Key Modules & Abstractions
MarketData: Standardized parameter object holding aligned price time-series (pd.DataFrame), optional asset features (dict[str, pd.DataFrame]), cross-sectional data, asset lists, risk-free rates, and risk aversion parameters. Includes zero-lookahead time slicing (slice_time).BaseAllocator: Abstract base class for all portfolio allocation engines (Markowitz, Risk Parity, HRP, NCO, Deep Learning allocators, etc.).BaseReturnEstimator: Abstract base class for expected return estimators (Classical, EWMA, Black-Litterman, Factor models, Deep Learning).BaseCovarianceEstimator: Abstract base class for covariance matrix estimators (Empirical, EWMA, Ledoit-Wolf, Semi-covariance, RMT).StrategyPipeline: Pipeline orchestrator linking return estimators, covariance estimators, and portfolio allocators into an end-to-end strategy execution object.OptimizationResult: Standardized result container storing optimized portfolio weights, solver status, and metadata.
Installation
uv add pyalloq-core
# Or inside workspace
uv sync
Quick Example
import pandas as pd
from pyalloq_core.data import MarketData
from pyalloq_core.enums import ObjectiveFunction
# Create MarketData container
prices = pd.DataFrame(
{"AAPL": [150.0, 152.5, 151.0], "MSFT": [300.0, 305.0, 302.0]},
index=pd.date_range("2024-01-01", periods=3)
)
data = MarketData(prices=prices, risk_free_rate=0.04)
print(data.assets) # ['AAPL', 'MSFT']
print(data.prices.head())
Metadata
Release files for pyalloq-core 0.1.11
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| pyalloq_core-0.1.11.tar.gz | 4.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyalloq_core-0.1.11-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.1 kB
Release files / pyalloq_core-0.1.11.tar.gz
| Download URL | pyalloq_core-0.1.11.tar.gz |
|---|---|
| Size | 4.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
68558811afd4075b99c7a291b98b6523210158280c0b809569f9ad0465150c74
|
|
BLAKE2b-256 checksum How to use checksums |
a3f4dda5a75c1f438f552c39a56d28f3d912bbad192cb2b56466dd928e5e1336
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / pyalloq_core-0.1.11-py3-none-any.whl
| Download URL | pyalloq_core-0.1.11-py3-none-any.whl |
|---|---|
| Size | 6.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0559710e82e6cbcaac4f9edabbc706fc85dbedafe71c55c614573b1390c2c509
|
|
BLAKE2b-256 checksum How to use checksums |
ac1585718db3ead0faa8fbf051e4676030dc917d6f66db842466bb4f8532a495
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|