Metadata-Version: 2.4
Name: hg_systematic
Version: 0.0.40
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.60
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

The project is currently configured to make use of [Poetry](https://python-poetry.org) for dependency management. 
Take a look at the website to see how best to install the tool.

Here are some useful commands:

First, this will cause the virtual environment to be installed in the same folder as the project (in .venv folder)

```bash
poetry config virtualenvs.in-project true
```

Use this command to set the version of Python to make use of if you want a specific version of Python.

```bash
poetry env use 3.12
```

Then use the following command to install the project and its dependencies. Note that the ``--with docs`` installs
the dependencies to build the documentation set which is not required otherwise, also the ``--all-extras`` is only
required for the adaptors.

```bash
poetry install --with docs --all-extras
```

If you did not use the first command, you can find the location of the installation using:

```bash
poetry env info
```

PyCharm can make use of poetry to ``setup`` the project.

### Run Tests

```bash
# No Coverage
poetry run pytest
```

```bash
# Generate Coverage Report
poetry run pytest --cov=your_package_name --cov-report=xml
```
