StrategyParamHelper

StockSharp.Algo.Strategies

The auxiliary class for StrategyParam.

Methods

CanOptimize
public static bool CanOptimize(Type type)
result = StrategyParamHelper.CanOptimize(type)

Check can optimize parameter.

type
The type of the parameter value.

Returns: , if can optimize the parameter, otherwise, .

CreateParam
public static IStrategyParam CreateParam(Type type, string id)
result = StrategyParamHelper.CreateParam(type, id)

Create parameter.

type
Type
id
Id

Returns: IStrategyParam

GetIterationsCount
public static int GetIterationsCount(IStrategyParam param)
result = StrategyParamHelper.GetIterationsCount(param)

Get the number of optimization iterations for the parameter.

param
IStrategyParam

Returns: Number of iterations.

GetName
public static string GetName(IStrategyParam param)
result = StrategyParamHelper.GetName(param)

Get the parameter name.

param
IStrategyParam

Returns: Display name.

GetOptimizationValues
public static IEnumerable<object> GetOptimizationValues(IStrategyParam param)
result = StrategyParamHelper.GetOptimizationValues(param)

Get all optimization values for the parameter.

param
IStrategyParam

Returns: Enumerable of all optimization values.

GetRandom
public static object GetRandom(IStrategyParam param)
result = StrategyParamHelper.GetRandom(param)

Generate a random value within the optimization range for the parameter.

param
IStrategyParam

Returns: Random value within the optimization range.

GetRandomValues
public static HashSet<object> GetRandomValues(IStrategyParam param, int count)
result = StrategyParamHelper.GetRandomValues(param, count)

Generate a set of unique random values for the parameter.

param
IStrategyParam
count
Number of random values to generate.

Returns: Set of unique random values.

GetRandomValues``1
public static HashSet<T> GetRandomValues<T>(StrategyParam<T> param, int count)
result = StrategyParamHelper.GetRandomValues(param, count)

Generate a set of unique random values for the parameter.

param
StrategyParam
count
Number of random values to generate.

Returns: Set of unique random values.

GetRandom``1
public static T GetRandom<T>(StrategyParam<T> param)
result = StrategyParamHelper.GetRandom(param)

Generate a random value within the optimization range for the parameter.

param
StrategyParam

Returns: Random value within the optimization range.

ToBruteForce
public static IEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ToBruteForce(Strategy strategy, IStrategyParam[] parameters, IStrategyParam[] optimizedParams, int totalCount)
result = StrategyParamHelper.ToBruteForce(strategy, parameters, optimizedParams, totalCount)

Generate all strategy clones with parameter permutations for brute force optimization.

strategy
The base strategy to clone.
parameters
The parameters to optimize.
optimizedParams
Output: all parameters involved in optimization.
totalCount
Output: total number of iterations.

Returns: Lazy enumerable of strategy clones with their parameter arrays.

ToBruteForce
public static IEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ToBruteForce(Strategy strategy, IEnumerable<ValueTuple<IStrategyParam, IEnumerable>> parameters, IStrategyParam[] optimizedParams, int totalCount)
result = StrategyParamHelper.ToBruteForce(strategy, parameters, optimizedParams, totalCount)

Generate all strategy clones with parameter permutations for brute force optimization. Supports explicit value lists for parameters like Security, DataType.

strategy
The base strategy to clone.
parameters
The parameters with optional explicit values to use instead of range.
optimizedParams
Output: all parameters involved in optimization.
totalCount
Output: total number of iterations.

Returns: Lazy enumerable of strategy clones with their parameter arrays.

ToBruteForceRandom
public static IEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ToBruteForceRandom(Strategy strategy, IStrategyParam[] parameters, int randomCount, IStrategyParam[] optimizedParams, int totalCount)
result = StrategyParamHelper.ToBruteForceRandom(strategy, parameters, randomCount, optimizedParams, totalCount)

Generate all strategy clones with random parameter values for brute force optimization.

strategy
The base strategy to clone.
parameters
The parameters to optimize.
randomCount
Number of random samples per parameter.
optimizedParams
Output: all parameters involved in optimization.
totalCount
Output: total number of iterations.

Returns: Lazy enumerable of strategy clones with their parameter arrays.

ToGeneticParameters
public static ValueTuple<IStrategyParam, object, object, object, IEnumerable>[] ToGeneticParameters(Strategy strategy, IStrategyParam[] parameters)
result = StrategyParamHelper.ToGeneticParameters(strategy, parameters)

Convert strategy parameters to genetic optimizer format.

strategy
The strategy with parameters.
parameters
The parameters to optimize.

Returns: Array of tuples suitable for CancellationToken).

ToGeneticParameters
public static ValueTuple<IStrategyParam, object, object, object, IEnumerable>[] ToGeneticParameters(Strategy strategy, IEnumerable<ValueTuple<IStrategyParam, IEnumerable>> parameters)
result = StrategyParamHelper.ToGeneticParameters(strategy, parameters)

Convert strategy parameters to genetic optimizer format with explicit values support.

strategy
The strategy with parameters.
parameters
The parameters with optional explicit values to use instead of range.

Returns: Array of tuples suitable for CancellationToken).