StrategyParamHelper
Die Hilfsklasse für StrategyParam.
Methoden
public static bool CanOptimize(Type type)
result = StrategyParamHelper.CanOptimize(type)
Check kann Parameter optimieren.
- type
- Die Art des Parameterwerts.
Rückgabe: , wenn der Parameter optimiert werden kann, andernfalls, .
public static IStrategyParam CreateParam(Type type, string id)
result = StrategyParamHelper.CreateParam(type, id)
Parameter erstellen.
- type
- Art der Art
- id
- Id
Rückgabe: IStrategyParam
public static int GetIterationsCount(IStrategyParam param)
result = StrategyParamHelper.GetIterationsCount(param)
Holen Sie sich die Anzahl der Optimierungs-Iterationen für den Parameter.
- param
- IStrategyParam
Rückgabe: Anzahl der Iterationen.
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.
Rückgabe: Number of iterations, zero when the shape defines no values of its own.
public static string GetName(IStrategyParam param)
result = StrategyParamHelper.GetName(param)
Holen Sie sich den Parameternamen.
- param
- IStrategyParam
Rückgabe: Name der Anzeige.
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.
Rückgabe: Enumerable of all optimization values, empty when the shape defines none of its own.
public static IEnumerable<object> GetOptimizationValues(IStrategyParam param)
result = StrategyParamHelper.GetOptimizationValues(param)
Holen Sie sich alle Optimierungswerte für den Parameter.
- param
- IStrategyParam
Rückgabe: Aufzählbar aller Optimierungswerte.
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.
Rückgabe: Random value within the optimization range.
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.
Rückgabe: Set of unique random values.
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.
Rückgabe: Set of unique random values.
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.
Rückgabe: Random value within the optimization range.
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)
Alle Strategieklone mit Parameterpermutationen für die Brute-Force-Optimierung generieren. Unterstützt explizite Wertelisten für Parameter wie Finanzinstrument, DataType.
- strategy
- Die Basisstrategie zum Klonen.
- parameters
- Die Parameter mit optionalen expliziten Werten anstelle von Bereich zu verwenden.
- optimizedParams
- Output: alle Parameter, die an der Optimierung beteiligt sind.
- totalCount
- Output: Gesamtzahl der Iterationen.
Rückgabe: Faul enumerable von Strategieklonen mit ihren Parameter-Arrays.
public static IEnumerable<ValueTuple<Strategy, IStrategyParam[]>> ToBruteForce(Strategy strategy, IStrategyParam[] parameters, IStrategyParam[] optimizedParams, int totalCount)
result = StrategyParamHelper.ToBruteForce(strategy, parameters, optimizedParams, totalCount)
Generieren Sie alle Strategieklone mit Parameterpermutationen für die Brute-Force-Optimierung.
- strategy
- Die Basisstrategie zum Klonen.
- parameters
- Die Parameter zur Optimierung.
- optimizedParams
- Output: alle Parameter, die an der Optimierung beteiligt sind.
- totalCount
- Output: Gesamtzahl der Iterationen.
Rückgabe: Faul enumerable von Strategieklonen mit ihren Parameter-Arrays.
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.
Rückgabe: Lazy enumerable of strategy clones with their parameter arrays.
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.
Rückgabe: 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)
Generieren Sie alle Strategieklone mit zufälligen Parameterwerten für die Brute-Force-Optimierung.
- strategy
- Die Basisstrategie zum Klonen.
- parameters
- Die Parameter zur Optimierung.
- randomCount
- Anzahl der Stichproben je Parameter.
- optimizedParams
- Output: alle Parameter, die an der Optimierung beteiligt sind.
- totalCount
- Output: Gesamtzahl der Iterationen.
Rückgabe: Faul enumerable von Strategieklonen mit ihren Parameter-Arrays.
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.
Rückgabe: 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)
Konvertieren Sie Strategieparameter in das Format des genetischen Optimierers.
- strategy
- Die Strategie mit Parametern.
- parameters
- Die Parameter zur Optimierung.
Rückgabe: Array von Tupeln geeignet für CancellationToken.
public static ValueTuple<IStrategyParam, object, object, object, IEnumerable>[] ToGeneticParameters(Strategy strategy, IEnumerable<ValueTuple<IStrategyParam, IEnumerable>> parameters)
result = StrategyParamHelper.ToGeneticParameters(strategy, parameters)
Konvertieren Sie Strategieparameter in ein genetisches Optimiererformat mit expliziter Werteunterstützung.
- strategy
- Die Strategie mit Parametern.
- parameters
- Die Parameter mit optionalen expliziten Werten anstelle von Bereich zu verwenden.
Rückgabe: Array von Tupeln geeignet für CancellationToken.