предлагаю заменить строки
var high = Context.GetData("Highest", new[] { Period.ToString() + source.Interval.ToString() },
() => Series.Highest(source.HighPrices, Period));
var low = Context.GetData("Lowest", new[] { Period.ToString() + source.Interval.ToString() },
() => Series.Lowest(source.LowPrices, Period));


на следующие

var high = Context.GetData("Highest" + source.Interval.ToString(), new[] { Period.ToString() + source.Interval.ToString() },
() => Series.Highest(source.HighPrices, Period));
var low = Context.GetData("Lowest" + source.Interval.ToString(), new[] { Period.ToString() + source.Interval.ToString() },
() => Series.Lowest(source.LowPrices, Period));


когда пользуешься сжатием, то не возможно получить графики на разных интервалах