Any language, any framework
Use Python, Rust, C++, Go, or another language that can read trial arguments and print metrics. No SDK is required.
Read a few arguments. Print a few metrics. HyperOptimizer runs your image with different parameter values and shows you how the results compare.
Why Docker?
Docker is the simplest contract: we give you CLI args, you give us stdout metrics. Everything else is yours.
Use Python, Rust, C++, Go, or another language that can read trial arguments and print metrics. No SDK is required.
Two changes to your code: parse --hpo-* CLI arguments and print metrics to stdout. That's the entire contract between your code and our platform.
Your image carries your code and dependencies. Each trial runs in a container, with its logs and metrics available in the dashboard.
Test several parameter combinations at once. Your plan sets the number of trial slots, and each trial uses your available compute.
How it works
A clear split of responsibilities. You bring the container; we run the search.
Example
Parse hyperparameters from CLI args and print metrics to stdout. That's the entire integration surface.
args = parse_args()
lookback = args.hpo_lookback_window
multiplier = args.hpo_atr_multiplier
result = run_backtest(
lookback=lookback,
multiplier=multiplier,
)import json
metrics = {
"sharpe": result.sharpe,
"max_drawdown": result.max_dd,
}
for k, v in metrics.items():
print(f"hpo.metrics.{k}={json.dumps(v)}")More integrations
HyperOptimizer works with any Docker container. These guides show how specific frameworks integrate.
High-performance algorithmic trading optimization with Nautilus backtests.
Optimize your crypto trading bot hyperparameters with managed infrastructure.
Or explore all integrations on the product page.
Follow the getting started guide for a full walkthrough with Dockerfile examples.