Metadata-Version: 2.4
Name: hg_systematic
Version: 0.0.45
Summary: A library and examples to show how HGraph can be used for systematic trading.
Project-URL: Homepage, https://github.com/hhenson/hg_systematic
Project-URL: Documentation, https://github.com/hhenson/hg_systematic/blob/main/README.md
Project-URL: Repository, https://github.com/hhenson/hg_systematic.git
Project-URL: Issues, https://github.com/hhenson/hg_systematic/blob/main/ISSUES.md
Project-URL: Changelog, https://github.com/hhenson/hg_systematic/blob/main/CHANGELOG.md
Author-email: Howard Henson <howard@henson.me.uk>
License: MIT
License-File: LICENSE
Keywords: forward propogating graph,fpg,frp,functional,functional reactive programming,graph,reactive,strategy,systematic,time series,time-series,trading
Classifier: Development Status :: 3 - Alpha
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: Implementation :: CPython
Requires-Python: >=3.11
Requires-Dist: antlr4-python3-runtime
Requires-Dist: frozendict>=2.3.10
Requires-Dist: hg-oap>=0.1.13
Requires-Dist: hgraph>=0.4.80
Requires-Dist: importlib-resources
Requires-Dist: matplotlib
Requires-Dist: numpy>=1.23
Requires-Dist: ordered-set>=4.1.0
Requires-Dist: polars>=1.0
Requires-Dist: sortedcontainers>=2.4.0
Provides-Extra: docs
Requires-Dist: pybtex-apa-style==1.3; extra == 'docs'
Requires-Dist: sphinx-autodoc-typehints>=2.3.0; extra == 'docs'
Requires-Dist: sphinx-rtd-theme>=2.0.0; extra == 'docs'
Requires-Dist: sphinx>=7.4; extra == 'docs'
Requires-Dist: sphinxcontrib-bibtex; extra == 'docs'
Requires-Dist: sphinxcontrib-plantuml>=0.30; extra == 'docs'
Provides-Extra: test
Requires-Dist: coverage; extra == 'test'
Requires-Dist: mypy; extra == 'test'
Requires-Dist: pytest; extra == 'test'
Requires-Dist: pytest-cov; extra == 'test'
Requires-Dist: pytest-xdist; extra == 'test'
Description-Content-Type: text/markdown

# HG Systematic

This is a library of utilities and examples to highlight how HGraph can be used to implement
systematic trading strategies.


See [this](https://hgraph.readthedocs.io/en/latest/) for more information.

## Development

This project uses uv for environment and dependency management.
See https://docs.astral.sh/uv/ for installation instructions.

Here are some useful commands:

Create a local virtual environment in the project directory (./.venv) with Python 3.12:

```bash
uv venv --python 3.12
```

Install the project and its dependencies:

```bash
# Base dependencies
uv sync

# Include documentation dependencies
uv sync --extra docs

# Install all optional extras (e.g. tests, adaptors)
uv sync --all-extras --all-groups
```

PyCharm can use the interpreter from ./.venv (created by uv) to set up the project.
Recent versions of PyCharm support uv, use the "uv" interpreter type.

### Run Tests

```bash
# No Coverage
uv run pytest
```

```bash
# Generate Coverage Report
uv run pytest --cov=hg_systematic --cov-report=xml
```
