Параметры оптимизации

Снимок экрана: редактор параметров оптимизации

OptimizationParametersPanel - редактор параметров, по которым идёт перебор. Одна строка - один параметр стратегии: галочка включает его в перебор, дальше идут границы и шаг либо список значений, а под таблицей - итог: сколько прогонов даёт текущий набор.

Основные свойства

Набор значений зависит от типа параметра: у числа и у TimeSpan это границы и шаг, у bool - два значения, у перечисления, Security и DataType - явный список. Строка, которую нельзя пройти (шаг равен нулю, границы не заданы, список пуст), объясняет причину прямо в таблице, а итоговый счётчик такую строку не считает.

Число прогонов растёт произведением, а не суммой: три параметра по пять значений - это 125 прогонов, а не 15. Поэтому счётчик стоит рядом с таблицей, а не на следующем шаге мастера.

Ниже показаны фрагменты кода с его использованием:

<Window x:Class="Sample.OptimizationWindow"
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:xaml="http://schemas.stocksharp.com/xaml"
	Height="400" Width="700">
	<xaml:OptimizationParametersPanel x:Name="ParametersPanel" />
</Window>
// Строки редактора - модель приложения, реализующая IOptimizationParameterRow
ParametersPanel.Parameters = _rows;

// Ограничение на число прогонов
ParametersPanel.MaxIterations = 5000;

// Запускать можно, когда набор непустой и в нём нет ошибок
StartButton.IsEnabled = ParametersPanel.TotalCount > 0 && ParametersPanel.FirstProblem.Length == 0;

См. также

Стратегии

Результаты оптимизации