StrategyParamHelper
The auxiliary class for StrategyParam.
Methods
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, .
public static IStrategyParam CreateParam(Type type, string id)
result = StrategyParamHelper.CreateParam(type, id)
Create parameter.
- type
- Type
- id
- Id
Returns: IStrategyParam
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.
public static string GetName(IStrategyParam param)
result = StrategyParamHelper.GetName(param)
Get the parameter name.
- param
- IStrategyParam
Returns: Display name.
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.
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.
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.
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.
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.
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.
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.
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.
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).
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).