Hi, You are not indexing your arrays properly. Assume that you are running over 1000 bars (i.e. BarCount = 1000 indexed from 0..999).
Your code is trying to write elements 8..50 for the cosinepart array, using elements 0..50 of the Close and tx arrays, regardless of the current bar index. You might want to try explaining in english what it is that you are trying to accomplish. As it stands the code does not make much sense, even when using the Sum version (since in the Sum version every iteration from 8..(WindowSize - 1) just gets clobbered by the final iteration using WindowSize). Mike --- In [email protected], "iceboundbug" <icebound...@...> wrote: > > Hello all, > > I would appreciate if someone can please help with this coding problem - it > is detailed in the code itself. > > > Thanks in advance > > > ///////////////////////////////////////////// > pi = 3.14; > cosinepart[0] = 0; > WindowSize = 50; > Maxpwr = 0; > x = BarIndex(); > > for( period = 8; period <= WindowSize; period++ ) > { > tx = 2 * pi * x / period; > > cosinepart = Sum( C * cos( tx ), WindowSize ); > > /* // I need to remove the Sum function above > //so this is what I coded but why doesn't it work ?? > for(i = 0 ; i<Windowsize ; i++) > { > cosinepart[period] += ( C[i]*cos(tx[i]) ) ; > } > */ > > } > > Plot(cosinepart,"",colorRed,styleLine); > ////////////////////////////////////////////// >
