Forgive me if this is a newbie question but I've spent several hours working on trying to figure out alternatives to this before I came here....I'm having some trouble in figuring out what's the best way to achieve what I'm trying to. I'd like to place a series of double values into an array without setting each value like this

double spread = CSCO.Bar.Close / DELL.Bar.Close;
spread_series.Add(CSCO.Bar.DateTime, spread);



if (spread_series.Count > 6)
{
double[] dataArray = new double[6];


dataArray[0] = spread_series.Ago(0);
dataArray[1] = spread_series.Ago(1) ;
dataArray[2] = spread_series.Ago(2) ;
dataArray[3] = spread_series.Ago(3);
dataArray[4] = spread_series.Ago(4);
dataArray[5] = spread_series.Ago(5);
dataArray[6] = spread_series.Ago(6);
Array.Reverse(dataArray);
}

So in other words I'd like to to cycle though all values of spread_series.Ago(0-infinity) and place them into dataArray[i] something like this.

if (spread_series.Count > 7)
{
double[] dataArray = new double[spread_series.Count];
for (int i = 0; i < dataArray.Length; i++)
{
dataArray[i] = spread_series.Ago(i);
Array.Reverse(dataArray);
}

}

The problem obviously is that I can't implicitly convert a double into an array and the .Ago method requires an (int) in it's reference. I've tried casting but I think the underlying framework prevents it. So I'm left wondering if it's possible to make a simple class or some other method that would allow me to reference all values in the spread_series.Ago() method programmatically so that I wouldn't have to set each value individually or if I don't know how much data I'll be referencing?

Any help is greatly appreciated!
Thank You