Skip to main content

Limen unifies parameter search across machine learning and rule-based strategies, with built-in analytics that show not just what works, but why it works.

Project description


Vaquum

Vaquum Limen turns Bitcoin market data into searchable signals, backtested outcomes, and decoder cohorts.

OpenSSF Best Practices OpenSSF Scorecard

Limen — The Research Engine

Manifest-driven Bitcoin alpha research engine that turns market data into searchable signals, backtested outcomes, and decoder cohorts.

Limen unifies parameter search across machine learning and rule-based strategies, with built-in analytics that show not just what works, but why it works. It evolves from Talos, the hyperparameter optimization framework for TensorFlow and Keras cited in over 1,000 scientific papers with zero breaking bugs in six years.

What Limen Is Not

Limen is not:

  • a trade execution system
  • a downstream trade decision engine
  • a generic multi-asset research platform

In the wider Vaquum architecture, Origo sits upstream as the data layer. Nexus, Praxis, and Veritas sit downstream for decisioning, execution, and oversight.

Capabilities

  • Manifest-driven experiment pipelines
  • Search across models, rules, features, targets, and hyperparameters
  • Extensive built-in indicator and feature library for Bitcoin research
  • Support for both machine learning and rule-based strategy research
  • Bitcoin-native transforms, scaling, and target construction
  • Leakage-safe train, validation, and test workflows
  • Built-in backtesting, confusion analytics, and parameter diagnostics
  • Decoder cohort construction with pluggable selection
  • Reproducible runs with checkpointing, resumption, and retraining

First Experiment

The fastest first success is a small parameter sweep on the bundled BTC/USDT kline dataset with the built-in logistic-regression decoder.

  1. Install the package:
pip install vaquum_limen
  1. Load data and run a first experiment:
import limen

historical = limen.HistoricalData()
data = historical.get_spot_klines(kline_size=7200, row_count_limit=2000)

uel = limen.UniversalExperimentLoop(data=data, sfd=limen.sfd.logreg_binary)

uel.run(
    experiment_name="logreg-first",
    n_permutations=25,
    prep_each_round=True,
)
  1. Inspect the core outputs:
  • uel.experiment_log for the parameter sweep results
  • uel.experiment_confusion_metrics for confusion analytics
  • uel.experiment_backtest_results for backtest results

That path is the simplest way to get a real Limen run on your machine without relying on repo-local fixture files. If you want richer run directories, checkpoints, resumability, and stored round artefacts, continue into the UEL documentation below.

Learn More

Contributing

The simplest way to start contributing is by joining an open discussion, contributing to the docs, or by picking up an open issue.

Before contributing, start with docs/Developer/README.md.

Vulnerabilities

Report vulnerabilities privately through GitHub Security Advisories.

Citations

If you use Limen for published work, please cite:

Vaquum Limen [Computer software]. (2026). Retrieved from https://github.com/Vaquum/Limen.

License

MIT License.

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

vaquum_limen-3.21.0.tar.gz (349.1 kB view details)

Uploaded Source

Built Distribution

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

vaquum_limen-3.21.0-py3-none-any.whl (426.9 kB view details)

Uploaded Python 3

File details

Details for the file vaquum_limen-3.21.0.tar.gz.

File metadata

  • Download URL: vaquum_limen-3.21.0.tar.gz
  • Upload date:
  • Size: 349.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for vaquum_limen-3.21.0.tar.gz
Algorithm Hash digest
SHA256 d07aa0a77993cf992ad3775d74807a2f0cd1b57adfc0151bd7cac3e964db7b24
MD5 0c2e0fe5bcf96c04de726a704e3c0fe9
BLAKE2b-256 e760c642341140e3b003c159f3012d2933a6d8bad32bca5eec95fb4ed9f4a01b

See more details on using hashes here.

Provenance

The following attestation bundles were made for vaquum_limen-3.21.0.tar.gz:

Publisher: pr_publish_pypi.yml on Vaquum/Limen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file vaquum_limen-3.21.0-py3-none-any.whl.

File metadata

  • Download URL: vaquum_limen-3.21.0-py3-none-any.whl
  • Upload date:
  • Size: 426.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for vaquum_limen-3.21.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fe85cea01aa45e03689d15d0e2ff5fdc2c549f2fffed1fadc79c43e2c350df00
MD5 e7c1a58ec030b5dd856a40801f144520
BLAKE2b-256 94b04a3e8f560ccbfe64225dc6dfc5e1db47922af4ad2e00af5f9a9acd06e4b2

See more details on using hashes here.

Provenance

The following attestation bundles were made for vaquum_limen-3.21.0-py3-none-any.whl:

Publisher: pr_publish_pypi.yml on Vaquum/Limen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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