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.27.0.tar.gz (348.3 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.27.0-py3-none-any.whl (427.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vaquum_limen-3.27.0.tar.gz
  • Upload date:
  • Size: 348.3 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.27.0.tar.gz
Algorithm Hash digest
SHA256 0a19452bb03eeb785abf082d0c3c8b233960b32e0f3735ae1c9e6ce5c34cb974
MD5 16dcfaf9d2274ed40fe8d2ee6474ca56
BLAKE2b-256 01244d7be04e5d41cc078b33526bed29061ce244b656c04b3cfc930faf005647

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: vaquum_limen-3.27.0-py3-none-any.whl
  • Upload date:
  • Size: 427.3 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.27.0-py3-none-any.whl
Algorithm Hash digest
SHA256 96d54a5f47316fae8e875a30a483a46a8b458c213117a3876d9dce68a4be85e6
MD5 47cdd334eb2f97752475f46c3d9d6d40
BLAKE2b-256 e8e08e32bc2be4c5dd2a1662b36fbebfd405a3a786d339f48797152d86da0621

See more details on using hashes here.

Provenance

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