StrategyParamHelper

StockSharp.Algo.Strategies

Вспомогательный класс для StrategyParam.

Методы

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

Проверка может оптимизировать параметр.

type
Тип значения параметра.

Возвращает: , если можно оптимизировать параметр, в противном случае .

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

Создать параметр.

type
Тип
id
идентификатор

Возвращает: IStrategyParam

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

Получите количество итераций оптимизации для параметра.

param
IStrategyParam

Возвращает: Количество итераций.

GetIterationsCount
public static int GetIterationsCount(Type type, object from, object to, object step, IEnumerable values)
result = StrategyParamHelper.GetIterationsCount(type, from, to, step, values)

Get the number of optimization iterations for a parameter shape.

type
The type of the parameter value.
from
Initial value, or .
to
Final value, or .
step
Increment value, or .
values
Explicit values, or . Win over the range when not empty.

Возвращает: Number of iterations, zero when the shape defines no values of its own.

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

Получите имя параметра.

param
IStrategyParam

Возвращает: Отображаемое имя.

GetOptimizationValues
public static IEnumerable<object> GetOptimizationValues(Type type, object from, object to, object step, IEnumerable values)
result = StrategyParamHelper.GetOptimizationValues(type, from, to, step, values)

Get all optimization values for a parameter shape.

type
The type of the parameter value.
from
Initial value, or .
to
Final value, or .
step
Increment value, or .
values
Explicit values, or . Win over the range when not empty.

Возвращает: Enumerable of all optimization values, empty when the shape defines none of its own.

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

Получите все значения оптимизации для параметра.

param
IStrategyParam

Возвращает: Перечисляемый из всех значений оптимизации.

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

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

param
IStrategyParam
provider
Where the value is drawn from. A search worth keeping the result of is worth running again, so the caller states the source rather than a default deciding for it - RandomProvider is the one a strategy runs on.

Возвращает: Random value within the optimization range.

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

Generate a set of unique random values for the parameter.

param
IStrategyParam
count
Number of random values to generate.
provider
Where the values are drawn from.

Возвращает: Set of unique random values.

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

Generate a set of unique random values for the parameter.

param
StrategyParam
count
Number of random values to generate.
provider
Where the values are drawn from.

Возвращает: Set of unique random values.

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

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

param
StrategyParam
provider
Where the value is drawn from.

Возвращает: Random value within the optimization range.

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)

Сгенерируйте все клоны стратегий с перестановками параметров для оптимизации методом перебора. Поддерживает явные списки значений для таких параметров, как финансовый инструмент DataType.

strategy
Базовая стратегия клонирования.
parameters
Параметры с необязательными явными значениями, которые можно использовать вместо диапазона.
optimizedParams
Выход: все параметры, участвующие в оптимизации.
totalCount
Выход: общее количество итераций.

Возвращает: Ленивое перечисление клонов стратегий с их массивами параметров.

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

Сгенерируйте все клоны стратегий с перестановками параметров для оптимизации методом перебора.

strategy
Базовая стратегия клонирования.
parameters
Параметры для оптимизации.
optimizedParams
Выход: все параметры, участвующие в оптимизации.
totalCount
Выход: общее количество итераций.

Возвращает: Ленивое перечисление клонов стратегий с их массивами параметров.

ToBruteForceAsync
public static IAsyncEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ToBruteForceAsync(Strategy strategy, IStrategyParam[] parameters, IStrategyParam[] optimizedParams, int totalCount)
result = StrategyParamHelper.ToBruteForceAsync(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.

Возвращает: Lazy enumerable of strategy clones with their parameter arrays.

ToBruteForceAsync
public static IAsyncEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ToBruteForceAsync(Strategy strategy, IEnumerable<ValueTuple<IStrategyParam, IEnumerable>> parameters, IStrategyParam[] optimizedParams, int totalCount)
result = StrategyParamHelper.ToBruteForceAsync(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.

Возвращает: 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)

Сгенерируйте все клоны стратегий со случайными значениями параметров для оптимизации методом перебора.

strategy
Базовая стратегия клонирования.
parameters
Параметры для оптимизации.
randomCount
Количество случайных выборок на параметр.
optimizedParams
Выход: все параметры, участвующие в оптимизации.
totalCount
Выход: общее количество итераций.

Возвращает: Ленивое перечисление клонов стратегий с их массивами параметров.

ToBruteForceRandomAsync
public static IAsyncEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ToBruteForceRandomAsync(Strategy strategy, IStrategyParam[] parameters, int randomCount, IStrategyParam[] optimizedParams, int totalCount)
result = StrategyParamHelper.ToBruteForceRandomAsync(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.

Возвращает: 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)

Преобразуйте параметры стратегии в формат генетического оптимизатора.

strategy
Стратегия с параметрами.
parameters
Параметры для оптимизации.

Возвращает: Массив кортежей, подходящих для CancellationToken).

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

Преобразование параметров стратегии в формат генетического оптимизатора с поддержкой явных значений.

strategy
Стратегия с параметрами.
parameters
Параметры с необязательными явными значениями, которые можно использовать вместо диапазона.

Возвращает: Массив кортежей, подходящих для CancellationToken).