Добрый день,

Разбираюсь с TSLab - во всех демо-скриптах от Laber для вычисления индикатора используется сложная конструкция с использованием делегатов:

Например, в скрипте supertrend_script.cs (http://www.tslab.ru/ubb/ubbthreads.php?ubb=showflat&Number=7815)

// серия значений ATR
// кэширование с учетом параметра Period
IList<double> nATR = ctx.GetData("ATR", new[] {Period.ToString()}, delegate { return GenATR(source, Period); });

Не совсем понимая, для чего это нужно, поэкспериментировал. Заменил эту строчку на более простую:

IList<double> nATR = GenATR(source, Period);

И ничего не изменилось! Время выполнения также осталось прежним, проверил по оптимизации.

Не сомневаюсь, что конструкция с делегатами для чего то предназначена, но когда её нужно использовать и в каких случаях без нее можно безболезненно обойтись?