Skip to main content

A quantitative finance library and cli for systematic trading

Project description

quantlib

PyPI version CI GHCR

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 estimators — contains robust_vol_calc and mixed_vol_calc for daily volatility estimation.

Install (editable - for developers)

From the repo root:

  • cd quantlib
  • python -m pip install -e .

This installs the quantlib command.

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

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


Download files

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

Source Distribution

quantlib_st-1.4.0.tar.gz (18.1 kB view details)

Uploaded Source

Built Distribution

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

quantlib_st-1.4.0-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

Details for the file quantlib_st-1.4.0.tar.gz.

File metadata

  • Download URL: quantlib_st-1.4.0.tar.gz
  • Upload date:
  • Size: 18.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for quantlib_st-1.4.0.tar.gz
Algorithm Hash digest
SHA256 288918340cf14eee0c809b58faccda053b7d0697f3970f5214bfeb708f41aca7
MD5 a3341c0fdee843c6fee9e7aae8df73ad
BLAKE2b-256 f16b7f87942548c66e592b8b579eb4fdd28b9022364ec519f90b138234cb0202

See more details on using hashes here.

File details

Details for the file quantlib_st-1.4.0-py3-none-any.whl.

File metadata

  • Download URL: quantlib_st-1.4.0-py3-none-any.whl
  • Upload date:
  • Size: 23.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for quantlib_st-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7a7d624a17c5e2c7281477fe6e0a5704fc8ec9b3f1d94076d1599f16c3ab5025
MD5 9c71a0e52edf093df3dab2d24108e433
BLAKE2b-256 d02dafca82ddad0d4717017dbe3d8ddf7dd4b3bb4f0b37065cae0a403a51c5ad

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