Thank you Tomasz So what I can see from your reply, this example here is correct. But must be a way for a loop to calculate only the last X bars, and not all of theme Thank you Panos
--- In [email protected], "Tomasz Janeczko" <[EMAIL PROTECTED]> wrote: > > Hello, > > Move ALL array functions OUTSIDE of loop! > > Inside the loop there should be only NON-array functions. > > > // THIS MUST BE OUTSIDE THE LOOP !!!!!! > > Q=Param( "% Change",1.50,.25,14 ,0.25); > > Z= Zig(C,q ) ; > > HH=((Z<Ref(Z,- 1) AND Ref(Z,-1) > Ref(Z,-2)) AND (Peak(z,q,1 ) > > >Peak(Z,q,2 ))); > > LL=((Z>Ref(Z,- 1) AND Ref(Z,-1) < Ref(Z,-2)) AND (Trough(Z,q,1 ) <Trough(Z,q,2 ))); > > > dist = 0.5*ATR (20); > > > for( i = 0; i < BarCount; i++ ) > { > > // ONLY THIS should be inside the loop > if( HH [i]) PlotText( "HH"+ "\n"+H[ i ], i, H[ i ]+dist[i], colorGreen ); > if( LL [i] ) PlotText( ""+L[ i ]+"\nLL", i, L[ i ]-dist[i], colorRed ); > } > > Nothing more is needed. > > Best regards, > Tomasz Janeczko > amibroker.com > ----- Original Message ----- > From: "Panos Boufardeas" <[EMAIL PROTECTED]> > To: <[email protected]> > Sent: Thursday, November 27, 2008 6:45 PM > Subject: [amibroker] how to improve loop speed > > > > > Hi > > I am curious to find out how to make a loop to run from firstvisiblebar > > > I think I need to write something like the following . but I don't know how > > > lvb = Status("lastvisiblebar"); > > fvb = Status("firstvisiblebar"); > > > for( i = 0; i < ??? ; i++ ) > > { > > > I have an example here that executes very slowly in live intra day chart > > Can you tell me please how I can correct this example ? > > > Q=Param( "% Change",1.50,.25,14 ,0.25); > > Z= Zig(C,q ) ; > > HH=((Z<Ref(Z,- 1) AND Ref(Z,-1) > > > Ref(Z,-2)) AND (Peak(z,q,1 ) > > >Peak(Z,q,2 ))); > > LL=((Z>Ref(Z,- 1) AND Ref(Z,-1) < Ref(Z,-2)) AND (Trough(Z,q,1 ) > > <Trough(Z,q,2 ))); > > > dist = 0.5*ATR (20); > > > for( i = 0; i < BarCount; i++ ) > > { > > if( HH [i]) PlotText( "HH"+ "\n"+H[ i ], i, H[ i > > ]+dist[i], colorGreen ); > > if( LL [i] ) PlotText( ""+L[ i ]+"\nLL", i, L[ i > > ]-dist[i], colorRed ); > > } > > > Plot(C,"",IIf(C>O,colorGreen,colorRed),styleCandle); > > > Thank you > > Panos > > > > >
