Search spaces

A search space describes the values HyperOptimizer is allowed to try. Good search spaces are small enough to learn from and broad enough to discover better configurations.

What belongs in a search space

Tune parameters that materially affect your objective and can be changed at runtime. Keep fixed infrastructure details, secrets, and environment-specific settings outside the search space.

Good candidates

Strategy thresholds, lookback windows, learning rates, batch sizes, timeframes, and objective weights.

Usually fixed

Database URLs, API keys, container image tags, model checkpoints, and credentials.

Be careful

Parameters that change runtime by orders of magnitude or make many trials invalid.

Common parameter types

  • Name
    integer
    Type
    range
    Description

    Countable values such as --hpo-lookback-window=50.

  • Name
    float
    Type
    range
    Description

    Continuous values such as --hpo-risk-multiplier=1.4.

  • Name
    choice
    Type
    enum
    Description

    Discrete options such as --hpo-timeframe=5m.

  • Name
    boolean
    Type
    choice
    Description

    Feature flags such as --hpo-use-trailing-stop=true.

Naming parameters

Use names that are stable and obvious in logs. HyperOptimizer passes them with the --hpo- prefix, and most CLI parsers convert dashes to underscores in code.

--hpo-lookback-window=50
--hpo-risk-multiplier=1.4
--hpo-timeframe=5m

Continue with Objective metrics.

Was this page helpful?