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

Снимок экрана: результаты оптимизации

OptimizationResultsPanel - три способа прочитать результаты перебора, собранные в одном контроле:

  • Результаты - таблица прогонов: значения параметров, статистика и график П/У каждого прогона рядом с его числами. Это StrategiesStatisticsPanel, поэтому колонки сортируются и настраиваются так же, как везде.
  • График - трёхмерная поверхность по двум параметрам: оси выбираются списками над графиком, высота - выбранный статистический показатель.
  • Тепловая карта - та же поверхность сверху. Оси задаются один раз, на графике, карта их повторяет.

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

Прогоны добавляются в OptimizationResultsViewModel в момент старта, а не по завершении: строка сразу появляется в таблице и дальше следит за своей стратегией, поэтому идущий прогон виден на всех трёх поверхностях.

Одна комбинация параметров - одна точка поверхности. Если комбинация прогонялась несколько раз, точка показывает среднее; если комбинация не прогонялась вовсе, тепловая карта заполняет её наименьшим значением, чтобы пропуск не выглядел вершиной.

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

<Window x:Class="Sample.OptimizationResultsWindow"
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:charting="http://schemas.stocksharp.com/xaml"
	Height="600" Width="900">
	<charting:OptimizationResultsPanel x:Name="ResultsPanel" />
</Window>
_results = new OptimizationResultsViewModel();
ResultsPanel.ViewModel = _results;

// Оптимизатор сообщает о прогоне в момент его старта
_optimizer.StrategyInitialized += (strategy, parameters) =>
	this.GuiAsync(() => _results.AddRun(strategy, parameters));

См. также

Стратегии

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