Skip to main content

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

Limen

Limen is a manifest-driven Bitcoin alpha research engine. It turns market data into searchable experiments, benchmark-style analytics, backtest results, and decoder cohorts.

Limen brings data preparation, feature construction, target shaping, parameter search, and post-run analysis into one Python workflow. It supports both machine learning and rule-based research, but it stays focused on signal research rather than decisioning or execution.

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 and regime-diversified model pooling
  • 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 polars as pl
import limen

data = pl.read_csv(
"https://raw.githubusercontent.com/Vaquum/Limen/refs/heads/main/datasets/klines_2h_2020_2025.csv",
try_parse_dates=True,
)

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. 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.