PureBytes Links
Trading Reference Links
|
Sorry, the indentations in that code were fine in the Yahoo message
but were not preserved on the post. Let's see if this works:
> function myMA(array, period)
> {
> a = Null;
>
> if (period > 0)
> {
> for (i = period; i < BarCount; i++)
> {
> for (j = 0, temp = 0; j < period; j++)
> {
> temp = temp + array[i-j];
> }
> a[i] = temp / period;
> }
> }
> return a;
> }
>
> Example invocation:
>
> period = Param("Moving Average Period", 15, 1, 50);
>
> array = myMA(Close, period);
>
> Plot(array, "", colorRed);
--- In amibroker@xxxxxxxxxxxxxxx, "scourt2000" <stevehite@xxxx>
wrote:
>
>
> Now, you can tighten that code up a little bit and add a touch of
> defensive programming (don't let period be <= 0)and then package
it
> into a function:
>
> function myMA(array, period)
> {
> a = Null;
>
> if (period > 0)
> {
> for (i = period; i < BarCount; i++)
> {
> for (j = 0, temp = 0; j < period; j++)
> {
> temp = temp + array[i-j];
> }
> a[i] = temp / period;
> }
> }
> return a;
> }
>
> Example invocation:
>
> period = Param("Moving Average Period", 15, 1, 50);
>
> array = myMA(Close, period);
>
> Plot(array, "", colorRed);
>
> [added bonus: see how cool Tomasz's Param() function is?...press
> Ctrl-R in the chart and vary the size of the moving average]
>
> Programming tip:
>
> Make a preference of using for statements instead of while
> statements when the boundaries of your limits are well-defined.
> Your code will be easier to read.
>
> Steve
>
>
> --- In amibroker@xxxxxxxxxxxxxxx, "razepy" <razepy@xxxx> wrote:
> >
> > it was this formula that i want
> > many thanks for your help
> >
> >
> >
> > --- In amibroker@xxxxxxxxxxxxxxx, "johsun" <joh.sun@xxxx> wrote:
> > >
> > > a = Null;
> > > f = 15;
> > >
> > > for ( i = f ; i < BarCount; i++ )
> > > {
> > >
> > > n = temp = 0;
> > >
> > > while ( n < f )
> > >
> > > {
> > >
> > > temp = temp + C[ i - n ];
> > > n++;
> > >
> > > }
> > >
> > > a[ i ]= temp / f;
> > >
> > > }
> > >
> > > Graph0 = a;
> > > Graph1 = MA( C, f );
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > > --- In amibroker@xxxxxxxxxxxxxxx, "rasepi" <rasepi@xxxx> wrote:
> > > >
> > > > hello
> > > > i am not interested on the MA
> > > > (i am not a idiot, i believe)
> > > > my project is to code steve woods float channel indicator
> > > > i have made a code with VBscript
> > > > its working but its very slow
> > > > i tried it in AFL langage buts it no working
> > > > therefore i have tried coding a simple moving average to
> learning
> > > > buts also no working
> > > > if you are a professional programmer, can you explain what
is
> > > false in
> > > > this following code?
> > > >
> > > > f=15;
> > > > for (i=15 ;i<BarCount -1 ;i++);
> > > > { //begin for loop
> > > > n=0;
> > > > temp=0;
> > > > while (temp < f-1)
> > > > { //begin while loop
> > > > temp= temp+ C[i-n];
> > > > n=n+1;
> > > > } //end while loop
> > > > a[i]=temp/15;
> > > > } //end for loop
> > > >
> > > > Graph0=a;
> > >
> >
>
------------------------ Yahoo! Groups Sponsor --------------------~-->
Try Online Currency Trading with GFT. Free 50K Demo. Trade
24 Hours. Commission-Free.
http://us.click.yahoo.com/RvFikB/9M2KAA/U1CZAA/GHeqlB/TM
--------------------------------------------------------------------~->
Please note that this group is for discussion between users only.
To get support from AmiBroker please send an e-mail directly to
SUPPORT {at} amibroker.com
For other support material please check also:
http://www.amibroker.com/support.html
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/amibroker/
<*> To unsubscribe from this group, send an email to:
amibroker-unsubscribe@xxxxxxxxxxxxxxx
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/
|