Skip to content

GridSearchOptimizationStrategy

QuantConnect.Optimizer.Strategies.GridSearchOptimizationStrategy

Bases: StepBaseOptimizationStrategy

Find the best solution in first generation

new_parameter_set

new_parameter_set: _EventContainer[
    Callable[[Object, ParameterSet], Any], Any
]

Fires when new parameter set is generated

solution

Keep the best found solution - lean computed job result and corresponding parameter set

initialized

initialized: bool

Indicates was strategy initialized or no

This codeEntityType is protected.

optimization_parameters

optimization_parameters: HashSet[OptimizationParameter]

Optimization parameters

This codeEntityType is protected.

target

target: Target

Optimization target, i.e. maximize or minimize

This codeEntityType is protected.

constraints

constraints: Iterable[Constraint]

Optimization constraints; if it doesn't comply just drop the backtest

This codeEntityType is protected.

settings

Advanced strategy settings

push_new_results

push_new_results(result: OptimizationResult) -> None

Checks whether new lean compute job better than previous and run new iteration if necessary.

Parameters:

Name Type Description Default
result OptimizationResult

Lean compute job result and corresponding parameter set

required

get_total_backtest_estimate

get_total_backtest_estimate() -> int

Calculate number of parameter sets within grid

Returns:

Type Description
int

Number of parameter sets for given optimization parameters.

initialize

initialize(
    target: Target,
    constraints: Sequence[Constraint],
    parameters: HashSet[OptimizationParameter],
    settings: OptimizationStrategySettings,
) -> None

Initializes the strategy using generator, extremum settings and optimization parameters

Parameters:

Name Type Description Default
target Target

The optimization target

required
constraints Sequence[Constraint]

The optimization constraints to apply on backtest results

required
parameters HashSet[OptimizationParameter]

Optimization parameters

required
settings OptimizationStrategySettings

Optimization strategy settings

required

__iter__

__iter__() -> Iterator[str]

on_new_parameter_set

on_new_parameter_set(parameter_set: ParameterSet) -> None

Handles new parameter set

This codeEntityType is protected.

Parameters:

Name Type Description Default
parameter_set ParameterSet

New parameter set

required

process_new_result

process_new_result(result: OptimizationResult) -> None

This codeEntityType is protected.

step

step(
    args: HashSet[OptimizationParameter],
) -> Iterable[ParameterSet]

Enumerate all possible arrangements

This codeEntityType is protected.

Parameters:

Name Type Description Default
args HashSet[OptimizationParameter]
required

Returns:

Type Description
Iterable[ParameterSet]

Collection of possible combinations for given optimization parameters settings.