A quantitative finance library and cli for systematic trading
Project description
quantlib
Minimal, self-contained CLI tools and library for quantitative finance.
Subcommands
- corr: Compute correlation matrices over time from returns.
- costs: Calculate Sharpe Ratio (SR) costs for instruments based on spread and fees.
Modules
- estimators: Volatility and Forecast Scalar estimators — contains
robust_vol_calcandmixed_vol_calcfor daily volatility estimation, andforecast_scalarfor scaling forecasts. - accounts: P&L calculation framework — contains
account_forecastfor generating P&L curves from forecasts and prices.
Install (editable - for developers)
From the repo root:
cd quantlibpython -m pip install -e .
This installs the quantlib command.
uv sync --extra dev
Docker
Pull a published image from GitHub Container Registry:
docker pull ghcr.io/rodionlim/quantlib-st:latest
Run a quick correlation query by piping a CSV into the container (one-liner):
cat sample_data/returns_10x4.csv | docker run --rm -i ghcr.io/rodionlim/quantlib-st:latest corr --min-periods 3 --ew-lookback 10
When publishing the image the Makefile also tags and pushes :latest in addition to the versioned tag.
Package Sample Usage
Correlation
import pandas as pd
import numpy as np
from quantlib_st import correlation
# Sample data
data = pd.DataFrame(
np.random.randn(100, 3),
columns=['Asset_A', 'Asset_B', 'Asset_C'],
index=pd.date_range(start='2020-01-01', periods=100, freq='D') # daily dates
)
# Compute correlation matrix
corr_matrix = correlation.correlation_over_time(
data,
is_price_series=False,
frequency='D', # resampling purpose
interval_frequency='7D',
date_method='expanding',
ew_lookback=50,
min_periods=10
)
print(corr_matrix.as_("jsonable"))
print(corr_matrix.as_("long"))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file quantlib_st-1.11.0.tar.gz.
File metadata
- Download URL: quantlib_st-1.11.0.tar.gz
- Upload date:
- Size: 170.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a94d2ea39bb60a026d8b36041b850055f5fb96903238bf40e10cd047d2217dfe
|
|
| MD5 |
12f35b395878971501a8a71cc0c06f94
|
|
| BLAKE2b-256 |
6c30057a283626eb927ac33c3c27ef5eb8759350fbc362176c87fdfdfb41eab6
|
File details
Details for the file quantlib_st-1.11.0-py3-none-any.whl.
File metadata
- Download URL: quantlib_st-1.11.0-py3-none-any.whl
- Upload date:
- Size: 232.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2dfbb2b5f61af29392d19c50a8a104d4790192fd97224fc473b5bb0fc49f52aa
|
|
| MD5 |
23a72c43561c8cae9c237ae3be64f4df
|
|
| BLAKE2b-256 |
a56a57375a50bc3a5ee3a2088be597c9a4d9f8d3ea990e655c80e23967497d53
|