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.1.0.tar.gz (14.2 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.1.0-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: detquantlib-2.1.0.tar.gz
  • Upload date:
  • Size: 14.2 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.1.0.tar.gz
Algorithm Hash digest
SHA256 635269580b088c285a0c78cac5bf597af535a1185066899468bc975bcbc5c332
MD5 89ffbb226b11e4714db0d741940ac0f9
BLAKE2b-256 6fbab73941fecff089374c46ae97aa4f837ca713c2c5b2447bfc4f5273710121

See more details on using hashes here.

File details

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

File metadata

  • Download URL: detquantlib-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 16.2 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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fbec61e01a675924e1bc03f55bbddf3cc1b853055259b1fc69ddfcc97396a469
MD5 85be4f8bb72360d17b0dc9d59ff218ad
BLAKE2b-256 a93be3a5307408778389c350da6a83b71925886400859d80748be24deb86aced

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