Series Array will not work.

 
I am trying to use Series Array feature.
What am I doing wrong?..Please.
SilverBuffer[i] is indicator buffer.
ImBand is temporary buffer.
double ImBand[100];
ArraySetAsSeries(ImBand, true);

ImBand[i]=iMA(NULL,0,20,0,MODE_SMA,PRICE_OPEN,i);
SilverBuffer[i]=ImBand[i];

//This works!
SilverBuffer[i]=iMA(NULL,0,20,0,MODE_SMA,PRICE_OPEN,i);
 
I am trying to use Series Array feature.
What am I doing wrong?..Please.


string Buffer[3];
ArraySetAsSeries(Buffer,true);

Buffer[0]="A";
Buffer[1]="B";
Buffer[2]="C";

Print("Buffer=",Buffer[0],", ",Buffer[1],", ",Buffer[2]); 

//2005.11.17 09:48:52    test EURUSD,M5: Buffer=A B C 
//OK



// I am expecting to get "D, E, F" based on shift function
Buffer[0]="D";
Buffer[0]="E";
Buffer[0]="F";

Print("Buffer=",Buffer[0],", ",Buffer[1],", ",Buffer[2]); 

//However I am getting:
//2005.11.17 09:48:52    test EURUSD,M5: Buffer=F B C


There is no diference between Series and non-Series Buffer.

 

// I am expecting to get "D, E, F" based on shift function
Buffer[0]="D";
Buffer[0]="E";
Buffer[0]="F";

Print("Buffer=",Buffer[0],", ",Buffer[1],", ",Buffer[2]);

//However I am getting:
//2005.11.17 09:48:52 test EURUSD,M5: Buffer=F B C

what you put that you get



There is no diference between Series and non-Series Buffer.

of course. index access is the same. but index order differs
try
string Buffer[3];
ArraySetAsSeries(Buffer,true);

Buffer[0]="A";
Buffer[1]="B";
Buffer[2]="C";

Print("Buffer=",Buffer[0],", ",Buffer[1],", ",Buffer[2]); 

ArraySetAsSeries(Buffer,false);
Print("Buffer=",Buffer[0],", ",Buffer[1],", ",Buffer[2]); 
 

There is no diference between Series and non-Series Buffer.

of course. index access is the same. but index order differs
try
string Buffer[3];
ArraySetAsSeries(Buffer,true);

Buffer[0]="A";
Buffer[1]="B";
Buffer[2]="C";

Print("Buffer=",Buffer[0],", ",Buffer[1],", ",Buffer[2]); 

ArraySetAsSeries(Buffer,false);
Print("Buffer=",Buffer[0],", ",Buffer[1],", ",Buffer[2]); 



Well Slawa, now I am totally lost.

I was expecting that series function would work like indicator buffer.

i.e.
Buffer[0] =Close[0];
Since current bar is always 0 so I can get bar +1 from Buffer[1].

Reason: