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.10
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.10.tar.gz | 4.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| pyalloq_core-0.1.10-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 11.0 kB
Release files / pyalloq_core-0.1.10.tar.gz
| Download URL | pyalloq_core-0.1.10.tar.gz |
|---|---|
| Size | 4.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
412e8206482c2a302178b26e57de9a805e70a6689edaeee4150436f0b972bfbb
|
|
BLAKE2b-256 checksum How to use checksums |
16bdf53610985dd58c0016f7ec695b5c8b5d340fdbb031dd4976d1b724aa396f
|
| 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.10-py3-none-any.whl
| Download URL | pyalloq_core-0.1.10-py3-none-any.whl |
|---|---|
| Size | 6.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3bb1dec0191174ca7612af85554ab835ead832029361b8eb7423d220bc0ff423
|
|
BLAKE2b-256 checksum How to use checksums |
ab7472cad95859a43c0dcef5ede35ac0e712bed2fdef87140c05e2be328633e7
|
| 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}
|