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.26.0.tar.gz (348.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.26.0-py3-none-any.whl (427.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vaquum_limen-3.26.0.tar.gz
  • Upload date:
  • Size: 348.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.26.0.tar.gz
Algorithm Hash digest
SHA256 928f8de53f9c202b666764e576c302d6cbc01afc27da34f0efe8e9c03b3b4f6d
MD5 2ae03f12a773ddb26b02d072d02d294e
BLAKE2b-256 dbab69192fc50551108ab8e7185a1a99bf5176a7d1b6db3bcbe9eb04f4e24be2

See more details on using hashes here.

Provenance

The following attestation bundles were made for vaquum_limen-3.26.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.26.0-py3-none-any.whl.

File metadata

  • Download URL: vaquum_limen-3.26.0-py3-none-any.whl
  • Upload date:
  • Size: 427.2 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.26.0-py3-none-any.whl
Algorithm Hash digest
SHA256 822e11c6990e8247f2a1f9a0952c78a678643a2cdbf392575f85217c34eeaf19
MD5 6911d1fe13c8e13da76487a6a4d439b0
BLAKE2b-256 8719c5db41af3f0ebcbff63071a3fa4d81280f95844c5a5b7e0a5aa898376d09

See more details on using hashes here.

Provenance

The following attestation bundles were made for vaquum_limen-3.26.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