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:

poetrytemplate
├── 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.5.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.5-py3-none-any.whl (16.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: detquantlib-2.0.5.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.5.tar.gz
Algorithm Hash digest
SHA256 9bb08dd9bdd9d1cf24b8d055e40ed6aceeea8bafadf283eba0a97d1d93394f5a
MD5 0095a9c286b3be02d3e82d42582a4c5f
BLAKE2b-256 fbbd942191c22b6397e9f30e007c2bb4085fa6fb2d14be477c5099c47d0bff6a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: detquantlib-2.0.5-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.5-py3-none-any.whl
Algorithm Hash digest
SHA256 8fe8bbb3f5d99c3482dc35b30cf03a04dda6ea732d621bdde07f66de0457bbd4
MD5 971ee25d24c38306624ae777ac1ff3f7
BLAKE2b-256 e40568b43f0d5b3d2b3a0524c8dfce4640887a2029b90bfff9d69a8db9087f54

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