Skip to main content

Optimization

HyperionX Optimizer evaluates checked strategy parameters across one or more date periods and ranks completed runs with a selected optimization-fitness module.

Optimization finds strong historical combinations; it does not prove that a combination will work in the future. Keep selection data separate from out-of-sample evaluation and prefer stable regions over one exceptional row.

Candidate installer validation pending

The active release-candidate source includes product-owned optimizer, fitness, commission, and money-management defaults and installer-manifest entries intended to correct the earlier clean-install gap. The exact clean, signed installer has not yet passed installation and Optimizer smoke validation. Until it does, treat Optimizer as unavailable on a fresh public installation. Do not import untrusted code as a workaround. See Install, Update, And Uninstall.

Before You Start

The Run command requires:

  • At least one valid period.
  • A compiled strategy and instrument.
  • A selectable optimizer.
  • A positive Keep best value.
  • At least one checked strategy parameter.
  • More than one generated parameter combination.
  • Valid, non-overlapping date ranges.
  • Historical candles for the selected data series.

Start with two or three meaningful parameters and a small grid. Very large grids can consume substantial time and memory without producing better research.

Create An Optimization Test

  1. Open Optimizer.
  2. Create a test and select its instrument and data series.
  3. Select a compiled strategy.
  4. Check the strategy parameters that the Optimizer may vary.
  5. Enter each parameter's minimum, maximum, and step.
  6. Select an optimizer and an optimization-fitness metric.
  7. Set Keep best to the number of leading results to retain.
  8. Review the commission, backtest leverage, historical fill model, and continuous-futures settings where applicable.
  9. Define the in-sample and out-of-sample periods.
  10. Select Run.

The initial period is created as an in-sample range followed by an out-of-sample range. Review those generated dates before running; they are convenient defaults, not a recommendation for every market or strategy.

When enabled in system options, a Simulation period can follow the out-of-sample period. This is a third historical evaluation period and is distinct from live market simulation.

In-Sample And Out-Of-Sample

Use the periods for different questions:

PeriodPurpose
In-sampleSearch and rank parameter combinations.
Out-of-sampleEvaluate selected combinations on data that did not select them.
Simulation period, when enabledApply another later historical period after out-of-sample evaluation.

Do not move dates between these periods after looking at the result merely to improve the score. That turns out-of-sample data into selection data.

Optimizers And Fitness Metrics

The source distribution includes a default exhaustive optimizer and a genetic optimizer, plus fitness modules for measures such as net profit, profit factor, Sharpe, Sortino, drawdown, drawdown days, and win rate.

Availability in the application depends on the installed build and successful first-launch discovery. Candidate source and installer-manifest entries do not guarantee that a module is available in the released clean installer; verify the exact signed artifact.

Choose a fitness metric before the run and interpret it alongside drawdown, trade count, average trade, long/short contribution, and out-of-sample behavior. A high fitness value can still represent a fragile strategy.

Island Scoring And Nearby-Parameter Checks

HyperionX has two related but separate features:

  • The Genetic Optimizer can apply an island-radius, minimum-neighbor, and island-penalty setting while it scores candidates.
  • Validator's Island Robustness analysis can evaluate nearby parameter variants for a non-portfolio result. It supports a limited number of parameters and tests a local neighborhood around the selected values.

Neither feature guarantees robustness. They help identify an isolated result whose neighbors perform poorly.

A stable cluster can be more useful than the single highest-profit row:

PatternInterpretation
One strong combination with failing neighborsHigh overfitting risk.
Similar behavior across a local rangeBetter parameter stability, subject to out-of-sample testing.
High return with disproportionate drawdownFitness choice or risk assumptions may be unsuitable.

Slippage Limitation

Ordinary Optimizer and Validator runs do not expose a configurable slippage model in the current release. Commission modules do not simulate spread, queue position, partial fills, market impact, or price slippage.

If small cost changes would invalidate the strategy, record that limitation and test it separately. Do not label optimizer results as slippage-adjusted unless the tested strategy explicitly implements that adjustment.

Review, Save, And Validate

After a run:

  1. Compare in-sample and out-of-sample behavior.
  2. Check trade count, drawdown, profit factor, average trade, and long/short results.
  3. Inspect nearby parameter combinations instead of selecting only the top row.
  4. Save the result with a clear test name.
  5. Export the available PDF report when useful.
  6. Open selected in-sample or out-of-sample results in Validator for deeper review.
  7. Test the chosen strategy in playback or simulation with an explicitly selected LocalPaper account before live use.

Completed optimizer results can be saved and reopened, but the current database is not a complete reproducibility package. Preserve the exact ranges, module choices, strategy parameters, commission configuration, starting capital, application version, and research notes separately.

See Performance Database for the fields and views that are not restored.