Skip to main content

An internal library containing functions and classes that can be used across Quant models.

Project description

DET Quant Library

The DET Quant Library is an internal library containing functions and classes that can be used across Quant models.

Instructions

Version control

  • This repository contains a version control workflow.
  • The version number is specified via the version field in the pyproject.toml file.
  • The version number needs to be updated with every new master commit. If the version is not updated, the GitHub workflow will fail.
  • Version numbers should follow semantic versioning (i.e. X.Y.Z). That is:
    • X increments represent major, non-backward compatible updates.
    • Y increments represent minor, backward compatible functionality updates.
    • Z increments represent patch/bugfix, backward compatible updates.

Release notes

  • When deemed necessary (especially in case of major updates), developers can document code changes in dedicated GitHub release notes.
  • Release notes can be created via https://github.com/Dynamic-Energy-Trading/detquantlib/releases.
  • In any case, all codes changes should always be properly described/documented in GitHub issues and/or pull requests.

Development settings

Dependency management

Project dependencies are managed by Poetry.

The project follows the standard Poetry structure:

project
├── pyproject.toml
├── README.md
├── src
│   └── __init__.py
└── tests
    └── __init__.py

Dependency updates

This project is executing automated dependency updates using Dependabot with GitHub actions.

Invoke development tasks

Development tasks are defined with the Invoke package.

What is Invoke?

Invoke provides a clean, high level API for running shell commands and defining/organizing task functions from a tasks.py file.

How to run development tasks?

Development tasks can be executed directly from the terminal, using the inv (or invoke) command line tool.

For guidance on the available Invoke development tasks, execute the following command in the terminal:

inv --list

Use the -h (or --help) argument for help about a particular development task. For example:

inv lint -h

CI/CD process

This project is executing CI checks using GitHub actions workflows.

The GitHub workflow defined in this project was inspired by the following preconfigured templates:

  • Python package: A general workflow template for Python packages.
  • Poetry action: A GitHub action for installing and configuring Poetry.

CI check: Testing

Code changes are tested with the Pytest package.

The CI check is executed with the following the development task:

inv test -c

CI check: Code formatting

Linters are used to check that the code is properly formatted:

The CI check is executed with the following development task:

inv lint -c

If the CI check fails, execute the following command in the terminal:

inv lint

This command fixes the parts of the code that should be reformatted. Adding the -c (or --check) optional argument instructs the command to only check if parts of the code should be reformatted, without applying any actual changes.

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

detquantlib-2.0.6.tar.gz (14.1 kB view details)

Uploaded Source

Built Distribution

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

detquantlib-2.0.6-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

Details for the file detquantlib-2.0.6.tar.gz.

File metadata

  • Download URL: detquantlib-2.0.6.tar.gz
  • Upload date:
  • Size: 14.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.11.11 Linux/6.8.0-1021-azure

File hashes

Hashes for detquantlib-2.0.6.tar.gz
Algorithm Hash digest
SHA256 3caecfb44723022562c6eb9fc78e49c4525ccc4c49f62e2774ddcbe7cc1eaef9
MD5 cde121801109a7cfffb38debac09c25b
BLAKE2b-256 01c97f20579f1398101fc26bdbb4f77e3026645a3875b5b84bd4c31297843afa

See more details on using hashes here.

File details

Details for the file detquantlib-2.0.6-py3-none-any.whl.

File metadata

  • Download URL: detquantlib-2.0.6-py3-none-any.whl
  • Upload date:
  • Size: 16.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/2.1.2 CPython/3.11.11 Linux/6.8.0-1021-azure

File hashes

Hashes for detquantlib-2.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 2670c65f17e7f50296dcc52eea6dac8b55fd1524d74f9d5b26549cb580434314
MD5 5d27f6ac5b5d693cb43ff7ac2f4e285d
BLAKE2b-256 13dfea5f29fd3a3ea62e5ed670178af1e563c329fa234a988560f64ee7033469

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