I have a default data series (YM 144Tick) and a secondary data series (YM 1597 tick), and I want to find the average range of the 1597 tick series.
I add the secondary data series as follows:
else if (State == State.Configure)
{
AddDataSeries(BarsPeriodType.Tick, 1597);
}
and want to calculate the Range of the 1597 series as follows (this is just dummy code for testing):
private void CalculateRange()
{
var range = 0.0;
var count = 0;
var maxNum = Math.Min(Highs[1].Count, 144);
for (var i = 1; i < maxNum; i++)
{
if (!Highs[1].IsValidDataPoint(i))
break;
var high = Highs[1][i];
var low = Lows[1][i];
range += Math.Abs(high - low);
count += 1;
}
var averageRange = range / count;
Code.Output.Process("Range: " + averageRange, PrintTo.OutputTab2);
}
As seen in the picture, the Highs[1].Count gives me 452 bars, while I can only iterate through 14 of them before I receive an exception.
The additional test of Highs[1].IsValidDataPoint() never returns false.
Could you please tell me where the issue lies?
Best regards,
T
Comment