Metadata-Version: 2.4
Name: quantlib-st
Version: 1.0.0
Summary: A quantitative finance library and cli for systematic trading
Author-email: Rodion Lim <rodion.lim@gmail.com>
Project-URL: Homepage, https://github.com/rodionlim/quantlib-st
Project-URL: Issues, https://github.com/rodionlim/quantlib-st/issues
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.11
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy>=2.4.0
Requires-Dist: pandas>=2.3.3
Provides-Extra: dev
Requires-Dist: pip>=25.3; extra == "dev"
Requires-Dist: pytest>=9.0.2; extra == "dev"
Requires-Dist: pyinstaller>=6.17.0; extra == "dev"
Requires-Dist: twine>=6.2.0; extra == "dev"
Dynamic: license-file

# quantlib

Minimal, self-contained CLI tools and library for quantitative finance.

## Subcommands

- **[corr](src/correlation/README.md)**: Compute correlation matrices over time from returns.
- **[costs](src/src/costs/README.md)**: Calculate Sharpe Ratio (SR) costs for instruments based on spread and fees.

## Install (editable - for developers)

From the repo root:

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

This installs the `quantlib` command.

## Build a single binary with PyInstaller

From `quantlib/`:

- `make build`

Binary will be at `dist/quantlib`.

## 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.
